diff --git a/configs/client.nix b/configs/client.nix index 817daa5..9e20d55 100644 --- a/configs/client.nix +++ b/configs/client.nix @@ -1,4 +1,9 @@ -{ lib, pkgs, ... }: +{ + lib, + pkgs, + config, + ... +}: { imports = [ ./common.nix @@ -17,7 +22,8 @@ nixd ]; - variables.SSH_ASKPASS_REQUIRE = "prefer"; + # disable ssh-askpass on wsl namely, to simply have a normal prompt that reads from stdin + variables.SSH_ASKPASS_REQUIRE = if config.programs.ssh.enableAskPassword then "prefer" else "never"; }; networking = { @@ -31,11 +37,7 @@ programs = { nix-ld.enable = true; - ssh = { - startAgent = true; - enableAskPassword = true; - askPassword = lib.mkOverride 1200 "${pkgs.curses-ssh-askpass}"; # see exprs/curses-ssh-askpass.nix - }; + ssh.startAgent = true; }; virtualisation.docker.enable = true; diff --git a/configs/desktop.nix b/configs/desktop.nix index 416ef2d..f87a1f3 100644 --- a/configs/desktop.nix +++ b/configs/desktop.nix @@ -112,6 +112,7 @@ programs = { firefox.enable = true; virt-manager.enable = true; + ssh.enableAskPassword = true; }; security.pam.services.login.enableGnomeKeyring = true; diff --git a/exprs/curses-ssh-askpass.nix b/exprs/curses-ssh-askpass.nix deleted file mode 100644 index 653500b..0000000 --- a/exprs/curses-ssh-askpass.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ - lib, - pinentry-curses, - writeShellScript, -}: -writeShellScript "curses-ssh-askpass" '' - if [ -z ''${1+x} ]; then - prompt="GETPIN" - else - prompt="SETDESC $1\nGETPIN" - fi - - pin=$(echo -e "$prompt" | ${lib.getExe pinentry-curses} -T /dev/pts/0 | grep D | tr -d '\n') - echo "''${pin:2}" -'' diff --git a/exprs/overlay.nix b/exprs/overlay.nix index 9a7430d..566bb41 100644 --- a/exprs/overlay.nix +++ b/exprs/overlay.nix @@ -1,6 +1,5 @@ inputs: final: prev: { idea-ultimate-fixed = prev.callPackage ./idea-fixed.nix { }; - curses-ssh-askpass = prev.callPackage ./curses-ssh-askpass.nix { }; vencord = prev.vencord.overrideAttrs (old: rec { version = "${old.version}+git.${inputs.vencord.shortRev}";