xdg-utils (Русский)

Состояние перевода:
На этой странице представлен перевод статьи
xdg-utils
. Дата последней синхронизации: 19 апреля 2022. Вы можете
помочь
синхронизировать перевод, если в английской версии произошли
изменения
.
xdg-utils
предоставляет официальные утилиты для управления
MIME-приложениями XDG
.
xdg-desktop-menu(1)
— установка элементов меню рабочего стола
xdg-desktop-icon(1)
— копирование
ярлыков приложений
на рабочий стол пользователя
xdg-email(1)
— открытие предпочитаемого пользователем клиента электронной почты (с возможностью указания темы и других параметров создаваемого сообщения)
xdg-icon-resource(1)
— установка значков
xdg-mime(1)
— запрос и установка типов и ассоциаций MIME
xdg-open(1)
— открытие файла или URI в предпочтительном приложении пользователя
xdg-screensaver(1)
— разрешение, запрещение или приостановка хранителя экрана
xdg-settings(1)
— установка веб-браузера и обработчиков URL-адресов по умолчанию
Установка
Установите
пакет
xdg-utils
.
Использование
Переменные окружения
Примечание
Нормально работающая среда рабочего стола должна автоматически устанавливать эти переменные. Этот раздел необходим только для понимания того, как работает xdg-utils, то есть для устранения неполадок.
xdg-utils
пытается интегрироваться с вашей
средой рабочего стола
, вызывая специализированные программы, которые она предоставляет, где это применимо. Выяснение текущей среды ребочего стола происходит так
[1]
[
устаревшая ссылка
2023-05-06 ⓘ]
:
Если стандартная переменная окружения
XDG_CURRENT_DESKTOP
содержит одно из известных значений, то используется оно.
Если присутствуют какие-либо классические fallback'и или специфичные для среды переменные, такие как
KDE_FULL_SESSION
в KDE, то используется соответствующее значение.
Если старая переменная окружения
DESKTOP_SESSION
содержит одно из известных значений, то используется оно.
Когда совпадение найдено, переменная
DE
внутренне перезаписывается нормализованным значением обнаруженной среды рабочего стола. Таким образом,
DE
— это и переменная окружения, и внутренняя переменная состояния
xdg-utils
. Например, если
XDG_CURRENT_DESKTOP
имеет значение
KDE
, то
xdg-utils
внутренне установит
DE
в значение
kde
. Если соответствие не найдено, то будет использовано любое ранее существующее значение
DE
; то есть, установка
XDG_CURRENT_DESKTOP=KDE
— это то же самое, как если бы переменная
XDG_CURRENT_DESKTOP
отсутствовала, а вместо неё была бы
DE=kde
. Это важная деталь реализации заслуживает внимания, так как следствие —
предварительно установленная переменная
DE
игнорируется, если среда рабочего стола указана где-то ещё.
Значения переменных, которые распознаёт
xdg-utils
, следующие:
Среда
XDG_CURRENT_DESKTOP
DE
DESKTOP_SESSION
–
X-Generic
1
generic
–
Cinnamon
Cinnamon
,
X-Cinnamon
cinnamon
–
Deepin
Deepin
,
DEEPIN
,
deepin
1
deepin
–
Enlightenment
ENLIGHTENMENT
1
enlightenment
–
GNOME
GNOME
2
gnome
gnome
GNOME Flashback
GNOME-Flashback
,
GNOME-Flashback:GNOME
2
gnome
gnome
KDE Plasma
KDE
kde
–
LXDE
LXDE
lxde
LXDE
LXQt
LXQt
lxqt
–
MATE
MATE
mate
mate
Xfce
XFCE
xfce
xfce
,
xfce4
,
Xfce Session
Это не среда,
зарегистрированная на freedesktop.org
.
Варианты GNOME, в том числе режим
GNOME Classic
, рассматриваются
xdg-utils
как одно и то же.
Имейте в виду, что это лишь список того, что способны обнаружить скрипты, которые предоставляет
xdg-utils
. Скрипты всё равно будут выполнять общие действия, не зависящие от среды, при следующих условиях:
Была запрошена общая процедура через
XDG_CURRENT_DESKTOP=X-Generic
или
DE=generic
.
Определить среду не удалось. Все соответствующие переменные окружения были не распознаны или не установлены, а поиск классических fallback'ов ни к чему не привёл.
Действия, специфичные для среды, были выполнены, но не увенчались успехом, например, из-за отсутствия нужной программы.
xdg-mime
xdg-mime(1)
— это скрипт для прямого запроса и изменения стандартных приложений MIME. Он используется в других скриптах, таких как
xdg-open
, а также является полезным инструментом при устранении неполадок.
Определение MIME-типа файла:
$ xdg-mime query filetype photo.jpeg
image/jpeg
Определение приложения по умолчанию для MIME-типа:
$ xdg-mime query default image/jpeg
gimp.desktop
Изменение приложения по умолчанию для MIME-типа:
$ xdg-mime default feh.desktop image/jpeg
Отладка приложения по умолчанию для MIME-типа:
$ env XDG_UTILS_DEBUG_LEVEL=10  xdg-mime query default text/html
Checking /home/
пользователь
/.config/mimeapps.list
Checking /home/
пользователь
/.local/share/applications/defaults.list and /home/
пользователь
/.local/share/applications/mimeinfo.cache
Checking /usr/local/share/applications/defaults.list and /usr/local/share/applications/mimeinfo.cache
Checking /usr/share/applications/defaults.list and /usr/share/applications/mimeinfo.cache
qutebrowser.desktop
Когда нужно определить MIME-тип файла,
xdg-mime
пытается использовать программу, подходящую для среды рабочего стола:
Среда
Программа
Пакет
Cinnamon
gio
glib2
GNOME
GNOME Flashback
LXDE
MATE
Xfce
Deepin
–
–
Enlightenment
LXQt
KDE Plasma
kmimetypefinder
kde-cli-tools
В общем случае
xdg-mime
будет:
Обращаться к
mimetype
, если он доступен (пакет
perl-file-mimeinfo
).
Обращаться к
file
, если он доступен.
xdg-open
xdg-open(1)
— это
инструмент открытия ресурсов
, используемый многими приложениями, реализующий стандарт XDG MIME Applications и при этом максимально интегрированный со средой рабочего стола.
Если среда рабочего стола обнаружена, будет вызван предоставляемый ею обработчик
[2]
[
устаревшая ссылка
2023-05-06 ⓘ]
:
Среда
Программа
Пакет
Cinnamon
gio
glib2
GNOME
GNOME Flashback
MATE
Deepin
dde-open
deepin-api
Enlightenment
enlightenment_open
enlightenment
KDE Plasma
kde-open
kde-cli-tools
LXDE
pcmanfm
pcmanfm
LXQt
–
–
Xfce
exo-open
1
exo
Также может быть предпринята попытка использования
gio
из пакета
glib2
.
В общем случае
xdg-open
:
Обратится к
#xdg-mime
, чтобы узнать связанное с ресурсом приложение по умолчанию, прочитает соответствующий
.desktop
файл и запустит прописанную в нём команду.
Обратится к
run-mailcap
, если он доступен (пакет
run-mailcap
AUR
).
Обратится к
mimeopen
, если он доступен (пакет
perl-file-mimeinfo
).
Совет
Чтобы узнать, какой бэкенд будет использовать
xdg-open
, установите переменную окружения
XDG_UTILS_DEBUG_LEVEL=3
.
Поскольку
xdg-mime
полагается на пакет
perl-file-mimeinfo
для реализации стандарта
XDG MIME Applications
, если вы не используете среду рабочего стола, вам нужно либо
установить
пакет
perl-file-mimeinfo
, либо выбрать другой
инструмент открытия ресурсов
.
xdg-settings
См.
xdg-settings(1)
.
Ярлык для открытия всех веб-типов MIME с помощью одного приложения:
$ xdg-settings set default-web-browser firefox.desktop
Ярлык для установки приложения по умолчанию для схемы URL:
$ xdg-settings set default-url-scheme-handler irc xchat.desktop
Советы и рекомендации
Обработчики URL схем
Для установки приложений по умолчанию для URL схем необходимо определить приложение по умолчанию для
x-scheme-handler/*
MIME-типов.
$ xdg-mime default firefox.desktop x-scheme-handler/https x-scheme-handler/http