Nogle gange er Linux-applikationer ikke tilgængelige fra din distros lagre og softwarebutikker eller som DEB- eller RPM-pakker, der kan downloades. Mange gange er apps kun tilgængelige som AppImages eller old-school tarballs. Disse selvstændige eksekverbare filer installeres faktisk ikke, de kører bare.
Problemet er, at du uden installation ikke har proceslinje eller menupunkter for disse apps. Selvom der er værktøjer til at gøre oprettelsen af disse poster nemmere, er det godt at vide, hvordan man manuelt opretter dem selv.
Heldigvis er de fleste større Linux-desktopmiljøer afhængige af et fælles sæt specifikationer fra freedesktop.org. Så processen med at oprette applikationsgenveje fungerer på samme måde på forskellige Linux-distributioner.
Brugerdefinerede menupunkter oprettes fra skrivebordsfiler, der er placeret i en skjult mappe i din hjemmemappe:
/home/username/.lokal/share/applications
Den første ting at gøre er at konfigurere din filhåndtering til se skjulte filer og mapper. Åbn din filhåndtering, klik på menuikonet (tre vandrette streger), og marker afkrydsningsfeltet ved siden af
Vis skjulte filer.En håndfuld nye filer og mapper, der starter med en periode, bl.a .lokal, skulle nu vises i din hjemmemappe (ved at tilføje et punktum (.) til begyndelsen af et filnavn eller en mappe, skjuler du filer og mapper på Linux).
Gå over til .lokal > del > applikationer folder. Hvis dette er en helt ny Linux-installation, skal du muligvis oprette applikationer mappe selv. Det er her du gemmer dine skrivebordsfiler.
Trin 2: Find WMClass af appen
Den næste ting at gøre er at identificere din applikations WMClass eller vindues-id. Dette giver os mulighed for at oprette en moderne proceslinjeindgang, der kombinerer både programstarter og åbne vinduer til et enkelt ikon. Hvis du springer dette trin over, har du kun oprettet en genvej til at starte applikationen.
For at identificere din specifikke applikations WMClasse, start dit AppImage eller tarball på den gammeldags måde ved at starte den eksekverbare direkte.
Finder WMClass på X11
Hvis du bruger X11, skal du åbne en terminal og indtaste:
xprop WM_CLASS
Din musemarkør skal blive til et trådkors.
Klik hvor som helst i dit programvindue, og din terminal skal vise output i dette format:
WM_KLASSE(STRING) = “appnavn”, “Appnavn”
Den anden værdi i tilbud er din ansøgnings WMC-klasse; husk det til næste trin.
Finder WMClass på Wayland
Hvis du er på en nyere distribution, bruger du muligvis ikke den traditionelle X11-skærmserver, men snarere det nyere, berøringsvenlige Wayland. Desværre virker dette trick kun med GNOME, da det er afhængigt af GNOME Shells Looking Glass-værktøj.
- Trykke Alt + F2, type lg, og tryk på Gå ind.
- Klik på Windows fanen.
Alle dine åbne vinduer skal nu være opført sammen med deres respektive wmclass. Husk at skrive ned wmclass af din ansøgning til næste trin.
Trin 3: Oprettelse af en skrivebordsfil
Nu er det tid til at oprette en desktop-fil. Åbn en teksteditor og indsæt følgende i en ny fil:
[Desktop Entry]
Type=Applikation
Name=ApplicationName
GenericName=ApplicationType
Ikon =/home/Brugernavn/.local/share/applications/ApplicationIcon.extension
Exec=/home/Brugernavn/ApplicationDirectory/ApplicationExecutable.extension
Terminal=falsk
Categories=ApplicationSubCategory; Application Category
Nøgleord=Søgeord1;Søgeord2;Søgeord3
StartupWMClass=ApplikationWMClass
Lad os gennemgå dette linje for linje:
- [Desktop Entry] identificerer filen som en skrivebordsmenuindgang og bør altid efterlades, som den er.
- Type identificerer, at genvejen er til en Ansøgning. Andre muligheder inkluderer Directory og Link.
- Navn identificerer navnet på din ansøgning. Lave om ApplicationName for at afspejle navnet på din ansøgning.
- Generisk navn identificerer applikationstypen. Lave om ApplicationType til en generisk beskrivelse såsom "Teksteditor" eller "Webbrowser".
- Ikon identificerer det ikon, der er knyttet til din applikation. Du kan vælge en hvilken som helst billedfil, men PNG og SVG fungerer typisk bedst. Lave om /home/Username/.local/share/applications/ApplicationIcon.extension for at afspejle placeringen af din applikations ikon.
- Exec identificerer programmets eksekverbare fil. Lave om /home/Username/ApplicationDirectory/ApplicationExecutable.extension for at afspejle placeringen og navnet på din applikations eksekverbare fil.
- Terminal identificerer din applikation som kører i et terminalvindue eller ej. Mulighederne her er rigtigt til terminal og falsk til grafiske applikationer.
- Kategorier identificerer, hvilke kategorier og/eller underkategorier din ansøgning tilhører. Erstatte Application UnderCategory og Application Category med de relevante kategorier og/eller underkategorier til din ansøgning—du kan finde en komplet liste over muligheder på freedesktop.org. Selvom du kan inkludere flere valg af hver, kan det medføre, at din applikation vises flere gange i dine menuer.
- Nøgleord identificerer ord for at hjælpe med at søge efter din applikation. Skift Nøgleord1, Nøgleord2 og Nøgleord3 til et hvilket som helst antal nøgleord, du vil knytte til din applikation, adskilt af semikolon (;).
- StartupWMClass identificerer dit programs vinduer. Erstatte ApplicationWMClasse med din ansøgnings WMC-klasse fra forrige afsnit.
Her er et eksempel, der bruger Bitwarden AppImage og mappen Downloads som ikon og eksekverbar mappe.
[Desktop Entry]
Type=Applikation
Navn=Bitwarden
GenericName=Password Manager
Ikon =/home/adam/Downloads/Bitwarden.png
Exec=/home/adam/Downloads/Bitwarden-22.6.2-x86_64.AppImage
Terminal=falsk
Kategorier=Sikkerhed; System
Keywords=Bitwarden; Krypto; Adgangskoder; Sikkerhed
StartupWMClass=bitwarden
Foretag dine ændringer og gem tekstfilen som ApplicationName.desktop i /home/username/.local/share/applications/.
Din applikation skulle nu vises i dine menuer:
Du kan nu fastgøre dine AppImages og tarballs til din proceslinje eller dock, og de vil generelt fungere ligesom normalt installerede programmer.
Brug af citater til at håndtere mellemrum
Hvis en mappe, et ikon eller en eksekverbar fil indeholder et mellemrum, vil din skrivebordsfil sandsynligvis ikke fungere:
Exec=/home/Brugernavn/Application Directory/Application Executable.extension
Du skal inkludere anførselstegn i begyndelsen og slutningen af Ikon og Exec felter. For eksempel:
Exec=”/home/Brugernavn/Application Directory/Application Executable.extension”
Nu skulle din applikations menuindgang fungere korrekt.
Brug af stjerner til at håndtere versionsnumre
Hvis din applikations eksekverbare fil indeholder versionsnumre, skal du opdatere skrivebordsfilen, hver gang applikationen opdateres:
Exec=/home/Brugernavn/ApplicationDirectory/ApplicationExecutable-v2.2.udvidelse
KDE-brugere kan dog anvende en stjerne (*) som et jokertegn til at erstatte ændrende tekst, såsom versionsnumre, som f.eks.:
Exec=/home/Brugernavn/ApplicationDirectory/ApplicationExecutable-v*.extension
Desværre respekterer GNOME ikke jokertegn i skrivebordsfiler, men du kan altid omdøbe den eksekverbare fil og fjerne versionsnummeret.
Opret dine egne applikationsmenuindgange på Linux
Når du nu downloader et AppImage eller tarball, vil du være i stand til at integrere det i din proceslinje og menuer, som om det var et hvilket som helst andet installeret program.
Undervejs lærte du også, hvordan du viser skjulte filer og mapper i din filhåndtering (og skjul dem også), opret skrivebordsfiler og et par metoder til at identificere et program WMC-klasse.
Normalt får du menupunktet oprettet for dig som standard, da du får din software fra en pålidelig kilde.