Eugene Berdnikov -> [email protected] @ Fri, 28 Sep 2012 00:02:12 +0400:
>> >> Ну, ты хотя бы эти три раскрой. Вот у тебя пакет, который >> >> внутри кода использует имя группы, допустим, remote-dev. Начнем >> >> с вопроса "как ты в postinst обнаруживаешь, что то же имя группы >> >> с другими целями использует какой-то другой пакет? >> >> EB> Не в postinst, а в preinst -- по статус-коду от groupadd. >> >> ... который будет точно таким же, если это ты сам при прошлой установке >> ее добавил. EB> Я немного знаю борновский шелл и потому умею комбинировать разные условия EB> в предикаты. :-) В данном случае нужно скомбинировать статус от groupadd EB> с параметром $1, в который dpkg передаёт "install", "upgrade", etc. Цикл установка-снос-установка эта система либо не переживает, либо сносит группу при сносе. Подразумевая, что она ТОЧНО никому больше не нужна, и юзеров в нее не добавляют (то есть информацию о членстве в группе при сносе сохранять ТОЧНО не надо). При таком предположении проще взять заведомо уникальное имя группы, сгенерированное путем хэширования вывода /dev/random в момент сборки пакета, и не париться. А в заданных мною условиях так делать нельзя. EB> К слову, это можно сделать и без помощи dpkg, но смысла в этом нет. >> >> И какой?" >> >> EB> Неважно. Скрипт должен обнаружить конфликт, а дальше требуются мозги. >> >> У тебя уже false positive. На ровном, в общем, месте. EB> Лишь если я скрипт напишу неправильно. Вся нужная информация доступна. Отнюдь. Тебе вроде даже должно бы хватать опыта, чтобы это увидеть. Остальное, в общем, справедливо. -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: http://lists.debian.org/[email protected]

