Рейтинг:4

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

флаг cn

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

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

Базы данных в [/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] не удалось обновить.

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

Рейтинг:10
флаг hr

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

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

1 $XDG_DATA_DIRS переменная окружения, определенная в Спецификация базового каталога XDG.

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

XDG_DATA_DIRS=/опция:$XDG_DATA_DIRS

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

флаг cn
Это работает идеально. Что я сделал, так это добавил в /etc/profile следующее: «XDG_DATA_DIRS=/opt:$XDG_DATA_DIRS». Теперь все приложения в /opt/applications загружаются gnome, и я вижу их в лаунчере. Большое спасибо!
vanadium avatar
флаг cn
Более элегантным подходом, чем непосредственное редактирование системного файла, который может быть перезаписан обновлением, было бы добавление однострочного сценария в /etc/profile.d. Все эти скрипты получены из /etc/profile
Рейтинг:5
флаг ng

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

флаг cn
Большое спасибо за ответ, но это не то, чем я хочу заниматься. Моя идея состоит в том, чтобы приложения были изолированы, чтобы можно было легко копировать их с одного компьютера на другой. Тем не менее, ответ ниже - это именно то, что я искал. Еще раз спасибо.
muru avatar
флаг us
@SebastiánCastro, вы можете поместить каталог *внутри* `~/.local/share/applications` (например, `~/.local/share/applications/my-special-applications`). Лично я бы сделал это вместо изменения переменных среды — вам просто нужно скопировать каталог в новой системе `~/.local/share/applications`.
Рейтинг:2
флаг cn

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

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

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.