web-dev-qa-db-fra.com

Fichier .desktop avec environnement .bashrc

J'utilise IntelliJ IDEA et certaines des variables d'environnement définies dans le script .bashrc sont utilisées.

Si j'exécute son script Shell à partir du terminal, tout fonctionne correctement, mais si je crée un fichier .desktop pour l'exécuter à partir du programme de lancement, il est chargé sans l'environnement .bashrc.

J'ai également essayé d'utiliser l'option "Exécuter avec terminal" et cela n'aide pas. Y a-t-il un moyen de faire ces choses?

Le contenu du fichier de bureau:

[Desktop Entry]
Version=1.0
Type=Application
Name=IntelliJ IDEA
Icon=/home/gmarom/bin/idea-IU-135.1230/bin/idea.png
Exec="/home/gmarom/bin/idea-IU-135.1230/bin/idea.sh" %f
Comment=Develop with pleasure!
Categories=Development;IDE;
Terminal=false
StartupWMClass=jetbrains-idea
5
Guy Marom

Lors de l'exécution à partir d'un programme de lancement, le script idea.sh est lancé à l'aide d'un shell non iteractive. Dans votre .bashrc, assurez-vous que les variables d’environnement sont exportées avant

# If not running interactively, don't do anything
case $- in
    *i*) ;;
      *) return;;
esac

Ou bien, placez les exportations de variable d'environnement dans ~/.bash_profile

4
tekumara

Déplacer les variables d'environnement vers .profile n'a pas fonctionné pour moi. Au lieu de cela, j'ai supprimé le code suggéré par @oliman de mon .bashrc, puis j'ai changé le programme de lancement de mon IntelliJ IDEA:

"/opt/idea-IU-163.12024.16/bin/idea.sh" %f

pour ça:

bash -c "source ~/.bashrc && /opt/idea-IU-163.12024.16/bin/idea.sh %f"
3
fwc

Pour moi, le correctif consistait à déplacer les variables d'environnement de .bashrc vers .profile et relogin. Komodo Edit récupère à présent le Perl perlbrewed de PATH.

https://help.ubuntu.com/community/EnvironmentVariables était très utile.

1
Alexander Hartmaier