Создание файла .desktop для нового приложения

67

Я только что установил последнюю версию UGENE . Я отлично работаю, но для того, чтобы использовать его, я должен ввести следующее в терминале: cd ugene-1.11.5/затем выполнить ./ugene -uiдля запуска UGENE GUI.

Это занимает слишком много времени. Я хотел бы создать .desktopфайл для UGENE, который будет использоваться в Ubuntu 12.04, чтобы я мог просто открыть его из модуля запуска Unity.

Не уверен, что это полезно, но на сайте написано: По умолчанию скрипт ugene запускает версию UGENE для командной строки.

Вот что у меня есть (не уверен, что это правильно):

[Desktop Entry]
Version=1.0
Name=my Unipro UGENE
GenericName=Integrated Bioinformatics Suite
Comment=Unipro UGENE is a cross-platform visual environment for DNA and protein sequence analysis.
MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;
Exec=/home/samuel/ugene-1.11.5 ./ugene -ui -c %F
Icon=/usr/share/icons/hicolor/scalable/apps/ugene.svg
Type=Application
Terminal=true
Categories=Utility;Development;
StartupWMClass=UGENE

Я добавил названный модуль запуска my Unipro UGENEв панель единства и попытался открыть ее, но она не появляется. Я должен что-то упустить. Я не знаю, каким StartWMCClassдолжно быть поле, и не знаю, правильно ли я ввел MimeType.

cooldood3490
источник
1
Вы можете опустить их. что такое Adding Path? это не требуется, вероятно .. в exec поставитьhome/samuel/ugene-1.11.5/ugene -ui -c %F
Web-E
Terminal=trueдля CLI может потребоваться версия. По крайней мере fales, не правильно.
Таккат
спасибо за предложения. Я посмотрю на это позже вечером. Если я не могу понять это, я думаю, я начну вознаграждение через 11 часов. Надеюсь, что все сделали свою домашнюю работу !!
cooldood3490
В качестве дополнения для тех, кто пытается создать записи .desktop, используйте: desktop-file-install THE_DESKTOP_FILENAME_HERE.desktop Поскольку он покажет вам все ошибки, найденные в файле, и, если все в порядке, скопирует его в правильное место /usr/share/applicationsи перезагрузит. единство.
Лукас Маркес

Ответы:

111

Для справки смотрите спецификацию входа Freedesktop Desktop , но это должно работать:

[Desktop Entry]
Version=1.0
Name=Unipro UGENE
Comment=Unipro UGENE is a cross-platform visual environment for DNA and protein sequence analysis.
Exec=/home/samuel/ugene-1.11.5/ugene -ui
Path=/home/samuel/ugene-1.11.5/
Icon=/usr/share/icons/Humanity/apps/32/access.svg
Terminal=false
Type=Application
Categories=Utility;Development;

Некоторые заметки:

Версия

  • Должно быть 1.0, это относится к версии файла .desktop, а не к версии программы.

имя

  • Имя, которое должно отображаться в меню.

Exec

  • Полный путь к исполняемому файлу. Не нужно использовать «.», Это просто означает текущий каталог

Дорожка

  • Директория, которая будет установлена ​​как текущая при запуске записи. Обычно вам не нужно устанавливать его, но я добавил его на всякий случай. Это то же самое, что использовать 'cd' в командной строке

Икона

  • Путь к файлу значка, который будет использоваться для файла, скорее всего, тот, который вы указали, не существует, я изменил его на общий. Вы должны изменить это на файл, который вы хотите использовать значок

Mimetype

  • Указывает тип файлов, которые может открыть эта программа. Я оставил это пустым.

StartupWMClass

  • Требуется только для некоторых программ. Обычно это требуется для Java-программ, но устанавливайте его, только если вы заметили некоторые проблемы.

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

Хавьер Ривера
источник
1
отлично, работает как шарм. спасибо за предоставленную ссылку на спецификации и добавление подробного описания, какие из них вы добавили. Таким образом, я знаю, что делать в следующий раз, когда захочу создать файл .desktop.
cooldood3490
4
Просто чтобы заметить, что я исправил распространенную ошибку в файле рабочего стола; при использовании нескольких значений необходимо включить конечную точку с запятой.
Cas
что это значит? #! / usr / bin / env / xdg-open
Рахал Канишка
Это shebang, en.wikipedia.org/wiki/Shebang_(Unix) , он говорит компьютеру использовать xdg-open для открытия файла, когда вы пытаетесь запустить его как скрипт.
Хавьер Ривера
6

Вместо того, чтобы вручную добавлять .desktopфайлы, вы можете использовать небольшой инструмент с графическим интерфейсом alacarte(Главное меню), чтобы сделать это за вас.

Установка :

sudo apt install alacarte

скриншот алакарте

pLumo
источник
2
Все еще лучший, удобный вариант даже в 2019 году!
Чудеса случаются
1
Я никогда не могу вспомнить название этой программы. Я хотел бы, чтобы они называли его Launcher Editor или Desktop File Creator, потому что всегда гуглите, прежде чем я его открою
Джонатан