是否有一种方法可以通过命令行设置dconf键,而不登录到X?
我想用木偶的这个。
如果我尝试(来自SSH,作为普通用户)一个简单的
dconf write /desktop/gnome/remote-access/enabled true我得到了
error: Command line `dbus-launch --autolaunch=e4d2b270bd8471627460e57c000007f1 --binary-syntax --close-stderr' exited with non-zero exit status 1:
Autolaunch error: X11 initialization failed.\n而如果我试着
DISPLAY=:0 dconf write /desktop/gnome/remote-access/enabled true我得到了
error: Command line `dbus-launch --autolaunch=e4d2b270bd8471627460e57c000007f1 --binary-syntax --close-stderr' exited with non-zero exit status 1:
Invalid MIT-MAGIC-COOKIE-1 keyInvalid MIT-MAGIC-COOKIE-1 keyAutolaunch error: X11 initialization failed.\n如果我删除$HOME/..Xauthority
error: Command line `dbus-launch --autolaunch=e4d2b270bd8471627460e57c000007f1 --binary-syntax --close-stderr' exited with non-zero exit status 1:
No protocol specified\nNo protocol specified\nAutolaunch error: X11 initialization failed.\n我在Xubuntu 12.04上测试
(我的问题类似于这一个,但在这种情况下,用户是登录的)
发布于 2013-04-30 20:36:45
乔里尔,谢谢你提供你的解决方案!我想添加一个注释,以防人们遇到我刚才遇到的问题:当您使用这个类型定义来设置字符串值时,您需要传递一些额外的引号和转义字符。例如,我想在gedit中设置我的配色方案,所以我尝试了如下:
dconf::key {'/org/gnome/gedit/preferences/editor/scheme':
value => 'solarized_dark',
}但没起作用。我需要做的是:
dconf::key {'/org/gnome/gedit/preferences/editor/scheme':
value => "\\\"solarized_dark\\\"",
}也许有人可以用一种更简单的方式去做,或者把它构建到你提供的函数中?不管怎么说,现在对我有用了,所以我就不去管它了。
请注意,在没有额外的胡说八道的情况下,传入布尔人很好,例如:
dconf::key {'/org/gnome/gedit/preferences/editor/auto-indent':
value => 'true',
}工作正常,我假设数值也可以在没有额外转义字符的情况下设置。
发布于 2013-08-04 13:00:48
我根据Joril的回答,为此创建了一个木偶模块:
https://github.com/sitaktif/puppet-dconf
正如user153385所提到的,由于sh的使用,它需要转义。在存储库的README.md中给出了使用bool、string和数组的示例。
发布于 2014-02-20 08:30:57
我找到了一个临时的解决方案:
export DISPLAY=:0导出显示。您是否有更好的解决方案用于dconf而不导出显示?
https://askubuntu.com/questions/196307
复制相似问题