Попробуйте
yum install xz-devel
на Centos, чтобы получить библиотеки liblzma (например, для Silver-searchcher. Также может потребоваться pcre-devel
для зависимости libpcre)
Я столкнулся именно с этой проблемой (OSX Sierra 10.12.6, gpg/GnuPG 2.2.5)
Команды, которые будут зависать:
gpg -K # --list-secret-keys
gpg -d # --decrypt
gpg --edit-key
gpgconf --kill gpg-agent
Мое решение было таким же, как упомянуто Джоном выше (, т.е. kill gpg -агент ), так как большинство других методов на как -can -i -перезапустить -gpg -агент также будут зависать.
# Solution
pkill -9 gpg-agent
Затем для подписания коммитов git я установил tty env, как указано в cas выше, а также в gpg -failed -на -sign -commit -объект .
export GPG_TTY=$(tty)
$ ❯ ps aux | grep -E "gpg-agent"
alper 28970 0.0 0.0 92436 3284 ? SLsl 15:31 0:00 /usr/bin/gpg-agent --supervised
Здесь выходная переменная содержит 28970
.
from subprocess import Popen, PIPE
import signal
def kill_process_by_name(process_name):
p1 = Popen(["ps", "auxww"], stdout=PIPE)
p2 = Popen(["grep", "-E", process_name], stdin=p1.stdout, stdout=PIPE)
p1.stdout.close() # noqa
p3 = Popen(["awk", "{print $2}"], stdin=p2.stdout, stdout=PIPE)
p2.stdout.close()
output = p3.communicate()[0].decode("utf-8").strip()
lines = output.splitlines() # awk may return more than one pid number
for pid in lines:
if pid.isnumeric():
breakpoint() # DEBUG
os.kill(int(pid), signal.SIGKILL)