Lubię podpisywać moje polecenia git za pomocą mojego klucza PGP, więc byłem dość zaniepokojony, gdy poszedłem do, git commit -S
ale zamiast pytać o hasło do klucza PGP, git właśnie zaczął się zawieszać. Nie zmieniłem konfiguracji GPG od kilku miesięcy i od tego czasu dokonałem wielu zmian bez żadnego problemu. Dodatkowo, gdy próbuję wyświetlić moje klucze prywatne gpg -K
, gpg zawiesza się. Jednak po uruchomieniu, gpg -k
aby wyświetlić moje klucze publiczne, zwraca listę jak zwykle. Mam nadzieję, że ktoś zorientuje się, co powoduje ten problem i jak go naprawić.
gpg-agent
stronie podręcznika, że ustawienie GPG_TTY jak wyżej nie jest czymś, co zhackowałem do pracy, jest wymagane. Strona podręcznika mówi, że zawsze powinieneś ustawiać go w swoim .bashrc tak jak ja, a także mówi It is important that this environment variable always reflects the output of the tty command.
- to musiało być miejsce, z którego go otrzymałem. Kolejną rzeczą, na którą musisz uważać, jest program pinentry używany przez gpg-agent. Moje ustawiłem (w ~/.gnupg/gpg-agent.conf
) na/usr/bin/pinentry-curses
gpg-agent
podobną konfigurację w .bashrc (itp.) systemu zdalnego i skonfigurowano wyświetlanie monitu na ekranie X pilota lub podobnym? Miałem podobne problemy w przeszłości (np. ssh-sing z terminala na moim urządzeniu mythtv do mojego komputera stacjonarnego, aby uruchomić coś wymagającego gpg. miałem również podobne problemy zssh-agent
) i brute-force „naprawił” toexport GPG_TTY=$(tty)
w .bashrc, aby upewnić się, że monit jest zawsze na bieżącym tty. i tak nie mogę znieść monitów o podanie hasła GUI.