質問
こんにちは、私はFreeBSDに初めてアクセスし、UNIXシステムに初めてアクセスしました。私はFreeBSDのマニュアルを読んでいますが、今まで気に入っています。私の目標は、ウェイランドに川タイリングウィンドウマネージャをインストールすることです。問題が発生しましたが、マニュアルで読んだ内容によると、この問題は次のように発生すると考えられます。他のWaylandシンセサイザーも同様です。 要するに問題はXDG_RUNTIME_DIR
無効/不認定だ。
追加情報と私がとったアクション
ハードウェア:
- Lenovo ThinkPad T480s
- 第8世代インテルCore i7
- ウルトラHDグラフィックス620
- 24GB RAM
ソフトウェア:
- FreeBSD 13.1リリース
- ウェイランド 1.21.0
- River 0.2.4(最新ポートブランチからバイナリとしてインストール)
これまで私がとった措置は次のとおりです。マニュアルのWaylandセクション:
- ビデオグループにユーザーを追加する:
# pw groupmod video -m myUsername
- Waylandと座席管理デーモンのインストール:
# pkg install wayland seatd
- に追加
.shrc
:XDG_RUNTIME_DIR=/var/run/user/`id -u` エクスポート - 適切なグラフィックドライバをインストールします。
# pkg install drm-kmod
/etc/rc.conf
次に、次のコマンドを実行してファイルにモジュールを追加します。# sysrc kld_list+=i915kms
- シンセサイザーを設置しました。
# pkg install river
seatd
システムサービスを有効にして実行します。# sysrc seatd_enable=”YES”
# service seatd start
- コピー済みposixシェルの構成例到着する:
~/.config/river/init
- Riverwmスタート:
# river
間違い
エラー出力は次のとおりです。
info(wlroots): [wayland] error: XDG_RUNTIME_DIR is invalid or not set in the environment
明らかに、問題はXDG_RUNTIME_DIR
認識不足につながります。次に何をすべきかわかりません。これに関するマニュアルの内容は次のとおりです。
XDG_RUNTIME_DIR
ほとんどのシンセサイザーがディレクトリから構成ファイルを検索することは注目に値します。ここに含まれる例では、一時~/.config
ファイルと構成ファイルを区別するパラメーターを使用して構成ファイルを指定します。特定の設定ファイルをロードするには、各シンセサイザのエイリアスを設定することをお勧めします。
ただし、Riverのドキュメントでは、Riverが設定ファイルを取得する場所について説明します。
$XDG_CONFIG_HOME/river/init
起動時に、Riverは実行可能ファイルが存在する場合に実行します。$XDG_CONFIG_HOME
設定しないと使用され~/.config/river/init
ます。
質問
一つを作るべきですかXDG_RUNTIME_DIR
?私のパスを定義しましたが、.shrc
私の/var/run/user
システムには存在しません。作成する必要がある場合は、特定のファイルで埋める必要がありますか? Wellandは明らかにそれが始まるのを楽しみにしています。 Riverはエラーがないと報告しました。
どんな助けでも大変感謝します!誰かが私に正しい方向を教えてくれるか、システムの私の理解のギャップを埋めることを願っています。解決策を得るのも良いです! :)
答え1
Riverクリエイターや他の素晴らしいユーザーから助けを得ることができました。irc.libera.chatの#riverチャンネル。
解決策
唯一の要件XDG_RUNTIME_DIR
は、そのファイルが存在し、700の権限を持つユーザーが所有する必要があることです。
言い換えれば:
/var/run/user/
ユーザーIDで名前が付けられたディレクトリを作成します。私の場合は1001
(の出力)ですid -u
。もちろん、user
ディレクトリが存在しない場合は最初に作成されます。/var/run/user/yourUserId
存在する場合は、ユーザーが所有者であり、権限が次のように設定されていることを確認してください(700
ユーザーはできrwx
、他の人は他の権限を持っていません)。# chown yourUsername /var/run/user/yourUserId
# chmod 700 /var/run/user/yourUserId
- シェルの rc ファイル (.shrc、.bashrc など) に次のコンテンツを追加します。
export XDG_RUNTIME_DIR=/var/run/user/`id -u`