[sisyphus] A: Прошу тестировать доработанные sustemd и dbus

Aleksey Avdeev solo на solin.spb.ru
Чт Фев 18 15:49:05 MSK 2016


18.02.2016 02:26, Dmitry V. Levin пишет:
> On Mon, Feb 15, 2016 at 01:06:23PM +0300, Alexey Shabalin wrote:
>> 11 февраля 2016 г., 9:06 пользователь Aleksey Avdeev написал:
>>> 10.02.2016 23:41, Aleksey Avdeev пишет:
>>> ...
>>>>
>>>> 2. sysvinit-tmpfiles-0.1-alt0.M70T.1 (см.
>>>> <http://git.altlinux.org/people/solo/packages/sysvinit-tmpfiles.git?p=sysvinit-tmpfiles.git;a=commit;h=56e0cca154df8e170016caf2c0542b252cee0091>)
>>>> -- Поддержка tmpfiles для sysvinit.
>>>
>>>   В <http://git.altlinux.org/tasks/158607/> вариант для Сизифа:
>>> sysvinit-tmpfiles-0.1-alt1 (см.
>>> <http://git.altlinux.org/people/solo/packages/sysvinit-tmpfiles.git?p=sysvinit-tmpfiles.git;a=commit;h=55a1ee0c5e4a2c0f0eba0693ab641facb13c8abb>).
>>
>> Алексей, в задании #159059 новый systemd-229, в который добавлен ваш
>> сервис tmpfiles, с небольшими моими правками.
> 
> Там в пакет systemd-utils просочились %_initdir/tmpfiles и
> %_sysconfdir/cron.daily/tmpfiles; если эти файлы не нужны
> для systemd-only системы, то их надо убрать из systemd-utils.

  По результатам экспериментов с sysvinit-tmpfiles у меня сложилось
мнение, что наиболее простой вариант получения чистых systemd-only
систем -- вынос поддержки sysvinit в отдельные подпакеты, например с
названиями вида *-sysvinit (тогда на systemd-only системах их можно не
ставить). Причины:

1. Для нормальной установки на систему под systemd, пакет содержащий
%_initdir/<name> должен содержать и /lib/systemd/system/<name>.service.
Иначе при установки пакета будут наблюдаться ошибки (см.
<https://lists.altlinux.org/pipermail/sisyphus/2016-February/364737.html>).

2. При этом симлинк вида /lib/systemd/system/<name>.service -> /dev/null
к исправлении ситуации не приводит. А симлинк на реальный service, вида
/lib/systemd/system/<name>.service ->
/lib/systemd/system/<realnamename>.service, приведёт к зависимости на
пакет его содержащий, что не всегда допустимо.

3. В свете предыдущего пункта, исключения зависимости на пакет
содержащий /lib/systemd/system/<realnamename>.service, пакету с
%_initdir/<name> потребуется:

а) обвить /lib/systemd/system/<name>.service как %ghost;

б) иметь тригер, отслеживающий установку/удаление/наличие пакета
содержащего <realnamename>.service и в зависимосте от этого
создающего/удаляющего симлинк <name>.service -> <realnamename>.service.

  В общем, наиболее простой вариант:

1. Симлинк <name>.service -> <realnamename>.service пометить в пакет
содержащий <realnamename>.service.

2. %_initdir/<name>, без <name>.service, в отдельный пакет.

-- 

С уважением. Алексей.


----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : signature.asc
Тип     : application/pgp-signature
Размер  : 230 байтов
Описание: OpenPGP digital signature
Url     : <http://lists.altlinux.org/pipermail/sisyphus/attachments/20160218/a1fd658b/attachment-0001.bin>


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