We have moved to GitLab! Read this for more information.
We have recently moved our repositories to GitLab. You can find imagebakery
here: https://gitlab.com/revolutionpi/imagebakery
All repositories on GitHub will stay up-to-date by being synchronised from
GitLab.
We still maintain a presence on GitHub but our work happens over at GitLab. If you want to contribute to any of our projects we would prefer this contribution to happen on GitLab, but we also still accept contributions on GitHub if you prefer that.
NOTE: When creating a custom image, always use the most recent release tag (available at https://github.com/RevolutionPi/imagebakery/tags), as the master branch may contain code that is still in development.
Works with both Raspberry Pi OS desktop and lite images, supporting both 32-bit and 64-bit architectures.
Raspberry Pi OS - Bullseye 32bits
Raspberry Pi OS with desktop
curl -O https://downloads.raspberrypi.com/raspios_oldstable_armhf/images/raspios_oldstable_armhf-2024-03-12/2024-03-12-raspios-bullseye-armhf.img.xz
xz -d 2024-03-12-raspios-bullseye-armhf.img.xz
Raspberry Pi OS Lite
curl -O https://downloads.raspberrypi.com/raspios_oldstable_lite_armhf/images/raspios_oldstable_lite_armhf-2024-03-12/2024-03-12-raspios-bullseye-armhf-lite.img.xz
xz -d 2024-03-12-raspios-bullseye-armhf-lite.img.xz
Raspberry Pi OS - Bullseye 64bits
Raspberry Pi OS with desktop
curl -O https://downloads.raspberrypi.com/raspios_oldstable_arm64/images/raspios_oldstable_arm64-2024-03-12/2024-03-12-raspios-bullseye-arm64.img.xz
xz -d 2024-03-12-raspios-bullseye-arm64.img.xz
Raspberry Pi OS Lite
curl -O https://downloads.raspberrypi.com/raspios_oldstable_lite_arm64/images/raspios_oldstable_lite_arm64-2024-03-12/2024-03-12-raspios-bullseye-arm64-lite.img.xz
xz -d 2024-03-12-raspios-bullseye-arm64-lite.img.xz
The script requires root privileges, an armhf system (eg. Raspberry Pi or VM) and internet connectivity.
If no armhf system is available, a crossbuild can be done with the qemu user static tools:
sudo apt-get install qemu-user-static binfmt-support
NOTE: If you are using WSL2 on Windows you might experience issues as binfmt support is not enabled. This is done by systemd in a normal Debian installation. To resolve the issue you might need to run the following command:
sudo update-binfmts --enable
The issue is documented here: microsoft/WSL#7181
In order to build an image with only software that is necessary for basic operation (eg. Pictory and other RevPi tools), you have to call the customization script with the --minimize
option. This option is used to build our official lite image (based on the foundations lite image).
customize_image.sh --minimize <raspberrypi-image> [output-image]
For an image with all additional components (like NodeRed, logi-rts and Teamviewer), you must call the customization script without any options:
customize_image.sh <raspberrypi-image> [output-image]
If you would like to modify an existing image by only installing some packages (from repository or local file), you can use the script install_debs_into_image.sh
. To add a package you can either add the package name to the file debs-to-download or put the package file into the folder debs-to-install/
. After that you have to invoke the script as following:
install_debs_into_image.sh <revpi-image>
The script collect_sources.sh
can be used to collect the sources of the packages shipped with our official image. The official images can be found on our download page.
Note: This step requires root access and Internet connectivity.
./collect_sources.sh <revpi-image> /media/usbstick
# eg. ./collect_sources.sh 2022-07-28-revpi-buster-lite.img /media/usbstick