From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Tue, 1 Oct 2019 15:08:17 +0300 From: "Vladimir D. Seleznev" To: ALT Linux Team development discussions Message-ID: <20191001120817.GA3910679@portlab> References: <20190930200823.GA3552461@portlab> <51c9f8e9-9ccc-ff9e-151b-d6a94f82c66b@basealt.ru> <20191001055739.GE22428@altlinux.org> <20191001110734.23b126d6ba8c80c2b9ed50d2@altlinux.org> <20191001092344.4zzhdvdehbciosar@titan.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20191001092344.4zzhdvdehbciosar@titan.localdomain> User-Agent: Mutt/1.10.1 (2018-07-13) Subject: Re: [devel] =?utf-8?q?Bash_completions_packaging_policy_=28Q=3A_?= =?utf-8?b?0YPQv9Cw0LrQvtCy0YvQstCw0YLRjCDQvtGC0LTQtdC70YzQvdC+Pyk=?= 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: Tue, 01 Oct 2019 12:08:19 -0000 Archived-At: List-Archive: List-Post: On Tue, Oct 01, 2019 at 01:23:44PM +0400, Ivan A. Melnikov wrote: > On Tue, Oct 01, 2019 at 11:07:34AM +0300, Andrey Savchenko wrote: > > On Tue, 1 Oct 2019 08:57:39 +0300 Alexey V. Vissarionov wrote: > > > On 2019-10-01 06:59:06 +0300, Anton Farygin wrote: > > > > > > >> Я обратил внимание, что в некоторых пакетах bash completions > > > >> упаковываны в /etc/bash_completion.d/, а в остальных — в > > > >> /usr/share/bash-completion/completions/. > > > > Точнее говоря - 98 пакетов держат bash-completion в /etc и > > > > 93 в /usr/share > > > >> Т.к. есть тенденция складывать настройки по-умолчанию в > > > >> /usr/share/, а локальные — в /etc/, то может быть нам > > > >> упаковывать bash completions только в > > > >> /usr/share/bash-completion/completions/? > > > > Здесь также, как и в случае с именами пакетов python-module - лучше > > > > подготовить policy. > > > > > > И написать там про отдельные подпакеты для %name-bash-completion > > > > Даже в Gentoo bash-completion *не* управляются отдельным > > USE-флагом за исключением редких случаев, когда они тянут > > дополнительные зависимости. Слишком мелкие файлы не влияющие на > > работу самого приложения и овчинка выделки не стоит. Кому очень > > нужно фильтровать, используют INSTALL_MASK на все пакеты. Думаю, при > > создании образов для embedded ты можешь делать аналогичный фильтр. > > Вот что-то такое и можно написать в policy про отдельные подпакеты > для %name-bash-completion ;) Только bash-completion-%name — в Альте префиксная традиция, а не суффиксная :) На самом деле хороший вопрос, стоит ли выделять bash completions в отдельный подпакет. С одной стороны, мы хотели делать хорошо гранулированную разбивку пакетов, хотя это не всегда и не всеми мейнтейнерами поддерживается, и мне всегда было само собой разумеющимся, что для completions надо поставить отдельный подпакет. С другой стороны, есть два аргумента против: 1. Новым пользователям не очевидно, что completions упакованы отдельно. На самом деле это слабый аргумент и больше относится к вопросу документирования этой особенности альтосистем и изучения особенностей новой системы пользователями. Говорят, у нас с документированием плохо, и хотя возможно и не так, как это кажется, какое-то количество тайных знаний у нас есть. Основные особенности освещены тут [1], но тут только вскользь про саму разбивку пакетов, а сама статья местами out of date: часть уже неактуально, много чего можно дописать. 2. Практическая ценность. Вот тут уже интереснее: я не смог обосновать для себя зачем нужно такое разделение. Много места completions, как правило, не занимают, и обычно не требуют дополнительных зависимостей. Более того, bash — default и root shell, и при установке некого программного обеспечения довольно естесственно хотеть функциональность completion'ов. В случае же принципиального не использования completions пользователю необходимо и достаточно отключить эту функциональность. Возможно, стоит пересмотреть упаковку completions в отдельные подпакеты. Например, упаковывать отдельно только при наличии дополнительный тяжёлых зависимостей на них. Ссылки: [1] https://www.altlinux.org/Features -- С уважением, Владимир Селезнев