Если мое понимание корректно, Ubuntu и набор вариантов XDG_CONFIG_DIRS
к чему-то как
XDG_CONFIG_DIRS=/etc/xdg/xdg-$VARIANT:/etc/xdg
Затем обеспеченный пакетом значения по умолчанию конфигурации в масштабе всей системы в /etc/xdg
может быть частично перезаписан, например, пакетами как xubuntu-настройки-по-умолчанию путем установки конфигурационных файлов в, скажем, /etc/xdg/xdg-xubuntu
.
Где XDG_CONFIG_DIRS
установить/расширить?
Как что было бы лучшее место для помещения файла, содержащего что-то
XDG_CONFIG_DIRS="/etc/xdg/xdg-mydefaults:$XDG_CONFIG_DIRS"
Некоторые кандидаты /etc/profile.d
/etc/environment.d
/etc/X11/Xsession.d
/etc/profile.d
/etc/systemd/system.conf.d
/etc/systemd/user.conf.d
но ни один из них, кажется, не используется человечностью и вариантами для того, чтобы сделать просто это поэтому, которое является правильным выбором?
Это установлено в /etc/X11/Xsession.d/60x11-common_xdg_path
(от пакета x11-common
):
DEFAULT_XDG_CONFIG_DIRS='/etc/xdg'
DEFAULT_XDG_DATA_DIRS='/usr/local/share/:/usr/share/'
if [ -n "$DESKTOP_SESSION" ]; then
# readd default if was empty
if [ -z "$XDG_CONFIG_DIRS" ]; then
XDG_CONFIG_DIRS="$DEFAULT_XDG_CONFIG_DIRS"/xdg-"$DESKTOP_SESSION":"$DEFAULT_XDG_CONFIG_DIRS"
elif [ -n "${XDG_CONFIG_DIRS##*$DEFAULT_XDG_CONFIG_DIRS/xdg-$DESKTOP_SESSION*}" ]; then
XDG_CONFIG_DIRS="$DEFAULT_XDG_CONFIG_DIRS"/xdg-"$DESKTOP_SESSION":"$XDG_CONFIG_DIRS"
fi
export XDG_CONFIG_DIRS
Для добавления моих собственных директоров я использовал бы что-то как /etc/X11/Xsession.d/70-local-my-xdg-path
Не знайте то, что является "правильным", но по крайней мере /etc/profile.d
хорошо работают для меня.
$ cat /etc/profile.d/my-xdg-dir.sh
XDG_CONFIG_DIRS="/etc/xdg/xdg-mydefaults:$XDG_CONFIG_DIRS"
$ echo $XDG_CONFIG_DIRS
/etc/xdg/xdg-mydefaults:/etc/xdg/xdg-ubuntu:/etc/xdg
Что касается Вашего вопроса, где это установлено, /etc/profile.d/xdg_dirs_desktop_session.sh
, файл выглядит подозрительным.