La spécification XDG parle de la XDG_CONFIG_HOME
variable, mais ne spécifie pas où elle doit être définie. Devrions-nous le définir dans /etc/X11/Xsession
ou est-ce le fichier de configuration du gestionnaire de fenêtres qui doit le définir?
J'ai essayé de le déclarer dans / etc / environment en tant que
XDG_CONFIG_HOME="$HOME/.config"
mais cela n'a pas fonctionné, car il semble que $ HOME n'est pas défini quand /etc/environment
est analysé.
La seule documentation que j'ai pu trouver en ligne était pour Gentoo, où elle a été déclarée dans /etc/env.d/90xsession
J'utilise Ubuntu. Quelle serait la solution générale pour les distributions basées sur Debian?
/etc/profile
Arch, et n'est mentionné qu'une seule fois dans/etc/profile.d/locale.sh
.Vous n'avez pas besoin de le définir n'importe où, sauf si vous souhaitez modifier la valeur par défaut.
La spécification de l'annuaire de base XDG indique clairement:
Il est donc redondant de le définir à la valeur par défaut. Toutes les applications conformes utiliseront déjà
$HOME/.config
Mais, si vous ne voulez changer la valeur par défaut dans un système Debian / Ubuntu, le meilleur endroit est:
/etc/profile
~/.profile
la source
XDG_CONFIG_HOME
ne fera aucune différence de toute façon, le cas échéant.XDG_CONFIG_HOME
sans suivre les spécifications, en supposant qu'il s'agisse d'une fonctionnalité standard de Linux ou même d'Unix plutôt que d'une partie d'une spécification tierce.J'ai constaté qu'il était préférable de définir des variables d'environnement via PAM. Pour les distos modernes de Linux, cela signifie
/etc/environment
ou$HOME/.pam_environment
(voirman pam_env
). Vous pouvez également les configurer en/etc/security/pam_env.conf
utilisant une syntaxe spéciale. Voici comment définir mes variables XDG dans/etc/security/pam_env.conf
.Auparavant, je mettrais ces variables dans
/etc/profile.d/custom.sh
. Cependant, certaines applications démarrent avant la lecture de ce fichier. Le passage à la méthode PAM a résolu le problème pour plusieurs applications qui se comportaient de cette manière.la source
export LESSHISTFILE="$XDG_CACHE_HOME"/less/history
oùless
sont mes connaissances et si les valeurs par défaut ne sont pas encore définies par ma distribution.XDG_CACHE_HOME
est défini et non vide. Il devrait plutôt être:export LESSHISTFILE="${XDG_CACHE_HOME:-$HOME/.cache}"/less/history
Pour les utilisateurs de Zsh, définissez-le dans votre
.zshenv
fichier.la source