Ana dizinimdeki .gconf, .gnome2, .cache, .local ve diğer nokta dosyası hiyerarşileri arasındaki ilişki nedir?


14

Göre bu cevap , .local .cacheve .configDüzenlemelere göre, yapılandırma depolama yerleri Gnome ve Ubuntu tarafından kabul edilmektedir.

Eski yapılandırma dizinleri var mı .gnome .gnome2ve .gconfbu nedenle birlikte mi var olmalılar?
Ve dconf'ın benimsenmesi bu nokta dosyası uygulama yapılandırma kurallarını değiştirir mi?

Son olarak, gconf-editor veri ayarlarının bu dizinlerle ilişkisi nedir? .Gnome / .gconf, gconf-editor'ün eriştiği bilgileri içeriyor mu?

Güncellemeler: XDG, .cache, .local ve .config için bir neden olarak belirtildi.

Dconf ile ilgili bu soru, gnome.org'da belgelendiği gibi dconf'un gconf'un yerini almasını önermektedir . Ayrıca João , dconf'un

Uygulama ayarlarını saklamak için kullanılan GNOME teknolojisi. [...] dconf, bir süredir korunmayan gconf için GNOME3'ün yerine geçer. dconf'un ayrıca gconf üzerinde performans geliştirmeleri getirmesi beklenir (uygulamaların başlatılması için geçerlidir).

Ben gconf ayarları dconf için biraz anarşik bir geçiş yolu olacağını dayalı, bekliyorum. Başka perspektifler duymak isterim.

Yanıtlar:


16

.local,, .cacheve .configFreeDesktop Temel Dizin Spesifikasyonu'nun bir parçasıdır . Onlar aslında sabit kodlanmış olabilir ama bunun yerine ortam değişkenleri kullanmamalısınız (yani $XDG_DATA_HOME, $XDG_CACHE_HOMEve $XDG_CONFIG_HOME). Spesifikasyon için de yararlı olabilecek GLib ve Python sarmalayıcıları vardır . Python'da bir örnek:

>>> import xdg.BaseDirectory
>>> print xdg.BaseDirectory.xdg_data_home
/home/andrew/.local/share
>>> print xdg.BaseDirectory.xdg_config_home
/home/andrew/.config
>>> print xdg.BaseDirectory.xdg_cache_home
/home/andrew/.cache

.gnomeve .gnome2gerçekten kullanımdan kaldırılmıştır ve kullanılmamalıdır. Bunlar libgnome'un gnome-config modülü tarafından kullanıldı .

.gconfaslında gconf-editorxml dosyası olarak erişilen ayarları içerir . Örneğin, aşağıdaki komutların çıktısını karşılaştırın:

gconftool -a /desktop/gnome/applications/browser

cat ~/.gconf/desktop/gnome/applications/browser/%gconf.xml

Bir gtk uygulamasından yapılandırma dizinini bulmaya çalışırken cevabınıza rastladım. Benden sonra gelen diğer programcılar için Linux'ta XDG kullanan ve aynı zamanda MS Windows kullanan bir gtk (glib) sarmalayıcısı var. Burada spesifik bilgiler: developer.gnome.org/glib/2.30/…
teambob

Aynen öyle. Çoğunlukla bu cevapta açıklayıcı oluyordum, bir programcıya örnekler vermiyordum. Bu sorunu karşılaşanlara biraz daha bilgi eklemek için cevabı güncelleyeceğim.
16'da andrewsomething

5

Uygun ifadeler, .local, .cache vb. FreeDesktop'un http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html adresindeki XDG Temel Dizin Spesifikasyonu'nun bir parçası olmalıdır .

XDG Temel Dizin Spesifikasyonu bir standarttır ve bunu KDE ve diğer uyumlu ortamlar takip eder.


Uyumlu olmak ne anlama geliyor? Uygulamaları farklı bir spesifikasyon kullanarak XDG'ye dönüştürme veya Gnome / KDE temel kurulumunun dışında bırakma yetkisi var mı? Eğer öyleyse, yetki uygulanıyor mu? Uyumlu olmayan üçüncü taraf uygulamalar biri tarafından mı işaretlenmiş veya farklı yapılandırma kurallarının / dizinlerinin varlığı verilmiş mi, yani tüm ekosistem geliştiricileri tarafından gönüllü olarak terk edilene kadar devam edecek bir şey mi? KDE yüklü değil, ancak 10.10 sistemim için temel Ubuntu / Gnome bahsettiğiniz XDG dirslerine sahip. Belki de bu gönüllü uyumdur?
belacqua

2
Çoğunlukla gönüllü uyumluluktur, ancak geçmişte XDG uyumluluğunu varsayılan kurulumdaki tüm uygulamalar için "hedef" yapma konusunda tartışmalar olmuştur.
4'te andrewsomething

1
Bu isteğe bağlı bir uyumdur, ancak kullanıcılar uyumlu olmayan uygulamalarla ilgili standarda uymalarını isteyen hata raporlarını doldurabilir (ve birçoğunu yapabilir). $ HOME klasörlerinin karmaşasını kaldırmak, XDG standardının en büyük avantajlarından biridir, bu nedenle eski uygulamalarda kullanıcı baskısı genellikle oldukça yüksektir.
MestreLion
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.