Saya perhatikan bahwa beberapa aplikasi meletakkan file konfigurasinya ~/.config/appname
sementara yang lain menggunakan ~/.appname
(cara klasik, AFAIK) untuk ini. Apa arti perbedaan ini dan apa yang bisa lebih baik untuk dipertimbangkan untuk aplikasi saya?
UPDATE: Sepertinya saya (XUbuntu 11,10 default) $ XDG_CONFIG_HOME diatur ke ~/
dan sebagian besar aplikasi di sistem saya (seperti Mozilla Firefox, Adobe Flash Player, Midnight Commander, Opera, Wine, dll) mematuhi ini. Tetapi masih ada banyak aplikasi (seperti Compiz, Deadbeef, VLC, Qt Creator, Google Chrome, XFCE, dll.) ~/.config/
Sebagai gantinya. Hal lain yang mencurigakan adalah bahwa direktori di ~/.config/
dalamnya tidak disembunyikan (tidak ada titik dalam nama mereka) - bukankah konfigurasi aplikasi diharapkan memiliki nama konstan sendiri tanpa bergantung pada lokasi (nilai $ XDG_CONFIG_HOME)?
$HOME
sudut pandang Anda, ini adalah~/.config
entri tunggal dan bukan beberapa, mungkin lusinan. Dan itu membuat cadangan pengaturan Anda (atau mengecualikannya) jauh lebih mudah! Bagaimana Anda membedakan pengaturan perangkat lunak dari, katakanlah, Anda~/Documents
atau Anda~/.cache
?Karena aplikasi yang menempatkan file konfigurasi
$HOME
mengabaikan spesifikasi direktori dasar XDG , terutama:sumber
$XDG_CONFIG_HOME
diatur ke~/
, tetapi masih ada banyak aplikasi yang menggunakan~/.config/
/
diatur: tidak mencampur data dengan executable dengan konfigurasi.~/.config
adalah lawan pengguna/etc
, dan ini sangat membantu dalam pencadangan misalnya. Tanpa/.config
, cadangan pengaturan apa pun harus menyertakan secara manual semua dir aplikasi atau secara manual mengecualikan semua dir "big data" pengguna (Video, Musik, dan dir pribadi lainnya yang mungkin ia buat).Jawaban yang lebih kontroversial adalah:
~/.config
adalah standar untuk standar XDG, yang hanya berlaku untuk aplikasi yang mengikuti standar FreeDesktop.org (juga melalui penggunaan$XDG_CONFIG_HOME
variabel).~/.appname
ada sebelum standar freedesktop$HOME
bukan masalah, menurut saya.sumber
~/.config
, dari aplikasi yang tidak ada hubungannya dengan FreeDesktop.org, seperti Libre Office, Chromium, Deluge, banyak permainan (termasuk tetapi tidak hanya semua game yang menggunakan Unity3D), aplikasi Google (Chrome, Earth), hal-hal Python (IPython, Eric), Emulator (Muppen 64, Desmune). FreeDesktop.org sendiri memiliki sedikit sekali aplikasi. -~/.appname
adalah konvensi yang ada sebelum XDG, tetapi sebagian besar perangkat lunak yang masih digunakan saat ini dibuat jauh setelah standar.$HOME/.myapp
ke${XDG_CONFIG_HOME:-$HOME/.config}/myapp
~/.app
lebih~/.config/app
?