Czy istnieje sposób ustawienia zmiennej środowiskowej w pliku .desktop? Próbuję uruchomić aplikację (zaćmienie) w niestandardowym stylu GTK, więc w zasadzie chcę uzyskać następujący wynik, uruchamiając plik .desktop:
GTK2_RC_FILES=gtkrc.custom /path/to/eclipse
Próbowałem umieścić go w skrypcie bash i uruchomić z pliku .desktop, ale potem nie integruje się on dobrze z programem uruchamiającym Unity.
unity
launcher
environment-variables
dotintegral
źródło
źródło
$HOME
? Ani sięExec=env MYVAR="$HOME/foo"
nieExec=env MYVAR="~/foo"
rozszerza. Zamiast tego są przekazywane dosłownie.Alternatywą do modyfikacji
.desktop
pliku jest umieszczenie skryptu opakowania np~/bin
.W ten sposób dostosowanie nie zostanie zastąpione przy kolejnej aktualizacji pakietu aplikacji.
Edytować:
Wskazówka na temat tego, dlaczego to działa, można zobaczyć, sprawdzając, co
PATH
zawiera zmienna. W moim przypadku:~/bin
jest pierwszym folderem na liście i dlatego jest przeglądany wcześniej/usr/bin
.źródło
.desktop
pliku będącego własnością pakietu .~/bin
pomoże w tym. Plik będący własnością pakietu.desktop
nigdy nie zobaczy tego opakowania! Trzeba też użyćupdate-alternatives
.desktop
plik nie musi „widzieć” opakowania. Po prostu wykonuje sięeclipse
, a ze względuPATH
na opakowanie jest wybierane zamiast/usr/bin/eclipse
. Zredagowałem odpowiedź, aby wyjaśnić.