URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 65304
[ Назад ]

Исходное сообщение
"Раздел полезных советов: Перемещение всех пользовательских ф..."

Отправлено auto_tips , 29-Мрт-10 10:59 
Чтобы принудительно переместить все пользовательские файлы конфигурации из корня домашней директории в отдельный каталог (допустим ~/.config) можно воспользоваться библиотекой libetc (http://ordiluc.net/fs/libetc/). libetc подгружается к приложениям через механизм LD_PRELOAD, подменяя собой некоторые библиотечные вызовы и самостоятельно обрабатывая ситуацию открытия файлов и директорий, начинающихся с точки. Базовый путь берется из переменной окружения $XDG_CONFIG_HOME, определенной для этих целей в стандарте http://standards.freedesktop.org/basedir-spec/

Пример использования, в ~/.bashrc, ~/.zshrc или ~/.xsession добавляем:

   # загружаем библиотеку
   export LD_PRELOAD=libetc.so.0
   # список игнорирования
   export LIBETC_BLACKLIST=/bin/ls:/bin/mv:/bin/cp:/bin/ln:/usr/bin/find:/bin/rm
   # Перемещаем файлы конфигурации в директорию /home/luc/config
   export XDG_CONFIG_HOME=/home/luc/config

Если явно не определена переменная окружения XDG_CONFIG_HOME, в качестве базового пути будет использована директория ~/.config/

Работа libetc проверена в таких программах, как OpenOffice.org, KDE, Gnome, Firefox, Mutt, vim, Thunderbird, Sylpheed, Gimp.


URL: http://muhas.ru/?p=130 http://ordiluc.net/fs/libetc/README
Обсуждается: http://www.opennet.me/tips/info/2330.shtml


Содержание

Сообщения в этом обсуждении
"Перемещение всех пользовательских файлов конфигурации в отдельную директорию"
Отправлено SwitNJ , 29-Мрт-10 10:59 
давно бы уже унесли все настройки в одну директорию! это именно то что меня больше всего напрягает - куча точечных директорий муляющих под ногами

"Перемещение всех пользовательских файлов конфигурации в отде..."
Отправлено Heckfy , 29-Мрт-10 11:19 
vim?
я бы не рискнул его изолировать. :)

"Перемещение всех пользовательских файлов конфигурации в отде..."
Отправлено фтфтф , 31-Мрт-10 13:12 
Уже давно все в одной, $HOME зовётся.


"Перемещение всех пользовательских файлов конфигурации в отдельную директорию"
Отправлено Anon , 29-Мрт-10 17:15 
Кстати да. Было бы неплохо так сделать сразу для целого дистра. Может подкинуть идейку Шаттворту?

"Перемещение всех пользовательских файлов конфигурации в отдельную директорию"
Отправлено Хоменко , 29-Мрт-10 18:13 
Без паники, товарищи, без паники.

Миграция всех ~/.fafa.conf в ~/.config уже идет полным ходом. Третьего дня обнаружил в ~/.vlc файл readme, где говорилось, что ~/.vlc по прочтении данного файла можно удалить, и что они переехали в ~/.config.

Все устроится в свое время. А костыль с LD_PRELOAD есть что-то на манер proof of concept. Не нужен он.


"Нужен принципиально новый подход"
Отправлено кодир , 01-Апр-10 12:17 
Система файлов-конфигов тоже как бы устарела - слишком примитивно. Линуксу давно уже надо было подумать о центральном реестре. Да, как у винды, что с того? Зато это универсальнее и переносимее.

"Нужен принципиально новый подход"
Отправлено Игорь Фролов , 01-Апр-10 12:42 
Может оно и хорошо бы было, но глядя на виндовый реестр заметны некоторые проблемы:
1. Иногда реестр погибает, а поскольку формат бинарный и точно в его устройстве никто кроме как "разработчик" не уверен, восстановить его практически нереально (то что его необходимо бэкапить - это и коню понятно, только делают это далеко не все)
2. При эксплуатации реестр забивается различным информационным хламом, толково очистить от которого не в состоянии ни один "чистильщик реестра".
Я бы не хотел уходить от текстовых настроек

"+1"
Отправлено Вова , 01-Апр-10 13:28 
я вообще не вижу проблемы в файликах в хомесе ~/.*, на домашней эвм $HOME прожил 8 лет, ничего не было утеряно, проблем не замечал, на рабочем месте 4ре года -полёт нормальный.

"Нужен принципиально новый подход"
Отправлено Hate , 01-Апр-10 20:08 

>Система файлов-конфигов тоже как бы устарела - слишком примитивно. Линуксу давно уже

Согласен.


>надо было подумать о центральном реестре. Да, как у винды, что
>с того? Зато это универсальнее и переносимее.

Реестр это утопия.

Не понимает это только ленивый. :)


"Нужен принципиально новый подход"
Отправлено rm_ , 02-Апр-10 08:21 
> Система файлов-конфигов тоже как бы устарела - слишком примитивно.

Колесо тоже как бы устарело - слишком примитивно.


"Нужен принципиально новый подход"
Отправлено Kroz , 06-Апр-10 14:45 
>Система файлов-конфигов тоже как бы устарела - слишком примитивно. Линуксу давно уже надо было подумать о центральном реестре. Да, как у винды, что с того? Зато это универсальнее и переносимее.

Можно пример того, как вы реестр перенесете реестр (в одном бинарном файле!) на другой тазик? Винда сама использует текстовые файлы для переноса кусков реестра в другое место. Получается два формата конфигурационных файлов вместо одного. Зачем?

Универсальностью и не пахнет. То есть мне нужен будет специальный костыль, чтобы открывать файлы конфигурации? Бррр. ИМХО F3/F4 в mc, cat, less, vi, kwrite, grep, sed (дальше перечислять не нужно?) намного универсальней.

<ИМХО> Система конфигурации в отдельных файлах в текстовом виде - гениальное изобретение Unix. Такое же, как архитектура клиент-сервер для большинства прог, единая root filesystem, простых и эфективных аттрибутов, /proc и /dev файловых систем, максимальная модульность и т. д. Что нужно конфигурационным файлам, так это унификация синтаксиса. Например вида "[section]\n parameter=value" или "#!/bin/sh\n variable=value" или уже XML (хотя XML немного страшноват для этого). Но это не критично. </ИМХО)


"Перемещение всех пользовательских файлов конфигурации в отдельную директорию"
Отправлено pika , 06-Апр-10 12:32 
цитата1
"Перемещение всех пользовательских файлов конфигурации в отдельную директорию"

цитата2
"Пример использования, в ~/.bashrc, ~/.zshrc или ~/.xsession добавляем:"

Ну и что это за перенос ВСЕХ файлов, если мне нужно полюбом .bashrc оставить в стандартном месте ?

Не страдайте фигней..