Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Программное обеспечение
Software
GConf — это система, использовавшаяся в среде рабочего стола GNOME для хранения настроек конфигурации рабочего стола и приложений. Она аналогична реестру Windows. GConf устарела в процессе перехода к GNOME 3. Миграция на её замену, GSettings и dconf, продолжается. Изменения в этой системе контролируются демоном GConfd. GConfd отслеживает изменения в базе данных и применяет новые настройки к приложениям, использующим её, при их изменении. Эта технология известна как "автоматическое применение" в отличие от "явного применения", требующего от пользователей нажатия кнопок "ОК" или "Применить" для вступления изменений в силу. Иногда используется термин "мгновенное применение" в сравнении с простым "применением". По умолчанию база данных GConf использует систему каталогов и XML-файлов, хранящихся в каталоге ~/. gconf. GConf также может использовать другие бэкенды, такие как сервер баз данных, но хранение в XML-файлах является наиболее распространенной конфигурацией. Для ручного изменения настроек предоставляется приложение gconf-editor, однако обычно оно не используется для пользовательских предпочтений.
GConf was a system used by the GNOME desktop environment for storing configuration settings for the desktop and applications. It is similar to the Windows Registry. It was deprecated as part of the GNOME 3 transition. Migration to its replacement, GSettings and dconf, is ongoing. Changes to this system are controlled by GConfd, a daemon. GConfd watches out for changes to the database, and when they are changed, it applies the new settings to applications using it. This technology is known as "auto apply", compared to "explicit apply", which requires users to press an OK or Apply button to make changes come into effect. The term "instant apply" is sometimes used, compared to plain "apply". The GConf database by default uses a system of directories and XML files, stored in a directory called ~/. gconf. GConf can also use other backends, such as a database server, but XML file storage is the most common configuration. The application gconf editor is provided to allow users to change settings manually, but it is not normally used for end user preferences.
Архитектура
В настоящее время GConf основан на C-реализации CORBA под названием ORBit. Его архитектура состоит из демона сеанса, который инициализирует различные источники схем конфигурации при входе пользователя в систему. Каждый источник основан на конкретном бэкенде, который преобразует пары ключ-значение, составляющие базу данных конфигурации; бэкенд по умолчанию основан на XML. На данный момент это единственный рабочий бэкенд для GConf, хотя бэкенд LDAP существовал в зачаточном состоянии. Каждый источник также может быть установлен в режим «только для чтения», чтобы создать конфигурацию по умолчанию, например, в корпоративной сети. Значения в базе данных GConf индексируются с использованием строкового пути в формате /path/to/application/key. Правильный способ доступа к базе данных GConf, управляемой демоном GConf, — использовать класс GConfClient на основе GObject.
GConf is currently based on the C implementation of CORBA named ORBit. Its architecture consists of a session daemon that initializes various sources of configuration schemas on user login. Each source is based on a specific backend that translates the key and value pairs that compose the configuration database; the default backend is based on XML. At this time, this is the only working backend for GConf, although an LDAP backend existed in embryonic form. Each source can also be set to read only, in order to create a default basic configuration, e. g. in a corporate network. The values inside the GConf database are indexed using a path string in the form of /path/to/application/key. The proper way to access the GConf database held by the GConf daemon is to use the GConfClient GObject based class.
Уведомление об изменениях
При написании приложения, использующего GConf, никогда не следует напрямую опрашивать базу данных. Вместо этого следует привязать функцию обратного вызова к заданному ключу, тем самым используя парадигму "модель-представление-контроллер" (MVC). Каждый раз, когда приложение изменяет значение, связанное с конкретным ключом, будут вызваны функции обратного вызова уведомлений.
When writing an application that uses GConf, one should never directly poll the database. Instead, one should attach a callback to a given key, thus using a model view controller (MVC) paradigm. Each time an application changes the value bound to a specific key, the notification callbacks will be invoked.
Схемы
Приложение, использующее GConf, должно предоставлять описание для каждого ключа, который оно создает в базе данных GConf. Эти метаданные конфигурации также хранятся в базе данных конфигурации и называются схемой; схема может содержать (возможно, локализованный) описательный текст, допустимый тип значения, связанного с ключом, и значение по умолчанию.
An application using GConf should provide a description for each key it creates inside the GConf database. This configuration meta data is also stored inside the configuration database, and is called a schema; it could contain a (possibly localized) descriptive text, the valid type of the value bound to a key, and a default value.