feat(desktop): GUI askpass for ssh passphrase/PIN prompts

Add ksshaskpass and point SSH_ASKPASS at it, without forcing: a tty still
prompts inline, but a caller may set SSH_ASKPASS_REQUIRE to route the prompt
to the GUI (e.g. a headless context driving `git push`).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-07 08:32:19 +02:00
parent 238528f961
commit 0d6b8ca13a
+5
View File
@@ -36,6 +36,10 @@ in
# Mute the harmless "Wayland does not support QWindow::requestActivate()" # Mute the harmless "Wayland does not support QWindow::requestActivate()"
# spam Qt apps (keepassxc) print; scoped to that one log category only. # spam Qt apps (keepassxc) print; scoped to that one log category only.
QT_LOGGING_RULES = "qt.qpa.wayland=false"; QT_LOGGING_RULES = "qt.qpa.wayland=false";
# GUI helper for ssh passphrase/PIN prompts. Not forced: with a tty ssh still
# prompts inline; the helper is only used when a caller sets
# SSH_ASKPASS_REQUIRE (e.g. a headless/agent context).
SSH_ASKPASS = "${pkgs.ksshaskpass}/bin/ksshaskpass";
}; };
# Sets XDG_{CONFIG,DATA,CACHE}_HOME and enables xdg.configFile management. # Sets XDG_{CONFIG,DATA,CACHE}_HOME and enables xdg.configFile management.
xdg.enable = true; xdg.enable = true;
@@ -49,6 +53,7 @@ in
nodejs nodejs
highlight # `ccat` alias: syntax-highlighted cat highlight # `ccat` alias: syntax-highlighted cat
libreoffice libreoffice
ksshaskpass # Qt GUI prompt for ssh passphrase/PIN (see SSH_ASKPASS above)
]; ];
# ---- Per-tool config files, routed into XDG dirs --------------------- # ---- Per-tool config files, routed into XDG dirs ---------------------