Environment Vagrant untuk Kompilasi Image Raspberry Pi
Vagrant adalah sebuah platform untuk membuat sebuah environment Virtual Machine dengan mudah. Provisioning dapat dilakukan menggunakan VirtualBox, VMware, AWS, dan lain lain. Repositori ini membahas penggunaan Vagrant dan VirtualBox untuk membuat environment yang dipakai untuk mengompilasi image Raspberry Pi.
Pi-gen adalah sebuah kumpulan BASH script yang digunakan untuk membuat image Raspberry Pi. Repositori ini dapat diakses dari https://github.com/RPi-Distro/pi-gen
. Pi-gen ini dapat dijalankan di Raspbian Buster, atau dengan environment Debian Buster i386 yang dijalankan via Virtual Machine.
Pi-gen menggunakan debootstrap
untuk membuat base file untuk debian. Setelah itu, dilakukan konfigurasi APT untuk mendapatkan software-software pendukung dari repositori Debian maupun Raspbian. Repositori Raspbian Buster dan Debian Buster dapat menggunakan mirror seperti dari http://mirror.labkom.id/raspbian dan http://mirror.labkom.id/debian. Penggunaan repositori ini dibandingkan dengan repositori Raspbian dapat memotong waktu sekitar 8 menit dalam proses pengunduhan package dari APT pada stage debootstrap
atau Stage0.
Setelah base OS dari Debian sudah lengkap di Stage0, proses selanjutnya di Stage1, minimal system dari Raspbian OS, instalasi tetap menggunakan APT untuk melengkapi kebutuhan agar Raspbian OS image sudah dapat di-boot pada Raspberry Pi.
Stage2 adalah stage dimana Raspbian OS Lite dibuat, beberapa software pendukung untuk instalasi Headless Raspberry Pi ada di stage ini. Package seperti openssh-server
dan berbagai tool-tool dasar Raspbian dilakukan di sini.
Untuk membuat custom image Headless Raspberry Pi dapat membuat Stage3 yang menginstal segala dependency dari sistem, yakni dependensi APT (untuk software yang tersedia di APT) dan dependensi Python PIP (untuk software berbasis Python).