[pacman-dev] Alternatives system brainstorm

Daan van Rossum d.r.vanrossum at gmx.de
Sat Oct 19 12:30:43 UTC 2019


* on Saturday, 2019-10-19 05:24 -0700, Andrew Gregory <andrew.gregory.8 at gmail.com> wrote:

> No rebuilding necessary if the conflicts are changed to just 'sh'.

A circular dependency may not even be necessary in many cases, or ever.  All the circular dependency does is force the user to install as provider (by requiring a link package) the first time one of the alternatives is installed.

But a user may not want or need to install a provider until other packages depend on it.  Then the solution would simplify to just a set of mutually exclusive link packages:

sh-bash
        provides=('sh')
        depends=('bash')
        conflicts=('sh')
sh-dash
        provides=('sh')
        depends=('dash')
        conflicts=('sh')

And pacman luckily finds alternative providers very easily:
# pacman -Ss '\bawk\b'
core/gawk 5.0.1-1 (base base-devel) [installed]
    GNU version of awk
extra/nawk 20180827-1
    The one, true implementation of AWK
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <https://lists.archlinux.org/pipermail/pacman-dev/attachments/20191019/010a92e2/attachment.sig>


More information about the pacman-dev mailing list