Skip to content

openyellowos/oYo-Linux-Builder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

183 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

oYo-Linux-Builder

Custom Linux ISO build tool

oYo Linux Builder は、open.Yellow.os 開発チーム が提供する
「簡単にオリジナル Linux ISO を自動ビルドするツール」です。


🌟 特徴

  • フレーバー対応: GNOME/Xfce/KDE など複数のデスクトップ環境を切り替え
  • 多言語対応: 日本語(ja)/英語(en)など、言語リソースを選択
  • ブランド対応: 壁紙・アイコン・ブートアニメーションを --brand で差し替え
  • Hook 機構: hooks/post-install.d/*.sh で任意コマンドを自動実行
  • テンプレート対応: Jinja2+YAML で os-releasebranding.desc を自動生成

⚙️ 前提要件

  • Debian系Linux(Debian GNU/Linux 12 Bookworm 以降、open.Yellow.os Freesia 以降推奨)
  • Python 3.8+
  • root権限 または sudo
  • 以下パッケージ(ホスト側)
    mmdebstrap rsync squashfs-tools grub-pc-bin grub-efi-amd64-bin grub-efi-amd64-signed shim-signed xorriso dosfstools mtools python3-venv python3-pip git debian-archive-keyring
    

🚀 クイックスタート

  1. リポジトリをクローン

    git clone https://github.com/openyellowos/oYo-Linux-Builder.git
    cd oYo-Linux-Builder
  2. 仮想環境を作成・有効化

    python3 -m venv .venv
    source .venv/bin/activate
  3. 依存ライブラリをインストール

    pip install -r requirements.txt
  4. 初期セットアップ

    ./bin/oyo_builder.py init
  5. ISO のビルド例(GNOME/日本語/oYo ブランド)

    ./bin/oyo_builder.py      --flavor gnome      --lang ja      --brand oYo      build
  6. QEMU でテスト起動

BIOS モード

qemu-system-x86_64   -enable-kvm   -m 2048   -machine type=pc,accel=kvm   -cdrom *.iso   -boot menu=on   -vga qxl   -serial mon:stdio

UEFI モード

mkdir -p "$HOME/ovmf"
cp /usr/share/OVMF/OVMF_VARS.fd "$HOME/ovmf/OVMF_VARS.fd"

qemu-system-x86_64   -enable-kvm   -m 2048   -machine q35,accel=kvm   -drive if=pflash,format=raw,readonly=on,file=/usr/share/OVMF/OVMF_CODE.fd   -drive if=pflash,format=raw,file="$HOME/ovmf/OVMF_VARS.fd"   -cdrom *.iso   -boot menu=on   -vga qxl   -serial mon:stdio

🛠 主なコマンド・オプション

  • init
    作業ディレクトリなどの初期セットアップを行います。
  • build
    ISOイメージをビルドします。--flavor --lang --brand などのオプションでカスタマイズ可。
  • clean
    一時作業ディレクトリを完全削除し、作業環境をリセットします。
  • --flavor
    使用するデスクトップ環境を指定(例: gnome, xfce, kde)。
  • --lang
    言語リソースを指定(例: ja, en)。
  • --brand
    ブランド(テーマ・壁紙セットなど)を指定。
  • --tmpfs
    作業ディレクトリをRAM上(tmpfs)にマウントし、ビルドを高速化します(十分なメモリがある場合推奨)。
  • --help
    コマンドラインヘルプを表示します。

📦 ビルド成果物

  • 完成したISOイメージはプロジェクトルート直下os-バージョン-言語.iso というファイル名で出力されます。
    例:
    openyellowos-1.0-ja.iso
    
  • work/iso ディレクトリにも一時的な構築用ファイルが保存されます。

📚 詳細ドキュメント


📄 ライセンス

  • MIT License
  • Copyright (c) 2025 open.Yellow.os Development Team
  • Copyright (c) 2025 Toshio

詳細は LICENSE をご覧ください。


🤝 コントリビュート

フォーク&プルリク大歓迎!
詳細は CONTRIBUTING.md をご参照ください。

About

Custom Linux ISO build tool

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors