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 -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: http://lists.debian.org/[email protected]

