我在 Xubuntu 13.10 上。我运行了这个命令:
$ gsettings list-recursively > ~/Desktop/gset.txt
我看到很多与 Xubuntu 无关的东西。例如:
com.canonical.Unity.Lenses always-search ['applications.scope', 'music.scope', 'videos.scope', 'files.scope']
com.canonical.Unity.Lenses disabled-scopes @as []
com.canonical.Unity.Lenses hidden-scopes @as []
com.canonical.Unity.Lenses home-lens-default-view ['applications.scope', 'files.scope']
com.canonical.Unity.Lenses home-lens-priority ['files.scope', 'music.scope']
com.canonical.Unity.Lenses locked-scopes @as []
com.canonical.Unity.Lenses remote-content-search 'all'
为什么会出现这些条目?是不是因为有一个“默认” gsettings 与所有源自 Ubuntu 的官方版本一起打包?
答案1
看来您说得对,一些“默认”Gsettings 与所有源自 Ubuntu 的官方版本一起打包。在本例中,它与 Unity lib 一起打包。
来自我的 Lubuntu 14.04 的示例,没有安装 Unity 桌面:
检查其架构文件
$ grep -r com.canonical.Unity.Lenses /usr/share/glib-2.0/schemas/ Binary file /usr/share/glib-2.0/schemas/gschemas.compiled matches /usr/share/glib-2.0/schemas/com.canonical.Unity.Lenses.gschema.xml: <schema path="/com/canonical/unity/lenses/" id="com.canonical.Unity.Lenses" gettext-domain="libunity">
/usr/share/glib-2.0/schemas/com.canonical.Unity.Lenses.gschema.xml
有没有。检查哪个包安装了它:
$ dpkg -S /usr/share/glib-2.0/schemas/com.canonical.Unity.Lenses.gschema.xml libunity9:amd64: /usr/share/glib-2.0/schemas/com.canonical.Unity.Lenses.gschema.xml
事实就是这样
libunity9
可能至少安装了以下一个应用程序:
$ apt-cache rdepends libunity9 libunity9 Reverse Depends: thunderbird-gnome-support nautilus empathy libunity9:i386 libunity9:i386 libunity-protocol-private0:i386 libunity-dev:i386 xchat-indicator wallch unity-scope-onlinemusic unity-scope-mediascanner unity-china-video-scope unity-china-music-scope psensor liferea libunity-tools claws-mail-multi-notifier xchat-gnome-indicator unity-webapps-service unity-webapps-qml unity-scope-video-remote unity-scope-musicstores unity-scope-home unity-lens-video unity-lens-music unity-lens-friends unity-lens-files unity-lens-applications thunderbird-gnome-support telepathy-indicator shotwell nautilus libunity-protocol-private0 libunity-dev libunity-dev libbrasero-media3-1 gir1.2-unity-5.0 evolution-indicator empathy deja-dup
为了更好地理解 Gsettings 相关文件,请参阅dconf-editor 和 gsettings 不应该访问同一个数据库吗?
顺便说一句,某些键可能没有相关架构,例如某些 Compiz 设置的情况(在 Unity 或 Gnome 会话中,Lubuntu 会话使用ini
文件)。甚至访问这些键的方式:应在 gsettings 命令中指定 Dconf 路径,请参阅示例当没有列出架构时如何使用 gsettings