Dconf: различия между версиями

Материал из ALT Linux Wiki
м (punctuation)
Нет описания правки
Строка 96: Строка 96:


7. Новые настройки вступают в силу немедленно -- перелогиниваться необязательно. Попробуйте теперь изменить фон под обычным пользователем. Если не сработало, значит схема на 6 шаге была определена неправильно.
7. Новые настройки вступают в силу немедленно -- перелогиниваться необязательно. Попробуйте теперь изменить фон под обычным пользователем. Если не сработало, значит схема на 6 шаге была определена неправильно.
==Некоторые настройки==
===Сбросить внешний вид панели и меню Mate===
$ dconf reset -f /org/mate/panel
$ dconf reset -f /org/mate/mate-menu
===Автоматическое монтирование флешек и др. носителей===
Правим через dconf-editor параметр на true/false:
/org/mate/desktop/media-handling/automount
То же действие через консоль:
$ gsettings set org.mate.media-handling automount false
===Порядок расположения кнопок сворачивания-разворачивания-закрытия окон===
====Mate====
Правим через dconf-editor параметр
/org/mate/marco/general/button-layout
правим значение переставляя параметры:
'menu:minimize,maximize,close'
====Gnome====
/org/gnome/desktop/wm/preferences/button-layout
правим значение переставляя параметры:
'menu:minimize,maximize,close'
===Показывать/не показывать уведомления NetworkManager===
Выключить:
$ gsettings set org.gnome.nm-applet disable-disconnected-notifications "true"
$ gsettings set org.gnome.nm-applet disable-connected-notifications "true"
Включить:
$ gsettings set org.gnome.nm-applet disable-disconnected-notifications "false"
$ gsettings set org.gnome.nm-applet disable-connected-notifications "false"
==Резервное копирование и восстановление==
===Резервное копирование и сброс настроек===
#Резервное копирование
#:<code>$ dconf dump '''путь''' > ~/'''файл'''</code>
#:Например:
#:<code>$ dconf dump '''/org/mate''' > ~/'''dconf-mate-bak'''</code>
#Сбрасываем настройки
#:<code>$ dconf reset -f '''путь'''</code>
#:Например
#:<code>$ dconf reset -f '''/org/mate/'''</code>
Затем, нужно выйти из системы и зайти в нее снова.
===Восстановление===
#Восстановление
#:<code>$ dconf load '''путь'''  < ~/'''файл'''</code>
#Например:
#:<code>$ dconf load '''/org/mate/'''  < ~/'''dconf-mate-bak'''</code>


[[Категория:HOWTO]]
[[Категория:HOWTO]]
[[Категория:Desktop Environments]]
[[Категория:Desktop Environments]]
{{Category navigation|title=Desktop Environments|category=Desktop Environments|sortkey={{SUBPAGENAME}}}}
{{Category navigation|title=Desktop Environments|category=Desktop Environments|sortkey={{SUBPAGENAME}}}}

Версия от 14:03, 2 октября 2023

Описание

dconf – низкоуровневая система конфигурации. При помощи dconf в GNOME и Unity хранятся настройки большинства программ.

dconf это простая система конфигурации основанная на ключах. Ключи находятся в неструктурированной базе данных (ключи, логически связанные между собой, объединены в категории). База данных хранится в бинарном файле, который располагается в ~/.config/dconf.

Особенности

Ограничения: предлагаемые рецепты охватывают окружения рабочих столов, для настройки которых используются dconf и gsettings (MATE, GNOME, XFCE, итд...).

Внимание! Нельзя запретить изменение какой-либо настройки, предварительно не установив её значение по умолчанию.


Поиск соответствий схемы настройкам рабочего стола

Задача: необходимо выяснить пути и названия элементов схемы, отвечающих за конкретные настройки рабочего стола. Например, что именно определяет фон или цвет рабочего стола.

1. Для начала открываем консоль и набираем:

$ gsettings list-schemas | grep background
org.mate.background
org.mate.SettingsDaemon.plugins.background
org.gnome.desktop.background

Тем самым мы получим список схем, в которых может содержаться интересующая нас информация. Теперь выясняем, что именно из перечисленного отвечает за интересующие нас настройки рабочего стола. Можно открыть сразу несколько терминалов (или вкладок), введя в каждом команду со своим именем схемы:

$ gsettings monitor org.mate.background

Открываем настройки рабочего стола (параметры внешнего вида) и меняем фон, цвет, или то, что нас интересует. При этом в одном из открытых терминалов появится информация вида схема/ключ/значение. Можно нажать Ctrl-C и получить для заданной схемы все ключи вместе с текущими значениями.

$ gsettings list-recursively org.mate.background
org.mate.background picture-opacity 100
org.mate.background secondary-color '#3C8F25'
org.mate.background show-desktop-icons true
org.mate.background background-fade true
org.mate.background primary-color '#5891BC'
org.mate.background picture-filename '/usr/share/design/current/backgrounds/default.png'
org.mate.background color-shading-type 'vertical-gradient'
org.mate.background picture-options 'zoom'
org.mate.background draw-background true

Установка настроек рабочего стола по умолчанию

Задача: административно установить настройки рабочего стола, которые будут применяться у всех вновь создаваемых пользователей. Например, так можно определить конкретный фон или цвет рабочего стола. Эти изменения не затронут ранее созданных пользователей, которые уже используют графическую среду. Кроме того, пользователи смогут изменить установленные администратором настройки, если захотят. Чтобы заблокировать им такую возможность, читайте следующий раздел.

2. Все действия выполняем от имени root:

$ su -

3. Создаём файл /etc/dconf/profile/user следующего содержания:

user-db:user
system-db:local

4. Создаём директорию:

# mkdir -p /etc/dconf/db/local.d/locks

5. Создаём файл /etc/dconf/db/local.d/00_background. Сохраняем в него только те ключи и значения, полученные на шаге 1, которые нас интересуют. В квадратных скобках указываем название схемы.

[org/mate/background]
secondary-color='#8585d4d45b5b'
background-fade=true
primary-color='#babadada5555'
picture-filename='/usr/share/backgrounds/mate/desktop/MATE-Stripes-Dark.png'
color-shading-type='vertical-gradient'
picture-options='zoom'
draw-background=true

Блокировка настроек рабочего стола

Задача: административно заблокировать возможность изменения некоторых настроек рабочего стола. Например, чтобы обычный пользователь не мог изменять определённый фон или цвет.

6. Пока мы лишь определили значения, которые в дальнейшем будут использоваться по умолчанию. Пользователь всё ещё имеет возможность их поменять. Чтобы пользователь не мог внести изменения в настройки рабочего стола никакими средствами, создадим ещё один файл /etc/dconf/db/local.d/locks/00_background следующего содержания:

/org/mate/desktop/background/secondary-color
/org/mate/desktop/background/background-fade
/org/mate/desktop/background/primary-color
/org/mate/desktop/background/picture-filename
/org/mate/desktop/background/color-shading-type
/org/mate/desktop/background/picture-options
/org/mate/desktop/background/draw-background

и выполним команду:

# dconf update

Здесь стоит обратить внимание, что схема указана другая -- не /org/mate/background, а /org/mate/desktop/background. В случае с MATE это связано с особенностью обработки схем dconf и gsettings. Посмотреть текущие схемы можно в директории /usr/share/glib-2.0/schemas.

7. Новые настройки вступают в силу немедленно -- перелогиниваться необязательно. Попробуйте теперь изменить фон под обычным пользователем. Если не сработало, значит схема на 6 шаге была определена неправильно.

Некоторые настройки

Сбросить внешний вид панели и меню Mate

$ dconf reset -f /org/mate/panel
$ dconf reset -f /org/mate/mate-menu

Автоматическое монтирование флешек и др. носителей

Правим через dconf-editor параметр на true/false:

/org/mate/desktop/media-handling/automount

То же действие через консоль:

$ gsettings set org.mate.media-handling automount false

Порядок расположения кнопок сворачивания-разворачивания-закрытия окон

Mate

Правим через dconf-editor параметр

/org/mate/marco/general/button-layout

правим значение переставляя параметры:

'menu:minimize,maximize,close'

Gnome

/org/gnome/desktop/wm/preferences/button-layout

правим значение переставляя параметры:

'menu:minimize,maximize,close'

Показывать/не показывать уведомления NetworkManager

Выключить:

$ gsettings set org.gnome.nm-applet disable-disconnected-notifications "true"
$ gsettings set org.gnome.nm-applet disable-connected-notifications "true"

Включить:

$ gsettings set org.gnome.nm-applet disable-disconnected-notifications "false"
$ gsettings set org.gnome.nm-applet disable-connected-notifications "false"

Резервное копирование и восстановление

Резервное копирование и сброс настроек

  1. Резервное копирование
    $ dconf dump путь > ~/файл
    Например:
    $ dconf dump /org/mate > ~/dconf-mate-bak
  2. Сбрасываем настройки
    $ dconf reset -f путь
    Например
    $ dconf reset -f /org/mate/

Затем, нужно выйти из системы и зайти в нее снова.

Восстановление

  1. Восстановление
    $ dconf load путь < ~/файл
  2. Например:
    $ dconf load /org/mate/ < ~/dconf-mate-bak