From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Mon, 21 Mar 2011 10:45:13 +0300 From: Alexey Tourbin To: ALT Linux Team development discussions Message-ID: <20110321074513.GB3282@altlinux.org> References: <201103201852.34804.asy@altlinux.ru> <201103202239.58431.asy@altlinux.ru> <20110320202413.GK1698@altlinux.org> <201103210950.59846.asy@altlinux.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <201103210950.59846.asy@altlinux.ru> Subject: Re: [devel] =?koi8-r?b?48nLzMnexdPLwdEg2sHXydPJzc/T1Ngu?= X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Mar 2011 07:45:14 -0000 Archived-At: List-Archive: List-Post: On Mon, Mar 21, 2011 at 09:50:59AM +0300, Sergey Y. Afonin wrote: > On Sunday, March 20, 2011, Alexey Tourbin wrote: > > > Если так подумать, то при установке mysql-workbench кроме основного > > бинарного пакета и пакета с данными будут установлены ещё какие-то > > дополнительные пакеты - например, MySQL-client. Тогда возможна ситуация, > > когда mysql-workbench удаляется, а бесхозный MySQL-client остаётся. > > Может, тогда стоит добавить в MySQL-client циклическую зависимость > > на mysql-workbench? > > С одной стороны, оно резонно, но, с другой, lib* может использовать > кто-то ещё, а этот "data" однозначно нужен только для основного пакета. Но если удалён последний клиент библиотеки, то библиотека однозначно тоже не нужна. Короче, мораль такая: не надо пытаться за счёт зависимостей решать проблему синхронного удаления неиспользуемых компонентов. Эта задача не решается за счет зависимостей в общем случае, а частный случай bin<->data не делает погоды. Это задача решается на верхнем уровне package management. Пакет может быть либо указан/выбран пользователем напрямую, либо выбран автоматически по зависимостям. В дальнейшем к этим двум категорями пакетов применяются разные правила обновления/удаления. Автоматически выбранные пакеты можно автоматически удалять, если они не требуются другими пакетами (фактически собирать мусор), а выбранные пользователем - нельзя. Это реализовано где-то в synaptic или aptitude. > > Если совсем давно - если во времена бранча 4.0 подпакет с данными был > > уже отпилен - то конфликт можно вообще удалить. Иначе оставить в > > процитированном варианте. > > Тогда в ALT его ещё не было. В бранч 5.1 и Сизиф он попал чуть меньше > года назад, Requires есть в основном пакете в виде "Requires: %name-data", > в mysql-workbench-gpl-data в репозитариях Requires совсем отсутствует. > Я так понимаю, что в data, в этом случае, вообще ничего менять не надо. В основном пакете: Requires: %name-data = %version В -data подпакете: Conflicts: %name < %version