Bug 34418 - Скрипты для запуска gpg-agent устарели
: Скрипты для запуска gpg-agent устарели
Status: NEW
: Sisyphus
(All bugs in Sisyphus/gnupg2)
: unstable
: all Linux
: P3 normal
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2018-01-02 14:10 by
Modified: 2018-01-18 15:32 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2018-01-02 14:10:28
В новой версии gnupg2 поддержка GPG_AGENT_INFO была убрана [1], но наши
сессионные скрипты продолжают её проверять [2].

[1]
http://git.altlinux.org/gears/g/gnupg2.git?p=gnupg2.git;a=blob;f=gnupg/ChangeLog#l19972
[2]
http://git.altlinux.org/gears/g/gnupg2.git?p=gnupg2.git;a=blob;f=gnupg-agent-wrapper.sh#l12
------- Comment #1 From 2018-01-09 14:59:05 -------
Я никаких проблем или плохих особенностей не нашёл, а вот, что с seahorse, я
точно не знаю, но сейчас совместимость должна остаться даже при отправке в p8.

2 Aris: просьба по возможности посмотреть, не вылазит ли чего на p8 и Сизифе с
gnupg2-2.1 . http://git.altlinux.org/tasks/197625/

2 Mike: в Mate я тоже не в курсе, есть ли там вообще какой-нибудь "seahorse".
------- Comment #2 From 2018-01-09 15:26:09 -------
(В ответ на комментарий №1)
> 2 Mike: в Mate я тоже не в курсе, есть ли там вообще какой-нибудь "seahorse".
По крайней мере в стартеркит/регулярку попадает.
------- Comment #3 From 2018-01-09 15:36:31 -------
(В ответ на комментарий №1)
> Я никаких проблем или плохих особенностей не нашёл, а вот, что с seahorse, я
> точно не знаю, но сейчас совместимость должна остаться даже при отправке в p8.

Но постой, в скрипте есть проверка переменной и сокета, которого больше gnupg2
не создаёт и апстрим говорит, что нужно использовать gpgconf вместо этого.

Ты можешь добавить поддержку gpgconf в скрипт ?
------- Comment #4 From 2018-01-09 16:09:04 -------
Сергей, оно сейчас работает только потому, что gpg-agent находит свой сокет в
/var/run и от казывется запускаться второй раз с соответствующей руганью. В
данный момент вся логика в gnupg-agent-wrapper.sh просто не работает и всегда
происходит попытка запустить агента.

Это очень легко проверить, если открыть консоль и дёрнуть
/etc/profile.d/gnupg-agent.sh несколько раз.
------- Comment #5 From 2018-01-09 16:12:20 -------
насчёт seahorse-agent: Его удалили в 2.21.90:
https://github.com/GNOME/seahorse/blob/140c1740ee3d166dbee7690948eef3befe42aef0/NEWS#L894
------- Comment #6 From 2018-01-09 16:44:08 -------
(В ответ на комментарий №5)
> насчёт seahorse-agent: Его удалили в 2.21.90:
> https://github.com/GNOME/seahorse/blob/140c1740ee3d166dbee7690948eef3befe42aef0/NEWS#L894

За него давным-давно gnome-keyring, который, разумеется, с нынешним gnupg
сломался.
------- Comment #7 From 2018-01-09 16:55:24 -------
(В ответ на комментарий №6)
> За него давным-давно gnome-keyring, который, разумеется, с нынешним gnupg
> сломался.

Я это к тому писал, что seahouse-agent'а в сизифе больше нет и не будет, а в
скрипте на него есть проверка [1].

[1]
http://git.altlinux.org/gears/g/gnupg2.git?p=gnupg2.git;a=blob;f=gnupg-agent-wrapper.sh#l25
------- Comment #8 From 2018-01-12 12:21:45 -------
(В ответ на комментарий №7)
> в сизифе
С p8 тоже должно быть совместимо, если что.

Я очень непротив, если кто поправит, чтоб и в Сизифе и в p8 работало в любом
DE.
Насколько я понял, достаточно эти скрипты просто выкинуть, но не уверен насчет
всего софта.
------- Comment #9 From 2018-01-12 12:30:28 -------
(В ответ на комментарий №6)
> gnome-keyring, который, разумеется, с нынешним gnupg сломался.
Постарайся выяснить, т.к. gpg-agent сейчас автозапускается из нутрей сам.
gnome-keyring там, видимо, уже совсем не прокатит.

Попробуй удалить
/etc/profile.d/gnupg-agent.sh
и посмотреть, а вдруг всё заработает.
pinentry-gnome3 установить можно на крайняк.

Ну или где-то в Федоре посмотреть, как оно там.
------- Comment #10 From 2018-01-12 12:40:44 -------
(В ответ на комментарий №4)
> gpg-agent находит свой сокет в /var/run
> и от казывется запускаться второй раз

https://gnupg.org/faq/whats-new-in-2.1.html
With GnuPG 2.1 the need of GPG_AGENT_INFO has been completely removed and the
variable is ignored. Instead a fixed Unix domain socket named S.gpg-agent in
the GnuPG home directory (by default ~/.gnupg) is used. The agent is also
started on demand by all tools requiring services from the agent. 

/usr/share/doc/gnupg-2.1.*/NEWS
  * A socket directory for a non standard GNUGHOME is now created on
    the fly under /run/user.
------- Comment #11 From 2018-01-12 13:15:32 -------
(В ответ на комментарий №10)
> (В ответ на комментарий №4)
> > gpg-agent находит свой сокет в /var/run
> > и от казывется запускаться второй раз
> 
> https://gnupg.org/faq/whats-new-in-2.1.html
> With GnuPG 2.1 the need of GPG_AGENT_INFO has been completely removed and the
> variable is ignored. Instead a fixed Unix domain socket named S.gpg-agent in
> the GnuPG home directory (by default ~/.gnupg) is used. The agent is also
> started on demand by all tools requiring services from the agent. 
> 
> /usr/share/doc/gnupg-2.1.*/NEWS
>   * A socket directory for a non standard GNUGHOME is now created on
>     the fly under /run/user.

Именно. Я этот текст и цитировал ))

Я подозреваю, что некоторые программы сломались т.к. они всё ещё ожидают
наличия GPG_AGENT_INFO.
------- Comment #12 From 2018-01-12 13:44:07 -------
(В ответ на комментарий №11)
> Я подозреваю, что некоторые программы сломались т.к. они всё ещё ожидают
> наличия GPG_AGENT_INFO.

Я споткнулся о то, что gear-create-tag больше не использует gpg-agent, который
запущен. Подробнее пока не разбирался.
------- Comment #13 From 2018-01-12 16:47:56 -------
(В ответ на комментарий №12)
> (В ответ на комментарий №11)
> > Я подозреваю, что некоторые программы сломались т.к. они всё ещё ожидают
> > наличия GPG_AGENT_INFO.
> 
> Я споткнулся о то, что gear-create-tag больше не использует gpg-agent, который
> запущен. Подробнее пока не разбирался.

Думаю, что для совместимости лучше выставлять эту переменную.
------- Comment #14 From 2018-01-17 12:10:54 -------
Я отправил gnupg2-2.1.23-alt3 http://webery.altlinux.org/task/198179 .
Попробуйте.
------- Comment #15 From 2018-01-18 12:13:55 -------
(В ответ на комментарий №12)
> Я споткнулся о то, что gear-create-tag больше не использует gpg-agent, который
> запущен.
Проверил. Теперь использует.
------- Comment #16 From 2018-01-18 13:04:56 -------
(В ответ на комментарий №15)
> (В ответ на комментарий №12)
> > Я споткнулся о то, что gear-create-tag больше не использует gpg-agent, который
> > запущен.
> Проверил. Теперь использует.

Да, если агент запущен, то работает, спасибо. Остается только проблема с
запуском агента, ведь gpg его сам не запускает, в отличии от gpg2. Не знаю,
стоит ли его запускать всегда как раньше или пользователи gpg должны теперь
сами заботиться о его запуске.
------- Comment #17 From 2018-01-18 15:32:05 -------
(В ответ на комментарий №16)
> Да, если агент запущен, то работает, спасибо. Остается только проблема с
> запуском агента, ведь gpg его сам не запускает, в отличии от gpg2.
git config --global gpg.program gpg2

> Не знаю,
> стоит ли его запускать всегда как раньше или пользователи gpg должны теперь
> сами заботиться о его запуске.
Да, но если кто научит gpg или сможет вменяемо поправить
/usr/lib/gnupg/gnupg-agent-wrapper, то перестанут быть должны.