Gnome 3.22 verwendet standardmäßig Wayland. Gnome auf Wayland liest nicht ~/.profile
(oder ~/.bash_profile
oder /etc/profile
). Siehe https://bugzilla.gnome.org/show_bug.cgi?id=736660 .
Ich habe meine Initialisierungsdateien wie folgt eingerichtet:
.bash_profile
tut nichts anderes als quelle.profile
und.bashrc
.profile
Setzt nur Umgebungsvariablen wiePATH
undLC_MESSAGES
.bashrc
Legt einige bash-spezifische Einstellungen sowie Aliase und Umgebungsvariablen für Anwendungen wieless
und festgrep
.
Der Effekt (vor Wayland) war folgender:
- beim einloggen wurde grafisch
.profile
gelesen und umgebungsvariablen wiePATH
undLC_MESSAGES
gesetzt. wenn ich bash in einem terminalemulator öffne wurde dann.bashrc
gelesen. - wenn ich mich unter einem virtuellen terminal anmelde
.bash_profile
wurde dann gelesen was wiederum liest.profile
und.bashrc
. - Wenn ich mich mit ssh anmelde, ähnelt das Verhalten dem des virtuellen Terminals.
In allen Fällen .profile
und .bashrc
wurden gelesen und meine Umgebung eingerichtet.
Also benutzt Gnome 3.22 Wayland und Wayland liest nicht .profile
. Wie kann ich meine Initialisierungsdateien so einrichten, dass ich wieder die oben beschriebenen Auswirkungen habe?
Beachten Sie, dass ich nicht darauf bestehe, dass bestimmte Dateien (wie .profile
) gelesen werden. Ich möchte, dass meine Umgebung auf vernünftige Weise eingerichtet wird. Das heißt, ich möchte die bash-spezifischen Einstellungen für die bash-Initialisierungsdateien und andere Einstellungen für andere Initialisierungsdateien beibehalten. Auch möchte ich die Einstellungen nicht über verschiedene Dateien kopieren.
Ich benutze Arch Linux. Antworten für alle Distributionen sind willkommen. Wenn Sie eine Problemumgehung vorschlagen, beschreiben Sie bitte auch die Nebenwirkungen sowie die Vor- und Nachteile.
Update November 2017: Soweit ich weiß, haben die Gnome-Entwickler bestätigt, dass die Benutzer erwarten, dass ihre Login-Shell-Konfigurationsdateien ( .profile
und .bash_profile
im Falle von Bash) nach dem Login bezogen werden. unabhängig von Text oder grafischer Anmeldung. Mein oben beschriebener Anwendungsfall funktioniert also wieder.
Trotzdem möchten die Gnome-Entwickler nicht mehr eine Login-Shell starten. Es scheint, dass die Richtung, in die sie gehen, darin besteht, environmentd von systemd zu verwenden:
https://in.waw.pl/~zbyszek/blog/environmentd.html
Es scheint, dass es eine Weile dauern wird, bis alle Anmeldemethoden an environmentd angepasst sind.