[devel] I: usrmerge
Leonid Krivoshein
klark.devel на gmail.com
Пн Июн 3 00:32:11 MSK 2024
Доброго времени!
On 3/27/24 15:54, Arseny Maslennikov wrote:
> On Sat, Mar 16, 2024 at 04:24:44PM +0300, Arseny Maslennikov wrote:
>> On Sat, Feb 03, 2024 at 12:38:44AM +0300, Arseny Maslennikov wrote:
>>> === Сначала о пакетах ===
>>>
>>> Во-первых, не хотелось бы обновлять сотню пакетов в одной
>>> транзакции с пакетом filesystem, содержащим вместо /bin, /sbin,
>>> ... симлинки. Чтобы этого избежать, надо добиться, чтобы пакеты,
>>> кладущие что-либо в эти каталоги (вне %_prefix),
>>> устанавливались и на merged, и на unmerged, и на split[1].
>>> Для этого планируется ввести brp-модуль, который при сборке
>>> пакета, если в %buildroot лежит что-то в соотв. каталогах вне
>>> префикса, создаст копию этого файла в аналогичном месте под
>>> префиксом.
>>> Можно было бы вместо копии делать ссылку, но оказалось, что нет:
>>> * (упакованные в cpio) симлинк поверх файла или файл поверх симлинка нельзя
>>> установить на merged-usr, т. е. поверх друг друга;
>>> * (упакованные в cpio) хардлинки нельзя установить на
>>> split-usr-иерархию, потому что они придутся на разные ФС, и
>>> rpm не сможет их расщепить (изготовить одинаковые inode).
>>> Это позволило снизить количество пакетов с файлами в /bin и
>>> /sbin, для которых потребуются ручные изменения, с 90 до ~20.
>>>
>>> [1] https://www.altlinux.org/Usrmerge#%D0%93%D0%BB%D0%BE%D1%81%D1%81%D0%B0%D1%80%D0%B8%D0%B9
>> Почти реализовано (ждём install checks).
>> https://git.altlinux.org/tasks/327286
>> Можно коммитить задание, как только будет готово к коммиту и при
>> отсутствии иных возражений.
>>
>> Прошу одобрений от:
> Спасибо! Одобрения получены.
> Сегодня задание войдёт в репозиторий.
>
Прошу прощения за тупой вопрос, но я нигде не нашёл прямой рекомендации
использовать в качестве шебанга, например, /usr/bin/bash. Благодаря
симлинку ведь и старые шебанги будут корректно обрабатываться? Или не
совсем так? А что с зависимостями на /bin/bash?
>> glebfm@ помог провести тестовую пересборку репозитория, получающегося из
>> этого задания, которая помогла выявить и исправить 2 ошибки. 5 новых
>> пакетов не пересобрались по каким-то своим причинам; в окружении задания
>> выше они пересобрались.
>>
>>> Мы ожидаем, что после появления rpm-build с новым brp-модулем в
>>> репозитории немногочисленные исправленные пакеты будут собраны в
>>> Sisyphus в своих индивидуальных заданиях (транзакциях), не
>>> создавая на сборочнице заторов на CI-проверках каждого
>>> подзадания.
--
WBR, Leonid Krivoshein.
Подробная информация о списке рассылки Devel