Umgebungsvariable für den Unity-Anwendungsstarter festlegen

Umgebungsvariable für den Unity-Anwendungsstarter festlegen

Ich habe eine .desktopDatei zum Starten unserer Anwendung erstellt. Unsere Anwendung erfordert, dass eine bestimmte Umgebungsvariable richtig konfiguriert ist. Wo kann ich diese Umgebungsvariable für jeden Benutzer einzeln konfigurieren (die üblichen Kandidaten kenne ich, mag sie ~/.bashrcund ~/.profilefunktionieren nicht).

Vielleicht gibt es einen Workaround, sodass ich es in der Dateizeile konfigurieren kann, Exec=bevor .desktopich die Anwendung starte?

Antwort1

In der Desktopdatei selbst können Sie das Programm ausführen über env:

Exec=/usr/bin/env VAR=value /usr/bin/yourprogram

Alternativ können Sie ein Wrapper-Skript verwenden (z. B. /usr/bin/yourprogram.env):

#!/bin/sh
VAR=value
export VAR
exec /usr/bin/yourprogram.real "$@"

Beides sind jedoch schlechte Lösungen, da Unity das Programm nicht richtig verfolgen kann, wenn es über einen Wrapper gestartet wird.

Es wäre viel besser, gleich mit ~/.profileder Arbeit zu beginnen. Stellen Sie sicher, dass Sie die richtige Syntax verwenden und so weiter:

export VAR=value

oder

VAR=value
export VAR

Denken Sie auch daran, dass ~/.profilenur gelesen wirdwenn Sie sich einloggen, daher müssen Sie sich nach der Änderung abmelden.

verwandte Informationen