Haikuはオープンソース版BeOSを目指して開発されているデスクトップ向けOSです。
10秒程度で再起動できる、最低128MBのメモリで動作する、という非常に軽快な動作が特徴の1つです。 ディスプレイが取り付けられているロボットも世の中には少なくないので、Haikuのように軽快なデスクトップ向けOSはそれなりに需要がありそうです。
Googleが開発している組み込み向けOSのFuchsiaは、カーネルとしてZirconを採用しています。 ZirconはHaikuが採用しているNewOSと同じ人物が開発しています。 5年後にはAndroidはFuchsiaに置き換わると言われており、近い将来組み込み向けOSからLinuxカーネルが駆逐されてBeOSの流れを汲むZirconが天下を取るとか取らないとからしいです。つまりHaikuに対応するのも無駄ではありません。
VMWare上でHaiku OSを動作させる手順を説明します。
以下のページからHaiku R1/beta1のisoファイルを入手してください。
VMWareで新しい仮想マシンを作成します。
インストーラ ディスク イメージ ファイルにhaiku-release-anyboot.iso
を指定して次へ進みます。
ゲストOS、バージョンにはその他
を設定します。
仮想マシン名、場所は適当に設定して次へ進みます。
ディスク最大サイズは適当に設定して次へ進んでください。
インストール実行時にメモリ256MBでは厳しいため、ハードウェアのカスタマイズでメモリを増やします。 普通に起動する場合は256MBでもそれなりに軽快に動きます。
完了を押して仮想マシン作成を実行します。
以降はHaikuでの作業になります。
言語に日本語を選択してインストーラーを実行
ボタンを押してください。
続けるを押してください。
以降はパーティションの初期化を行います。
パーティションを設定
を押してください。
/dev/disk/ata/0/master/raw
を右クリックして、フォーマット
->Be File System
を選択します。
ボリューム名は適当な名前に変更して初期化を実行してください。
左上の枠をクリックして画面を消してください。
インストール先を先ほど設定したパーティションに設定して開始ボタンを押してください。
インストールが完了すると再起動を求められるので再起動ボタンを押して再起動してください。
以降の作業はコマンドラインで行います。
Haiku起動後、Applications
->Terminal
を実行してください。
Haiku Depotでもインストールはできますが、LuaRocksをインストールするとLua 5.3がついでにインストールされる上に、何故かlua.h等がインストールされないため、ソースコードからインストールします。
$ wget https://www.lua.org/ftp/lua-5.1.5.tar.gz $ tar xf lua-5.1.5.tar.gz $ cd lua-5.1.5 $ make bsd $ make install INSTALL_TOP=/haiku/lua
$ wget http://luarocks.github.io/luarocks/releases/luarocks-3.0.3.tar.gz $ tar xf luarocks-3.0.3.tar.gz $ cd luarocks-3.0.3 $ ./configure --prefix=/haiku/luarocks --with-lua=/haiku/lua $ make $ make install
以下のコマンドで表示されたコマンドを実行してモジュールのパスを設定する。
$ /haiku/luarocks/bin/luarocks path
LuaSocketはLuaRocksに登録されたパッケージがHaikuに対応していないため、以下のようにソースコードからインストールしてください。
$ /haiku/luarocks/bin/luarocks --force remove luasocket $ git clone https://github.com/renatomaia/luasocket $ cd luasocket $ /haiku/luarocks/bin/luarocks make NETWORK_DIR=/boot/system/
以下のようにluarocksでopenrtmをインストールしてください。
$ /haiku/luarocks/bin/luarocks install openrtm
サンプルは以下のように実行する。
まずOpenRTM Luaのソースコードを入手します。
$ git clone https://github.com/Nobu19800/RTM-Lua
OiL用のネームサーバーを起動します。
$ cd RTM-Lua/utils/rtm-naming $ /haiku/lua/bin/lua rtm-naming.lua --port=2809 --host=HaikuのIPアドレス
Windows以外のOSではエンドポイントが適切に設定されない場合があるので、corba.endpoints
オプションを指定する。
またlocalhostでネームサーバーに接続できないことがあるようなので、ネームサーバーのIPアドレスを指定する。
$ cd RTM-Lua/samples $ /haiku/lua/bin/lua ConfigSample.lua -o corba.endpoints:HaikuのIPアドレス -o corba.nameservers:HaikuのIPアドレス