[pacman-dev] pacman sorting incompatible with 'sort' command

Kieran Colford kieran at kcolford.com
Fri May 5 14:06:42 UTC 2017


Maybe pacman should sort according to the current locale, it's all in glibc
so it should be trivial to implement. Is there a technical reason for using
the C locale or is it just a default?

On Fri, May 5, 2017, 9:58 AM brainpower <brainpower at mailbox.org> wrote:

> > Andrew Gregory <andrew.gregory.8 at gmail.com> wrote:
> >
> >
> > On 05/05/17 at 09:19am, Adesh Kumar wrote:
> > > pacman internal sorting on package names differ from the one
> implemented in linux 'sort' command.
> > >
> > > pacman treats '-' (hyphen) differently.
> > >
> > >
> > > Testcase:
> > >
> > > 1. Install i3 group. It will install i3-wm, i3lock and i3status
> > >
> > > 2. Check the following commands:
> > >
> > >   --($:~)-- pacman -Qeq | grep i3
> > >   i3-wm
> > >   i3lock
> > >   i3status
> > >
> > >
> > >   --($:~)-- pacman -Qeq | grep i3 | sort
> > >   i3lock
> > >   i3status
> > >   i3-wm
> > >
> > >   --($:~)-- pacman -Qeq | grep i3 | sort -c
> > >   sort: -:2: disorder: i3lock
> >
> > pacman sorts according to the C locale.  Why does this matter though?
> > I don't believe we make any promises about query output order at all,
> > let alone that it will match `sort`.
> >
> > apg
>
> Hi.
>
> Well there are no promises I'm aware of, as Andrew said,
> but if pacman sorts according to C locale, then you just have to tell
> `sort` to use that, too.
> It makes sense that the output is different with different locales after
> all
> and if the same locale is used, chances of matching output are higher.
>
> The only thing one could complain about is, that it isn't mentioned in the
> documentation
> that pacman always sorts according to C locale regardless of the systems
> locale...
> But I don't mind...
>
> PoC:
>
> $ pacman -Slq | grep '^i3'
> i3-wm
> i3blocks
> i3lock
> i3status
> $ pacman -Slq | grep '^i3' | LC_COLLATE=C sort
> i3-wm
> i3blocks
> i3lock
> i3status
>
>
> --
> regards,
> brainpower
>
-- 

Signed, Kieran Colford


More information about the pacman-dev mailing list