dconf의 일반 텍스트 모드를 사용하는 방법은 무엇입니까?

dconf의 일반 텍스트 모드를 사용하는 방법은 무엇입니까?

기본적으로 dconf해당 구성은 바이너리 형식으로 저장되므로 버전 제어에 사용하기 편리하지 않습니다.

dconfdconf에는 일반 텍스트 파일을 사용하여 바이너리 데이터베이스를 효과적으로 미러링하는 "양방향" 일반 텍스트 모드를 활성화하는 구성 설정이 있습니다.

불행히도 이 유망한 기능을 사용하는 방법에 대한 지침은 거의 제공되지 않습니다.

이를 달성하는 가장 간단한 방법은 무엇입니까?

답변1

모든 것이 있습니다(현재 설정을 해당 텍스트 파일에 저장하는 부분 제외).

시작 시 환경 변수가 dconf쿼리됩니다 . DCONF_PROFILE설정된 경우 dconf지정된 구성 파일을 열려고 시도하고 실패하면 중단됩니다. 환경 변수가 설정되지 않은 경우 다음과 같은 구성 파일을 열려고 시도합니다.사용자실패하면 내부 배선 구성으로 대체됩니다. dconf구성 파일을 텍스트 파일에 저장합니다. DCONF_PROFILE파일에 대한 상대 경로 /etc/dconf/profile/또는 절대 경로(예: 사용자의 홈 디렉터리)를 지정할 수 있습니다.

그리고

" service-db" 줄은 dconf에게 사용자 데이터베이스에 대한 바이너리 데이터베이스 파일을 배치하도록 지시합니다 XDG_RUNTIME_DIR. 이 위치는 영구적이지 않기 때문에 줄의 나머지 부분은 dconf데이터베이스를 유지하는 방법을 지시합니다. 일반적인 줄은 이진 데이터베이스 가 service-db:keyfile/user. 동기화는 양방향입니다.dconf$XDG_CONFIG_HOME/dconf/user.txt

따라서 문제의 텍스트 파일은 일반적 $XDG_CONFIG_HOME/dconf/user.txt으로 ~/.config/dconf/user.txt.

dconf dump / > ~/.config/dconf/user.txt

그런 다음 service-db다음 줄을 구성 파일에 루트로 추가합니다.

mkdir -p /etc/dconf/profile
printf '%s\n' 'service-db:keyfile/user' >> /etc/dconf/profile/user

이제 세션을 다시 시작하면 두 파일이 모두 동기화됩니다.

관련 정보