Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lxqt/lxqt-openssh-askpass
GUI to query passwords on behalf of SSH agents.
https://github.com/lxqt/lxqt-openssh-askpass
Last synced: about 2 months ago
JSON representation
GUI to query passwords on behalf of SSH agents.
- Host: GitHub
- URL: https://github.com/lxqt/lxqt-openssh-askpass
- Owner: lxqt
- License: lgpl-2.1
- Created: 2013-08-06T10:47:13.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2024-05-12T12:46:42.000Z (8 months ago)
- Last Synced: 2024-05-23T09:05:15.764Z (7 months ago)
- Language: C++
- Homepage: https://lxqt.github.io
- Size: 136 KB
- Stars: 18
- Watchers: 21
- Forks: 12
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG
- License: LICENSE
- Authors: AUTHORS
Awesome Lists containing this project
README
# 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 https://github.com/lxqt/lxqt/issues/362.## Installation
### Compiling source code
The only runtime dependency is [liblxqt](https://github.com/lxqt/liblxqt).
Additional build dependencies are CMake and optionally Git to pull latest VCS
checkouts.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//ssh-agent[Install]
WantedBy=default.target
```
where ID corresponds with the respective user's UID as displayed by `$ id `.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](https://github.com/lxqt/lxqt-session#lxqt-session-settings)
of [lxqt-session](https://github.com/lxqt/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 `.
In contrast to `ssh-{agent,add}` this works when `encfs` is launched from a
terminal emulator, too.### Translations
Translations can be done in [LXQt-Weblate](https://translate.lxqt-project.org/projects/lxqt-configuration/lxqt-openssh-askpass/).