Jump to content

dconf

(Перенаправлено из Dconf-редактора )
dconf
Разработчик(и) Проект GNOME (Эллисон Лорти)
Первоначальный выпуск 16 сентября 2009 г .; 14 лет назад ( 16 сентября 2009 )
Стабильная версия
0.40.0 [1]  Отредактируйте это в Викиданных / 13 марта 2021 г .; 3 года назад ( 13 марта 2021 )
Репозиторий
Написано в С
Тип Конфигурация, управление настройками
Лицензия Меньшая стандартная общественная лицензия GNU
Веб-сайт неделя .гном .org /Проекты /dconf
GNOME Tweak Tool предоставляет доступ к определенному популярному подмножеству настроек рабочего стола.

dconf — это низкоуровневая система конфигурации и инструмент управления настройками. Его основная цель — предоставить серверную часть GSettings на платформах , на которых еще нет систем хранения конфигурации. Это зависит от GLib . Он является частью GNOME начиная с версии 3 и заменяет GConf .

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

Уведомление об изменении поддерживается.

Поддерживается стекирование нескольких источников конфигурации. Обязательные ключи поддерживаются.

Укладку можно выполнять в «точках монтирования». Например, глобальную конфигурацию системы можно смонтировать под /system/ внутри пространства конфигурации каждого пользователя. Один источник конфигурации может присутствовать в нескольких точках иерархии. Например, в дополнение к наложению обычных клавиш на /user/ ключи системы по умолчанию также могут появиться по адресу /default/ для проверки и изменения с помощью утилиты настройки системной политики.

Интеграция PolicyKit запланирована таким образом, чтобы обычный пользователь мог временно получить возможность, например, записывать ключи под /система/ (или /по умолчанию/ ). Это означает, что такие программы, как утилита настройки GNOME Display Manager, больше не нужно запускать от имени пользователя root.

dconf — это во многом эквивалент реестра Windows в GNOME .

Архитектура программного обеспечения

[ редактировать ]

Поскольку типичный вход в систему GNOME состоит из тысяч операций чтения и, в идеале, 0 операций записи, dconf оптимизирован для чтения. Обычно чтение ключа из dconf не требует никаких системных вызовов и переключений контекста. Это достигается с помощью простого формата файла, который одновременно служит форматом хранения данных в dconf и механизмом IPC между клиентами и сервером.

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

Наличие всех ключей в одном компактном двоичном формате также позволяет избежать серьезных проблем фрагментации, с которыми в настоящее время сталкивается подход «дерево каталогов XML-файлов».

dconf Архитектура
dconf Архитектура

Запись менее оптимизирована — она проходит по шине и обрабатывается «писателем» — службой D-Bus — обычным способом. Уведомление об изменении также обрабатывается автором. Причина существования автобусной службы заключается в том, что заставить клиентов синхронизироваться при записи будет очень сложно. [ нужна ссылка ]

Службу записи не нужно активировать до тех пор, пока не будет выполнена первая операция записи.

Служба полностью не сохраняет состояние и может запускаться и останавливаться динамически. Список уведомлений об изменениях, в которых заинтересован отдельный клиент, поддерживается демоном шины (как список наблюдения/соответствия сигналов D-Bus).

база данных dconf

[ редактировать ]

Одна база данных dconf состоит из одного файла в двоичном формате, т.е. это не текстовый файл. Формат определяется как gvdb (файл базы данных GVariant). Это простой формат файла базы данных, в котором сохраняется сопоставление строк со значениями GVariant, что чрезвычайно эффективно для поиска.

Файл базы данных GNOME для каждого пользователя по умолчанию ~/.config/dconf/user, файл, который, как ожидается, будет в формате GVDB.

GВариант

[ редактировать ]

GVariant — это строго типизированный вариантный тип данных, используемый для всех значений, хранящихся в dconf; он может содержать одно или несколько значений вместе с информацией о типе значений.

GVariant может содержать простые типы, например целые числа или логические значения; или сложные типы, такие как массив из двух строк или словарь пар ключ-значение. GVariant также является неизменяемым: после его создания ни его тип, ни его содержимое не могут быть изменены в дальнейшем. GVariant полезен, когда данные необходимо сериализовать, например, при отправке параметров метода в DBus или при сохранении настроек с помощью GSettings.

GVariant является частью GLib.

GНастройки

[ редактировать ]

Класс GSettings предоставляет приложению API высокого уровня для хранения и получения собственных настроек.

В Debian служебная программа /usr/bin/gsettings содержится в пакете libglib2.0-bin .

GSettings является частью GIO . [2] который является частью GLib. libglib2.0-0

Документация

[ редактировать ]

системного администратора руководство Доступно по dconf. Начиная с версии 0.2, dconf лицензируется по лицензии LGPL версии 2.1 «или новее».

История выпусков

[ редактировать ]
Версия Дата выпуска Значительные изменения
0.1 2009-09-18
0.2 2009-10-27
0.3 2010-05-25
0.4 2010-07-12
0.5 2010-09-15
0.6 2010-12-21
0.7 2011-05-09
0.8 2011-07-26
0.9 2011-09-19
0.10 2011-09-26
0.11 2012-03-19
0.12 2012-05-01
0.13 2012-08-20
0.14 2012-11-01
0.15 2013-02-11
0.16 2013-07-16
0.17 2013-09-16
0.18 2013-09-23
0.19 2014-03-17
0.20 2014-03-24 Компиляция dconf: всегда писать с прямым порядком байтов
0.21 2014-07-22
0.22 2014-09-19
0.23 2015-03-16 разделить dconf-editor на отдельный пакет
0.24 2015-03-23
0.25 2015-12-16
0.26 2016-03-23 серверная часть libdbus-1 удалена; dconf теперь всегда использует GDBus
0.27 2017-10-17 Перенос в систему сборки Meson (#784910)
  1. ^ «Выпуск 0.40.0» . 13 марта 2021 г. Проверено 10 апреля 2021 г.
  2. ^ «gio/gsettings.c · мастер · GNOME / GLib» . ГитЛаб . Проверено 22 апреля 2018 г. [ постоянная мертвая ссылка ]
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 2737a3c356e25c238536973ac0eca7d4__1722268860
URL1:https://arc.ask3.ru/arc/aa/27/d4/2737a3c356e25c238536973ac0eca7d4.html
Заголовок, (Title) документа по адресу, URL1:
dconf - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)