NOTE:
- This repository helps generate OpenWrt firmware for any supported devices. It was first made to generate firmwares for my first OpenWrt router: Xiaomi Router Gen 3G.
- This repository is just for building the firmware. Any OpenWrt related issue should be posted to OpenWrt's forum.
- Read your device's instructions on OpenWrt wiki carefully and use my generated firmwares with your own risks.
The OpenWRT project is perfect for powerful devices (like my old-but-great Xiaomi R3G). However, the official release/snapshot builds are very minimal versions without the WebUI manager (LUCI) and some common useful packages like SAMBA, DLNA, OpenVPN, torrent,... To be updated to the latest build, it takes time to do some of the most boring tasks: flash the update, install my needed components. That's the reason for me to build this repository and make all thing be automated
Read this if you are interesting:
- The cheap but very powerful device: Xiaomi Router Gen 3G
- Minimal OpenWRT Firmware download page
- Padavan is providing support for this device also, take a look at prometheus if you are looking for another kind of firmware.
... Comming soon
- N/A
There are some notes if you'd like to fork my build:
- You must CircleCI's context secrets named
DockerHub
which containsDOCKERHUB_USERNAME
andDOCKERHUB_PASS
to be able to pull the builder image due to Docker hub rate limits. - Add your preferred OpenWrt version and device's configs to workflow matrix in
.circleci/config.yml
- Find your device on OpenWrt table of hardware. If it is supported, most of its required information below can be found in the firmware download URL. Make your device profile folder with rules:
- Folder name is your device's PROFILE
arch_soc.txt
contains your device architecture and System on Chip modelmodules.txt
contains list modules you want to pack into this custom build- For example, download URL of my device looks like .../openwrt-21.02.2-ramips-mt7621-xiaomi_mi-router-3g-squashfs-rootfs0.bin, so its profile is
xiaomi_mi-router-3g
, arch isramips
and soc ismt7621
- Determine your needed arguments for your build or use command
source ./findReleaseInfo.sh xiaomi_mi-router-3g release
- Run the build image with command
# Create output folder
mkdir bin
chmod 777 bin
# Run the build
docker run -it --rm \
-e SOURCE_DATE_EPOCH=$SOURCE_DATE_EPOCH \
-v $(pwd):/builder/custom_scripts \
-v $(pwd)/bin:/builder/bin openwrt/imagebuilder:${RELEASE_ARCH_SOC}-${RELEASE_VER} \
/builder/custom_scripts/build.sh xiaomi_mi-router-3g
- You might need to run
chmod -R 777 .
for your source directory if facing any permission errors