Bug 34418 - Скрипты для запуска gpg-agent устарели
Summary: Скрипты для запуска gpg-agent устарели
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: gnupg2 (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: Alexey Gladkov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-01-02 14:10 MSK by Alexey Gladkov
Modified: 2020-12-29 21:53 MSK (History)
7 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexey Gladkov 2018-01-02 14:10:28 MSK
В новой версии 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 Sergey V Turchin 2018-01-09 14:59:05 MSK
Я никаких проблем или плохих особенностей не нашёл, а вот, что с seahorse, я точно не знаю, но сейчас совместимость должна остаться даже при отправке в p8.

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

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

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

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

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

За него давным-давно gnome-keyring, который, разумеется, с нынешним gnupg сломался.
Comment 7 Alexey Gladkov 2018-01-09 16:55:24 MSK
(В ответ на комментарий №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 Sergey V Turchin 2018-01-12 12:21:45 MSK
(В ответ на комментарий №7)
> в сизифе
С p8 тоже должно быть совместимо, если что.

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

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

Ну или где-то в Федоре посмотреть, как оно там.
Comment 10 Sergey V Turchin 2018-01-12 12:40:44 MSK
(В ответ на комментарий №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 Alexey Gladkov 2018-01-12 13:15:32 MSK
(В ответ на комментарий №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 Mikhail Efremov 2018-01-12 13:44:07 MSK
(В ответ на комментарий №11)
> Я подозреваю, что некоторые программы сломались т.к. они всё ещё ожидают
> наличия GPG_AGENT_INFO.

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

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

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

> Не знаю,
> стоит ли его запускать всегда как раньше или пользователи gpg должны теперь
> сами заботиться о его запуске.
Да, но если кто научит gpg или сможет вменяемо поправить /usr/lib/gnupg/gnupg-agent-wrapper, то перестанут быть должны.
Comment 18 manowar@altlinux.org 2019-03-02 19:51:40 MSK
Посмотрим…
Comment 19 Repository Robot 2020-12-29 21:53:31 MSK
gnupg2-2.2.26-alt1 -> sisyphus:

 Sun Dec 27 2020 Alexey Gladkov <legion@altlinux.ru> 2.2.26-alt1
 - New version (2.2.26) (ALT#39307).
 - Rebased to upstream git history.
 - Hardened build checks.
 - Fixed build dependencies.
 - Updated License tag.
 - Changed the permissions for creating plaintext files.
 - Changed the defaults for --personal-digest-preferences to advertise a
   preference for SHA-512.
 - Removed GOST patches.
 - Removed seahorse-agent (removed 13 years ago in seahorse 2.21.90).
 - Removed support for the GPG_AGENT_INFO envvar (removed 6 years ago in
   gnupg2 2.1.0-beta864) (ALT#34418).
 - Removed per user gpg-agent startup.
 - Moved addgnupghome and applygnupgdefaults utilities to docs.