XDG. Пользовательские каталоги
Пользовательские каталоги по стандарту XDG.
Содержание
1 Общая информация
- Стандарт XDG задаёт стандартные имена для пользовательских каталогов (см. XDG. Каталоги).
2 Программы
2.1 Создание каталогов
- Для создания каталогов стандарта XDG служит программа
xdg-user-dirs-update
.
2.2 Запрос имён каталогов
- Программа
xdg-user-dir
служит для запроса имён каталогов, соответствующих стандартным переменным. - Например, для получения каталога для переменной
XDG_TEMPLATES_DIR
(это каталог, содержащий шаблоны):1xdg-user-dir TEMPLATES
3 Конфигурационные файлы
- Включение использования каталогов XDG и их кодировка задаются в файлах:
/etc/xdg/user-dirs.conf
: уровень системы;~/.config/user-dirs.conf
: уровень пользователя.- Содержание данного файла имеет вид:
- Имена каталогов по умолчанию (системный уровень) находятся в файле
/etc/xdg/user-dirs.defaults
:1# Default settings for user directories 2# 3# The values are relative pathnames from the home directory and 4# will be translated on a per-path-element basis into the users locale 5DESKTOP=Desktop 6DOWNLOAD=Downloads 7TEMPLATES=Templates 8PUBLICSHARE=Public 9DOCUMENTS=Documents 10MUSIC=Music 11PICTURES=Pictures 12VIDEOS=Videos 13# Another alternative is: 14#MUSIC=Documents/Music 15#PICTURES=Documents/Pictures 16#VIDEOS=Documents/Videos
- Локальный файл конфигурации
~/.config/user-dirs.dirs
используется для явного задания имён каталогов.- Например, файл
~/.config/user-dirs.dirs
со стандартными английскими названиями: - Редактировать этот файл можно как непосредственно, так и с помощью утилиты
xdg-user-dirs-update
. - Например, зададим значение
XDG_DOWNLOAD_DIR
как$HOME/Internet
:1xdg-user-dirs-update --set DOWNLOAD ~/Internet
- Например, файл
- Локальный файл конфигурации
~/.config/user-dirs.locale
используется для явной установки локали.
4 Локализация названий каталогов
Иногда русские названия стандартных каталогов не очень удобны. Например, при работе в консоли приходится переключать язык.
Для принудительного создания каталогов с английскими именами можно использовать:
1LC_ALL=en_US xdg-user-dirs-update --force
Для фиксации локали для каталогов нужно задать её в файле конфигурации:
1echo 'en_US' > ~/.config/user-dirs.locale
- После этого надо пересоздать каталоги:
1LC_ALL=en_US xdg-user-dirs-update --force
- После этого надо пересоздать каталоги: