Alpine LinuxのAPKBUILDに挑戦

BuildRootでBusyBox+uClibcのシステム構築にトライしていたところ、Alpine LinuxというBusyBoxとuClibcを利用したディストリビューションに出会った。これがなかなか面白い。パッケージ管理はapkというもので


$ sudo apk add hogehoge

という具合にpkg_addのような使い方をする。ところがパッケージの作成にはGentooのebuildをベースにしたようなabuildというのがあり、この組み合わせが非常に面白い。Gentooに慣れてるせいでdevelやdocなどと分割パッケージするのが億劫なのだがこの際頑張って日本語環境でも整えてやろうかと思った次第。基本的にebuildに似てるんだけどAlpineの標準シェルはbusybox ashなのでbash構文が使えない。abuildの関数も少なくコンソールで打つコマンドをベタ書きすればいいようで覚える事が少ないというデメリットなのかメリットなのか戸惑う状況でもある(笑)

何から手をつけていいのか解らないのでひとまずibus-mozcを入れてみようと思いibusから手をつけてみた。Gentooでいうhogehoge-0.0.1.ebuildにあたるファイルは全てAPKBUILDという同名ファイルに記述する。

http://wiki.alpinelinux.org/wiki/Creating_an_Alpine_package

チュートリアルを読みながら進めていくとカレントディレクトリに

  • hogehoge-0.0.1-r0.apk
  • hogehoge-dev-0.0.1-r0.apk
  • hogehoge-doc-0.0.1-r0.apk

という3つのファイルが出来ていた。さてどこまで出来る事やら。Alpine Linuxは凄くよく出来たディストリだけどやはりBuildRootでシステム全体を自分好みにビルドしたい。i686で最適化しaportsを持ってきてパッケージ管理が出来れば素晴らしい。と思ったけどRPMも捨てがたい。迷うなぁ。

コメント

このブログの人気の投稿

米 トランス脂肪酸使用規制へ

手の平で操作する空中マウス OZUPAD

BusyBox HTTPD で Drupal を動かそう

Android の RUU から rom.zip を取り出す

radiko.jp の再生、録音で rtmpdump が Segmentation fault

VirtualBoxのキーリピート現象