ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] Излишние авто зависимости?
@ 2023-08-04 20:34 Alexey Shabalin
  2023-08-07 12:13 ` Alexey V. Vissarionov
  0 siblings, 1 reply; 2+ messages in thread
From: Alexey Shabalin @ 2023-08-04 20:34 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Добрый вечер.

Благодаря /usr/lib/rpm/0common-files.req.list у нас появляются
различные зависимости в пакетах.
Например, благодаря такой строчке:
/etc/logrotate.d        logrotate
если пакет содержит что-то в /etc/logrotate.d/* то так же будет
установлен и пакет logrotate.
Хотел бы поднять пару вопросов о содержимом 0common-files.req.list и
возможно пересмотре его.
1) Когда для подсистемы используется одна единственная реализация,
например alternatives или chrooted, то проблем нет.
А вот если в репозитории присутствует несколько реализаций какой либо
подсистемы, то будет прилетать и ненужная тоже.
Если я добавил systemd unit файл, это не означает что должна появится
зависимость на systemd, т.к. возможно используется sysv.
Как пример

/etc/X11/xinit.d        xinitrc (все равно не работает под wayland)

/etc/cron.d     vixie-cron (я использую systemd timer, как мне удалить
vixie-cron? а если вместо умершего vixie-cron приедет новая
реализация?)

/etc/rc.d/init.d        service  (зачем мне service на systemd? на
systemctl нельзя делать зависимости, а на service можно?)

/etc/xinetd.d   xinetd (я давно ничего не запускаю через xinetd, как
мне его удалить? в systemd есть этот функционал)

2) второй вопрос, а должны ли конфигурационные файлы или доп.скрипты
порождать зависимость на эти подсистемы. Пусть установится конфиг и
лежит себе, никого не требуя.

/etc/xinetd.d   xinetd (даже если есть конфиг для xinetd, я давно
ничего не запускаю через xinetd, как мне его удалить?)

/etc/sudoers.d  sudo (да мало ли зачем в пакет упаковали настройки
sudo, не буду я использовать sudo, хочу удалить)

/etc/ppp/ip-up.d        ppp-common
Вот я хочу на сервере удалить все про ppp, он мне не нужен, у меня
ethernet соединение и ничего больше не предвидится. Но оказывается в
пакете sendmail-common есть скрипт /etc/ppp/ip-up.d/sendmail. А
удалить sendmail-common я не могу, он мне нужен для postfix.

/etc/emacs/site-start.d emacs-base
rpm -e emacs-base
ошибка: Неудовлетворенные зависимости:
/etc/emacs/site-start.d нужен для (установлен) gettext-tools-0.21-alt1.x86_64
Да мало ли что в пакет запихнули конфиг для emacs, зачем мне emacs
устанавливать?
Да, я знаю что emacs-base почти пустой пакет, но и в таком виде он мне
тоже не нужен.

Может ли кто-то из core team (rpm-build: @core imz at vt) провести
ревизию содержимого /usr/lib/rpm/0common-files.req.list и привести его
к современным реалиям?
Я не буду спорить, возможно какие-то подсистемы лучше не трогать
(например sudo), но некоторые уже лишние?

-- 
Alexey Shabalin

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [devel] Излишние авто зависимости?
  2023-08-04 20:34 [devel] Излишние авто зависимости? Alexey Shabalin
@ 2023-08-07 12:13 ` Alexey V. Vissarionov
  0 siblings, 0 replies; 2+ messages in thread
From: Alexey V. Vissarionov @ 2023-08-07 12:13 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Good ${greeting_time}!

On 2023-08-04 23:34:29 +0300, Alexey Shabalin wrote:

 > Благодаря /usr/lib/rpm/0common-files.req.list у нас появляются
 > различные зависимости в пакетах. Например, благодаря такой
 > строчке: /etc/logrotate.d logrotate если пакет содержит что-то в
 > /etc/logrotate.d/* то так же будет установлен и пакет logrotate.

Увы, проблема нетехническая: многие мейнтейнеры просто не хотят об
этом думать.

 > Хотел бы поднять пару вопросов о содержимом 0common-files.req.list
 > и возможно пересмотре его. 1) Когда для подсистемы используется
 > одна единственная реализация, например alternatives или chrooted,
 > то проблем нет. А вот если в репозитории присутствует несколько
 > реализаций какой либо подсистемы, то будет прилетать и ненужная
 > тоже. Если я добавил systemd unit файл, это не означает
 > что должна появится зависимость на systemd, т.к. возможно
 > используется sysv.

Именно так. Я в соседней ветке только что написал, что это лечится
%package hier
и
%files hier
%dir ...

То есть, если какой-нибудь systemd-hier создаст мне /lib/systemd,
а какие-то другие пакеты насвинячат туда бесполезными текстовыми
файлами - ну и пусть с ними, они занимают в пределах мегабайта.

 > Как пример
 > /etc/X11/xinit.d xinitrc (все равно не работает под wayland)

Напрашивается xinitrc-hier или даже xorg-hier

 > /etc/cron.d vixie-cron (я использую systemd timer, как мне
 > удалить vixie-cron? а если вместо умершего vixie-cron приедет
 > новая реализация?)

Аналогичный пакет cron-hier

 > /etc/rc.d/init.d service (зачем мне service на systemd? на
 > systemctl нельзя делать зависимости, а на service можно?)

sysvinit-hier

Насколько я понимаю, на способность systemd найти и выполнить
скрипт sysvinit это никак не влияет.

 > /etc/xinetd.d xinetd (я давно ничего не запускаю через xinetd,
 > как мне его удалить? в systemd есть этот функционал)

А xinetd вообще не нужен. Нигде, никому и ни для чего. Вот уже
скоро 20 лет тому как.

 > 2) второй вопрос, а должны ли конфигурационные файлы или
 > доп.скрипты порождать зависимость на эти подсистемы.

Разумеется, нет.

 > Пусть установится конфиг и лежит себе, никого не требуя.

В норме - именно так. От каталога, не принадлежащего ни одному
пакету, может пострадать только чей-то перфекционизм.

 > /etc/xinetd.d xinetd (даже если есть конфиг для xinetd, я давно
 > ничего не запускаю через xinetd, как мне его удалить?)

%package hier

 > /etc/sudoers.d sudo (да мало ли зачем в пакет упаковали настройки
 > sudo, не буду я использовать sudo, хочу удалить)

%package hier

 > /etc/ppp/ip-up.d ppp-common Вот я хочу на сервере удалить все
 > про ppp, он мне не нужен, у меня ethernet соединение и ничего
 > больше не предвидится. Но оказывается в пакете sendmail-common
 > есть скрипт /etc/ppp/ip-up.d/sendmail. А удалить sendmail-common
 > я не могу, он мне нужен для postfix.

Вынести его в какой-нибудь sendmail-ppp. Или вообще удалить, ибо
dialup, хвала Щеголеву, сдох почти 15 лет назад.

 > /etc/emacs/site-start.d emacs-base rpm -e emacs-base ошибка:
 > Неудовлетворенные зависимости: /etc/emacs/site-start.d нужен для
 > (установлен) gettext-tools-0.21-alt1.x86_64 Да мало ли что в
 > пакет запихнули конфиг для emacs, зачем мне emacs устанавливать?

Конфиг выкинуть. Если не совсем, то в отдельный пакет.

 > Да, я знаю что emacs-base почти пустой пакет, но и в таком виде
 > он мне тоже не нужен.

+100500

 > Может ли кто-то из core team (rpm-build: @core imz at vt)
 > провести ревизию содержимого /usr/lib/rpm/0common-files.req.list
 > и привести его к современным реалиям? Я не буду спорить,
 > возможно какие-то подсистемы лучше не трогать (например sudo),
 > но некоторые уже лишние?

Беда в том, что у большинства коллег, которые принимают такие
решения в своем узком кругу, нет опыта эксплуатации статистически
значимого количества систем в статистически значимом количестве
мест, что вынуждает уже всех разработчиков тащить поддержку кучи
ээээ... антиквариата.


-- 
Alexey V. Vissarionov
gremlin ПРИ altlinux ТЧК org; +vii-cmiii-ccxxix-lxxix-xlii
GPG: 0D92F19E1C0DC36E27F61A29CD17E2B43D879005 @ hkp://keys.gnupg.net


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-08-07 12:13 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-08-04 20:34 [devel] Излишние авто зависимости? Alexey Shabalin
2023-08-07 12:13 ` Alexey V. Vissarionov

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