Xセッションの開始時に環境変数をエクスポートできません。

Xセッションの開始時に環境変数をエクスポートできません。

私の設定は次のとおりです

  • Debianテスト(拡張)、最新
  • 自動ログインが有効なLightDM
  • 素晴らしいウィンドウマネージャ
  • Bash(ROXTermまたはXTerm)

私の環境変数を設定し、Xセッションの開始時にインポートできないようです。私が試したことは次のとおりです。

  • ~/.bash_profile以前のOSで動作しましたが、以下で学びました。この回答Debian とその派生製品の X ブートでは発生しません。
  • 提案したようにしましたが、うまくmv .bash_profile .profileいきませんでした。後で知ったようにここ~/.profileディスプレイマネージャがXセッションを開始すると取得されません。
  • 上記の質問に対する答え~/.xsessionrcは、私が知っている限り機能しません。ここ/etc/X11/Xsession、LightDMが実行されていない場所でのみ発生します。
  • Arch Linux Wiki主張するLightDMソース~/.xprofileファイルですが、これも機能しません。

~/.xinitrc最後のサイトの提案を試して、次のようにしました。

export QT_STYLE_OVERRIDE=GTK+
[ -f ~/.xprofile ] && source ~/.xprofile
~/.screenlayout/default.sh
awesome

私の~/.xprofile外観は次のとおりです。

[[ -f ~/.bashrc ]] && . ~/.bashrc
source /etc/bash_completion.d/virtualenvwrapper

export GDK_NATIVE_WINDOWS=1
export WORKON_HOME=$HOME/env/

残念ながら、ログインしてXセッションを開始した後、次のいずれかの変数が設定されていないことがわかりました。

red@localhost:~$ echo $QT_STYLE_OVERRIDE

red@localhost:~$ echo $GDK_NATIVE_WINDOWS

red@localhost:~$ echo $WORKON_HOME

正しく設定するにはどうすればよいですか?

ベストアンサー1

~/.xinitrcテキストモードでログインした後にstartxGUIセッションを開始するために使用(または呼び出し)する場合にのみお読みください。xinitだからこれはあなたには役に立ちません。

ディスプレイマネージャを使用してログインするとき~/.bash_profile、、、~/.profileおよび~/.xprofileを読むかどうかは、ディスプレイマネージャの設定方法とログイン時に選択した~/.xsessionrcセッションの種類によって異なります。私が知っている限り、少なくともDebian jessieでは(それ以降は変更されたことを確認していません):

  • /usr/share/lightdm/lightdm.conf.d/01_debian.conf/etc/X11/XsessionLightdmにセッション起動スクリプトとして使用するように指示します。
  • /etc/X11/Xsession(によって/etc/X11/Xsession.d/40x11-common_xsessionrc)ローディング$USERXSESSIONRC、すなわち~/.xsessionrc

したがって、~/.xsessionrc少なくともDebian jessieでは動作します。

Debian では、~/.pam_environmentすべてのログイン方法に対して環境変数を設定することが可能でなければなりません。

あるいは、環境変数を設定し、次のようにしてAwesomeでプログラムを実行することもできます。~/.config/awesome/rc.luaposix.setenv("QT_STYLE_OVERRIDE", "GTK+")環境変数を設定するには呼び出します)。

おすすめ記事