[devel] Shell completions policy

Andrey Savchenko bircoph на altlinux.org
Пт Дек 3 21:41:10 MSK 2021


On Sat, 27 Nov 2021 00:30:54 +0300 Alexey Shabalin wrote:
> > nvme - Core nvme tools
> > * Tue Jul 13 2021 L.A. Kostis <lakostis на altlinux> 1.14-alt1
> > - Split shell completions into subpackages.
> 
> Всем привет.
> Мне кажется лишним вырезать completions файлы из основного пакета.
> - Весят они не много
> - Работают только если установлен основной пакет bash-completion.
> Другие shell, типа zsh, fish и ставят ради того, что бы completion
> работали из коробки :)
> - зависимость на bash-completion не порождают
> 
> Я предлагаю следующие правила:
> - Паковать completion файлы вместе с основным пакетом (не делать подпакетов)
> - Упаковывать в /usr/share (/etc для администратора)
> - Не указывать зависимость на bash-completion или другие shell (zsh, fish)
> - Только bash-completion должен владеть директориями
> %_datadir/bash-completion/completions и %_sysconfdir/bash_completion.d
> 
> Надо запретить, кроме bash-completion содержать
> %dir %_sysconfdir/bash_completion.d
> %_sysconfdir/bash_completion.d (%_sysconfdir/bash_completion.d/* - можно)
> %dir %_datadir/bash-completion/completions
> %_datadir/bash-completion/completions (%dir
> %_datadir/bash-completion/completions/* - можно)
> 
> В основном эти каталоги упаковывают чтобы не было предупреждения на
> сборочнице, что этот каталог никому не принадлежит. С этим
> предупреждением надо либо что-то сделать (например упаковать каталоги
> в пакет bash, а не в bash-completion), либо смириться.
> 
> Получается, что кому нужны completion, то нужно установить
> bash-completion (или другие shell - zsh, fish), и все дополнительные
> completions из других пакетов заработают автоматически. Кому не нужно
> - не устанавливают bash-completion.
> 
> Сейчас я вижу следующие проблемные пакет:
> Пакеты владеющие /etc/bash_completion.d
> freeipa-client
> hub
> ninja-build
> openscap-scanner
> ploop
> bash-completion-source-highlight
> drbd-utils-bash-completion
> python3-module-neutronclient
> rinse
> salt-master
> xen-tools
> 
> Пакеты владеющие /usr/share/bash-completion/completions
> ethtool
> flatpak
> guestfs-tools
> herbstluftwm
> libguestfs
> lxc-core
> nnn
> pcp
> powertop
> tio
> unar
> clufter-cli
> driverctl
> maven
> rpmdevtools
> 
> Подпакетов completion осталось совсем немного:
> bash-completion-cmake
> drbd-utils-bash-completion
> bash-completion-fzf
> bash-completion-gammu
> bash-completion-mercurial
> bash-completion-mpv
> bash-completion-nvme
> bash-completion-source-highlight
> bash-completion-util-linux
> bash-completion-xss-lock

Хорошая политика. Предлагаю принять её официально.

Best regards,
Andrew Savchenko
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 833 байтов
Описание: отсутствует
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20211203/202c2019/attachment.bin>


Подробная информация о списке рассылки Devel