:BuildFuguIta

河豚板の生成手順

リリースビルド

  • CVSをアップデート後、src/* xenocara/* 以下のフルビルドを行う

作業用ディレクトリの準備

  • /opt/fi/X.Y-1 を /opt/fi/X.Y にコピー (X.Yはリリース)
  • refroot-X.Y-1を削除
  • archived-images, workroot, sys以下をクリーンアップ
  • make open-media
    • syncrootをrefroot-X.Yに改名
    • fuguita-X.Y-1-arch.ffsimgをfuguita-X.Y-arch.ffsimgに改名
  • make open-fuguita
    • refroot-X.Y-1/. をfuguita/. に同期
    • fuguita/* を削除
    • fuguita/fillでvnデバイスをゼロフィルした後, fillを削除
  • make open-rdroot
    • FuguItaの CVSをアップデート
  • bootbin用にTOOLDIR/lib/special 以下をコンパイル
  • クランチバイナリbootbinを作成 - cd TOOLDIR/lib/bootbin && rm -f *; ../doit.bootbin
  • TOOLDIR/boottmp/bootbinを新しいbootbinで上書き
  • カーネルの生成
    • TOOLDIR/sys に /usr/src/sys をlndirする
    • カーネル構成ファイルRDROOT と RDROOT.MP を編集した後、カーネルをコンパイル
  • TOOLDIR/rdroot/devでsh ./MAKEDEV後、vnd4, vnd5を作成

TOOLDIR/fuguita/usr 以下の作業

  • usr/bin, usr/sbin以下のdandling symlinkを修正
  • usr/lib/lib*_p.a usr/share/relink/kernel.tgzを削除
  • usr/lib/libFOO.so.* が存在するなら usr/lib/libFOO.a を削除
  • 全ての共有バイナリをstrip
  • usr/fuguita 以下を作成
  • root/.profile と etc/skel/.profile のPATH定義に /usr/fuguita/{bin,sbin}を加える

TOOLDIRにchrootして行う作業

  • chroot fuguita /bin/ksh
  • pkg_add rsync rlwrap
  • ldconfig -m
  • MAKEDEV std

TOOLDIR/fuguita/etc 以下の作業

  • etc/hosts を作成し localhost を定義
  • etc/localtime を /usr/share/zoneinfo/UTC へのシンボリックリンクとする
  • etc/rc.firsttime の作成
  • etc/man.conf を修正し makewhatis 実行
  • etc/mtree/special を河豚板のディレクトリツリーに合うように修正
  • etc/sysctl.conf を修正
  • ASLR対応、KARL無効化の修正diff TOOLDIR/rdroot/boottmp/etc.rc.diffを作成

TOOLDIR/fuguita/var 以下の作業

  • var/db/host.ramdom を作成
  • stale fileをチェックし、発見したものを全て削除

X関連

  • mkfontdir, mkfontscale, fc-cacheの実行

最終作業

  • root/.ksh_historyは消去したか?
  • usr/fuguita/etc/mode0symlinks.cpio.gzを作成
  • boot cdboot cdbrを TOOLDIR/lib にコピー

リリースの作成

  • make contallを実行
  • 作成されたCD-RWの動作確認
  • 河豚板のCVSへのcommit
  • /root/bin/fibackup.shにてバックアップ作成

Reload  New Edit Freeze Diff Attach Copy Rename  Top Index Search Recent Backups  Help  RSS
Last-modified: 2019-05-24 (Fri) 11:56:18 (152d)