Как добавить папку с файлами .desktop?

, я знаю, что если вы хотите добавить запись .desktop, ее нужно добавить в / usr / share / applications , однако я хочу добавить дополнительную папку, в которой могут размещаться файлы .desktop.

Если я запустил update-desktop-database, вы увидите, что такие программы, как snapd или flatpak, создают свои собственные каталоги, в которых они размещают свои .desktop.

The databases in [/usr/share/ubuntu/applications, /home/cactus/.local/share/flatpak/exports/share/applications, /var/lib/flatpak/exports/share/applications, /usr/local/share/applications, /usr/share/applications, /var/lib/snapd/desktop/applications] could not be updated.

Моя идея состоит в том, чтобы добавить папку / opt / applications где я могу сохранить .desktop моих самкомпилированных приложений.

2
задан 18 July 2021 в 04:00

3 ответа

Согласно Руководство по администрированию системы рабочего стола GNOME Настройка меню: файлы ввода рабочего стола

Файлы ввода рабочего стола должны находиться в $ XDG_DATA_DIRS / applications { {1}} и должен иметь расширение файла .desktop. Если $ XDG_DATA_DIRS 1 не установлен, то используется путь по умолчанию / usr / share . Это также означает, что пользовательские записи на рабочем столе могут быть расположены по адресу $ XDG_DATA_HOME / applications , поиск по которому выполняется в первую очередь. Если $ XDG_DATA_HOME не задан, используется путь по умолчанию ~ / .local / share . Записи рабочего стола собираются из всех каталогов в переменной среды $ XDG_DATA_DIRS . Каталогам, которые появляются первыми в $ XDG_DATA_DIRS , предоставляется приоритет, если имеется несколько файлов .desktop с одинаковым именем .

1 $ XDG_DATA_DIRS - это переменная среды, определенная в спецификации базового каталога XDG .

Итак, если $ XDG_DATA_HOME не говорит иначе, вы можете разместить файлы .desktop для каждого пользователя в ~ / .local / share / applications . Если вам нужно настраиваемое расположение для всей системы, вы можете добавить его в $ XDG_DATA_DIRS например.

XDG_DATA_DIRS=/opt:$XDG_DATA_DIRS

См. Также Спецификация базового каталога XDG

8
ответ дан 28 July 2021 в 11:17

Не фундаментальный ответ на ваш фактический вопрос (например, как добавить свой собственный каталог для размещения средств запуска .desktop), но я предлагаю вам использовать / usr / local / share / applications для запуска ваших самокомпилированных приложений, которые должны быть доступны для всей системы.

Этот каталог настроен по умолчанию в Ubuntu в XDG_DATA_DIRS , и его цель - именно то, что вы ищете, т.е. сделать ваши вручную установленные файлы .desktop доступными в папке системы меню любого пользователя.

2
ответ дан 28 July 2021 в 11:17

Вы можете использовать ~ / .local / share / applications в домашней папке вашего пользователя, чтобы хранить файлы .desktop , которые вы хотите доступны только для этого пользователя.

5
ответ дан 28 July 2021 в 11:17

Другие вопросы по тегам:

Похожие вопросы: