OrangePi PC2を買ってみたのでArchLinuxのイメージをビルドしてみた
お久しぶりです。もやしきんぐです。
最近いろいろと噂になっていた中国深センのXunlong製のOrange Pi PC2を買ってみたので、それで使うArchLinuxのイメージファイルをビルドしてみました。
※発売直後はAndroidのイメージファイルしか無かったので自家製ビルドしましたが、現在はArchLinux,Ubuntu,Debianのイメージが公開されてるのでわざわざビルドしなくても大丈夫です
準備する
yaourt -S binfmt-qemu-static qemu-user-static sunxi-tools debootstrap systemctl restart systemd-binfmt.service
chrootするときにaarch64バイナリがx86_64マシンでは動かないので(当たり前ですが)、qemuでエミュしてやります。
ビルド環境はArchLinux x86_64。
ビルドする
git clone https://github.com/orangepi-xunlong/OrangePi_H5SDK.git
cd OrangePi_H5SDK
ArchLinuxではapt-get出来ないのでscripts/00_rootfs_build.sh
のapt-getな行をコメントアウトします。
#..........(省略) KR=debian-archive-keyring.gpg bsdtar --include ./usr/share/keyrings/$KR --strip-components 4 -xvf "$DATA" rm -f "$DATA" #↓ここコメントアウトする #apt-get -y install debootstrap qemu-user-static debootstrap --verbose --foreign --arch=arm64 --keyring=$TEMP/$KR $dist rootfs http://httpredir.debian.org/debian rm -f $KR #..........(省略)
sudo ./build.sh
ビルドの過程でchrootとmountを使うのでroot権限で実行します。
================================== Pls select build option ================================== 0. Build Release Image 1. Build Rootfs 2. Build Linux 3. Build Kernel only 4. Build Module only ================================== If update Image, pls use root ================================== 5. Install Image into SDcard 6. Update kernel Image 7. Update Module 8. Update Uboot a. Update SDK to Github b. Update SDK from Github
こんなのが出てくると思うのであとは画面に従っていけばイメージファイルが出来上がると思います。
完成したイメージファイルのArchLinuxは何故か起動時にコンソール(fbcon)が出ないので、適宜microSDをマウントしてchrootしてsshdを有効化するなり、シリアルコンソールから弄るなりしてみてください。
(カーネルコンフィグ弄ってみてもダメで原因がいまいち分かっていないので分かる方教えてください)
(追記)GDMとcinnamon動きました
本日の成果です(OrangePiPC2でcinnamon動いた) pic.twitter.com/mcr9pRWzXl
— もやしきんぐ (@myskng) 2016年11月29日
pacman -S gdm cinnamon pacman -S xf86-video-fbturbo
よく考えてみたらfbturbo入ってませんでした(そりゃ動かんわ)…. /(^o^)\
I2CとGPIOが動かない
何故か配布されているSDKのカーネルコンフィグだとI2CとGPIOが使えないので使えるようにしたカーネルコンフィグをgistに貼っておきました。
OrangePiPC2 defconfig · GitHub