So machen Sie eine .tcl-Datei direkt vom Launcher aus ausführbar

So machen Sie eine .tcl-Datei direkt vom Launcher aus ausführbar

Ich verwende Ubuntu 14.04 LTS. Ich verwende ein Programm namens ApE (A Plasmid Editor), das ich mit dem folgenden Befehl direkt vom Terminal aus ausführen muss:

tclsh8.5 /home/justin/ApE/AppMain.tcl 

Der Einfachheit halber würde ich dieses Programm gerne direkt als ausführbares Symbol öffnen können, das in den Launcher eingebettet ist. Ich gehe davon aus, dass es ein einfaches Bash-Skript geben sollte, das ich schreiben könnte, um tclsh8.5 aufzurufen und die .tcl-Datei direkt zu öffnen, aber ich bin ein völliger Neuling und habe keine Ahnung, wie ich das erreichen soll. Für jede Hilfe wäre ich sehr dankbar.

Antwort1

Hier ist der vollständige Ablauf, den ich letztendlich durchgeführt habe:

$ sudo apt-get install gksu
$ cd /usr/share/applications
$ gksudo gedit ApE.desktop

Dann habe ich die folgende .desktop-Datei erstellt

[Desktop Entry]
Type=Application
Name=ApE
Icon=/home/justin/ApE/ApE.png
Exec=/home/justin/ApE/AppMain.tcl %f
Version=1.0
Comment=A Plasmid Editor
GenericName=Plamid Editor
Terminal=false
X-MultipleArgs=false
Categories=Utility;
StartupWMClass=ApE
StartupNotify=true

Von dort aus musste ich die .tcl-Datei ändern, indem ich dem Skript den folgenden Shebang hinzufügte;

#!/usr/bin/tclsh

Dann habe ich das .tcl-Skript ausführbar gemacht;

$ cd /home/justin/ApE
$ chmod +x AppMain.tcl

Dann habe ich die Desktop-Datei mit den folgenden Befehlen validiert und installiert:

$ cd /usr/share/applications
$ desktop-file-validate ApE.desktop
$ desktop-file-install ApE.desktop

Der Befehl „desktop-file-install“ hat der Datei .desktop die folgende Zeile hinzugefügt:

X-Desktop-File-Install-Version=0.22

Dann musste ich das ApE-Symbol im Verzeichnis /usr/share/applications einfach per Drag & Drop in den Unity Launcher ziehen, und schon war es da.

Dadurch wurde das ApE-Symbol zwar im Launcher platziert, aber jedes Mal, wenn ich auf das ApE-Symbol klickte, wurde im Launcher ein Fragezeichen-Symbol erstellt, das das geöffnete Fenster darstellte. Um dies zu beheben, musste ich die StartupWMClass-Werte in Übereinstimmung bringen. Also führte ich im Terminal den folgenden Befehl aus:

$ xprop WM_CLASS

und klickte dann auf das geöffnete ApE-Fenster, das die folgende Ausgabe zurückgab;

WM_CLASS(STRING) = "dna_window18", "Toplevel"

Also ging ich zurück in die Datei ApE.desktop;

$ cd /usr/share/applications
$ gksudo gedit ApE.desktop

und änderte den Wert von StartupWMClass auf Toplevel, was eine endgültige ApE.desktop-Datei von

[Desktop Entry]
Type=Application
Name=ApE
Icon=/home/justin/ApE/ApE.png
Exec=/home/justin/ApE/AppMain.tcl %f
Version=1.0
Comment=A Plasmid Editor
GenericName=Plamid Editor
Terminal=false
X-MultipleArgs=false
Categories=Utility;
StartupWMClass=Toplevel
StartupNotify=true
X-Desktop-File-Install-Version=0.22

Und damit wurde das Problem vollständig behoben.

verwandte Informationen