[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Известные группы в /etc/group. Ищу официальное описание и полиси.



On Thu, Sep 27, 2012 at 07:32:00PM +0400, Artem Chuprina wrote:
>  >> Ну, ты хотя бы эти три раскрой.  Вот у тебя пакет, который внутри кода
>  >> использует имя группы, допустим, remote-dev.  Начнем с вопроса "как ты в
>  >> postinst обнаруживаешь, что то же имя группы с другими целями использует
>  >> какой-то другой пакет?
> 
>  EB>  Не в postinst, а в preinst -- по статус-коду от groupadd.
> 
> ... который будет точно таким же, если это ты сам при прошлой установке
> ее добавил.

 Я немного знаю борновский шелл и потому умею комбинировать разные условия
 в предикаты. :-) В данном случае нужно скомбинировать статус от groupadd
 с параметром $1, в который dpkg передаёт "install", "upgrade", etc.

 К слову, это можно сделать и без помощи dpkg, но смысла в этом нет.

>  >>  И какой?"
> 
>  EB>  Неважно. Скрипт должен обнаружить конфликт, а дальше требуются мозги.
> 
> У тебя уже false positive.  На ровном, в общем, месте.

 Лишь если я скрипт напишу неправильно. Вся нужная информация доступна.

>  >> Хорошо, допустим, ты на него ответил положительно.  Твой скрипт на
>  >> юзерской системе узнал, с кем он конфликтует по имени группы.  Кто будет
>  >> вступать в переписку с нарушителем спокойствия?  
> 
>  EB>  В переписку вступит тот, кто пакетирует софт -- это его работа.
> 
> Вот мне странно.  Конфликт обнаружил скрипт, у юзера, когда оба пакета
> уже давно в дистрибутиве.  И тут каким-то магическим образом вступает в
> переписку пакетировщик...  Нет, магия, в общем, понятна - man reportbug.
> Но мой point в том, что мне здравый смысл подсказывает: если ты хочешь
> работать с потенциально не тебе одному нужной группой, стоит задать
> вопрос до того, как ты выложишь пакет, а не после того, как на эти
> грабли встанет кто-то из пользователей.

 Кому задать? Механизма-то нет. Вот Александр задал вопрос нам, но здесь
 не рассылка мейнтейнеров. IMHO, есть лишь один работающий способ: после
 опроса в разных рассылках, гугленья и направленного поиска в репозитории
 (включая grep -r /var/lib/dpkg/info) всё-таки выложить пакет в unstable
 и ждать реакции пользователей.

> Что Олександр и попытался начать делать.  А ты на него наехал.

 Я наехал за поиск группы посредством apt-cache/aptitude search.

 И показал, где и как можно искать. Но и не утверждал, что если там
 не найдётся, то такой группы ни у кого нет.

 Если человек перед публикацией своего пакета установил себе пакеты с
 похожей или близкой функциональностью, то он с большой степенью вероятности 
 найдёт и потенциальные конфликты, в том числе по именам групп.
-- 
 Eugene Berdnikov


Reply to: