From: Aleksei Nikiforov <darktemplar@altlinux.org>
To: devel@lists.altlinux.org
Subject: Re: [devel] [#210757] EPERM (try 3) bash3.git=3.2.57-alt4 bash.git=4.4.23-alt1 bash-completion.git=2.8-alt1
Date: Thu, 2 Aug 2018 11:38:15 +0300
Message-ID: <3f7d509c-4dbf-0422-fcf4-26696ba4a745@altlinux.org> (raw)
In-Reply-To: <20180726095325.GB6504@altlinux.org>
Здравствуйте.
26.07.2018 12:53, Dmitry V. Levin пишет:
> On Wed, Jul 25, 2018 at 06:21:46PM +0300, Aleksei Nikiforov wrote:
>> Здравствуйте.
>>
>> Сделал новую тестовую сборку bash-4, в этот раз также с отдельным bash-3
>> и свежим bash-completion. Прошу заинтересованных потестировать.
>
> Спасибо. Ввиду того, что у нас bash-5 не за горами, может быть, упаковать
> bash-4 как bash4 (с подпакетами sh4, bash4, bash4-devel, bash4-doc,
> bash4-examples), и, по аналогии с gcc-defaults, сделать bash-defaults
> c подпакетами sh, bash, bash-devel, bash-doc, bash-examples,
> содержащие общие файлы (такие как bashrc) и переключающие bash
> на нужную версию?
>
Я попробовал собрать bash3 и bash4 таким образом, с отдельными пакетами
sh и bash с симлинками и зависимостями на последнюю версию sh4 и bash4
соответственно.
Проблема при такой сборке возникает с плагинами bash. Сейчас плагины для
bash3 лежат в /usr/lib/bash. Плагины bash4 лучше держать отдельно - их
больше по сравнению с bash3, да и совместимость не гарантированна. То,
что собранный для bash3 пакет bash-builtin-lockf работает с bash4 скорее
стоит считать удачей и не рассчитывать на такое поведение, особенно при
обновлении до следующих версий bash.
В связи со всем вышесказанным, для плагинов bash4 нужна отдельная
директория.
Если для совместимости с текущим сетапом использовать /usr/lib/bash для
плагинов bash3, то плагины bash4 можно положить в /usr/lib/bash4,
например. Но тогда в некоторых пакетах для переезда на bash4 прийдётся
явно менять захардкоженный путь до /usr/lib/bash/lockf, либо скриптовать
поведение по поиску пути до lockf в зависимости от версии bash, а если
lockf для bash4 будет в отдельном пакете - ещё и менять зависимости.
Например, такой путь захардкожен в girar, hasher, gnupg2. Для такого
сетапа сделано тестовое задание #210913 (но указанные пакеты ещё не
обновлены).
Если же попытаться использовать директорию /usr/lib/bash3 для плагинов
bash3, /usr/lib/bash4 - для bash4, и сделать symlink /usr/lib/bash для
текущей версии, то такому сетапу помешает rpm - нет прямого способа
заменить директорию на symlink, т.е. прямая миграция невозможна. Есть
незавершённое тестовое задание #210931 с таким сетапом.
Если же в /usr/lib/bash держать плагины для текущей версии bash, а для
bash3 их пересобрать в /usr/lib/bash3, то такой сетап уже есть в
тестовом задании #210757. Разве что нет симлинков sh -> sh4, bash ->
bash4, и можно дособрать lockf для bash3 в /usr/lib/bash3, но
актуальность всех этих действий в таком случае под вопросом, особенно
необходимости таких симлинков. И не нужно при апгрейде bash пересобирать
дополнительные пакеты лишь для смены захардкоженного пути и зависимостей.
Какие есть идеи по поводу данной проблемы?
С уважением,
Алексей Никифоров
next prev parent reply other threads:[~2018-08-02 8:38 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-07-25 15:21 ` Aleksei Nikiforov
2018-07-26 7:12 ` Anton Farygin
2018-07-26 8:54 ` Aleksei Nikiforov
2018-07-26 9:11 ` Vladimir Didenko
2018-07-26 9:15 ` Aleksei Nikiforov
2018-07-26 9:17 ` Vladimir Didenko
2018-07-26 9:25 ` Aleksei Nikiforov
2018-07-26 9:44 ` Dmitry V. Levin
2018-07-26 16:55 ` Aleksei Nikiforov
2018-07-26 17:17 ` Anton Farygin
2018-07-26 9:53 ` Dmitry V. Levin
2018-07-26 10:52 ` Anton Farygin
2018-07-26 11:07 ` Dmitry V. Levin
2018-07-26 11:16 ` Anton Farygin
2018-07-26 11:39 ` Dmitry V. Levin
2018-07-26 11:46 ` Anton Farygin
2018-07-26 12:04 ` Igor Zubkov
2018-07-27 9:05 ` Aleksei Nikiforov
2018-08-02 8:38 ` Aleksei Nikiforov [this message]
2018-08-02 9:00 ` Alexey V. Vissarionov
2018-08-02 9:08 ` Aleksei Nikiforov
2018-08-02 10:24 ` Alexey V. Vissarionov
2018-08-03 7:48 ` Aleksei Nikiforov
2018-08-03 8:03 ` Alexey V. Vissarionov
2018-08-03 8:04 ` Anton Farygin
2018-08-03 8:41 ` Alexey V. Vissarionov
2018-08-02 19:19 ` Alexey Tourbin
2018-08-03 8:29 ` Aleksei Nikiforov
2018-08-03 8:58 ` Dmitry V. Levin
2018-08-03 14:51 ` Dmitry V. Levin
2018-08-03 15:05 ` Aleksei Nikiforov
2018-08-03 15:08 ` Alexey V. Vissarionov
2018-08-03 15:13 ` Aleksei Nikiforov
2018-08-03 15:16 ` Dmitry V. Levin
2018-08-03 15:20 ` Aleksei Nikiforov
2018-08-03 15:23 ` Dmitry V. Levin
2018-08-03 15:26 ` Aleksei Nikiforov
2018-08-03 15:36 ` Anton Farygin
2018-08-03 15:39 ` Aleksei Nikiforov
2018-08-03 15:43 ` Dmitry V. Levin
2018-08-03 15:46 ` Aleksei Nikiforov
2018-08-03 15:41 ` Dmitry V. Levin
2018-08-03 15:47 ` Anton Farygin
2018-08-03 15:49 ` Aleksei Nikiforov
2018-08-03 16:14 ` Anton Farygin
2018-08-03 17:03 ` Dmitry V. Levin
2018-08-04 6:19 ` Anton Farygin
2018-08-04 10:10 ` Dmitry V. Levin
2018-08-05 7:39 ` Anton Farygin
2018-08-03 15:33 ` Dmitry V. Levin
2018-08-03 15:43 ` Aleksei Nikiforov
2018-08-03 17:06 ` Dmitry V. Levin
2018-08-04 6:21 ` Anton Farygin
2018-08-04 10:15 ` Dmitry V. Levin
2018-08-07 18:50 ` Alexey Tourbin
2018-08-07 18:59 ` Dmitry V. Levin
2018-08-07 19:36 ` Alexey Tourbin
2018-08-06 9:43 ` Aleksei Nikiforov
2018-08-07 9:21 ` Anton Farygin
2018-08-06 6:35 ` Vitaly Lipatov
2018-08-06 7:17 ` Anton Farygin
2018-08-06 7:18 ` Anton Farygin
2018-08-06 9:20 ` Vitaly Lipatov
2018-08-07 11:48 ` Dmitry V. Levin
2018-08-07 11:49 ` Anton Farygin
2018-08-15 8:52 ` Anton Farygin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3f7d509c-4dbf-0422-fcf4-26696ba4a745@altlinux.org \
--to=darktemplar@altlinux.org \
--cc=devel@lists.altlinux.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git