[devel] Fwd: [sisyphus] Новая версия GnuPG в Сизифе

Vladimir D. Seleznev vseleznv на altlinux.org
Пт Окт 18 22:33:27 MSK 2019


On Fri, Oct 18, 2019 at 09:30:21PM +0300, Paul Wolneykien wrote:
> 18.10.2019 20:26, Vladimir D. Seleznev пишет:
> >> Дело, естественно, не в названии пакета, а в его содержимом. Дело в
> >> необходимости перенастройки других программ на /usr/bin/gpg2 вместо
> >> /usr/bin/gpg. Было бы здорово, если бы это решалось установкой пакета.
> >> Для программ, предназначенных исключительно для GnuPG 1.x, остался бы
> >> /usr/bin/gpg1 (на который их нужно было бы явно заранее перевести).
> >
> > Проблема в том, что программы, которым нужен первый gnupg, _уже зависят_
> > от /usr/bin/gpg.  В то же время те программы, которым нужен второй
> > gnupg, можно собирать с зависимостью на /usr/bin/gpg2 и настройкой на
> > него.
> 
>   Нет, не так. Сейчас все программы о которых я говорил, зависят от
> /usr/bin/gpg . (Но это далеко не всегда означает, что им нужна
> конкретная версия!). Можно внести изменения в одну часть этих программ —
> обозначить выбор этой части в пользу /usr/bin/gpg1, а можно внести
> изменения в другую часть — переориентировать их на /usr/bin/gpg2. Ты
> предлагаешь второе, но в чём преимущество? В обоих случаях нужно менять
> сборочные зависимости, вносить изменения в конфигурационные файлы, а
> иногда и в сам код. Менять ли "Requires: gnupg" на "Requires: gnupg1" со
> всеми сопутствующими изменениями или же менять "Requires: gnupg" на
> "Requires: gnupg2" тоже со всеми сопутствующими изменениями — это
> абсолютно всё равно.

Нет, ты не понял: ты не можешь исправить зависимости на _уже_
установленных системах у всех пользователей. Поэтому гораздо проще и
предсказуемее оставить /usr/bin/gpg за первым gnupg, а переводить те
пакеты, которым нужен gnupg2, на /usr/bin/gpg2.

> > Ты не можешь исправить у всех пользователей на всех уже
> > установленных системах /usr/bin/gpg на /usr/bin/gpg1, 
> 
>   Почему? При обновлении новая версия пакета gnupg2 установит
> /usr/bin/gpg, а новая версия gnupg установит /usr/bin/gpg1 — файловых
> конфликтов между ними не будет так же, как их нет сейчас. Само собой,
> если система не обновляется, то все эти "переименования" её не затронут.

И это сломает уже установленные пакеты, которые рассчитывают, что
/usr/bin/gpg — это первый gnupg.

> > но ты можешь собирать новые пакеты
> 
>   А что за новые пакеты? Речь до сих пор была о старых пакетах. Задача
> состоит в том, чтобы перевести программы из уже существующих пакетов на
> использование новой версии GnuPG, которая поставляется у нас с другим
> именем _файла_ (а не только пакета).

Да, про другое имя файла я и писал.

> > так, чтобы у них были правильно прописаны
> > зависимости на /usr/bin/gpg2. Это надёжнее в поддержке и обратно
> > совместимо с уже существующими установками, и не ломает точечные
> > обновления.

-- 
   С уважением,
   Владимир Селезнев


Подробная информация о списке рассылки Devel