명령 행에서 gnome-shell 확장 구성


9

패키지를 자동으로 설치하고 새로운 OS 설치에서 일부 구성을 수행하기 위해 몇 가지 스크립트를 실행하고 싶습니다. 나는 약간의 확장 기능을 가진 gnome shell을 사용하고 그것들을 구성하기 위해 스크립트를 개선하려고 생각했다.

일반적으로 gnome-shell-extension-prefs 또는 dconf-editor를 사용하여 확장을 구성하고 명령 줄에서 다른 스키마를 편집하는 방법을 알고 있습니다. 예:

gsettings set org.gnome.desktop.background picture-options stretched

그러나 dconf-editor를 사용하여 org.gnome.shell.extensions에서 설치된 확장을 찾아서 편집 할 수는 있지만 할당 된 스키마가없는 것처럼 gsettings를 사용하여 액세스 할 수 없습니다.

No such schema 'org.gnome.shell.extensions.extname'

gsettings로 액세스 할 수있는 유일한 확장 기능은 사전 설치된 확장 기능인 것 같습니다.

문제는 명령 줄에서 설치된 확장을 어떻게 구성 할 수 있습니까? 컴파일 된 스키마를 gsettings에 할당하는 방법이 ~/.local/share/gnome-shell/extensions/있습니까? 어쩌면 나는 잘못된 방향을보고있을 것입니다.

환경 : Ubuntu Gnome 14.04 (Gnome Shell 3.10.4)

미리 감사드립니다.

답변:


11

결국 혼자서 답을 찾았습니다.

sudo cp ~/.local/share/gnome-shell/extensions/extname/schemas/org.gnome.shell.extensions.extname.gschema.xml \
    /usr/share/glib-2.0/schemas/ &&
sudo glib-compile-schemas /usr/share/glib-2.0/schemas/

스키마를 복사하고 컴파일하면 ~/.local/share/gnome-shell/extensionsgsettings가 스키마를 사용할 수 있습니다.


파고 좋은!
판초

같은 버그가 발생했습니다. 로컬 디렉토리에 로컬로 설치된 확장 스키마를 복사하는 것보다 더 나은 솔루션이 있어야합니다. 이 문제에 대한 업데이트가 있습니까?
엔지니어

4

CentOS 7에서는 우분투에서도 다음과 같이 생각합니다. --schemadir 스위치를 다음과 같이 도입하여 허용되는 답변이 약간 개선되었다고 생각했습니다.

# gsettings --schemadir ${schemaDir} set ${schema} ${key} "${value}"

위의 명령 gsettings에서 직접 설정 ${key}${value}${schema}경우 ${schema}기본에 상주하지 않는 /usr/share/glib-2.0/schemas디렉토리. (그리고 스키마를 기본 디렉토리로 옮길 필요가 없습니다)

몇 가지 예 :

gsettings --schemadir ~/.local/share/gnome-shell/extensions/putWindow@clemens.lab21.org/schemas/ list-recursively org.gnome.shell.extensions.org-lab21-putwindow
gsettings --schemadir ~/.local/share/gnome-shell/extensions/unitylike-hotkey@webgyerek.net/schemas/  list-recursively org.gnome.shell.extensions.app-keys
gsettings --schemadir ~/.local/share/gnome-shell/extensions/emoji-selector@maestroschan.fr/schemas/  list-recursively org.gnome.shell.extensions.emoji-selector

1
Ubuntu 18.04, GS 3.28에서 작업을 확인했습니다. 예를 들면 :gsettings --schemadir ~/.local/share/gnome-shell/extensions/putWindow@clemens.lab21.org/schemas/ list-recursively org.gnome.shell.extensions.org-lab21-putwindow
eddygeek

1

이 스크립트를 작성했습니다 : gnome-shell-extensions 등을 활성화 / 비활성화하는 Bash 스크립트 .

그냥 그것을 cp를 /usr/bin또는 /usr/local/bin그것을 실행합니다

sudo chmod +x /usr/bin/gnome-shell-extension-cl

도움말을 확인하십시오.

확장 사용 :

gnome-shell-extension-cl -e extension-name

확장 비활성화 :

gnome-shell-extension-cl -d extension-name

스크립트에 토글 옵션이 있으면 좋을 것입니다. 즉, enable is extension은 비활성화되고 활성화 된 경우 비활성화됩니다.
위해 할
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.