Tips en Trucs 2025

Hoe maak je een startmenu-item voor een AppImage-toepassing in Linux?

Eén van de makkelijkste manieren om applicaties te installeren op een Linux-distributie is met AppImage, en daarom is het ook één van de meest gebruikte manieren om applicaties te installeren in de Linux-wereld.

Maar er is een klein probleem: het voegt geen pictogram toe aan de Programmastarter en daarom kan het niet met een klik worden gestart. In plaats daarvan moeten we naar de terminal gaan en elke keer de opdracht uitvoeren, wat onhandig kan zijn voor nieuwe gebruikers.

Om dit aan te pakken kun je handmatig een startmenu-item maken voor de AppImage applicatie, waarmee je de applicatie vanaf elke plek op je Linux systeem kunt starten.

Klinkt interessant, toch? Dus open je terminalvenster en volg de onderstaande stappen om een pictogram toe te voegen voor de AppImage-toepassing op Ubuntu, Debian, Fedora, Arch of een andere Linux-distributie.

AppImage en pictogram downloaden

Voor deze tip downloaden we CPU-X, een applicatie die details toont over de hardware van je Linux systeem.

Eerst vragen we alle eigenschappen van de CPU-X GitHub pagina op. Uit deze eigenschappen zonderen we de waarde van de eigenschap "tag_name" af met behulp van grep. Deze bevat namelijk het meest recente versienummer.

dany@pindabook:~$ latest=$(curl -s https://api.github.com/repos/TheTumultuousUnicornOfDarkness/CPU-X/releases/latest | grep -oP '"tag_name": "\K(.*)(?=")' | cut -d$'v' -f 2)

De variabele latest bevat nu het recentste versienummer.

dany@pindabook:~$ echo $latest 
5.1.1

Dit kunnen we gebruiken om de laatste versie van CPU-X met wget te downloaden:

dany@pindabook:~$ wget https://github.com/TheTumultuousUnicornOfDarkness/CPU-X/releases/download/v${latest}/CPU-X-5.1.1-x86_64.AppImage 
--2024-12-30 18:39:05--  https://github.com/TheTumultuousUnicornOfDarkness/CPU-X/releases/download/v5.1.1/CPU-X-5.1.1-x86_64.AppImage
Herleiden van github.com (github.com)... 140.82.121.4
Verbinding maken met github.com (github.com)|140.82.121.4|:443... verbonden.
HTTP-verzoek is verzonden; wachten op antwoord... 302 Found
Locatie: https://objects.githubusercontent.com/github-production-release-asset-2e65be/24292801/f691a7db-8238-49cf-8d14-da5d633f22fe?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=releaseassetproduction%2F20241230%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20241230T173905Z&X-Amz-Expires=300&X-Amz-Signature=a20b0d9119a3dcb7a37e7b6fc13fd0492d122d47cf67d45115e423043604ee24&X-Amz-SignedHeaders=host&response-content-disposition=attachment%3B%20filename%3DCPU-X-5.1.1-x86_64.AppImage&response-content-type=application%2Foctet-stream [volgen...]
--2024-12-30 18:39:05--  https://objects.githubusercontent.com/github-production-release-asset-2e65be/24292801/f691a7db-8238-49cf-8d14-da5d633f22fe?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=releaseassetproduction%2F20241230%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20241230T173905Z&X-Amz-Expires=300&X-Amz-Signature=a20b0d9119a3dcb7a37e7b6fc13fd0492d122d47cf67d45115e423043604ee24&X-Amz-SignedHeaders=host&response-content-disposition=attachment%3B%20filename%3DCPU-X-5.1.1-x86_64.AppImage&response-content-type=application%2Foctet-stream
Herleiden van objects.githubusercontent.com (objects.githubusercontent.com)... 185.199.110.133, 185.199.111.133, 185.199.108.133, ...
Verbinding maken met objects.githubusercontent.com (objects.githubusercontent.com)|185.199.110.133|:443... verbonden.
HTTP-verzoek is verzonden; wachten op antwoord... 200 OK
Lengte: 37131456 (35M) [application/octet-stream]
Wordt opgeslagen als: ‘CPU-X-5.1.1-x86_64.AppImage’

CPU-X-5.1.1-x86_64.AppImage       100%[==========================================================>]  35,41M  11,3MB/s    in 3,1s    

2024-12-30 18:39:09 (11,3 MB/s) - '‘CPU-X-5.1.1-x86_64.AppImage’' opgeslagen [37131456/37131456]

Naast het AppImage bestand, gebruikt CPU-X het pakket pxexec om beheerdersrechten te verkrijgen waardoor CPU-X na het ingeven van het beheerders wachtwoord meer details kan opvragen en weergeven:

dany@pindabook:~$ sudo apt install pkexec
[sudo] wachtwoord voor root:
Pakketlijsten worden ingelezen... Klaar
Boom van vereisten wordt opgebouwd... Klaar
De statusinformatie wordt gelezen... Klaar
Het volgende pakket is automatisch geïnstalleerd en is niet langer nodig:
  linux-image-6.1.0-26-amd64
Gebruik 'sudo apt autoremove' om het te verwijderen.
De volgende NIEUWE pakketten zullen geïnstalleerd worden:
  pkexec
0 opgewaardeerd, 1 nieuw geïnstalleerd, 0 te verwijderen en 0 niet opgewaardeerd.
Er moeten 22,8 kB aan archieven opgehaald worden.
Na deze bewerking zal er 57,3 kB extra schijfruimte gebruikt worden.
Ophalen:1 http://deb.debian.org/debian bookworm/main amd64 pkexec amd64 122-3 [22,8 kB]
22,8 kB opgehaald in 0s (462 kB/s)
Voorheen niet geselecteerd pakket pkexec wordt geselecteerd.
(Database wordt ingelezen ... 178770 bestanden en mappen momenteel geïnstalleerd.)
Uitpakken van .../pkexec_122-3_amd64.deb wordt voorbereid...
Bezig met uitpakken van pkexec (122-3) ...
Instellen van pkexec (122-3) ...
Bezig met afhandelen van triggers voor man-db (2.11.2-2) ...

Download na het verkrijgen van de AppImage en het installeren van het afhankelijke pakket het png-pictogram van de zoekmachine, zodat je bij het zoeken naar de applicatienaam een geschikt pictogram kunt vinden.

dany@pindabook:~$ wget https://appimage.github.io/database/CPU-X/icons/128x128/cpu-x.png
--2024-12-31 15:58:41--  https://appimage.github.io/database/CPU-X/icons/128x128/cpu-x.png
Herleiden van appimage.github.io (appimage.github.io)... 2606:50c0:8003::153, 2606:50c0:8000::153, 2606:50c0:8001::153, ...
Verbinding maken met appimage.github.io (appimage.github.io)|2606:50c0:8003::153|:443... verbonden.
HTTP-verzoek is verzonden; wachten op antwoord... 200 OK
Lengte: 22531 (22K) [image/png]
Wordt opgeslagen als: ‘cpu-x.png’

cpu-x.png                         100%[==========================================================>]  22,00K  --.-KB/s    in 0s      

2024-12-31 15:58:41 (89,5 MB/s) - '‘cpu-x.png’' opgeslagen [22531/22531]

Uitvoerbare rechten geven en map wijzigen

Het bestand dat we hebben gedownload kan niet worden uitgevoerd totdat we de rechten wijzigen, dus we moeten de terminal openen en de rechten voor dat bestand met de volgende opdracht wijzigen:

dany@pindabook:~$ chmod a+x CPU-X-5.1.1-x86_64.AppImage

Nadat we het bestand uitvoerbaar hebben gemaakt, kunnen we nu een pictogram voor de applicatie maken. Ik stel echter voor dat je deze applicatie en het png-pictogram verplaatst naar de map /opt/cpu-x/. De opt map is de map bij uitstek om software en andere bestanden die niet bij de distributie horen te verzamelen.

Dit voorkomt dat we de applicatie per ongeluk verwijderen terwijl we andere ongewenste bestanden opruimen.

Om de mapstructuur van de map /opt/ te behouden, maken we eerst een map aan met de naam van de toepassing en terwijl we het bestand verplaatsen, hernoemen we de AppImage zodat deze overeenkomt met de mapnaam en verplaatsen we ten slotte het png-bestand.

dany@pindabook:~$ sudo mkdir /opt/cpu-x
[sudo] wachtwoord voor root:
dany@pindabook:~$ sudo mv CPU-X-5.1.1-x86_64.AppImage /opt/cpu-x/cpu-x.AppImage
dany@pindabook:~$ sudo mv cpu-x.png /opt/cpu-x/

.desktop bestand aanmaken

De laatste stap is het aanmaken (of aanpassen) van het .desktop bestand, zodat wanneer je een .desktop snelkoppeling wilt maken voor een AppImage app, je alleen maar dit voorbeeld hoeft aan te passen en het .desktop bestand in de map ~/.local/share/applications/ met een andere naam hoeft op te slaan.

Laat we nu, het .desktop ~/.local/share/applications/CPU-X.desktop bestand met behulp van de nano-editor aanmaken:

dany@pindabook:~$ nano ~/.local/share/applications/CPU-X.desktop

En hier is de inhoud van het CPU-X.desktop bestand:

 GNU nano 7.2              /home/dany/.local/share/applications/CPU-X.desktop                        

[Desktop Entry]

Type=Application
Name=CPU-X
Icon=/opt/cpu-x/cpu-x.png
Exec=/opt/cpu-x/cpu-x.AppImage
Terminal=false
Hidden=false
Categories=Utility

^G Hulp       ^O Opslaan    ^W Zoeken     ^K Knippen    ^T Opdracht   ^C Positie    M-U Terugdraaien
^X Afsluiten  ^R Inlezen    ^\ Vervangen  ^U Plakken    ^J Uitvullen  ^/ Naar regel M-E Herdoen

Sla het CPU-X.desktop bestand op met de sneltoets Ctrl+o, gevolgd door Return. Daarna kan je nano afsluiten met de sneltoets Ctrl+x.

Na een tijdje verschijnt het CPU-X programma in de Programmastarter. Mocht dit niet het geval zijn, controleer dan bovenstaande stappen. Indien alles correct is, kan het helpen om af te melden en terug aan te melden (of de computer te herstarten). Indien het programma nog steeds niet in de Programmastarter verschijnt staat er zo goed als zeker een fout in het CPU-X.desktop bestand. Controleer dus goed op spelfouten, hoofdletters, spaties, enz.

Wie meer informatie wil over de inhoud van .desktop bestanden, kan terecht op Desktop entries - ArchWiki en Recognized desktop entry keys.

CPU-X.desktop

Met de KDE Menubewerker

Wie liever niet met terminalopdrachten werkt, waarbij je gemakkelijk typfouten kunt maken, kan gebruik maken van de KDE Menubewerker. Je kunt de KDE Menubewerker starten, door rechts te klikken op de Programmastarter, onderaan rechts op het scherm en de opdracht Toepassingen bewerken... op te starten.

In de KDE Menubewerker kan je zowel bestaande menu-items aanpassen als nieuwe aanmaken. Selecteer of open wel eerst de categorie waarin je een menu-item wilt aanmaken. Om het hierboven in de terminal aangemaakte CPU-X.desktop bestand aan te passen, open je de categorie Hulpmiddelen (Utility) en selecteer je het item CPU-X.

Kde Menubewerker Algemeen

Op het tabblad Algemeen kan je de basiseigenschappen van het item aanpassen. Voer ten minste de Naam en het Programma in. Het Programma kan je selecteren via een Bestandsdialoogvenster (bladerknop), zodat je zeker geen fouten kunt invoeren. Klik op het vakje met het pictogram om via de knop zelf een pictogram te selecteren.

Via het tabblad Geavanceerd kan je enkele geavanceerde eigenschappen aanpassen.

Kde Menubewerker Geavanceerd

Vergeet niet na het aanpassen op de knop te klikken om de aanpassingen te activeren.

CPU-X verwijderen