| 1.5, q (ok), 22:04, 09/07/2026 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Неужели кто-то догадался, что пакет = метаданные + статичные файлы? Если ваш пакетный менеджер гоняет скрипты при установке-удалении, то это фигня на палочке, а не пакетный менеджер. Если твой дистр не уместился в наипростейшую концепцию "пакет = метаданные + статичные файлы", то твой дистр -- галиматья. На данный момент, все дистры галиматья, кроме NixOS/Guix.
| | |
| |
| 2.11, Аноним (11), 22:54, 09/07/2026 [^] [^^] [^^^] [ответить]
| +2 +/– |
когда ставишь какой-нибудь ssh сервис, то ключи /etc/ssh/ssh_host_* должны поставляться как статичные файлы или генерироваться специальным скриптом, который просто идет отдельно от ssh?
Т.е. можно ли сделать любой пакетный менеджер нормальным, если вынести все скрипты в отдельный обязательный пакет и дергать их в зависимости от "метаданных"?
| | |
| |
| 3.14, Аноним_83 (?), 23:12, 09/07/2026 [^] [^^] [^^^] [ответить]
| –2 +/– | |
>когда ставишь какой-нибудь ssh сервис, то ключи /etc/ssh/ssh_host_* должны поставляться как статичные файлы или генерироваться специальным скриптом, который просто идет отдельно от ssh?
это вообще не задача для пакетного менеджера. после установки делаешь руками или генеришь скриптом, который запускаешь руками
| | |
| |
| 4.20, Аноним (-), 23:54, 09/07/2026 [^] [^^] [^^^] [ответить]
| +/– | |
задача пакетного менеджера оставить пользователя с нерабочим приложением и необходимостью запускать какие-то скрипты с какими-то параметрами, угу.
А скрипт я должен сам написать или где-то взять? Его можно было бы положить в пакет, но в чем тогда будет отличие от запуска скрипта тем же пакетным менеджером?
| | |
| |
| 5.25, Аноним2 (?), 00:09, 10/07/2026 [^] [^^] [^^^] [ответить]
| +/– |
В ansible конфигурация сервера описывается одними лишь YAML-файлами, никаких скриптов. И это работает.
| | |
| |
| 6.28, Аноним (-), 00:19, 10/07/2026 [^] [^^] [^^^] [ответить]
| +1 +/– |
вот только анзибл это не пакетный менеджер. И одними yaml-файликами там дело не обходится — во-первых jinja2 во все поля, а во-вторых там предлагается писать модули на питоне на все нестандартные хотелки
| | |
|
|
| 4.33, Аноним (33), 03:27, 10/07/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> делаешь руками
У нас в ДЦ смонтировали 20 стоек. Чтобы через час везде руками нагенерил. Время пошло.
| | |
|
| 3.23, Аноним (23), 00:00, 10/07/2026 [^] [^^] [^^^] [ответить]
| +/– |
Ничего не мешает оформить это действие в виде метаданных пакета. Пусть пакетный менеджер сам выполняет необходимые действия, которые описаны в метаданных.
| | |
| |
| 4.29, Аноним (-), 00:25, 10/07/2026 [^] [^^] [^^^] [ответить]
| +/– | |
Чтобы пакетный менеджер выполнил какие-то действия, которые описаны в метаданных, он должен знать как это сделать — либо его код содержит всю логику для всех пакетов (для простых случаев работает), либо где-то лежит россыпь скриптов.
Ну и еще момент, что описание "необходимых действий" это и есть по факту скрипт, который выполняет пакетный менеджер
| | |
|
| 3.30, q (ok), 02:48, 10/07/2026 [^] [^^] [^^^] [ответить]
| +/– |
Догадываешься ли ты о том, что ключи — это часть состояния системы? sshd.service может иметь ExecStart=башскрипт.sh, который, в свою очередь, сгенерит тебе ключи, а уже потом выполнит exec sshd. Любой нормальный сервис должен уметь запускаться, имея абсолютно пустую state directory.
И именно в этом примере, ключи надобно хранить в /var, а не в /etc, ибо /etc может быть смонтирован как readonly. Писать в /etc -- абсолютно трэшовая практика, о чем многие здесь присутствующие даже не догадываются. /etc должен формироваться еще ДО запуска системы, точка. Буквально. Как только ядро смонтировало /etc, всё. Нельзя туда писать. Вообще. Даже если "просто хочу подправить конфиг быстренько". Нельзя и точка. Хочешь изменить поведение системы -- протестируй новый конфиг в виртуалке, затем создай новую generation хоста, а затем перезагрузись.
| | |
| |
| 4.34, windows10 (ok), 04:02, 10/07/2026 [^] [^^] [^^^] [ответить]
| +/– |
> Догадываешься ли ты о том, что ключи — это часть состояния системы?
Догадываешься ли ты, что человек лишь привел пример необходимости запуска триггера, а не спорит о ключах?
DKMS тебе при установке драйвера кто будет генерить?
Кто будет добавлять запись в загрузчик при установке нового ядра?
Локаль кто будет генерить при обновлении glibc?
> Любой нормальный сервис должен уметь запускаться, имея абсолютно пустую state directory.
Уметь запускаться, и функционировать как нужно - два разных по своей сути действия.
| | |
|
|
| 2.19, Аноним (19), 23:40, 09/07/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> На данный момент, все дистры галиматья, кроме NixOS/Guix.
flake.nix почему-то за скобками...
Сравнивать пакеты дистрибутива и NPM - такое себе.
| | |
|
| 1.13, localhostadmin (ok), 23:11, 09/07/2026 [ответить] [﹢﹢﹢] [ · · · ]
| –3 +/– |
А зачем это вообще было нужно? Не представляю в каких сценариях может понадобиться выполнение произвольного кода при установке пакета
| | |
| |
| 2.26, Аноним (-), 00:11, 10/07/2026 [^] [^^] [^^^] [ответить]
| +1 +/– |
по разному бывает. Иногда в скриптах идет сборка нативных компонентов, которые линкуются к библитекам с хоста. Из альтернатив — носить все зависимости с собой или поддерживать пакеты для дистрибутивов.
| | |
| 2.27, Аноним (27), 00:15, 10/07/2026 [^] [^^] [^^^] [ответить]
| +/– |
Ну вот раньше был флеш популярным. flashplugininstaller скачивал с сайта адобе и настраивал блоб.
| | |
|
| 1.21, Аноним (21), 23:56, 09/07/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Что это за ЯП такой которому нужен свой пакетный менеджер и столько суеты с ним? Зачем его вообще использовать?
| | |
|