独自のテーマを作る¶
独自のテーマは~/.config/omaros/themesに追加できます。既存のものをベースとしてコピーし(/usr/share/omaros/themesを見てください)、思う存分調整してください。テーマがそのフォルダの中にある限り、テーマ選択メニューに含まれます。
調整しなければならない主要なファイルはcolors.tomlです。これが色のセットを定義し、それを使ってターミナル(Foot/Alacritty/Ghostty/Kitty)、btop、Chromium、Hyprland、Neovim、Helix、VSCode、Obsidian、そしてOmarOSシェル全体(トップバー、メニュー、通知、OSD、ロック画面)の設定が生成されます。
同梱のAetherアプリケーションを使って、色で遊んだり壁紙を探したりできる素敵なGUIインターフェースで新しいテーマを作成することもできます。Super + Alt + Spaceのアプリグリッドから起動するだけです。
インストール済みテーマが含むことができるもの¶
~/.config/omaros/themesに自分で書いたテーマには、好きなものを何でも含めることができます。あなたのマシンであり、あなたのファイルであり、OmarOSはすべてを適用します。
omaros theme installで他人のリポジトリからインストールしたテーマでは、色に関わるものはすべて保持され、マシン上でコードを実行する数少ないファイルが失われます。具体的には、すべての.luaファイル、ターミナル設定(alacritty.toml、foot.ini、ghostty.conf、kitty.conf)、およびvscode.jsonです。テーマのhyprland.luaは、ログイン時にコンポジターが実行するLuaであり、ターミナル設定はターミナルが起動するプログラムを指定し、vscode.jsonはインストールするVSCode拡張機能を指定します。他人のテーマをインストールすることで変わるべきはデスクトップの見た目であって、実行されるものであってはなりません。
それ以外のものはすべて、テーマ作者が書いたとおりにそのまま機能します。btop.theme、chromium.theme、helix.toml、icons.theme、shell.toml、壁紙、プレビューはすべて保持されます。削除されたものだけが、あなたのマシン上でcolors.tomlから再生成されます。
OmarOSは、テーマの中に独自のgitリポジトリがあるかどうかで両者を見分けます。それはomaros theme installがクローンしたときに残すものです。つまり、あなたが書いたテーマはあなたのものままであり、インターネットから取得したテーマは色だけのものになります。
ライトモード¶
ライトモードテーマを作る場合は、colors.tomlの先頭にmode = "light"を設定してください。そうすれば、すべてのアプリで自動的にライトモードとペアになります。(テーマのルートにlight.modeという空のファイルを置く古い方法も引き続き機能します。)
アイコンの色¶
ファイルマネージャーのアイコンをテーマに合わせたい場合は、使いたいアイコンセットの名前を書いたicons.themeというファイルを追加してください。デフォルトでは、Yaru Yaru-blue Yaru-dark Yaru-magenta Yaru-olive Yaru-prussiangreen Yaru-purple Yaru-red Yaru-sage Yaru-wartybrown Yaru-yellowが選択肢です。
ロック解除画像¶
unlock.pngとpreview-unlock.png画像を備えたテーマは、_スタイル > ロック画面_の下に表示されます。unlock.pngは透明なpngが望ましいです。プレビュー画像はomaros plymouth previewで作成できます。
OmarOSがカバーしないアプリのテーマ設定¶
そのリストにないアプリを使っている場合は、テンプレートを使ってOmarOSにテーマ設定方法を自分で教えることができます。生成される設定の名前の後に.tpl拡張子を付けた名前で、~/.config/omaros/themed/にファイルを配置し、{{ background }}、{{ foreground }}、{{ accent }}、{{ red }}、{{ color0 }}から{{ color15 }}、およびパレットの残りをプレースホルダーとして設定を書いてください。テーマを切り替えるたびに、ファイルはそのテーマの色で再生成されます。
そのフォルダには、コピー元になる完全にコメント付きのalacritty.toml.tpl.sampleがあります。使えるすべての変数に加え、#なしの色や10進RGBを求めるアプリ向けの_stripおよび_rgb修飾子が列挙されています。あなたのテンプレートはOmarOS自身のテンプレートより優先されるため、組み込みアプリのテーマ設定方法を上書きするためにもこれを使えます。
自分のテーマを配布する¶
テーマを配布して他人に使ってもらいたい場合は、GitHubのような公開gitサーバーに置く必要があります。そうすれば、そのURLを使ってOmarOSメニューの_インストール > スタイル > テーマ_からインストールできます。omaros-[themename]-themeという命名規則に従うことをお勧めします。インストール後、テーマ選択メニューではテーマが[themename]だけとして正しく表示されます。
その残りの[themename]がテーマのディレクトリ名になるため、OmarOSが安全に扱える名前でなければなりません。英字、数字、アンダースコアのいずれかで始まり、残りには英字、数字、.、_、+、-を含むことができます。大文字は自動的に小文字化されますが、それ以外のもの(スペース、引用符、英語以外の文字など)はディレクトリ名に変換されるのではなく、インストール時に拒否されます。そのため、omaros-tokyo-night-theme、omaros-flexoki_light-theme、omaros-c++-themeはすべて問題なくインストールできます。
リポジトリからインストールされた場合、テーマが含めるすべての.lua、ターミナル設定、vscode.jsonは削除されることを覚えておいてください。そのため、テーマをそれらを中心に構築しないでください。