Как изменить ключи dconf без графического интерфейса пользователя (для сценария после установки)?
Я установил dconf-tools. В этом случае я манипулирую отображением имени на панели индикатора сеанса.
Я могу изменить это в графическом интерфейсе dconf-editor без проблем, захожу в приложение / индикатор-сеанс и снимаю флажок "Показать реальное имя на панели".
Тем не менее, я также попытался переключить его, просто используя dconf в командной строке:
dconf write /com/canonical/indicator/session/show-real-name-on-panel false
После перезагрузки панель не изменяется, и ключ в dconf-editor также не изменяется.
Более того, попытка обновить базу данных dconf через терминал приводит к ошибке:
$ dconf update
fatal: Error opening directory '/etc/dconf/db': No such file or directory
По моему опыту кажется, что dconf и dconf-editor не связаны между собой, поэтому мне просто интересно, что я делаю неправильно.
Если я могу понять это, я хочу просто поместить команду в скрипт bash для запуска в следующий раз, когда мне нужно будет выполнить чистую установку для обновления *. Я делаю много твиков за 6 месяцев и с этого момента просто хочу максимально автоматизировать.
- Немного не по теме: механизм обновления дистрибутива никогда не работал без помех для меня; Я пробовал это делать с 11.04 по 11.10.
4 ответа
Вы можете использовать gsettings
инструмент.
gsettings set com.canonical.indicator.session show-real-name-on-panel false
dconf dump
+ load
массовый вывоз и восстановление
Сбросить все настройки в файл:
dconf dump / >~/.config/dconf/user.conf
Откройте этот файл в текстовом редакторе и выберите нужные параметры:
editor ~/.config/dconf/user.conf
Если вы используете Vim, вам понадобится эта подсветка синтаксиса.
Если вы не знаете название параметра, но знаете, как изменить его с помощью графического интерфейса, например
unity-control-center
, бежать:dconf watch /
а затем изменить их. Точная настройка появится на терминале.
Когда вы хотите восстановить эти настройки, запустите:
dconf load / <~/.config/dconf/user.conf
Git отслеживать файл конфигурации, чтобы никогда не потерять его. https://github.com/andsens/homeshickhomesick - мой любимый метод.
Проверено на Ubuntu 15.10. Подсказка адаптирована с: http://catern.com/2014/12/21/plain-text-configuration-gnome.html
На Ubuntu 14.04 у меня работает следующее:
dconf write /org/gnome/gnome-session/auto-save-session true
Значение действительно изменилось и осталось измененным после перезагрузки. У меня была другая проблема, что окна не были сохранены, но это совсем другая проблема.
Кажется (по крайней мере в 15.10), что есть некоторые вещи (в частности, compiz), которые хранят только конфигурацию на dconf
слой и не может быть установлен через gsettings
, Возможно, это влияет на другие пути конфигурации, но, вероятно, маловероятно - поскольку compiz находится на более низком уровне, чем единица, я не удивлен, что он ведет себя по-другому.
Например, это будет работать:
dconf write /org/compiz/profiles/unity/plugins/core/outputs "['3200x1800+288+2160', '3840x2160+0+0']"
пока этого не будет
gsettings set org.compiz.profiles.unity.plugins.core outputs "['3200x1800+288+2160', '3840x2160+0+0']"
# No such schema 'org.compiz.profiles.unity.plugins.core'
Теперь, если бы я только мог понять, как перезагрузить Compiz без сбоев всего...