最近、Arch LinuxのUIを含めて諸々の環境をOmarchy quattroに移行中。
自分の環境はMacだったり、SnapdragonのThinkPadだったり、さらにはマイナーなMINISFORUM MS-R1やWindows Dev Kit 2023だったりとかなり特殊ではあるので、あまり他所様の参考になるかは怪しいけれど、Omarchyを使う上で気がついたことをちらほらと。
OmarchyのAIエージェントに設定の変更をお願いすると何か色々と作っちゃうらしい
まだまだOmarchy quattroで採用されたQuickshellは使い始めたばかりなので自分でプラグインを書こうなんて気は更々なかったぼだけど、Omarchy quattroをインストールするとデフォルトでステータスバーに表示されている「Clock」の表示が英語表記だった。
これが気になって仕方なく、Omarchy quattroのAIエージェントを立ち上げて「Clockプラグインの表示を日本語にしたい」とお願いしたら、何と!OmarchyのClockプラグインは英語表示にしか対応していなかったらしく、AIエージェントはシステムのClockプラグインをユーザーディレクトリへとコピーして日本語版を作ってしまった!
で、勝手に日本語版のプラグインを生成してインストールしてくれた

Quickshellのプラグインは~/.config/omarchy/pluginsに格納される
この一連の作業はAIエージェントとしてOpenAIのCodexを選択した状態で行ってもらった(されちゃった)のだけど、これだけの作業でもAPIトークンを1.6Mも消費されてしまった。
我が家では他にも数台のOmarchy quattroが動作するホストがあるのだけど、そのそれぞれで同じようにAIエージェントに頼って設定を変えてもらうと、その度にトークンを消費され料金が発生してしまうので、貧乏な自分は他のホストには最初に設定を行ってもらったホストから出来上がったプラグインを手作業でコピーして済ませることにした。
- コピー元ホスト
先のAIエージェントからのメッセージによると、新しく生成されたプラグインは${HOME}/.config/omarchy/plugins/kazu.clockとして生成されたらしいので、これを他のホストへと配布した。
(AIのやることなどで、一貫性は期待できないので貴方がお願いすると別の解決手段をとるかもだけど…)scp -rpd ~/.config/omarchy/plugins/kazu.clock \ <リモートホスト>:.config/omarchy/plugins/
- コピー先ホスト
プラグインファイルをコピーした先では一旦インストールされているプラグインを再スキャンで認識させる必要があるらしいのでomarchy-shell shell rescanPluginsで再スキャンしてからomarchy plugin enable <プラグイン>でコピーしたプラグインを起動omarchy-shell shell rescanPlugins omarchy plugin enable kazu.clock
と、そんな訳でまずは「設定の方法をAIエージェントにお聞きしたら何と!新しくプラグインを作ってしまった」したお話でした。
この辺りがAIエージェントの活用に全振りしているというOmarchy quattroの「それらしさ」なのかもしれないですが、「そこはAIのやること」お願いする人や環境によって結果には揺らぎがあると思うんだけど、そんな時代の情報共有ってどうすればいいんでしょうね?
ちなみに今回の「Clockプラグインの表示を日本語に」をなんでAIエージェントに聞いたかといえば、Xで「なんか設定が上手くいかないんだよね」と呟いたら先人が「そんなのAIエージェントに聞けばやってくれるよ」と助言をくれたので試してみたら「まさかそこまで?」な感じの結果でした。
Quickshell (Omarchy-shell)のAgentプラグイン同期
Omarcy 3.xからOmarcy quattroへのアップグレードは当初は検証用にx86_64アーキテクチャとaarch64アーキテクチャそれぞれ1台づつにしておこうかな?と思っていたが、想像以上にQuattroの調子がいいので今では我が家のPCのほとんどがQuattroに入れ替わっている。
そして、これらのホストPCでは当然ながらAIエージェントが有効化されているのでQuickshellのステータスバーの「Agent」プラグインも便利に使っているが、あるときふと気がついた。
ステータスバーのAgentプラグインのアイコンをクリックするとデフォルトに設定されているAIエージェントのトークン使用量が表示されるのだけど、あっちのPC、こっちのPCと複数のPCを渡り歩いて作業をしていると他のPCでのトークン使用量がAgentプラグインの表示に反映されていない。
そこで早速AIエージェントに「Agentプラグインのトークン使用量を他のPCと同期したい」と言ったら、早速教えてくれた。
複数のホストでAgentプラグインのトークン使用量データを動機するにはQuickshell設定のomarchy.agentsにsyncDir <同期用データ格納ディレクトリパス>とsyncMode Onを追加して同期用データ格納ディレクトリのデータを他のホストとrsyncなどで同期すればいいらしい。
Quickshellの設定にsyncDirとsyncModeを追加
※これを同期が必要な全てのホストで実施
omarchy bar set omarchy.agents syncDir "$HOME/Sync/agent-usage"
omarchy bar set omarchy.agents syncMode On
rsyncで他のホストからトークン使用量のデータを取得
for sync_host in <ホスト名1> <ホスト名2> ... <ホスト名n>;do
rsync -a ${sync_host}:~/Sync/agent-usage/ ~/Sync/agent-usage
done
取得してきたデータを即時にAgentプラグインに反映したいなら以下を実行
omarchy agent usage-update --force
ちなみにomarchy bar setでQuickshellの設定ファイルに書き込まれた情報はこんな感じ
{
"id": "omarchy.agents",
"syncDir": "/home/kazu/Sync/agent-usage",
"syncMode": "On"
},
Touch Barの輝度調整プラグインを作ってみた
M1 MacBook ProやMacBook Pro (15-inch, 2019)など、Touch Barを搭載したMacBookをLinuxで使っていると、以前から「Touch Barの輝度も自分で自由に調整したい!」という欲求がありました。
そこで今回は、Omarchy quattroのAIエージェントの手習いも兼ねて、ClaudeにTouch Barの輝度調整用プラグインと関連スクリプトを書かせてみました。
GitHub: Omarchy-Mac-TouchBarBrightnessColtrol
作成したプラグインでは、Omarchy quattroのステータスバーからTouch Barの輝度をスライダーで調整できるほか、キーボードショートカットによる操作にも対応しています。
さらに、単純な手動調整だけでなく、次のような機能も実装してもらいました。
- Touch Barの輝度調整:ステータスバーのスライダーやキーボードショートカットから操作
- キーボードバックライトとの連動:キーボードのバックライト輝度に合わせてTouch Barの輝度を自動調整
- 環境光センサーとの連動:周囲の明るさに応じてTouch Barの輝度を自動調整(対応機種のみ)
- 自動消灯:画面の消灯時やMacBookの蓋を閉じた際にTouch Barも消灯
- OSD表示:輝度を変更するとOmarchy標準のOSDに調整内容を表示
Apple Silicon搭載MacBook(Asahi Linux)と、Intel T2チップ搭載MacBookの両方を想定した作りになっています。
インストール
Omarchy quattroのプラグイン機能からGitHubリポジトリを指定するだけで追加できます。
omarchy plugin add https://github.com/kazuhidet/Omarchy-Mac-TouchBarBrightnessColtrol --enable
その後、付属のセットアップスクリプトを実行すると、輝度調整コマンド、systemdユーザーサービス、キーボードショートカットなどを設定できます。
~/.config/omarchy/plugins/kazu.touchbar/bin/omarchy-brightness-touchbar-setup install --bindings
なお、Touch Barを制御するtiny-dfrの自動輝度調整と競合する場合があるため、その際はREADMEに記載した手順で設定を変更する必要があります。
AIエージェントに作らせてみて
今回は自分でコードを一から書くというよりも、Claudeに「こういう動作にしたい」と指示を出しながら、実機で動作を確認して修正を繰り返す形で進めてみました。
ハードウェア固有の制御に加えて、Omarchy quattroのQuickshellベースのUIやHyprlandのLua設定、systemdサービスとの連携まで含めて、AIエージェントにどこまで実装させられるかという実験でもあります。
こういう「自分では欲しいけれど、わざわざ一から開発するのは面倒」という小物ツールをAIエージェントに作らせるのは、なかなか面白い使い方なのではないかと思います。
ソースコードや詳しい使い方はGitHubに公開していますので、Touch Bar付きMacBookでOmarchy quattroを使っている方は試してみてください。
fprintdにGUIの指紋認証マネージャーを追加してみた(fprintd-with-manager)
Omarchy quattroを使っていて、もう少し使い勝手を良くしたいと思ったのが指紋認証の管理。
Linuxではfprintdを使えば指紋の登録や認証ができるのだけど、基本的にはfprintd-enrollやfprintd-verifyといったコマンドラインツールで操作することになる。
もちろん、それでも困るわけではないのだけど、せっかくOmarchy quattroでGUI環境を使っているのだから、指紋の登録や削除、認証テストくらいはGUIから手軽に操作したい。
そこで、以前から気になっていたMahmud Farooque氏のchipsailing-cs9711-fingerprint-linuxに含まれている指紋認証マネージャーをベースに、fprintdと統合したパッケージを作ってみた。
fprintd-with-manager
今回作成したのが、こちら。
GitHub: kazuhidet/fprintd-with-manager
fprintd-with-managerは、通常のfprintdにGUIの指紋認証マネージャーを追加したもの。
-
fprintd本来のD-Busサービス、コマンドラインツール、PAMモジュールを含む - GUIから指紋の登録・削除・認証確認を操作できる
- 特定の指紋認証デバイス専用のインストーラーへの依存を取り除き、
fprintdが対応するデバイスを検出できるように変更 - 選択した指で認証確認できるように改良
- Arch Linux向けの
PKGBUILDとしてパッケージ化 - パッケージの依存関係では通常の
fprintdとして扱えるよう、providesによる互換性を確保
つまり、これまでのfprintdの機能を残しつつ、GUIによる管理機能を追加したパッケージというわけ。
当然ながら、対応する指紋認証デバイスやドライバーが必要で、これをインストールしただけですべての指紋センサーが使えるようになるわけではない。
Omarchy quattroとの統合
今回の作業では、単にGUIアプリケーションを追加するだけでなく、Omarchy quattroで採用されているQuickshellとの連携についても扱っている。
リポジトリにはOmarchy-shell / Quickshell向けの実装についての説明も用意してあるので、Omarchy quattroで利用したい人はこちらも参照してほしい。
GitHubで公開
今回作成したパッケージと関連ファイルはGitHubで公開した。
PKGBUILDやGUIの管理ツールに加えて、日本語のREADMEも用意してある。
なお、GUIの元になったコードはMahmud Farooque氏のプロジェクトから利用・改変したもので、ライセンスやオリジナルの著作権表示も引き継いでいる。
この場を借りて、オリジナルの指紋認証マネージャーを公開してくれた開発者の方々に感謝。
それにしても、最初は単に「指紋の管理をGUIでやりたい」というだけだったのだけど、気がつけばfprintdのパッケージそのものに手を入れるところまで来てしまった。
Omarchy quattroを使い始めてから、こうした「ちょっとした不便」をAIエージェントと一緒に解決していく機会が増えた気がする。
問題は、ちょっとした改善のつもりが、いつの間にかそれなりの開発プロジェクトになってしまうことなんだけど……。
OMARCHY_ALLOW_DIRECT_PACMAN
Omarchy quattroからOmarchy標準のパッケージアップデート手段としてomarchy updateが用意されているのですが、その代わりと言うわけでもないだろうけど、omarchy update以外の手段、例えばpacmanでインストールされているパッケージをアップデートしようとすると下のスクリーンショットのエラーが出て実行が抑止されてしまいます。
自分はパッケージの操作にはyayを好んで使っていたのですがyay経由でも(まあ、yayはpacmanのラッパーなので当然ですが)これが出てしまったのでyay周りの設定にちょっと細工してチェックをバイパスして使っています。
細工といってもシェルのエイリアスで
alias yay='OMARCHY_ALLOW_DIRECT_PACMAN=1 yay'
を設定し、yayがsudoでpacmanを呼び出す際にOMARCHY_ALLOW_DIRECT_PACMANが渡るように
Defaults env_keep += "OMARCHY_ALLOW_DIRECT_PACMAN"
を追加しただけですが…




