Linuxでのグラフィカルログインに任意の環境変数を設定する方法を探しています。これらの変数はその1つの端末内にのみ存在するため、端末の起動と端末内の環境変数のエクスポートについては説明していません。グラフィカルセッションで開始されたすべてのプログラムに適用される環境変数の設定方法を知りたい。
言い換えれば、Xorgと同等のものは~/.bash_login
何ですか?
Linuxでのグラフィカルログインに任意の環境変数を設定する方法を探しています。これらの変数はその1つの端末内にのみ存在するため、端末の起動と端末内の環境変数のエクスポートについては説明していません。グラフィカルセッションで開始されたすべてのプログラムに適用される環境変数の設定方法を知りたい。
言い換えれば、Xorgと同等のものは~/.bash_login
何ですか?
回答:
それらはいつでもに入れることができる.profile
ので、どのログインにも適用する必要があります。
ただし、a .bash_login
が存在する場合は問題が発生します.profile
。その場合、bashはを読みません。
変数.profile
をbashと他のログインの両方に適用する場合は、.bash_login
!を使用しないでください。.bashrc
代わりにbash固有の変数を入れてください。
または代わりに、含まれる.profile
から.bash_login
~/.kde/env/
終わる必要があるよう.sh
です。startkde
マンページを参照してください。
~/.gnomerc
、/etc/X11/Xsession.d/55gnome-session_gnomerc
.KDEがログインシェルであるシェルのプロファイルスクリプトを読み取るように、セットアップスクリプトをに配置する必要があります。の場合SHELL=bash
、それは読み取ります~/.profile
。の場合SHELL=zsh
、それは読み取ります~/.zprofile
。私はそれが他のシェルに対して何をするのか分かりません。
私.profile
は単に環境変数を設定するだけではないので、環境設定タスクを、環境のみを設定する.setenv
ファイルに分割しました。DebianでX11の環境を設定するために、自宅にを追加しました:.xsessionrc
. ~/.setenv
.xsessionrc
ソースとなるファイルは/etc/X11/Xsession.d/40x11-common_xsessionrc
です。
bashが環境を設定するために使用するファイルを使用しても、私が望むことはできませんでした。もちろん、X11でbashシェルを開始した場合、必要な環境が得られます。ただし、デスクトップ環境で必要なソフトウェアを実行できるように、PATHを設定する必要があります。たとえば、私は通常、通常のパスの外部にインストールされたFirefoxのカスタムバージョンを使用します。デフォルトのパスにあるものを使用するのではなく、デスクトップ環境で適切なバージョンを起動するようにします。これを行うには、デスクトップ環境を開始する前にPATHを設定する必要があります。
Xorg自体にはプログラムが起動しないため、Xorg自体はありません。使用するディスプレイマネージャー(gdm、xdm、xinit、startxなど)またはセッションマネージャー(gnome-session、KDEなど) 、これらはデスクトップセッションプロセスの親であるためです。残念ながら、さまざまなものがあり、それぞれが異なる起動スクリプト/ドットファイルを持っているため、万能の答えはありません。(Xのクライアント/サーバーモデルでは、Xサーバーはクライアントと同じマシン上にない場合があり、多くの場合、ユーザーの代わりにrootとして実行されているため、環境変数などの設定には不適切な場所です。)
.profile
働いた。