La documentazione integrata di GNOME copre solo le cose che chiunque può facilmente indovinare. Ho un'applicazione per cui posso iniziare solo dalla riga di comando. Non che mi dispiaccia usare un terminale ma...
Ad ogni modo, come aggiungo il comando (e preferibilmente un bel logo) a GNOME WM?
Risposta accettata:
In GNOME e in altri ambienti desktop compatibili con freedesktop.org, come KDE e Unity, le applicazioni vengono aggiunte ai menu del desktop o alla shell del desktop tramite voci del desktop , definito in file di testo con .desktop
estensione (denominati file desktop ). Gli ambienti desktop creano menu per un utente dalle informazioni combinate estratte dalle voci desktop disponibili.
I file desktop possono essere creati in uno dei due seguenti luoghi:
/usr/share/applications/
per le voci del desktop disponibili per tutti gli utenti del sistema~/.local/share/applications/
per le voci desktop disponibili per un singolo utente
Potrebbe essere necessario riavviare GNOME per far funzionare le nuove applicazioni aggiunte.
Per convenzione, i file desktop non devono includere spazi o caratteri internazionali nel loro nome.
Ogni file desktop è suddiviso in gruppi , ciascuno che inizia con l'intestazione del gruppo tra parentesi quadre ([]
). Ogni sezione contiene un numero di chiave , valore coppie, separate da un segno di uguale (=
).
Di seguito è riportato un esempio di file desktop:
[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
Spiegazione
[Desktop Entry]
ilDesktop Entry
l'intestazione del gruppo identifica il file come una voce del desktopType
il tipo di voce, i valori validi sonoApplication
,Link
eDirectory
Encoding
la codifica dei caratteri del file desktopName
il nome dell'applicazione visibile nei menu o nei lanciatoriComment
una descrizione dell'applicazione utilizzata nei suggerimentiIcon
l'icona mostrata per l'applicazione nei menu o nei launcherExec
il comando utilizzato per avviare l'applicazione da una shell.Terminal
se l'applicazione deve essere eseguita in un terminale, i valori validi sonotrue
ofalse
Categories
punto e virgola (;
) elenco separato di categorie di menu in cui deve essere visualizzata la voce
Argomenti della riga di comando in Exec
chiave può essere significata con le seguenti variabili:
%f
un unico nome di file.%F
più nomi di file.%u
un unico URL.%U
più URL.%d
una singola directory. Usato insieme a%f
per individuare un file.%D
più directory. Usato insieme a%F
per individuare i file.%n
un unico nome file senza un percorso.%N
più nomi di file senza percorsi.%k
un URI o un nome file locale della posizione del file desktop.%v
il nome della voce Dispositivo.
Nota che ~
o variabili ambientali come $HOME
non sono espansi all'interno dei file desktop, quindi qualsiasi eseguibile a cui si fa riferimento deve essere nel $PATH
o referenziati tramite il loro percorso assoluto.
Una specifica per l'accesso al desktop completa è disponibile in GNOME Dev Center.
Avvia script
Se l'applicazione da avviare richiede alcuni passaggi da eseguire prima di essere richiamata, è possibile creare uno script di shell che avvii l'applicazione e puntare la voce del desktop allo script di shell. Si supponga che un'applicazione richieda di essere eseguita da una determinata directory di lavoro corrente. Crea uno script di avvio in una posizione adatta (~/bin/
per esempio). Lo script potrebbe essere simile al seguente:
#!/bin/bash
pushd "/path/to/application/directory"
./application "[email protected]"
popd
Imposta il bit eseguibile per lo script:
$ chmod +x ~/bin/launch-application
Quindi punta il Exec
digitare la voce del desktop per lo script di avvio:
Exec=/home/user/bin/launch-application