Какое значение по умолчанию для $ XDG_DATA_HOME в Ubuntu 14.04? Я получаю пустую строку с:
echo $XDG_DATA_HOME
Согласно спецификациям Free Desktop , оно может быть равно $ HOME / .local / share
Какое значение по умолчанию для $ XDG_DATA_HOME в Ubuntu 14.04? Я получаю пустую строку с:
echo $XDG_DATA_HOME
Согласно спецификациям Free Desktop , оно может быть равно $ HOME / .local / share
Ответы:
Поскольку отчет в переменных среды XDG Base Directory Specification по умолчанию не установлен , Ubuntu не устанавливает переменные XDG.
В соответствии со спецификацией FreeDesktop Base Directory :
$ XDG_DATA_HOME определяет базовый каталог, относительно которого должны храниться файлы данных конкретного пользователя. Если $ XDG_DATA_HOME либо не установлен, либо пуст, следует использовать значение по умолчанию, равное $ HOME / .local / share.
Приложения, которые реализуют эту спецификацию, должны реализовать это поведение, поэтому, если $XDG_DATA_HOME
она не определена, они должны использовать ее $HOME/.local/share
по умолчанию.
Есть некоторые реализации этой спецификации, такие как: Glib , libghc-xdg-basedir-prof и pyxdg
Если вы хотите переопределить это значение, вы должны определить XDG
переменную в /etc/profile
или лучше, /etc/profile.d
как описано в разделе Где должна быть определена переменная XDG_CONFIG_HOME?
Вот как я это установил в своем ~/.bashrc
:
export XDG_DATA_HOME=${XDG_DATA_HOME:="$HOME/.local/share"}
Это сохраняет любое значение, уже установленное, иначе устанавливает его в значение по умолчанию, указанное в спецификации XDG Base Directory.