こんにちは、山田ハヤオです。
AlterLinuxの開発とその派生OSの開発方法をよく質問されるのでまとめてみました。
前提
まずLinuxの基礎知識が必要になります。ArchLiuxのインストールができれば大丈夫です。
また、ABS(Arch Build System)とPacmanの知識も必要になると思います。
前置き
主にAlter Linuxの開発を担当しているのですが、AlterLinuxがとうとうフレームワークのようなレベルになってしまいました。
…具体的に説明すると
「AlterLinuxがソースコードを改変することなく他のArch派生OSを簡単に開発できる枠組みになった」ということです。
以前までArchLinux派生のOSを開発しようと思った場合、2種類の方法がありました。
- Archisoを使用して開発をする
- ArchLinuxのイメージファイルをリマスタリングする
まずはこれらの開発方法のメリットとデメリットを説明しようと思います。
1.Archisoを使用して開発する
公式のスクリプト郡であるArchisoを使用した方法です。スクリプトからビルドを行います。
開発のレベルが高くシェルスクリプトに慣れていないとGUIの追加などの初期の段階で躓いてしまうと思います。
起動画面1Plymouthのことの追加やカーネルの変更などは、既存のコードを大幅に変更する必要があります。
その問題点は以下の記事でも説明されています。
archiso で Arch Linux ベースのライブイメージを作成するときにハマったこと | Qiita
Archisoをどうしても使いたい猛者は公式Wikiをご覧ください。
2.ArchLinuxのイメージファイルをリマスタリングする
2つめの方法はArchLinuxのイメージファイルをリマスタリングする手法です。
この方法を簡単に説明すると
「上記のarchisoによってビルドされたイメージファイルを無理やり解体し強制的に変更する」
という手法です。
プログラミングなどの知識は必要なくなりますが、ソースコードの管理は事実上不可能になり、カーネルの変更や起動画面の追加なども1番の方法と変わらず難しくなっています。
また、Archコミュニティも非推奨で緊急時の改造以外では使用しない方法です。
この方法は公式サイトで解説されています。
Alterisoを使用した開発方法
このように上で解説したように既存の開発方法ではかなりの手間がかかってしまいます。
ここで、AlterLinuxの出番!(怪しいテレビ通販風)
AlterLinuxをベースに開発すればこんなことは発生しないのです!(怪しいテレビ通ry)
Alter Linuxをベースに開発を行うメリットとレメリットを説明します。
メリット
- ビルドオプションで簡単に起動画面を追加できる
- 様々なカーネルを簡単に切り替えられる
- Squashfsの圧縮方式を簡単に切り替えられる
- ライブ環境のユーザ名やパスワードを簡単に切り替えられる
これらは全てArchisoをベースに機能強化を施したAlterisoで簡単に利用できます。
起動画面の追加はテーマを設定してビルド時に-b
オプションを追加するだけです。
カーネル切り替えはビルド時に-k hoge
でカーネルを指定できます。
圧縮方式は-c hoge
でzstdやgzip、lzmaなどを選択できます。
ユーザー名やパスワードは-u username -p password
で指定できます。
上記のこれらはビルド時にスクリプトに引数として付与することで設定を変更できます。(もちろん恒久的に変更することも可能)
また、英語版と日本語版をそれぞれ用意することも簡単です。
また、チャンネルと呼ばれるものにより簡単に様々な派生OSを作成することができます。
チャンネルはインストールするパッケージや含めるファイル、細かな設定をプロファイルとして管理し、簡単に切り替えられる機能です。
これには公式チャンネルであるxfceやplasmaに加えて、ハヤオが個人的に開発を行った非公式チャンネルを追加しエディションをいくらでも追加することが可能です。
デメリット
- 実績がない
まだAlterLinuxもbeta1しかリリースされておらず安定性の確証がありません。
終わりに
…と怪しいステマサイト風に様々なことを解説してみました。
この記事を見ただけでは怪しい商法のアフィサイトみたいですが、次の記事で実際に開発をする方法を解説したいと思います。
一足先に実際に開発する方法が知りたい場合、以下のAlterLinux公式ドキュメントを読むと良いかもしれません。
AlterLinuxをビルドする AlterLinuxのチャンネルについて
PR
FascodeNetworkではグッズも販売してます。購入していただけると活動の支援になります。
売上は全てサイトの維持費や開発費に割り当てられます。
コメント