- Manage your own list(s) of OpenWRT packages
- Optionally resize default partitions to unlock extra filesystem storage
- Optionally convert OpenWRT images into into QEMU, Virtualbox, HyperV or VMware images
- Automated installation of all Linux dependencies required to build OpenWRT
-
Enter desired OpenWRT release version (hit enter for latest snapshot)
-
Modify partition sizes or keep OpenWRT defaults? [y/n] (Y = follow the prompts)
-
Enter an image filename tag (to uniquely identify your new image)
-
Optional: Convert OWRT images to VM disk? [y/n] (Y = select a VM format: qcow2, qed, vdi, vhdx or vmdk)
-
Optional: Permanently bake custom OpenWRT config files into the new OWRT image
-
When the script completes, new images are located at
$(pwd)/openwrt_build_output/firmware_images
, and corresponding VM images at$(pwd)openwrt_build_output/vm
.
Any recent x86 Debian-flavored OS with the sudo package installed. All other image building dependencies are automatically installed on first run. Windows subsystem for Linux users see here: https://openwrt.org/docs/guide-developer/toolchain/wsl
-
📥 Download the image builder script and make it executable:
chmod +x x86-imagebuilder.sh
-
🛠️ Customize your package recipie in the
CUSTOM_PACKAGES
section. The included list of packages are examples and can be edited. If you have issues building, check the build output for package conflicts. -
▶️ Run the script without sudo (it will prompt for sudo) and follow the prompts:./x86-imagebuilder.sh
-
VMware ESXi users see here for extra required steps.
It is possible to add a third persistent EXT4 data partition that, unike resized partitions, won't be wiped by sysupgrade.
- After image flash or vm launch, create a new EXT4 partition and add its new PART-UUID details into the /etc/fstab file.
- Next, re-run the script, this time adding the new fstab file to
$(pwd)/openwrt_inject_files
when prompted. - Reflash your system with this new build. The fstab file containing the EXT4 partition details is now baked into the build and will be persistent even after a reset.
- Unless extreme expert, parition resize should only be used with x86 builds. Resize of firmware paritions intended for router NAND flash memory will 99.999% brick your device. Do this at your own risk.
- Images with modified partition sizes are not compatible with sysupgrade. Instead, use this script to create ugraded images with your current config and the same resized settings as before, then reflash.