[devel] [#210757] EPERM (try 3) bash3.git=3.2.57-alt4 bash.git=4.4.23-alt1 bash-completion.git=2.8-alt1
Aleksei Nikiforov
darktemplar на altlinux.org
Чт Авг 2 12:08:13 MSK 2018
02.08.2018 12:00, Alexey V. Vissarionov пишет:
> On 2018-08-02 11:38:15 +0300, Aleksei Nikiforov wrote:
>
> > Проблема при такой сборке возникает с плагинами bash. Сейчас
> > плагины для bash3 лежат в /usr/lib/bash. Плагины bash4 лучше
> > держать отдельно - их больше по сравнению с bash3, да и
> > совместимость не гарантированна.
>
> Они сами по себе, или могут приехать с каким-то сторонним софтом?
В bash3 таких встроенных плагинов нет, в bash4 - более десятка. Также
есть внешние - это как минимум в пакетах bash-builtin-lockf и bashdb.
>
> > Если для совместимости с текущим сетапом использовать
> > /usr/lib/bash для плагинов bash3, то плагины bash4 можно
> > положить в /usr/lib/bash4, например.
>
> Если они меж собой несовместимы - вплоть до %_libdir/%name-%version
Надеюсь в репозитории не будет столько версий bash, чтобы потребовалось
столько директорий с настолько подробным разделением по версиям. И таки
не %_libdir, а скорее %_libexecdir.
>
> > Но тогда в некоторых пакетах для переезда на bash4 прийдётся
> > явно менять захардкоженный путь до /usr/lib/bash/lockf
>
> А много ли таких пакетов?
Я нашёл пока что только 3: girar, hasher и gnupg2.
>
> > либо скриптовать поведение по поиску пути до lockf в зависимости
> > от версии bash,
>
> И это правильное решение, так как для его реализации достаточно
> одного файла /etc/profile.d/lockf.sh со строчкой export LOCKF=...
>
> > а если lockf для bash4 будет в отдельном пакете - ещё и
> > менять зависимости. Например, такой путь захардкожен в girar,
> > hasher, gnupg2
>
> Дык и добавить туда проверку $LOCKF
>
> Определено - пользуем, нет - export LOCKF="/usr/lib/bash/lockf" и
> опять же пользуем.
>
Это не отменяет того факта, что нужно для таких пакетов добавлять
зависимость на пакет, содержащий lockf для правильной версии bash помимо
прочего. Можно конечно lockf для всех версий bash в репозитории засунуть
в 1 пакет, но такой подход мне не особо нравится.
Подробная информация о списке рассылки Devel