Tworzenie pliku .desktop dla nowej aplikacji

67

Właśnie zainstalowałem najnowszą wersję UGENE . Działa dobrze, ale aby z niego skorzystać, muszę wprowadzić następujące dane w terminalu: cd ugene-1.11.5/następnie uruchomić, ./ugene -uiaby uruchomić GUI UGENE.

To trwa za długo. Chciałbym zbudować .desktopplik dla UGENE do użycia w Ubuntu 12.04, aby móc go po prostu otworzyć w programie uruchamiającym Unity.

Nie jestem pewien, czy jest to pomocne, ale strona internetowa mówi: Domyślnie skrypt ugene uruchamia wersję wiersza polecenia UGENE.

Oto, co mam (nie jestem pewien, czy to prawda):

[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

Dodałem program uruchamiający o nazwie my Unipro UGENEdo paska jedności i spróbowałem go otworzyć, ale nie pojawia się. Coś mi brakuje. Nie wiem, jakie to StartWMCClasspole ma być, ani nie wiem, czy wpisałem poprawne MimeType.

cooldood3490
źródło
1
Możesz je pominąć. co jest Adding Path? prawdopodobnie nie jest to wymagane .. w exec puthome/samuel/ugene-1.11.5/ugene -ui -c %F
Web-E
Terminal=truedla wersji CLI może być potrzebna. Przynajmniej falesnie jest poprawny.
Takkat
dzięki za sugestie. Przyjrzę się temu jeszcze dziś wieczorem. Jeśli nie potrafię tego rozgryźć, przypuszczam, że zacznę nagrodę za 11 godzin. Mam nadzieję, że wszyscy odrobili pracę domową !!
cooldood3490
Jako uzupełnienie dla każdego, kto próbuje utworzyć wpisy .desktop, użyj: desktop-file-install THE_DESKTOP_FILENAME_HERE.desktop Ponieważ pokaże Ci wszelkie znalezione błędy w pliku, a jeśli wszystko jest w porządku, skopiuje go do właściwej lokalizacji /usr/share/applicationsi załaduje ponownie jedność.
Lucas Marques

Odpowiedzi:

111

Dla odniesienia zobacz specyfikację wpisu Freedesktop Desktop , ale to powinno działać:

[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;

Niektóre uwagi:

Wersja

  • Powinien wynosić 1.0, odnosi się do wersji pliku .desktop, a nie do wersji programu.

Imię

  • Nazwa, która powinna być wyświetlana w menu.

Exec

  • Pełna ścieżka do pliku wykonywalnego. Nie trzeba używać „.”, Oznacza to tylko bieżący reż

Ścieżka

  • Katalog, który zostanie ustawiony jako bieżący po uruchomieniu wpisu. Zwykle nie trzeba go ustawiać, ale dodałem go na wszelki wypadek. Jest to to samo, co użycie polecenia „cd” w wierszu polecenia

Ikona

  • Ścieżka do pliku ikony, który zostanie użyty dla pliku, prawdopodobnie ten, który umieściłeś, nie istnieje, zmieniłem go na ogólny. Powinieneś zmienić to na plik, którego ikona ma używać

Mimetype

  • Określa rodzaj plików, które ten program może otworzyć. Zostawiłem to puste.

StartupWMClass

  • Potrzebny tylko w przypadku niektórych programów. Zwykle jest potrzebny programom Java, ale należy go ustawić tylko w przypadku zauważenia problemów.

Aby użyć pliku pulpitu z Dasha, musisz go skopiować, aby /usr/share/applicationskażdy użytkownik mógł go użyć (będziesz potrzebować uprawnień administratora) lub ~/.local/share/applications(gdzie ~ oznacza katalog użytkownika), jeśli chcesz, aby był dostępny dla jeden użytkownik.

Javier Rivera
źródło
1
doskonale, działa jak urok. dziękuję za podanie linku do specyfikacji i dodanie szczegółowego opisu dodanych. W ten sposób wiem, co robić następnym razem, gdy chcę utworzyć plik .desktop.
cooldood3490
4
Wystarczy zauważyć, że naprawiłem częsty błąd w pliku pulpitu; w przypadku używania wielu wartości należy uwzględnić końcowy średnik.
Cas
co to znaczy #! / usr / bin / env / xdg-open
Rahal Kanishka
To jest shebang, en.wikipedia.org/wiki/Shebang_(Unix) , mówi komputerowi, aby użył xdg-open do otwarcia pliku podczas próby uruchomienia go jako skryptu.
Javier Rivera
6

Zamiast ręcznie dodawać .desktoppliki, możesz to zrobić za pomocą małego narzędzia GUI alacarte(menu główne).

Instalacja :

sudo apt install alacarte

zrzut ekranu alacarte

pLumo
źródło
2
Nadal najlepsza, przyjazna dla użytkownika opcja nawet w 2019 roku!
Cuda wydarzyły się
1
Nigdy nie pamiętam nazwy tego programu. Chciałbym, żeby nazywali go Launcher Editor lub Desktop File Creator, ponieważ zawsze google, zanim go otworzę
Jonathan