CachyOS Hyprland Noctaliaをインストールしました。
バーを右側に配置できてよいですね。
シェルはfishでした。パッケージ管理はshellyでした。
メイン環境にしてもよいかもしれないです。

スクリーンショット

Noctaliaコントロールセンタ

Super+Xでホーム画面、Super+Aで通知画面

Noctalia設定画面

Super+Z

壁紙選択

Super+Shift+W

タイリング表示

HyprMod

HyprlandをGUIで設定します。
Super+Mにバインドしました。

スクリプトランチャ

Noctaliaランチャのdmenu機能を利用したスクリプトランチャを作りました。
Super+Kにバインドしました。

CachyOSの設定

ダウンロード

https://cachyos.org/ からISOイメージをダウンロードしてインストールメディアを作成します。私はVentoyを使いました。

インストール

  • ブートローダはLimineを選択
  • Limine用パーティション(4GB, fat32, /boot)
  • CachyOS用パーティション(75GB, btrfs, /)
  • WM/DE はHyprlandを選択

ユーザディレクトリ

  • ユーザディレクトリを英語名に変更
    LANG=C xdg-user-dirs-update --force

パッケージ管理

  • shelly
    GUI版からAURとflatpakを有効化

パッケージの追加

  • fcitx5-im fcitx5-mozc fcitx5-configtool
  • google-chrome
  • hyprmod
  • jellyfin-desktop
  • kodi
  • noto-fonts noto-fonts-cjk
  • remmina freerdp
  • thunar gvfs-smb thunar-archive-plugin file-roller
  • ttf-hackgen
  • vi
  • visual-studio-code-bin

各パッケージの設定

  • fastfetchのテーマ指定
    mkdir -p ~/.config/fastfetch
    cd ~/.config/fastfetch
    curl -O https://gist.githubusercontent.com/ktkr3d/40805f88c7c72e67d9da5e28d5118fa8/raw/5667511376bad868192f54a49b8c4c87050c5d27/config.jsonc
  • fish
    ~/.config/fish/config.fish
    alias l='ls'
  • kittyのフォント指定
    kitty +list-fonts
    Hackgen Console NFを選択する
  • kittyのテーマ指定
    kitten themes
  • thunarに閉じるボタン追加
    編集 > 設定 > カスタムウィンドウ装飾を使用する : オン

Hyprlandの設定

HyprModで設定します。
Super+SpaceでHyprModを検索して起動します。

ディスプレイ (Monitors)

  • 接続デバイスと状態の確認
    hyprctl monitors
  • 必要に応じて解像度、拡大率等を変更
    Resolution, Scale, Transformを設定

キーボード (Devices > Keyboard)

  • 事前準備
    sudo pacman -S gnome-desktop-4
  • 日本語キーボードの追加
    Keyboard layoutsのAdd layoutでjp Defaultを追加した後でjpを一番上にドラッグ

マウスカーソル (Cursor)

  • マウスカーソルのテーマをAdwaitaに変更
    Theme > CursorでAdwaitaを選択
    General > Enable HyprCousor をオフ

自動起動 (Autostart)

  • fcitx5を自動起動に追加
    fcitx5 -d

環境変数 (Env Variables)

  • fcitx関連の環境変数を追加
Name Value
XMODIFIERS @im=fcitx
QT_IM_MODULE fcitx
GTK_IM_MODULE fcitx

その他 (Miscellaneous > Startup)

  • Hyprland起動時の表示を無効化
    Disable Hypyland logo : on
    Disable splash rendering : on

キーバインド (Keybinds)

  • キーバインドの表示と変更(⭐:よく使うもの)
Mod + Key(s) Default Custom
Super Enter kitty
E⭐ dolphin thunar
T⭐ gnome-text-editor kitty
C gnome-calculator code
W⭐ firefox google-chrome-stable
Z⭐ noctalia settings
X noctalia control-center
Space⭐ launcher
. launcher /emo
L lock
ALT+C session menu
SHIFT+W wallpaper
V⭐ clipboard
A notification
Q⭐ close window
ALT+Space floating
D⭐ fullscreen (mode=1)
F fullscreen
J split
SHIFT + S⭐ special workspace
S⭐ scratchpad
M⭐ hyprmod
K⭐ launcher /scripts

Noctaliaの設定

Noctaliaの設定機能を使います。
Super+Zで起動します。

バー (Bar:default)

  • バーを右に配置
    General > position : right
  • ウィジェットの配置カスタマイズ
    Widget List で各ウィジェットの有無と位置を設定
    各ウィジェットの設定は各ギアボタンを押下
  • clockウィジェットの日付時刻書式変更
    {:%m %d %a %H %M}
  • volumeウィジェットのラベル非表示
    show label : off
  • networkウィジェットのラベル非表示
    show label : off

オンスクリーンディスプレイ (OSD > kinds)

  • かな漢字変換のOSD表示をオフ
    Keyboard Layout: off

位置情報 (Location)

  • 位置を自動検出
    Auto-Locate (IP) : on

表示言語 (Appearance > Interface > Language)

  • 表示言語は自動で検出されます。日本語にならない場合は日本語翻訳ファイルの有無を確認
    ls /usr/share/noctalia/assets/translations/ja.json
  • 日本語翻訳ファイルが無い場合は取得
    curl -O https://raw.githubusercontent.com/noctalia-dev/noctalia/refs/heads/main/assets/translations/ja.json
    sudo cp ja.json /usr/share/noctalia/assets/translations/

スクリプトランチャの追加

$HOME/bin/scripts/ディレクトリ下のスクリプトを実行するランチャです。
https://docs.noctalia.dev/noctalia/launcher/#dmenu-mode

  • 登録
    mkdir -p $HOME/bin/scripts
    ~/.config/noctalia/config.toml
    [shell.launcher.dmenu.entry.run_scripts]
    prefix = "scripts"
    glyph = "file-code"
    command = "find $HOME/bin/scripts -maxdepth 1 -type f -executable -exec basename {} \\;"
    exec = "kitty \"$HOME/bin/scripts/{selection}\""
  • キーバインド
    HyprModで以下をSuper+Kにバインドします。
    noctalia msg panel-toggle launcher /scripts

個別設定

必要に応じて機種に依存した調整をします。

  • HyprModでタッチパッドデバイスが認識されない場合
  • タッチスクリーン画面が90度/270度回転して表示される場合

HyprModでタッチパッドデバイスが認識されない場合

  1. デバイスの確認
    hyprctl devices
    例えば、miceにあるxxxx0000:05-0911:5288がHyprModでタッチパッドとして認識されないデバイス名
  2. Hyprlandを直接設定
    ~/.config/hypr/config/inputs.lua
    hl.config({
    input = {
    touchpad = {
    natural_scroll = true
    }
    }
    })

タッチスクリーン画面が90度/270度回転して表示される場合

  1. Limineの画面回転
    https://github.com/Limine-Bootloader/Limine/blob/v12.x/CONFIG.md

    /boot/limine.cont
    interface_rotation: 90
  2. 起動ロゴの回転

    /etc/default/limine
    ESP_PATH="/boot"
    KERNEL_CMDLINE[default]+="quiet nowatchdog splash rw rootflags=subvol=/@ root=UUID=5536baad-9e5d-4feb-b051-
    eeb2c6134eea video=DSI-1:panel_orientation=right_side_up"
    BOOT_ORDER="*, *lts, *fallback, Snapshots"
    sudo limine-mkinitcpio
  3. greetdテーマの回転
    https://github.com/noctalia-dev/noctalia-greeter/blob/main/docs/user/displays.md#user-content-rotate-an-output

    /var/lib/noctalia-greeter/greeter.toml
    [output]
    transform = "DSI-1:270"
    scales = "DSI-1:1"
  4. Hyprlandの回転

    ~/.config/hypr/config/monitors.lua
    hl.monitor({
    output = "DSI-1",
    mode = "preferred",
    position = "auto",
    scale = 1,
    transform = 3
    })
    ~/.config/hypr/config/inputs.lua
    hl.config({
    input = {
    touchdevice = {
    output = "DSI-1",
    transform = 3
    }
    }
    })