community.general.dconf – Модификация и чтение базы данных dconf
Примечание
Этот плагин входит в состав коллекции community.general (версия 1.3.2).
Для его установки используйте: ansible-galaxy collection install community.general.
Для использования в книге задач укажите: community.general.dconf.
Обзор
- Этот модуль позволяет изменять и читать базу данных dconf. Модуль реализован как оболочка вокруг инструмента dconf. Подробнее см. страницу руководства dconf(1).
- Поскольку
dconfтребует запущенной сессии D-Bus для изменения значений, модуль попытается обнаружить существующую сессию и повторно использовать её или запустить инструмент черезdbus-run-session.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| ключ строка / обязательный | Ключ dconf для изменения или чтения из базы данных dconf. | |
| состояние строка |
| Действие, которое нужно выполнить с ключом/значением. |
| значение строка | Значение для установки для указанного ключа dconf. Значение должно быть указано в формате GVariant. Ввиду сложности этого формата, рекомендуется ознакомиться с существующими значениями в базе данных dconf. Требуется для state=present. |
Примечания
Примечание
- Этот модуль зависит от
psutilбиблиотеки Python (версия 4.0.0 и выше),dconf,dbus-send, иdbus-run-sessionбинарников. В зависимости от используемой дистрибуции, возможно, потребуется установить дополнительные пакеты для их доступности. - Обнаружение существующей, работающей сессии D-Bus, необходимой для изменения настроек через
dconf, не является 100% надёжным из-за особенностей реализации самого демона D-Bus. Это может привести к тому, что приложения не получат изменений в режиме реального времени, если параметры меняются через Ansible иdbus-run-session. - Обратите внимание, что инструмент командной строки
dconf, с которым этот модуль работает, использует необычный синтаксис для значений (GVariant). Например, если вы хотите указать строковое значение, правильный синтаксис будетvalue="'myvalue'"- с одинарными кавычками как частью значения параметра Ansible. - При использовании циклов в сочетании со значением, таким как
"[('xkb', 'us'), ('xkb', 'se')]", необходимо учитывать возможные преобразования типов. Применение фильтра"{{ item.value | string }}"к переменной параметра может предотвратить потенциальные проблемы с преобразованием. - Самый простой способ определить точный синтаксис/значение, которые нужно предоставить для ключа, заключается в внесении изменения конфигурации в приложение, затронутое ключом, а затем в просмотре установленного значения с помощью команд
dconf dump /path/to/dir/илиdconf read /path/to/key.
Примеры
- name: Configure available keyboard layouts in Gnome
community.general.dconf:
key: "/org/gnome/desktop/input-sources/sources"
value: "[('xkb', 'us'), ('xkb', 'se')]"
state: present
- name: Read currently available keyboard layouts in Gnome
community.general.dconf:
key: "/org/gnome/desktop/input-sources/sources"
state: read
register: keyboard_layouts
- name: Reset the available keyboard layouts in Gnome
community.general.dconf:
key: "/org/gnome/desktop/input-sources/sources"
state: absent
- name: Configure available keyboard layouts in Cinnamon
community.general.dconf:
key: "/org/gnome/libgnomekbd/keyboard/layouts"
value: "['us', 'se']"
state: present
- name: Read currently available keyboard layouts in Cinnamon
community.general.dconf:
key: "/org/gnome/libgnomekbd/keyboard/layouts"
state: read
register: keyboard_layouts
- name: Reset the available keyboard layouts in Cinnamon
community.general.dconf:
key: "/org/gnome/libgnomekbd/keyboard/layouts"
state: absent
- name: Disable desktop effects in Cinnamon
community.general.dconf:
key: "/org/cinnamon/desktop-effects"
value: "false"
state: present
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие — поля, уникальные для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| значение строка | успех, состояние было "чтение" | значение, связанное с запрошенным ключом Пример: 'Значение по умолчанию' |
Авторы
- Branko Majic (@azaghal)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/general/dconf_module.html