RStudioが$ HOME / .bashrcで定義された環境変数を取得できないのはなぜですか?

RStudioが$ HOME / .bashrcで定義された環境変数を取得できないのはなぜですか?

私はアーチLinuxを使用しています。

SSDMをディスプレイマネージャとして使用していますが、次の方法で無効にしました。

sudo systemctl disable sddm

このファイルをインポートするときにエコーされるようにコード/etc/profileを に入れました。$HOME/.bash_profile$HOME/.bashrc

$HOME/.bash_profileはソーシング中です$HOME/.bashrc(このようなことが起こった場合は、エコーするコードを追加しました)。

if [[ -f ~/.bashrc ]]; then
    echo "$HOME/.bash_profile is sourcing $HOME/.bashrc"
    . ~/.bashrc
fi

次の変数をエクスポートしています$HOME/.bashrc

export R_LIBS_USER='MY_VALUE'

コンピュータを起動します。

ユーザー名とパスワードの入力を求めるプロンプト(TUI /コマンドライン)が表示されます。

私はそれらを入れてEnterを打った。

/etc/profileソースです。 $HOME/.bash_profileソースです。後者のソース$HOME/.bashrc。これはR_LIBS_USER、エクスポートが進行中であることを意味します。

プロンプトにリダイレクトされます。

私は以下が欲しい:

sudo systemctl start ssdm

SSDMはこのシェルの子であるためR_LIBS_USER

SSDM が開き、Wayland KDE セッションが開始されます。

このセッションはSSDMのサブセッションなのでR_LIBS_USER

KDEでRStudioを開きます。

しかし、R_LIBS_USERそれはまだデフォルトであり、私がやっていることではありません$HOME/.bashrc

次のコマンドを使用して、Rの変数値を表示します。

Sys.getenv("R_LIBS_USER")

私の推論はどこで失敗しましたか?

答え1

SSDMはこのシェルの子なので

いいえ、そうではありません。これは、init指示に従ってsystemd(したがって以前にプロセスと呼ばれている)によって開始されますsystemctl

それで、これはあなたの鎖が壊れる場所です。

関連情報