Посты с тегом libetc
muhas 15.03.2010 15:02

Я рекомендуюВсе пользовательский конфиги в одном каталоге

Не так давно на welinux в комментариях к одному из постов состоялась беседа о том что хорошо бы хранить все конфиги не в ~/ а в определенном каталоге. Мало того что кому-то это хорошо так ещё и стандарт такой имеется. Согласно этому стандарту все пользовательские настройки должны храниться в переменной $XDG_CONFIG_HOME, а если она не установлена то в каталоге ~/.config.
Однако, по разным причинам, многими программами этот стандарт не поддерживается.

На помощь таким программам приходит LD_PRELOAD-able библиотека libetc с помощью которой любая попытка открыть dot-файл (файл с точкой в начале) перенаправляется в $XDG_CONFIG_HOME т.е. конфиги всех программ можно хранить в папке определенной стандартом. Библиотека достаточно старая, и я удивлен почему о ней знает не так много людей

Для использования достаточно экспортировать несколько переменных
1
2
export LD_PRELOAD=libetc.so.0 # загружаем библиотеку
export LIBETC_BLACKLIST=/bin/ls:/bin/mv:/bin/cp:/bin/ln:/usr/bin/find:/bin/rm # на эти программы внимания не обращать
Ну и XDG_CONFIG_HOME можно выставить.

После сих нехитрых манипуляций пути будут транслироваться из ~/.* в $XDG_CONFIG_HOME/* (~/.config/*)

Более подробно о использовании библиотеки можно прочитать в её README файле

Домашняя страничка libetc

Заметки аскетичного гика
Полностью.
+ 25 -
36