----- Original Message -----
> From: "Tomas Orsava" <torsava(a)redhat.com>
> To: "Development discussions related to Fedora"
<devel(a)lists.fedoraproject.org>, "David Kaspar"
<dkaspar(a)redhat.com>,
> "Kamil Dudka" <kdudka(a)redhat.com>, "Miro Hrončok"
<mhroncok(a)redhat.com>, "Petr Viktorin" <pviktori(a)redhat.com>,
> "Siteshwar Vashisht" <svashish(a)redhat.com>
> Sent: Wednesday, May 2, 2018 3:23:10 PM
> Subject: Prioritizing ~/.local/bin over /usr/bin on the PATH
>
> Hi!
> I'd like to propose putting the ~/.local/bin in front of the /usr/bin on
> the PATH.
>
> Currently /usr/bin has priority over ~/.local/bin, which causes a [bug]
> where the old system-installed executable written in Python (from
> /usr/bin) is launched, but it finds new Python sources (installed into
> $HOME) which it doesn't work with and crashes.
>
> [bug]
https://bugzilla.redhat.com/show_bug.cgi?id=1571650
>
> I believe the current configuration breaks the intuitive expectation
> that things installed closer to the user should take priority. That's
> for example how it works with Python.
> Interestingly, ubuntu and opensuse do not have ~/.local/bin on their
> PATH (though Ubuntu has ~/bin) so we can't take guidance there.
>
> Does anyone see a reason not to prioritize ~/.local/bin over /usr/bin?
Most of the discussion in this thread focuses on security rather than sane behavior. It
is going to be a system wide change. An application may get affected if it depends on
system provided utilites which gets overridden by ~/.local/bin.
For e.g.
> cat /bin/foo
#!/bin/bash
ls -l
> cat ~/.local/bin/ls
#!/bin/bash
echo "Strange world!"
> /bin/foo
Strange world!
So this change breaks something that is outside user's installation. This should
happen only if a user has explicitly overriden $PATH to prioritize user installation
paths.
User explicitly installed SW into his home directory. Why (s)he needs to
override the $PATH in addition to make the SW work?
Vít