Me di cuenta de que algunas aplicaciones ponen sus archivos de configuración en ~/.config/appname
mientras que otras usan ~/.appname
(la forma clásica, AFAIK) para esto. ¿Qué sentido tiene esta distinción y qué podría ser mejor considerar para una aplicación mía?
ACTUALIZACIÓN: Parece que mi (XUbuntu 11.10 predeterminado) $ XDG_CONFIG_HOME está configurado ~/
y la mayoría de las aplicaciones en mi sistema (como Mozilla Firefox, Adobe Flash Player, Midnight Commander, Opera, Wine, etc.) cumplen con esto. Pero todavía hay muchas aplicaciones (como Compiz, Deadbeef, VLC, Qt Creator, Google Chrome, XFCE, etc.) en su ~/.config/
lugar. Otra cosa sospechosa es que los directorios ~/.config/
no están ocultos (no hay punto en sus nombres): ¿no se espera que los directorios de configuración de la aplicación tengan nombres propios constantes sin depender de la ubicación (valor $ XDG_CONFIG_HOME)?
$HOME
punto de vista, es una~/.config
entrada única en lugar de varias, quizás docenas de ellas. ¡Y hace que las copias de seguridad de su configuración (o excluirlas) sean mucho más fáciles! ¿Cómo puede distinguir la configuración del software de, digamos, su~/Documents
o su~/.cache
?Debido a que aquellas aplicaciones que colocan archivos de configuración
$HOME
están ignorando la Especificación del Directorio Base XDG , en particular:fuente
$XDG_CONFIG_HOME
está configurado en~/
, pero todavía hay muchas aplicaciones que usan~/.config/
/
se organiza: no mezclar datos con ejecutables con la configuración.~/.config
es la contraparte del usuario/etc
, y esto ayuda enormemente en las copias de seguridad, por ejemplo. Sin/.config
, cualquier copia de seguridad de la configuración tendría que incluir manualmente todos los directorios de aplicaciones o excluir manualmente todos los directorios de "big data" de los usuarios (Videos, Música y cualquier otro directorio personal que haya creado).Una respuesta más controvertida es:
~/.config
es el valor predeterminado para el estándar XDG, que solo se aplica a las aplicaciones que se adhieren a los estándares de FreeDesktop.org (también a través del uso de la$XDG_CONFIG_HOME
variable).~/.appname
existía antes del estándar freedesktop$HOME
no es un problema, en mi opinión.fuente
~/.config
, desde aplicaciones que no tienen relación con FreeDesktop.org, como Libre Office, Chromium, Deluge, muchos juegos (incluidos, pero no solo todos los juegos que usan Unity3D), aplicaciones de Google (Chrome, Earth), Python (IPython, Eric), Emuladores (Muppen 64, Desmune). FreeDesktop.org tiene muy pocas aplicaciones. -~/.appname
es una convención que existía antes de XDG, pero la mayoría del software que todavía se usa hoy en día se creó mucho después del estándar.$HOME/.myapp
a${XDG_CONFIG_HOME:-$HOME/.config}/myapp
~/.app
más~/.config/app
?