Каков предпочтительный способ хранения настроек приложения?

13

С точки зрения разработчика. Должен ли я использовать текстовый конфиг в / etc или в $ HOME? Или что-то другое?

Тамас Селеи
источник
Мне не хватает опыта, чтобы знать, предпочтительны они или нет, но GConf и dconf - это другие способы хранения настроек приложения.
Firefeather
1
Спасибо за предложение. Лично я предпочитаю простые файлы, потому что у меня есть кошмары о реестре Windows. На мой взгляд, идеальным способом хранения настроек являются обычные текстовые файлы, желательно со стандартным форматом (INI, JSON, XML, YAML и т. Д.). Одна база данных (особенно dconf, которая является монолитной) является единственной точкой отказа.
Тамас Селеи
ás: Спасибо, что поделились: я узнал кое-что новое из вашего комментария, которое пригодится, если я когда-нибудь найду свое программное обеспечение!
Firefeather
Я рад, что это помогает вам :)
Тамас Селеи
Связанный: askubuntu.com/questions/59822/...
Тахионы

Ответы:

11

Если вы говорите о общесистемном демоне, файл в /etcсоответствующем. Если вы говорите о приложении, которое должно иметь настройки для каждого пользователя, подходит домашний каталог. Для новых приложений было бы неплохо следовать спецификации XDG Base Directory:

http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html

В основном это говорит о том, что вы должны хранить ваши конфигурационные файлы $XDG_CONFIG_HOME, по умолчанию~/.config

Джеймс Хенстридж
источник
Почему нет упоминания о dconf / gsettings?
Сет