Hyprland
関連記事
Hyprland は C++ で書かれた wlroots ベースのタイリング Wayland コンポジターです。Hyprland の特筆すべき点は、ダイナミックタイリング、タブ付きウィンドウ、クリーンで読みやすい C++ コードベース、ウィンドウアニメーションや角丸、透明ウィンドウでの Dual-Kawase Blur を提供するカスタムレンダラーなどです。一般的な使い方や設定方法は、 Hyprland GitHub wiki に詳しく書かれています。
インストール
Hyprland は AUR からインストールするか、ソースからビルドすることができます。source.
Hyprland は独自のバージョンの wlroots をバンドルしており、wlroots-gitAUR に忠実に準拠しています。これは安定性を高め、他の wlroots ベースのコンポジターとの依存関係の衝突を避けることができます。
AUR から
hyprlandAUR、hyprland-binAUR または hyprland-gitAUR パッケージをインストールします。
ソースから
Hyprland は非常に活発なリポジトリです。現時点では、通常1日に数回のコミットがあります。
$ git clone --recursive https://github.com/vaxerski/Hyprland $ cd Hyprland # make install
recursive
フラグは適切なバージョンの wlroots を取り出し、Hyprland のためにローカルにビルドします。
使用方法
起動
現在、Hyprland は TTY から起動することを推奨しています。
$ Hyprland
また、環境変数 を設定して、独自のスクリプトを実行し、exec Hyprlandで終了させることもできます (必要に応じて調整してください):
#!/bin/bash export SDL_VIDEODRIVER=wayland export MOZ_ENABLE_WAYLAND=1 export GTK_THEME=Catppuccin-blue:dark exec Hyprland
ディスプレイマネージャ からの起動は公式にはサポートされていませんが、GDM、SDDM、その他からの起動に成功したとの報告があります。全ての Hyprland AUR パッケージは自動的にディスプレイマネージャーエントリーを生成します。ソースから手動でインストールする場合、ソースコードの example ディレクトリに Hyprland.desktop
ファイルのサンプルがあります、これを /usr/share/wayland-sessions/
にコピーしてディスプレイマネージャーのエントリーを提供することができます。
どちらの方法でも、いくつかの環境変数やサービスを追加したり削除したりすることで、同じ結果を得ることができます
hyprctl と IPC
hyprctl は Hyprland にインストールされている、ディスプレイサーバーと通信するためのコマンドライン・ユーティリティです。サーバーにコマンドを送ったり (設定ファイルのコマンドと同じですが、構文が少し違います)、キーワードを設定したり、クエリ を送ったり、情報を要求したりすることができます。full documentation を参照してください。
Hyprland は 2 UNIX ソケット も公開しており、コードやコマンドライン・ユーティリティを使って Hyprland の情報を制御・取得することができます。これらのソケットはフォーカスの変更 (ウィンドウ、ワークスペース、モニター) やウィンドウ/ワークスペースの作成などのイベントをブロードキャストします。
hyprctl と IPC ソケットは、複雑なタスクのために Hyprland を制御するスクリプトの中で効果的に使うことができます。
設定
設定は 1 つの設定ファイル、hyprland.conf を通して行われます。パッケージマネージャで Hyprland をインストールした場合、おそらく /usr/share/hyprland/hyprland.conf にあります。ソースからインストールした場合は、Hyprland をクローンしたレポジトリにあります。hyprland.conf を ~/.config/hypr/hyprland.conf
にコピーしてください。
hyprland.conf
には、デバイス (モニタ、キーボード、マウス、トラックパッド) を設定するディレクティブと、アニメーション、装飾、レイアウトなどの設定が含まれています。キーバインディングやウィンドウのルールを設定したり、コマンドを実行したりできます (一度だけ、あるいはコンフィグが再読み込みされるたびに)。
ファイルを更新するたびに設定が自動的にリロードされます。同じ効果を得るために hyprctl reload
を使うこともできます。いくつかの設定(特に入力設定)については、Hyprland セッションを再起動する必要があるかもしれません。
設定は hyprctl
を使用してその場で変更することもできますが、保存されません。
設定方法は Hyprland wiki に記載されています。
画面共有
wlroots ベースのコンポジターとして、Hyprland は xdg-desktop-portal-wlr を利用して Xdg-desktop-portal を経由して様々なアプリケーションでスクリーンキャプチャーを可能にすることができます。
Hyprland は xdg-desktop-portal-hyprland-gitAUR も保守しています。これは wlr portal のフォークで、地域共有、ウィンドウ共有、グラフィックピッカーなどの機能が追加されています。ポータルの使い方は Hyprland wiki で詳しく説明されています。
参照
- Developer's wiki on GitHub