J'ai créé une application xulrunner simple et elle fonctionne parfaitement lorsqu'elle est appelée à partir de la ligne de commande.
clain@desktop:~$ xulrunner /home/clain/myapp/application.ini
Le problème est que je dois garder le terminal ouvert pendant que l'application est en cours d'exécution. est-il possible de lancer l'application avec un raccourci/une entrée sur le bureau?
J'ai essayé de créer un fichier d'entrée de bureau comme ci-dessous mais lors de son exécution, le message d'erreur "Fichier d'entrée de bureau non valide: '/ home/clain/Desktop/myapp'"
[Desktop Entry]
Version=1.0
Encoding=UTF-8
Name=MyApp
GenericName=MyApp XulRunner
Exec=xulrunner /home/clain/myapp/application.ini
TryExec=xulrunner /home/clain/myapp/application.ini
Terminal=false
Type=Application
MimeType=text/xml;application/xhtml+xml;application/x-javascript;application/x-php;application/x-Java;text/x-javascript;text/html;text/plain;
Name[en_IN]=MyApp
Comment[en_IN]=Standalone MyApp SSB
Je cours sur Lubuntu 14.04 LTS (Trusty Tahr)
Vous avez plusieurs options.
Vous pouvez soit exécuter à partir du graphique "Run Command" - l'équivalent de Windows + R. Vous pouvez également le trouver dans le menu Démarrer de Windows.
Sur Ubuntu, vous utilisez Alt + F2 pour l'ouvrir:
Et sur lubuntu c'est "Menu" -> "Run".
Et puis exécutez la commande
xulrunner /home/clain/myapp/application.ini
graphiquement, sans avoir besoin d'un terminal.
Votre deuxième option consiste à exécuter dans un terminal, mais en le dissociant avec le caractère &
, comme suit:
xulrunner /home/clain/myapp/application.ini &
cela démarrera comme un processus séparé. Voici un exemple avec Gedit:
Comme vous pouvez le constater, je peux exécuter une autre commande sans affecter Gedit. Il va continuer à courir. Si je n'utilisais pas le &
, le terminal serait connecté. La fermeture du terminal donne ce message:
Et bien sûr, si je le ferme, Gedit arrêtera. Si j'utilise le &
, il n'y a pas de processus actif, le terminal peut simplement être fermé.
Enfin, si vous avez vraiment besoin d’un raccourci sur le bureau, vous pouvez utiliser ce fichier .desktop
.
[Desktop Entry]
Version=1.0
Encoding=UTF-8
Name=MyApp
Exec=xulrunner /home/tim/xulrunner/application.ini
Terminal=false
Type=Application
J'ai découpé les parties inutiles qui, si cela peut fonctionner. Ajoutez dans la ligne Icon = /path/to/iconname.svg
pour lui donner une icône.
Notez également que vous pouvez simplement mettre une icône soit ~/.icons
ou /usr/share/icons
. Ensuite, si le nom de votre icône est "MyApp.svg", utilisez simplement la ligne Icon = MyApp
.
Si vous voulez toujours la ligne "TryExec" qui n'est pas nécessaire, la réponse de A.B. explique pourquoi.
L'entrée TryExec
est fausse et c'est la raison de votre message d'erreur:
Fichier d'entrée de bureau non valide: '/ home/clain/Desktop/myapp'
La définition de TryExec
est
Chemin d'accès à un fichier exécutable sur le disque utilisé pour déterminer si le programme est réellement installé. Si le chemin n'est pas un chemin absolu, le fichier est recherché dans la variable d'environnement $ PATH. Si le fichier n'est pas présent ou s'il n'est pas exécutable, l'entrée peut être ignorée (ne pas être utilisée dans les menus, par exemple).
Utilisation
TryExec=xulrunner
parce que
xulrunner /home/clain/myapp/application.ini
n'est pas un fichier exécutable. C'est un exécutable avec un paramètre.
vous pouvez écrire un script comme celui-ci:
#!/bin/bash
xulrunner /home/clain/myapp/application.ini
puis enregistrez ce script à un endroit qui s'appelle par exemple "myapp". vous pouvez ensuite rendre mon application exécutable en donnant la commande chmod +x myapp
ou en cliquant avec le bouton droit de la souris sur le fichier, en accédant à l'onglet des autorisations et en cochant la case Créer un exécutable.
Vous pouvez ensuite faire en sorte que vous écriviez une commande système à l'aide de la commande ln
, il vous suffit de placer un lien symbolique vers myapp quelque part dans PATH. echo $PATH
pour voir quelles sont vos options. Je vais utiliser "/ usr/local/bin"
alors vous donnez une commande comme ceci: Sudo ln -s /absolute/path/to/myapp /usr/local/bin/myapp
ou pour créer une icône de bureau:
ln -s /absolute/path/to/myapp /home/user/Desktop/myapp
maintenant, votre application est utilisable à partir de la ligne de commande, vous pouvez taper $ myapp et elle s'exécutera.
maintenant, vous pouvez maintenant créer des lanceurs personnalisés de panneau ou d'accueil, qui n'occuperont pas votre terminal, même s'ils l'appelleront.
Sinon, xulrunner /home/clain/myapp/application.ini &
n'est pas un mauvais conseil, mais si vous créez un script, un lien et/ou des lanceurs personnalisés, vous ne devez plus jamais taper ce genre de choses. Vous pouvez cliquer avec le bouton droit de la souris sur le panneau et sélectionner "Ajouter au panneau", puis sélectionner le lanceur d'applications personnalisé. Ensuite, vous pouvez donner la commande "myapp" ou appeler le script directement.