Пример: в Ubuntu всегда есть .localкаталог в домашнем каталоге и .profileвключает эту строку:
PATH="$HOME/bin:$HOME/.local/bin:$PATH"
$HOME/.local/binпо умолчанию не существует, но если он создан, он уже находится внутри, $PATHи внутри него можно найти исполняемые файлы.
Это не совсем упомянуто в спецификации каталога XDG, но, похоже, является производным от него.
Что мне интересно, так это то, достаточно ли это распространено, что обычно предполагается, что оно существует в самых распространенных дистрибутивах для конечных пользователей. Это, например, во всех производных Debian или, по крайней мере, в Ubuntu? Как насчет экосистемы Red Hat / Fedora / CentOS? И так далее с Арком, Сьюз, и тем, что люди используют в настоящее время.
Чтобы быть более ясным, это только для $HOME/.local/bin, а не $HOME/bin .
Из любопытства не стесняйтесь включать BSD, OS / X и другие, если у вас есть информация. :)
/etc/skel/.profileне менее 14.04 проверяет наличие пользователя $HOME/binи добавляет его, PATHесли он существует; напротив, 16.04, кажется, добавляет $HOME/binи $HOME/.local/binбезоговорочно. Я не помню, чтобы ранее Ubuntus добавлял $HOME/.local/bin- но я не вижу ничего релевантного в журнале bashизменений пакета (который предположительно принадлежит /etc/skel/.profile).