Ubuntu Launcher-Elemente haben keine korrekten Umgebungsvariablen unter NX

1057
Ian Varley

Ich habe ein Problem mit der Umgebungsvariablen, das ich nicht lösen kann. Ich lasse Ubuntu (Karmic, 9.10) laufen und komme über NX (NoMachine) auf einem Mac.

Ich habe mehrere Umgebungsvariablen in meine .bashrcDatei eingefügt, zB:

export JAVA_HOME=$HOME/dev/tools/Linux/jdk/jdk1.6.0_16/ 

Diese Umgebungsvariable, die sich auf dem Computer befindet, ist in der Befehlszeile sowie für Apps verfügbar, die ich über das Hauptmenü starte. Über NX wird die Umgebungsvariable jedoch korrekt in der Befehlszeile angezeigt, NICHT jedoch beim Start von Dingen über den Launcher.

Als Beispiel habe ich ein einfaches Shellskript erstellt, das testpathin meinem Home-Ordner aufgerufen wird :

#!/bin/sh echo $PATH && sleep 5 quit 

Ich habe ihm Vollzugsrechte erteilt:

chmod +x testpath 

Und dann habe ich in meinem Hauptmenü ein Startprogramm erstellt, das einfach ausgeführt wird:

./testpath 

Wenn ich am Computer sitze, wird dieser Launcher ausgeführt und zeigt alles, was ich in die $PATHVariable in meiner .bashrcDatei stecke (z $JAVA_HOME. B. usw.). Wenn ich jedoch über NX reinkomme, zeigt es einen völlig anderen Wert für die $PATHVariable, obwohl ich beim Starten eines Terminalfensters (immer noch in NX) den Typ export $PATHrichtig eingebe.

Ich gehe davon aus, dass dies darauf zurückzuführen ist, welche Dateien vom Fenstersystem über NX geladen werden und dass es sich um eine andere Datei handelt. Aber ich habe keine Ahnung, wie ich es reparieren soll.

Für das Protokoll habe ich auch eine .profileDatei mit folgendem Inhalt:

# if running bash if [ -n "$BASH_VERSION" ]; then # include .bashrc if it exists if [ -f "$HOME/.bashrc" ]; then . "$HOME/.bashrc" fi fi 
1

2 Antworten auf die Frage

0
James T

I admit I don't know anything about NX. I'll give this a shot though.

Was an NX specific user created in your /home directory? Maybe there is a .bashrc that needs to be modified there.

Are there NX configuration files in /etc that might let you provide environment variables?

Have you tried adding in your variables to a file that is applied to all accounts automatically like /etc/bashrc or /etc/bash.bashrc or /etc/profile?

0
Martin Hilton

I've never used NX but from what I've read it connects using standard ssh. It is possible to set environment variables for the ssh session by putting them in $HOME/.ssh/environment. Try adding your path to that file.