デスクトップランチャーのパス環境変数の設定

デスクトップランチャーのパス環境変数の設定

$PATH~/.bashrcカスタマイズを設定しましたPATH=$HOME/.bin:$PATH。私が始めたときgeanyターミナルから$HOME/.bin。 XFCEランチャーを使用してGeanyを実行すると、カスタムパスは選択されず、カスタムビルドツールは機能しません。ランチャーが選択できるようにカスタムパスを設定できますか?カスタムファイルを作成したくありません.desktop

しかし、すべてのシェルが読める「.bashrc」に対応するファイルはありますか?ショートカットを使用してプログラムを実行するときにどのシェルを使用しているのか、そのシェルをどのように実行するのかを知ると答えが出ます。おそらくインタラクティブなbashシェルではないでしょう。それ以外の場合は.bashrcフェッチされます。

答え1

各シェルには環境変数を取得する別の方法があります(例:すべてのシェルが読める「.bashrc」に対応するファイルはありますか?)。ディスプレイマネージャのデフォルトシェルを介して起動されたグラフィックプログラムの場合、環境変数はディスプレイマネージャの起動方法に応じて異なる場所(または.xsession)に設定されます。.xinitrc

PAMがあるシステムの場合pam_envログインすると常に「ソース」です。

以下を作成して問題を解決できました.pam_environment

PATH DEFAULT=/home/strongbad/.bin

しかし、ホームディレクトリにハードコードする必要がありました。マニュアルページ説明する:

DEFAULT=${HOME}/bin:

動作する必要があります。

まだ/etc/profile修正が残っています。

PATH="/usr/local/sbin:/usr/local/bin:/usr/bin"

到着

PATH="$PATH:/usr/local/sbin:/usr/local/bin:/usr/bin"

なぜなら、/etc/profile設定された値を上書きするだけです.pam_environment

更新には.pam_environmentログアウト/ログインが必要です。台無しにすると$PATHログインが難しくなります。問題を簡単に解決するために、他の場所(TTYなど)にログインしたままにすることをお勧めします。

答え2

新しいルートのエクスポートをランチャーに直接接続しました。たとえば、ランチャーのコマンドを次のように変更します。

export "PATH=$HOME/.bin:$PATH" ; geany %F

「/usr/share/applications/geany.desktop」から直接Geanyのランチャーファイルを編集できる必要があります。これはアプリケーションランチャーにさらに広範なシステム影響を与えます。

システム内のすべてのユーザーがパス変数にローカルの「$ HOME / .bin」を持つようにするには、それを「/ etc / environment」ファイルに追加します。これはシステム内のすべてのユーザーに影響を与えるため、これらのユーザーのエラーを防ぐには、すべてのユーザーフォルダにこのディレクトリを作成する必要があります。 「/root[/.bin]」を含みます。

関連情報