ドットファイルと設定管理 (Dotfiles)
Omarchy は主に ~/.config 内のドットファイル(Dotfiles)を通じて設定します。これらのファイルはユーザー自身が自由に変更するために用意されています。一方、/usr/share/omarchy にあるファイルは Omarchy システム自体に属しており、直接変更するべきではありません。/usr/share/omarchy 内の設定を変更したい場合は、~/.config 内の対応するファイルで設定値を上書きしてください。
主要な設定は Omarchy メニュー(Super + Space)から直接編集できます(Setup > Monitors、Setup > Keybindings、Setup > Input、Setup > Config > [ファイル] など)。この方法で編集した場合、設定変更後に再起動が必要なプロセスは、エディタを終了した後に自動的に再起動されます(デフォルトエディタは Neovim — 保存して終了は :wq です!Setup > Defaults > Editor で変更可能)。
~/.config 内の主要なファイルとその役割は以下の通りです:
| ファイル | 役割・用途 |
|---|---|
~/.config/hypr/hyprland.lua | Hyprland のメイン設定ファイル。Omarchy のデフォルト設定と以下のカスタムオーバーライドファイルを読み込みます。Hyprland 設定の詳細はこちら。 |
~/.config/hypr/bindings.lua | 独自のキーバインドおよびデフォルト設定の上書き。 |
~/.config/hypr/monitors.lua | モニター設定、解像度、配置位置の制御。 |
~/.config/hypr/input.lua | キーボード配列、マウス、トラックパッドの設定。 |
~/.config/hypr/looknfeel.lua | ウィンドウの隙間、枠線、アニメーション、外観の制御。 |
~/.config/hypr/autostart.lua | ログインセッション開始時に自動起動する追加プロセスの制御。 |
~/.config/omarchy/shell.json | Omarchy Shell(バーの位置・レイアウト・ウィジェット、スクリーンセーバー、ロック、アイドル時間)の制御。 |
~/.config/foot/foot.ini | ターミナルエミュレーターの設定(foot がデフォルト)。 |
~/.XCompose | クイック絵文字入力や名前・メールアドレスの自動補全の定義。変更後は omarchy-restart-xcompose を実行。 |
多数の設定をカスタマイズした場合は、これらのドットファイルをバックアップすることをお勧めします。GNU Stow はドットファイル管理に非常に便利です。
セッション開始時に独自アプリを自動起動する
ログイン時に毎回起動させたいプログラム(同期デーモン、チャットアプリ、自作スクリプトなど)がある場合は、~/.config/hypr/autostart.lua に追加します:
o.launch_on_start("my-service")
これによりセッションの一部として起動され、ログアウト時に正しくクリーンアップされます。
システムイベント時にスクリプトを実行する (Hooks)
Omarchy は特定のタイミングでフック(Hooks)を発火させ、自作スクリプトを実行できます。これらは ~/.config/omarchy/hooks/<event>.d/ 内にイベントごとにディレクトリとして配置され、その中の実行可能ファイルがイベント発生時に実行されます:
| イベント | 実行されるタイミング |
|---|---|
post-boot | デスクトップが起動完了した直後 |
post-update | omarchy update 実行中、パッケージとマイグレーションの完了後 |
pre-refresh-pacman | omarchy refresh pacman がパッケージ設定を再同期する前 |
theme-set | テーマ変更後(テーマ名が $1 に渡される) |
font-set | フォント変更後(フォント名が $1 に渡される) |
battery-low | バッテリー残量が低下した時(残量パーセントが $1 に渡される) |
各ディレクトリには標準的な書き方を示す .sample ファイルが配置されています(末尾の .sample を削除すると有効になります)。別の場所で書いたスクリプトを登録したい場合は、omarchy hook install post-boot ~/my-hook を実行すると、ファイルをコピーして実行権限を付与してくれます。
独自のメニュー項目を追加する
~/.config/omarchy/extensions/omarchy-menu.jsonc を編集することで、Omarchy メニュー(Super + Space)に独自の項目を追加できます。エントリはドット区切りの ID で階層配置されます(personal はルートメニューに、personal.notes はその内部に表示されます):
"personal": {"icon":"","label":"Personal"},
"personal.notes": {"icon":"","label":"Notes","action":"omarchy-launch-editor ~/notes"},
既存の ID を指定した場合は、新規追加ではなくその既存項目を上書きします。
独自の Shell 环境变量、関数、エイリアスの追加
Omarchy には使いやすいエイリアスや関数が多数同梱されていますが、独自のものを追加したい場合は ~/.bashrc に記述してください。このファイルはシステム更新で上書きされません。Omarchy のデフォルト設定を変更したい場合も、ここに安全に記述できます。
Omarchy 内部ファイルの変更について
これはあなたのコンピューターですので何でも自由に行えますが、/usr/share/omarchy 配下のファイルを直接編集することは推奨しません。それらは Omarchy パッケージに属しており、次回の更新時に上書きされてしまいます。.config/* フォルダ側で設定値を上書きするのが安全なアプローチです。
デフォルトのショートカットキーなども同様に変更できます。例えば Obsidian を Joplin に置き換えたい場合は、~/.config/hypr/bindings.lua を編集します:
hl.unbind("SUPER + SHIFT + O")
o.bind("SUPER + SHIFT + O", "Joplin", "joplin-desktop")
Omarchy 内部のソースコードを直接ハックしたい場合は、Update > Channel > Dev から dev チャンネルに切り替えてください。~/omarchy の Git リポジトリにリンクされ、自由にソースを改変できるようになります。
設定のリセット
設定が乱れてしまった場合は、Omarchy メニューの Update > Config から個別にデフォルトへ戻すか、ターミナルで omarchy reinstall configs を実行してすべてを初期状態にリセットできます。