Як змінити ключі dconf без gui (для сценарію після встановлення)?


31

Я встановив dconf-інструменти. У цьому випадку я маніпулюю відображенням імені на панелі на індикаторі сеансу.

Я можу це змінити в gui-редакторі dconf без проблем, я переходжу на програми / індикатор-сесію та скасовую показ-справжнє ім'я-на панелі.

Однак я також намагався переключити його просто за допомогою dconf у командному рядку:

dconf write /com/canonical/indicator/session/show-real-name-on-panel false

Після перезавантаження панель залишається незмінною, а також ключ у редакторі dconf також не змінюється.

Крім того, спроба оновити базу даних dconf через термінал призводить до помилки:

$ dconf update
fatal: Error opening directory '/etc/dconf/db': No such file or directory

З мого досвіду здається , ніби dconf та dconf-редактор не мають стосунків, тому мені просто цікаво, що я роблю неправильно.

Якщо я можу це зрозуміти, я хочу просто помістити команду в bash-скрипт, щоб запустити наступного разу, коли мені доведеться зробити чисту установку для оновлення *. Я роблю багато перетворень протягом 6 місяців, і просто хочу максимально автоматизувати з цього моменту.

  • Трохи поза темою: механізм оновлення дистрибуції ніколи не працював без перешкод для мене; Я також спробував це з 11.04 до 11.10.

Відповіді:


35

Можна скористатися gsettingsінструментом.

gsettings set com.canonical.indicator.session show-real-name-on-panel false

Дякую, що спрацювало! Це працює де-небудь, що dconf би? Чи буде це застаріле на користь dconf, або воно буде надалі використовуватися в осяжному майбутньому?
Інкаяку

Так, gsettings можна використовувати де завгодно dconf.
Анонім

1
Ні, це не буде застарілим. dconf замінив gconf, який буде застарілим. gconf можна змінити за допомогою gconf-editorабо gconftool-2. dconf можна змінити за допомогою dconf-editorабо gsettings.
Анонім

gconf зберігає свої файли у вашому домашньому каталозі під .gconf / каталогом.
Анонім

12

На Ubuntu 14.04 працювало наступне:

dconf write /org/gnome/gnome-session/auto-save-session true

Значення змінилося і залишилося зміненим після перезавантаження. У мене виникла ще одна проблема: Windows не було збережено, але це зовсім інша проблема.


6

dconf dump+ loadмасовий експорт та відновлення

  1. Скиньте всі налаштування у файл:

    dconf dump / >~/.config/dconf/user.conf
    
  2. Відкрийте цей файл у текстовому редакторі та виберіть потрібні вам налаштування:

    editor ~/.config/dconf/user.conf
    

    Якщо ви використовуєте Vim, вам потрібна ця синтаксична підсвітка .

  3. Якщо ви не знаєте ім'я налаштування, але знаєте, як його змінити на зразок графічного інтерфейсу unity-control-center, запустіть:

    dconf watch /
    

    а потім модифікувати їх. Точне налаштування з’явиться на терміналі.

  4. Коли ви хочете відновити ці налаштування, запустіть:

    dconf load / <~/.config/dconf/user.conf
    
  5. Git відстежує конфігураційний файл, щоб ніколи його не втрачати. https://github.com/andsens/homeshickhomesick - це мій поточний улюблений метод.

Тестовано на Ubuntu 15.10. Порада адаптована з: http://catern.com/2014/12/21/plain-text-configuration-gnome.html


1

Здається (принаймні в 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'

Тепер якби тільки я міг придумати, як перезавантажити компіз, не збиваючи все ...

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.