{"repo":"pikvm/pi-builder","free":true,"listed":false,"github":"https://github.com/pikvm/pi-builder","clone":"git clone https://github.com/pikvm/pi-builder.git","description":"Extensible tool to build Arch Linux ARM for Raspberry Pi on x86_64 host using Docker","language":"Makefile","stars":116,"topics":["docker","builder","build-tool","build-system","build-environment","raspberry-pi","raspberrypi","makefile","arm","binfmt-misc"],"license":"GPL-3.0","category":"deployment-docker-iac","readme_excerpt":"pi-builder pi-builder is an easy-to-use and extendable tool to build Arch Linux ARM for Raspberry Pi using Docker. ----- Challenge To build an OS, developers usually use a set of shell scripts, unique for each distribution. Those scripts create a chroot with necessary packages, edit configs, add users and so on. As a result, the system has the bare minimum to load, run and be further customised by the user. However, when you create a product based on a single-board machine (a small router, an IP-camera, a smart home controller, etc), you might want to log all changes you made to the fresh OS to be able to repeat them without forgetting an important step like setting up sysctl . A common solution is to create a large and horrifying shell script that executes all necessary actions either on the dev machine or the device itself. In case you use chroot and binfmt misc or need to save intermediate changes, script complexity grows exponentially and it quickly becomes impossible to support. ----- What is pi-builder? It's a new approach to target OS building on embedded devices. With pi-builder, you can build an image as if it was a simple Docker container rather than a real-world device OS. The build process is described using the default docker file syntax and it's executed in Docker on your dev machine. The resulting image can be exported to the SD card and loaded directly to Raspberry Pi. ----- Why pi-builder? Builds are documented and repeatable . A docker file is virtually read","default_branch":null,"files":null,"tree":[],"storefront":"/r/pikvm","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/pikvm/pi-builder/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}