[devel] I: rpm with sysusers support
Alexey V. Vissarionov
gremlin на altlinux.org
Пн Сен 14 17:22:44 MSK 2026
Good ${greeting_time}!
On 2026-09-13 17:21:26 +0300, Arseny Maslennikov wrote:
> Скоро в сизифе очутится rpm, способный сам регистрировать uid
> и gid в соответствии с директивами sysusers.d(5) в пакете,
> что наконец положит начало всеобщей sysuserизации в сизифе.
Надо сделать так, чтобы можно было обойтись без всеобщей.
> Раньше мейнтейнеры пакетов, чтобы упаковать "системного
> пользователя" или группу в пакет, были вынуждены дёргать
> shadow-utils из %pre в пакете, писать для этого %pre-скрипт
Да ну? А что мешало делать это в %post или, еще лучше, отдать
на усмотрение администратора?
>> +cat > %buildroot%_sysusersdir/tcpdump.conf <<EOConf
>> +u! tcpdump - "" /dev/null /dev/null
>> +EOConf
А /dev/null здесь, разумеется, вместо $HOME и шелла?
Голову таким мейнтейнерам оторвать, ибо все равно не пользуются.
> * Так как пока что у нас нет sysusers-программы с
> минимизированными зависимостями, от которой мог бы
> зависеть rpm,
И не надо: rpm вообще ни от чего, кроме библиотек, зависеть не
должен. Вообще никогда и никак. Хочется странного - наоборот,
добавляем странный пакет с зависимостью от rpm.
> в комплектном macros.in %__sysusers определена в "true".
Нужно как минимум предусмотреть какой-то пакет без лишних
зависимостей, установка которого будет обеспечивать надежную
защиту системы от появления такой функциональности.
Но лучше обойтись и без этого: кому понадобится дополнительная
функциональность, те поставят дополнительный пакет.
> В альтовом же platform.in, конфиге дистрорепозитория, взята
> альтернативо-управляемая ссылка "%_sbindir/systemd-sysusers".
Зачем? Даже если их вдруг будет более одного (вышеописанный
случай "как минимум"), достаточно держать в репе несколько
пакетов с файловым конфликтом - в системе будет установлен
ровно один из них (тот, который нужен администратору).
> Что в репозитории имеем, то сюда и пишем. У кого нет systemd у
> тех это будет (будет же?) симлинк на systemd-sysusers.standalone.
Не будет. Как и любых других поделий от разработчиков systemd.
И обрабатывать такую ситуацию следует по принципу "нет - и не надо".
SysVinit - наше огромное конкурентное преимущество, и отказ от него
(в том числе попытки вот такого ползучего вытеснения) будет такой же
огромной глупостью. А может быть, даже больше, чем глупостью.
--
Alexey V. Vissarionov
gremlin ПРИ altlinux ТЧК org; +vii-cmiii-ccxxix-lxxix-xlii
GPG: 0D92F19E1C0DC36E27F61A29CD17E2B43D879005 @ hkp://keys.gnupg.net
Подробная информация о списке рассылки Devel