Re: Guix Home: SSH won't ask for GPG password

2023-10-09 Thread Aleksandr Vityazev
Hi,

What does the output of the command: ssh-add -L show? Are the keys
represented by the agent?

On 2023-10-05, 09:18 -0700, Caleb Herbert  wrote:

> Guix System.
>
> In home-configuration.scm:
> (service home-gpg-agent-service-type
> (home-gpg-agent-configuration
>  (pinentry-program
>   (file-append pinentry-gnome3 "/bin/pinentry"))
>  (ssh-support? #t)))
>
> caleb@bender ~$ ssh c...@tty.sdf.org
> c...@tty.sdf.org's password: 
>
> This shouldn't happen. Pinentry should come up and ask me for my GPG password.
>
> gpg-agent.conf looks normal.
>
> caleb@bender ~$ cat /home/caleb/.gnupg/gpg-agent.conf 
> pinentry-program 
> /gnu/store/6rlqjdc9ginn4gnkwg8mhqwm015phhrm-pinentry-gnome3-1.2.1/bin/pinentry
> default-cache-ttl 600
> max-cache-ttl 7200
> default-cache-ttl-ssh 1800
> max-cache-ttl-ssh 7200
> caleb@bender ~$

gpg-agent.conf LGTM, except for the lack of enable-ssh-support.
But sheperd runs gpg with the --enable-ssh-support option.

-- 
Best regards,
Aleksandr Vityazev



Re: Guix Home: SSH won't ask for GPG password

2023-10-06 Thread Caleb Herbert
Maxim Cournoyer  wrote ..
> What do you mean by "still" ?  It must have worked at some point?  What
> changed in your configuration?

I don't know when it last worked. I think it stopped working when I added a 
package.

Here is my full config:

;; This "home-environment" file can be passed to 'guix home reconfigure'
;; to reproduce the content of your profile.  This is "symbolic": it only
;; specifies package names.  To reproduce the exact same profile, you also
;; need to capture the channels being used, as returned by "guix describe".
;; See the "Replicating Guix" section in the manual.

(use-modules (gnu home)
 (gnu packages)
 (gnu packages gnupg)
 (gnu services)
 (guix gexp)
 (gnu home services shells)
 (gnu home services gnupg))

(home-environment
  ;; Below is the list of packages that will show up in your
  ;; Home profile, under ~/.guix-home/profile.
 (packages (specifications->packages (list "emacs"
   "password-store"
   "pinentry"
   "gnupg"
   "evolution"
   "icecat"
   "git"
   "mosh"
   "wgetpaste"
   "evolution-data-server"
   "dino")))

  ;; Below is the list of Home services.  To search for available
  ;; services, run 'guix home search KEYWORD' in a terminal.
  (services
   (list (service home-bash-service-type
  (home-bash-configuration
   (aliases '(("grep" . "grep --color=auto") ("ll" . "ls -l")
  ("ls" . "ls -p --color=auto")))
   (bashrc (list (local-file ".bashrc" "bashrc")))
   (bash-profile (list (local-file ".bash_profile"
   "bash_profile")
 (service home-gpg-agent-service-type
  (home-gpg-agent-configuration
   (pinentry-program
(file-append pinentry "/bin/pinentry"))
   (ssh-support? #t))


caleb@bender ~$ guix describe
Generation 1Oct 04 2023 20:25:40(current)
  guix 20df2ee
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: master
commit: 20df2ee697bb5057a476a926a363d71cc8944c84
caleb@bender ~$ 

-- 
Caleb
https://bluehome.net/csh/


Re: Guix Home: SSH won't ask for GPG password

2023-10-06 Thread Maxim Cournoyer
Hi Caleb,

Caleb Herbert  writes:

> Maxim Cournoyer  wrote ..
>> I now use the canonical 'pinentry' package, which seems most featureful.
>
> Changed to plain "pinentry".
>
> (service home-gpg-agent-service-type 
>   (home-gpg-agent-configuration   
>(pinentry-program  
> (file-append pinentry "/bin/pinentry"))   
>(ssh-support? #t)))
>
>
> I still get an error when trying to reconfigure. 

What do you mean by "still" ?  It must have worked at some point?  What
changed in your configuration?

> Loading /gnu/store/2hwp7i1xn24rlsnwmcc8hpbdynznv4an-shepherd.conf.
> herd: error: exception caught while executing 'load' on service 'root':
> In procedure fport_write: Input/output error
> Comparing 
> /gnu/store/3jphbp9sisp54nshd8dimrnn4lks3p4d-home/profile/share/fonts and
>   
> /gnu/store/vkkl9ymxkcq5a72z42rm4yx573k0wk1f-home/profile/share/fonts... done 
> (same)
> Evaluating on-change gexps.
>
> On-change gexps evaluation finished.

Hm.  I'm not sure what that is trying to say, other than there was some
error in the service definition.

-- 
Thanks,
Maxim



Re: Guix Home: SSH won't ask for GPG password

2023-10-05 Thread Maxim Cournoyer
Hi,

Caleb Herbert  writes:

> Guix System.
>
> In home-configuration.scm:
> (service home-gpg-agent-service-type
> (home-gpg-agent-configuration
>  (pinentry-program
>   (file-append pinentry-gnome3 "/bin/pinentry"))
>  (ssh-support? #t)))
>
> caleb@bender ~$ ssh c...@tty.sdf.org
> c...@tty.sdf.org's password: 
>
> This shouldn't happen. Pinentry should come up and ask me for my GPG password.
>
> gpg-agent.conf looks normal.
>
> caleb@bender ~$ cat /home/caleb/.gnupg/gpg-agent.conf 
> pinentry-program 
> /gnu/store/6rlqjdc9ginn4gnkwg8mhqwm015phhrm-pinentry-gnome3-1.2.1/bin/pinentry
> default-cache-ttl 600
> max-cache-ttl 7200
> default-cache-ttl-ssh 1800
> max-cache-ttl-ssh 7200

I don't use guix home, but my hand-crafted gpg-agent.conf reads like:

--8<---cut here---start->8---
# PIN entry program
enable-ssh-support
allow-emacs-pinentry

# Remember GPG/SSH passwords for longer.
default-cache-ttl 28800 # cache GPG on access for 8 hours
max-cache-ttl 57600 # keep GPG on cache for a maximum of 16 hours
default-cache-ttl-ssh 28800 # cache SSH on access for 8 hours
max-cache-ttl-ssh 57600 # keep SSH on cache for a maximum of 16 hours
--8<---cut here---end--->8---

Also, it could be caused by the pinentry-gnome3 variant.  I remember
wrestling with a similar problem in the past, only to find out that it
was limited.

I now use the canonical 'pinentry' package, which seems most featureful.

HTH,

-- 
Maxim