Szukam sposobu na ustawienie dowolnych zmiennych środowiskowych dla mojego graficznego logowania w systemie Linux. Nie mówię o uruchomieniu terminala i eksportowaniu zmiennych środowiskowych w terminalu, ponieważ zmienne te istnieją tylko w tym jednym terminalu. Chcę wiedzieć, jak ustawić zmienną środowiskową, która będzie stosowana do wszystkich programów uruchomionych w mojej sesji graficznej.
Innymi słowy, jaki jest odpowiednik Xorga ~/.bash_login
?
źródło
.profile
pracowałem.~/.kde/env/
i zakończyć.sh
. Zobacz stronęstartkde
podręcznika.~/.gnomerc
, jak pokazano w/etc/X11/Xsession.d/55gnome-session_gnomerc
.KDE czyta skrypt profilu dla powłoki, która jest powłoką logowania. JeśliSHELL=bash
, to czyta~/.profile
. JeśliSHELL=zsh
, to czyta~/.zprofile
. Nie wiem, co robi z innymi pociskami.My
.profile
nie tylko ustawia zmienne środowiskowe, więc podzieliłem zadania związane z ustawieniami środowiska na.setenv
plik, który tylko ustawia środowisko. Aby ustawić środowisko dla X11 na Debianie, dodałem.xsessionrc
w moim domu:Plik, który powoduje
.xsessionrc
pozyskiwanie, to/etc/X11/Xsession.d/40x11-common_xsessionrc
.Używanie plików używanych przez bash do ustawienia środowiska nie spełniło moich oczekiwań. Jasne, gdybym uruchomił powłokę bash w X11, dostałbym środowisko, którego chciałem. Muszę jednak ustawić PATH, aby środowisko komputerowe mogło uruchamiać oprogramowanie, które chcę. Na przykład często używam niestandardowych wersji Firefoksa, instalowanych poza zwykłymi ścieżkami. Chcę, aby moje środowisko pulpitu uruchomiło odpowiednią wersję, zamiast używać wszystkiego, co może znaleźć na domyślnych ścieżkach. Aby to zrobić, PATH należy ustawić przed uruchomieniem środowiska pulpitu.
źródło
Sam Xorg nie ma takiego, ponieważ nie uruchamia programów - byłby to dowolny menedżer wyświetlania (gdm, xdm, xinit, startx itp.) Lub menedżer sesji (gnome-session, KDE itp.), Którego używasz , ponieważ są to rodzice procesów sesji pulpitu. Niestety istnieje wiele różnych, z których każdy ma inne skrypty startowe / pliki dot, więc nie ma jednej odpowiedzi dla wszystkich. (W modelu klient / serwer X X serwer X może nawet nie znajdować się na tym samym komputerze co klienci i często działa jako root zamiast ciebie, więc jest to złe miejsce na ustawienia takie jak zmienne środowiskowe.)
źródło