내 홈 디렉토리의 .gconf, .gnome2, .cache, .local 및 기타 도트 파일 계층 구조와의 관계는 무엇입니까?


14

에 따르면, 이 응답 , .local .cache및는 .config, 관례 적으로, 구성 저장 위치 그놈 우분투에 의해 채택된다.

인가 .gnome .gnome2.gconf따라서 기존 구성 디렉토리, 또는 그들이 공존 해야하는?
dconf를 채택하면 이러한 도트 파일 응용 프로그램 구성 규칙이 변경됩니까?

마지막으로, gconf-editor 데이터 설정과 이러한 디렉토리의 관계는 무엇입니까? .gnome / .gconf에 gconf-editor가 액세스하는 것과 동일한 정보가 포함되어 있습니까?

업데이트 : XDG는 .cache, .local 및 .config의 원인으로 지적되었습니다.

dconf에 대한 질문 에 설명 된대로 dconf는 GConf를위한 대체 될 것이라고 조언 Gnome.org . 또한 João 는 dconf가

응용 프로그램 설정을 저장하는 데 사용되는 그놈 기술. [...] dconf는 gconf를위한 GNOME3 대체물이며 한동안 유지되지 않았습니다. dconf는 gconf보다 성능이 향상 될 것으로 예상됩니다 (응용 프로그램 시작과 관련됨).

나는 gconf 설정에서 dconf로 다소 무질서한 마이그레이션 경로가있을 것으로 기대합니다. 추가 관점을 듣고 싶습니다.

답변:


16

.local, .cache.configFreeDesktop 기본 디렉토리 사양의 일부입니다 . 그들은 실제로 하드 코딩 할 수 있지만, 대신에 환경 변수를 사용하지 말아야합니다 (즉 $XDG_DATA_HOME, $XDG_CACHE_HOME$XDG_CONFIG_HOME). 있다 입심파이썬 뿐만 아니라 도움이 될 수 있습니다 규격에 래퍼. 다음은 Python의 예입니다.

>>> 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

.gnome그리고 .gnome2실제로 사용되지 않으며 사용할 수 없습니다. 이것들은 libgnome의 gnome-config module에 의해 사용되었습니다 .

.gconf실제로 gconf-editorxml 파일로 액세스 하는 설정이 포함되어 있습니다. 예를 들어 다음 명령의 출력을 비교하십시오.

gconftool -a /desktop/gnome/applications/browser

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

gtk 응용 프로그램에서 구성 디렉토리를 찾는 방법을 찾을 때 귀하의 답변을 발견했습니다. 저를 따르는 다른 프로그래머에게는 Linux에서 XDG를 사용하고 MS Windows를 처리하는 gtk (glib) 래퍼가 있습니다. 구체적인 정보는 여기 : developer.gnome.org/glib/2.30/…
teambob

맞습니다. 나는 대부분이 답변에 대해 설명하고 프로그래머에게 예제를 제공하지 않았습니다. 나는 이것을 우연히 발견 한 사람들을 위해 조금 더 많은 정보를 추가하기 위해 대답을 업데이트 할 것입니다.
andrewsomething

5

.local, .cache 등은 FreeDesktop의 XDG 기본 디렉토리 사양 ( http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html) 의 일부 여야 합니다.

XDG 기본 디렉토리 사양은 표준이며 KDE 및 기타 호환 환경이 뒤 따릅니다.


준수한다는 것은 무엇을 의미합니까? 다른 사양을 사용하는 앱을 XDG 사양으로 변환하거나 Gnome / KDE 기본 설치에서 제외해야하는 의무가 있습니까? 그렇다면 위임이 시행됩니까? 규정을 준수하지 않는 타사 앱이 누군가에 의해 플래그 지정되어 있습니까? 아니면 다른 구성 규칙 / 디렉토리가 주어진 것으로 가정합니까, 즉 모든 생태계 개발자가 자발적으로 포기할 때까지 계속되는 것으로 가정합니까? KDE가 설치되어 있지 않지만 10.10 시스템의 기본 Ubuntu / Gnome에는 언급 한 XDG 디렉토리가 있습니다. 아마도 이것은 자발적인 준수입니까?
belacqua

2
대부분 자발적인 준수이지만, 기본 설치의 모든 응용 프로그램에 대해 XDG 준수를 "목표"로 만드는 것에 대한 과거의 논의가있었습니다.
andrewsomething

1
자발적인 준수이지만 사용자는 비준수 앱에 대한 버그 보고서를 작성하여 표준을 준수하도록 요청할 수 있습니다. $ HOME 폴더를 정리하면 XDG 표준의 가장 큰 장점 중 하나이므로 일반적으로 레거시 앱에 대한 사용자 부담이 매우 높습니다.
MestreLion
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.