Coder Social home page Coder Social logo

pmattern / lxqt-openssh-askpass Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lxqt/lxqt-openssh-askpass

0.0 0.0 0.0 50 KB

GUI to query passwords on behalf of SSH agents.

Home Page: http://lxqt.org/

License: GNU Lesser General Public License v2.1

CMake 34.26% C++ 65.74%

lxqt-openssh-askpass's Introduction

lxqt-openssh-askpass

Overview

lxqt-openssh-askpass is a GUI to query credentials on behalf of other programs. As indicated by its name it's primarily targeted at ssh-agent, the SSH agent of OpenSSH, but it works with other applications like e. g. EncFS as well.

It was considered to abandon the tool in favour of KDE's ksshaskpass and lxqt-openssh-askpass had temporarily been declared deprecated for this reason. But it turned out the close bond of ksshaskpass to KWallet conflicts with LXQt's design goals so it's all but certain the replacement will happen. See lxqt/lxqt#362.

Installation

Compiling source code

The only runtime dependency is liblxqt.
Additional build dependencies are CMake and optionally Git to pull latest VCS checkouts. The localization files were outsourced to repository lxqt-l10n so the corresponding dependencies are needed, too. Please refer to this repository's README.md for further information.

Code configuration is handled by CMake. CMake variable CMAKE_INSTALL_PREFIX has to be set to /usr on most operating systems.

To build run make, to install make install which accepts variable DESTDIR as usual.

Binary packages

Official binary packages are provided by all major Linux distributions like Arch Linux, Debian (as of Debian stretch only), Fedora and openSUSE. Just use your package manager to search for string lxqt-openssh-askpass.

Configuration, Usage

ssh-agent

First of all it must be ensured ssh-agent is running in LXQt sessions. This is basically beyond this document's scope but can e. g. be achieved by a user systemd unit

[Unit]
Description=Some arbitrary description

[Service]
Type=forking
ExecStart=/usr/bin/ssh-agent -a /run/user/<ID>/ssh-agent

[Install]
WantedBy=default.target

where ID corresponds with the respective user's UID as displayed by $ id <user>.

Environment variable SSH_AUTH_SOCK must point to the socket of ssh-agent as e. g. stated by option -a in the systemd unit depicted above. Environment variable SSH_ASKPASS must be set to lxqt-openssh-askpass to indicate this binary should be used.
Both variables can be set in section "Environment (Advanced)" of configuration dialogue LXQt Session Settings of lxqt-session. Changes apply upon the next login only.

Note binary ssh-add which is used to register keys with ssh-agent will use GUI tools like lxqt-openssh-askpass only when it is not attached to a terminal.
So lxqt-openssh-askpass will not be used when ssh-add is launched from a terminal emulator like QTerminal even when everything is configured as stated above. lxqt-openssh-askpass will be used when the invocation of ssh-add is handled by an autostart entry which can be configured in section "Autostart" of "LXQt Session Settings" or when a desktop entry file is used to invoke the tool from menus.

EncFS

Simply hand lxqt-openssh to binary encfs by option --extpass, like in encfs --extpass=lxqt-openssh-askpass <rootdir> <mount point>.
In contrast to ssh-{agent,add} this works when encfs is launched from a terminal emulator, too.

lxqt-openssh-askpass's People

Contributors

agaida avatar amoskvin avatar attuska avatar czchen avatar dglent avatar f2404 avatar heliocastro avatar ilya87 avatar jleclanche avatar jubalh avatar luis-pereira avatar mckaygerhard avatar palinek avatar paulolieuthier avatar pcman avatar philippwiesemann avatar pmattern avatar pvanek avatar smarquespt avatar thomasvie avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.