Le lanceur de bureau ne lance pas le script

Sep 27 2020

J'ai lu sur la création de lanceurs de bureau ici .

J'ai déjà réussi à créer des lanceurs pour mes petits programmes Python.

J'ai un programme appelé Formreturn, pour créer et marquer des formulaires à choix multiples. C'est génial, et de nos jours sans github. (J'avais payé 600 $ à l'époque, mais cela en valait la peine pour moi.)

Pour une raison quelconque, après avoir installé la dernière version, l'icône du bureau ne s'installe pas, je dois le démarrer à partir de bash:

pedro@pedro-512ssd:~/Formreturn$ ./formreturn.sh

Le programme démarre correctement.

J'en ai parlé à Roland Quast, l'auteur, mais il n'avait pas de bonne solution. Il a blâmé les changements dans Ubuntu.

J'ai donc pensé que je pourrais créer mon propre lanceur:

[Desktop Entry]  
Version=1.0   
Name=Formreturn   
Comment=Multi-choice marking programme   
Exec=/home/pedro/Formreturn/formreturn.sh  
Icon=/home/pedro/icons/formreturn.png   
Terminal=false   
Type=Application  
Categories=Utility;Application;

J'ai aussi essayé avec:

Terminal=true

Mais ça ne se lance pas !! Peut-être parce que c'est un script bash ??

Des idées ce qui ne va pas ??

Si vous regardez l'image ci-jointe, vous verrez ce que je vois lorsque je clique droit sur le lanceur FR1. Il a un onglet supplémentaire "Ouvrir avec".

Si je clique avec le bouton droit de la souris sur mes autres lanceurs maison, ceux de mes programmes Python, je ne vois pas ça, ils ont juste 2 onglets: "Basique" et "Permissions"

C'est peut-être une fonction de sécurité ??

EDIT: C'est formreturn.sh

#!/bin/bash  

# (I commented this out with #) FRM_HOME=.    
FRM_HOME="/home/pedro/Formreturn/"
COMMAND_PATH=`echo ${0} | sed -e "s/\(.*\)\/.*$/\1/g"`
cd ${COMMAND_PATH} if [ -z $JAVA_HOME ]; then
    JAVA_COMMAND=`which java`
    if [ "$?" = "1" ]; then echo "No executable java found. Please set JAVA_HOME variable." exit fi else JAVA_COMMAND=$JAVA_HOME/bin/java
fi
if [ ! -x $JAVA_COMMAND ]; then echo "$JAVA_COMMAND is not executable. Please check the permissions."
    exit
fi
$JAVA_COMMAND -jar -Xmx1024m $FRM_HOME/lib/formreturn.jar "$1"  

Réponses

6 xiota Sep 27 2020 at 09:37
  • Le programme que vous essayez d'exécuter semble être ce FormReturn . Si tel est le cas, vous devrez probablement modifier formreturn.shpour FRM_HOMEindiquer l'emplacement du script (probablement /home/pedro/Formreturn- Remarque, pas de barre oblique à la fin).

    Par défaut, il est défini sur .lequel ne fonctionnera pas lorsque le script est appelé à partir d'un lanceur car il pwdpeut ne pas être le même que l'emplacement du script.

  • Essayez de recréer le fichier de bureau à partir de zéro. Il y a peut-être quelque chose de petit qui ne va pas dans celui que vous avez. Comme un espace de fin qui n'apparaît pas sur le Web.

    Assurez-vous également que le .desktopfichier a l'extension correcte. Sinon, il peut être traité comme un type de fichier inconnu ou un fichier texte ordinaire.