web-dev-qa-db-fra.com

Comment puis-je forcer toutes les applications à utiliser $ XDG_CONFIG_HOME au lieu de ~ / .APP?

Autant que je sache, directives de XDG recommande aux applications de stocker leur configuration dans $XDG_CONFIG_HOME/APP (généralement ~/.config/APP) plutôt que ~/.APP (je ne sais pas si Il existe également des directives Debian/Ubuntu?). Cependant, j'ai trouvé un certain nombre de fichiers de configuration et de dossiers en utilisant l'ancienne convention ~/.APP.

Existe-t-il un moyen de forcer globalement les applications sans confirmation à utiliser les conventions de dossier XDG?

Ou dois-je simplement enregistrer un ticket avec chaque projet? :RÉ

4
david.libremone

J'ai trouvé d'excellentes informations de configuration sur support du répertoire de base XDG .

Cela donne d'excellents conseils pour régler des choses comme:

export LESSHISTFILE="$XDG_CACHE_HOME"/less/history

afin que les fichiers de configuration/cache/data hérités puissent toujours utiliser les répertoires spécifiés par XDG.

Je devais aussi ajouter dans mon ~/.bashrc:

# XDG - set defaults as they may not be set
# See https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html
# and https://wiki.archlinux.org/index.php/XDG_Base_Directory_support
export XDG_CONFIG_HOME="$HOME/.config"
export XDG_DATA_HOME="$HOME/.local/share"
export XDG_CACHE_HOME="$HOME/.cache"

if [ ! -w ${XDG_RUNTIME_DIR:="/run/user/$UID"} ]; then
    echo "\$XDG_RUNTIME_DIR ($XDG_RUNTIME_DIR) not writable. Unsetting." >&2
    unset XDG_RUNTIME_DIR
else
    export XDG_RUNTIME_DIR
fi

Celles-ci ne sont pas définies par défaut sur Ubuntu 14.04 LTS.

1
Tom Hale

Je ne vois pas comment forcer un tel comportement de manière globale, car les chemins de configuration par défaut sont généralement codés en dur dans les programmes.

Si vous recherchez un moyen simple de sauvegarder toutes vos configurations, vous pouvez créer des liens symboliques application par application de ~/.app à ~/.config/app. Bien que cela ne désencombrera malheureusement pas votre domicile, tous les fichiers de configuration seront enregistrés dans ~/.config pour faciliter les sauvegardes.

3
drc