This commit is contained in:
2026-09-06 14:40:40 +03:00
parent e5cc25eb49
commit 177963b64e
5 changed files with 20 additions and 2 deletions
+4
View File
@@ -31,6 +31,10 @@
enableSshSupport = true; enableSshSupport = true;
grabKeyboardAndMouse = false; grabKeyboardAndMouse = false;
pinentry.package = pkgs.pinentry-emacs; pinentry.package = pkgs.pinentry-emacs;
extraConfig = ''
allow-emacs-pinentry
allow-loopback-pinentry
'';
}; };
home.file.".ssh/config".source = ./ssh-config; home.file.".ssh/config".source = ./ssh-config;
home.file.".ssh/gpg-as-ssh.pub".source = ./gpg-as-ssh.pub; home.file.".ssh/gpg-as-ssh.pub".source = ./gpg-as-ssh.pub;
+1
View File
@@ -16,5 +16,6 @@ orgTrivialBuild {
agent-shell agent-shell
org-caldav org-caldav
pinentry
]; ];
} }
+13
View File
@@ -34,6 +34,19 @@
:models '(openai/gpt-oss-120b))) :models '(openai/gpt-oss-120b)))
#+end_src #+end_src
** GPG Pinentry
gpg-agent is configured with =pinentry.package = pkgs.pinentry-emacs=, which
needs a running Emacs-side pinentry service to hand it prompts over a
loopback socket. Without =pinentry-start=, the pinentry-emacs binary can't
reach Emacs and falls back to the curses pinentry (visible as a TUI prompt
when committing from vterm) or hangs entirely (as seen from Magit).
#+begin_src emacs-lisp
(require 'pinentry)
(pinentry-start)
#+end_src
** Agent Shell ** Agent Shell
#+begin_src emacs-lisp #+begin_src emacs-lisp
+1 -1
View File
@@ -119,7 +119,7 @@
services.greetd.settings = lib.mkForce { services.greetd.settings = lib.mkForce {
terminal.vt = 1; terminal.vt = 1;
default_session = { default_session = {
command = "${pkgs.tuigreet}/bin/tuigreet --time --user-menu --cmd '/home/aner/.login.sh'"; command = "${pkgs.tuigreet}/bin/tuigreet --time --user-menu --user-menu-min-uid 1000 --user-menu-max-uid 29999 --cmd '/home/aner/.login.sh'";
user = "greeter"; user = "greeter";
}; };
initial_session = { initial_session = {