Пример: в 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
).