Questions tagged «gsettings»

有关使用gsettings(dconf编辑器的命令行版本)读取或修改dconf数据库的问题。使用gsettings,可以查看和更改各种程序的模式和键。有时可以通过这种方式发现隐藏设置(不在程序的gui中)。

1
如何将密钥添加到空模式?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为Ask Ubuntu 的主题。 5年前关闭。 我想自动设置一些设置,特别是向添加一些键盘快捷键~/.config/dconf/user。这是在dconf-editor中的外观: 现在,gsettings(或dconf)可以列出第一个: $ gsettings get org.cinnamon.keybindings custom-list ['custom0', 'custom1', 'custom2', 'custom3'] 但是,我看不到添加新的键绑定,甚至读取customX键的方法。 $ gsettings get org.cinnamon.keybindings.custom-keybinding:/ custom0 No such key 'custom0' 我如何添加,例如,custom4用钥匙binding='<Super>g',command='geany',name='Geany'? 输出到Donarssons答案: $ gsettings get org.cinnamon.keybindings.custom-keybindings:/custom0/ binding No such schema 'org.cinnamon.keybindings.custom-keybindings' $ gsettings get org.cinnamon.keybindings.custom-keybinding:/custom0/ binding '' 和以下命令后的屏幕截图。请注意,custom4不会转到自定义键绑定,而是转到根目录。 gsettings set org.cinnamon.keybindings.custom-keybinding:/custom4/ binding '<Super>g' …
14 dconf  gsettings 

1
如何在没有root特权的情况下安装Gsettings架构?
安装Gsettings架构的典型工作流程如下: 创建一个具有扩展名的架构,.gschema.xml其内容如下: <?xml version="1.0" encoding="UTF-8"?> <schemalist> <schema id="com.companyname.appname" path="/com/companyname/appname/"> <key type="b" name="mybool"> <default>false</default> <summary>Example summary</summary> <description>Example description</description> </key> </schema> </schemalist> 将架构复制到/usr/share/glib-2.0/schemas/。 通过运行以下命令来编译架构: sudo glib-compile-schemas /usr/share/glib-2.0/schemas/ 但是,写入/usr/share/glib-2.0/schemas/需要root特权。有没有办法将架构安装到非全局用户目录?

2
更改gsettings而不运行X和Unity
我正在尝试在Ubuntu 12.10中更改某些gconf设置。我想更改lightdm迎宾员背景。 我发现在运行X服务器时以用户身份登录统一时,我可以通过以下方式做到这一点: sudo xhost +SI:localuser:lightdm gsettings set com.canonical.unity-greeter background "'/usr/share/backgrounds/micros-background.png'" 问题是这要求我以用户身份在X下登录。因此,整个窗口管理器都需要运行。但是我想使用chroot来更改这些设置,而无需运行任何X服务器。我只想挂载分区并更改gsettings,而无需运行完整的窗口管理器。 有没有一种方法可以直接更改gsettings而无需登录X和Unity? 或者...是否有办法在后台启动X服务器和Unity,以便我可以进行更改而无需在监视器上显示完整的窗口?
13 xorg  gsettings 

2
如何使用dconf或gsettings读取默认键值?
我想知道dconf / gsettings键的默认值。 我的问题是以下问题的跟进: 在哪里可以找到与gsettings一起使用的SCHEMA / PATH / KEY列表? 我要尝试执行的操作,因此创建一个脚本来读取我的所有个人偏好,以便我可以备份并还原它们。我计划遍历所有键(如上面的脚本),查看哪些键已更改为默认值,并记下这些键,以便以后恢复。 我看到dconf编辑器显示了键的默认值,但是我非常想编写脚本。另外,我看不到如何自动解析模式/usr/share/glib-2.0/schemas/。也许有人可以帮忙? gsettings get-default | list-defaults将是不错的=) (Geesh,在过去,将〜/ .somethingrc保留在subversion中很容易... = \ 根据下面给出的答案,我已经更新了脚本以打印架构,键,键的数据类型,默认值和实际值: #!/bin/bash for schema in $(gsettings list-schemas | sort); do for key in $(gsettings list-keys $schema | sort); do type="$(gsettings range $schema $key | tr "\n" " ")" default="$(XDG_CONFIG_HOME=/tmp/ gsettings get …

2
媒体密钥不起作用
我的静音键,降低音量键和提高音量键均有效,但上一个,下一个键和播放/暂停键均无效。 我尝试了此处发布的解决方案,但这似乎不是问题。我的所有org.gnome.settings-daemon.plugins.media-keys设置似乎都以XF86作为前缀: 这是依次按上一个,下一个,播放/暂停和静音的输出: $ xev MappingNotify event, serial 39, synthetic NO, window 0x0, request MappingKeyboard, first_keycode 8, count 248 FocusOut event, serial 39, synthetic NO, window 0x3600001, mode NotifyGrab, detail NotifyAncestor FocusIn event, serial 40, synthetic NO, window 0x3600001, mode NotifyUngrab, detail NotifyAncestor KeymapNotify event, serial 40, synthetic NO, window …

1
如何转储所有手动更改的gsettings密钥?
该dconf编辑表示,其值已改变由用户通过如图所示的快照改变密钥的字体为粗体的按键。 因此,我想知道是否有一种方法可以转储所有由用户手动修改或更改为默认值以外的键(包括其架构)? ..那将对解决许多桌面环境问题非常有用,至少对我而言:)

1
使用cron的gsettings不会更改背景
我正在尝试使用Indrajith Indraprastham的建议脚本在这里将壁纸更改为随机图像: 如何在Unity中从命令行更改桌面背景? 当我从终端窗口运行脚本时,bg改变得很好,但是当它从cron运行时,我收到了以下错误消息: (进程:21901):dconf-警告**:无法提交对dconf的更改:错误生成命令行'dbus-launch --autolaunch = 00216c114dcf433c9bb9009985d607d6 --binary-syntax --close-stderr':子进程已退出,代码为1 我将不胜感激任何建议。

2
如何在Ubuntu GNOME 16.04上更改触摸板设置?
在使用GNOME 3.20升级到Ubuntu GNOME 16.04之后,我发现如果我触摸我的触摸板,它会单击,这是我不希望的,因为触摸板有问题,以前我可以通过禁用它gnome-control-center,但是似乎没有办法在那里再做一次,那我该怎么办呢?同样,即使它被设置为falsein gsettings且dconf-editor似乎出于某种原因在系统中的某个位置,它也被设置为true原样。我似乎也无法设置自然滚动或其他任何触摸板设置,为什么不呢?


1
dconf架构名称区分大小写吗?
我发现了一个以两种不同方式引用两个模式的示例,只是大小写不同,这使我感到困惑。 Gsettings将模式名称视为com.canonical.Unity.Launcher,并且不接受com.canonical.unity.launcher为有效的模式名称。另一方面,com.canonical.unity.launcher如屏幕截图所示,dconf-editor只看到所有小写​​字母。 如果我favorites在Gsettings中更改了密钥,则该更改将反映在dconf-editor中,反之亦然。 这是怎么回事?正确的架构名称是com.canonical.Unity.Launcher或com.canonical.unity.launcher? 设置: $ gsettings list-schemas | grep -i com.canonical.unity.launcher com.canonical.Unity.Launcher david@david-Aspire-5735:~$ $ gsettings list-recursively com.canonical.Unity.Launcher com.canonical.Unity.Launcher favorite-migration '3.2.10' com.canonical.Unity.Launcher favorites ['application://firefox.desktop', 'application://thunderbird.desktop', 'unity://running-apps', 'unity://expo-icon', 'unity://devices'] david@david-Aspire-5735:~$ gsettings list-recursively com.canonical.unity.launcher No such schema 'com.canonical.unity.launcher' dconf编辑器:
10 dconf  gsettings 

3
从命令行配置gnome-shell扩展
我喜欢运行一些脚本来自动安装软件包,并在新安装的操作系统上进行一些配置。我使用具有一些扩展的gnome shell,并正在考虑改进我的脚本以对其进行配置。 我通常使用gnome-shell-extension-prefs或dconf-editor配置扩展,并且我知道如何从命令行编辑其他架构。例: gsettings set org.gnome.desktop.background picture-options stretched 但是,尽管我可以使用dconf编辑器在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) 提前致谢。

2
Gsettings和dconf
您好我需要在ubuntu 12.10中设置一个热键,我使用: gsettings(dconf) gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom2/ binding '<Primary><Alt>s'<br> gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom2/ binding '<Primary><Alt>s'<br> gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom2/ command 'gnome-terminal' 但是,当我使用gsettings查看此架构时,我只会看到: gsettings get org.gnome.settings-daemon.plugins.media-keys custom-keybindings @as [] 但是,当我使用dconf查看此架构时: dconf list /org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom2/ binding command 我究竟做错了什么?

1
用于将新项目添加到com.canonical.Unity.Panel systray-whitelist的一行命令
与如何在Unity通知面板中添加项目相比,这更多的是关于如何使用命令行指令的问题。 我必须有一个命令行CLI才能将新项目添加到com.canonical.Unity.Panel systray-whitelist。 这样做的标准过程是: sudo gsettings get com.canonical.Unity.Panel systray-whitelist 我们得到 ['JavaEmbeddedFrame', 'Wine', 'Skype'] 然后我们执行第二个命令 sudo gsettings set com.canonical.Unity.Panel systray-whitelist "['JavaEmbeddedFrame', 'Wine', 'Skype', 'shutter']" 尽管那很棒,但它需要人们从第一行复制并粘贴结果,对于我正在编写的脚本,我想用一个命令来完成。 到目前为止,这就是我所拥有的: sudo gsettings set com.canonical.Unity.Panel systray-whitelist | gsettings get com.canonical.Unity.Panel systray-whitelist | sed -e "s/']$/,'shutter']/" | awk 'NF{print "\"" $0 "\""}' 我想我缺少了一些东西。 首先,我不确定是否将字符串正确地传递到gsettings set函数中。其次,虽然我认为我正确地解析了gsettings get函数的输出,但是我不会想出一种方法来使用sed在修改后的结果周围添加“”,因此我不得不将另一个awk命令通过管道传递到此混乱中。 感谢任何有帮助的人。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.