В GNOME и других freedesktop.org-совместимых настольных средах, таких как KDE и Единица, приложения добавляются на меню рабочего стола или настольную оболочку через настольные записи, определенные в текстовых файлах с .desktop
расширение (называемый файлами на рабочем столе). Настольные среды создают меню для пользователя от объединенной информации, извлеченной из доступных настольных записей.
Файлы на рабочем столе могут быть созданы в любом из двух мест:
/usr/share/applications/
для настольных записей, доступных каждому пользователю в системе~/.local/share/applications/
для настольных записей, доступных отдельному пользователюВы, возможно, должны были бы перезапустить GNOME для новых добавленных приложений на работу.
На конвенцию файлы на рабочем столе не должны включать пробелы или международные символы на их имя.
Каждый файл на рабочем столе разделяется на группы, каждый запускающийся с заголовка группы в квадратных скобках ([]
). Каждый раздел содержит много ключей, пар значения, разделенных знаком "равно" (=
).
Ниже образец файла на рабочем столе:
[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=Application Name
Comment=Application description
Icon=/path/to/icon.xpm
Exec=/path/to/application/executable
Terminal=false
Categories=Tags;Describing;Application
Объяснение
[Desktop Entry]
Desktop Entry
заголовок группы идентифицирует файл как настольную записьType
тип записи, допустимые значения Application
, Link
и Directory
Encoding
кодировка символов файла на рабочем столеName
имя приложения, видимое в меню или средствах запускаComment
описание приложения используется в подсказкахIcon
значок, показанный для приложения в меню или средствах запускаExec
команда, которая используется для запущения приложения от оболочки.Terminal
должно ли приложение быть запущено в, терминальные, допустимые значения true
или false
Categories
точка с запятой (;
) разделенный список категорий меню, в которых нужно показать записьПараметры командной строки в Exec
ключ может быть показан со следующими переменными:
%f
единственное имя файла.%F
несколько имен файлов.%u
единственный URL.%U
несколько URL.%d
единственный каталог. Используемый в сочетании с %f
определять местоположение файла.%D
несколько каталогов. Используемый в сочетании с %F
определять местоположение файлов.%n
единственное имя файла без пути.%N
несколько имен файлов без путей.%k
URI или локальное имя файла местоположения файла на рабочем столе.%v
название Записи устройства.Отметьте это ~
или переменные окружения как $HOME
не расширены в файлах на рабочем столе, таким образом, любые исполняемые файлы, на которые ссылаются, должны или быть в $PATH
или ссылаемый через их полный путь.
Полная Настольная Спецификация Записи доступна в Центре Dev GNOME.
Сценарии запуска
Если приложение, которое будет запущено, требует, чтобы определенные шаги, которые будут сделаны до, были вызваны, можно создать сценарий оболочки, который запускает приложение, и укажите на настольную запись в сценарий оболочки. Предположим, что приложение требует, чтобы быть выполненным из определенного текущего рабочего каталога. Создайте сценарий запуска в подходящем для местоположения (~/bin/
например). Сценарий мог бы посмотреть что-то как следующее:
#!/bin/bash
pushd "/path/to/application/directory"
./application "$@"
popd
Установите исполняемый бит для сценария:
$ chmod +x ~/bin/launch-application
Затем укажите Exec
введите настольную запись в сценарий запуска:
Exec=/home/user/bin/launch-application
<path>/.FTL
указал бы на названный скрытый файл.FTL
, который не является тем же как./FTL
, который указывает на названный файлFTL
в текущем каталоге. Можно попытаться запуститьсяFTL
через/full/path/path/to/FTL
в терминале, чтобы видеть, получаете ли Вы какой-либо многозначительный вывод ошибок. Например, если исполняемый файл ищет библиотеки в текущем рабочем каталоге, Вам, возможно, придется сделать сценарий средства запуска, который делает что-то вродеpushd <path>; ./FTL; popd
и точкаExec
спецификатор в файле на рабочем столе к сценарию средства запуска вместо этого. – Thomas Nyman 01.12.2013, 18:35