A simple OpenWrt firmware selector using autocompletion. Uses plain HTML/CSS/JavaScript. Checkout the Demo.
This is a Fork/Mirror of the official OpenWrt version, but without OpenWrt specific changes like the feedback link and continuous integration scripts.
- Download the sources and change the working directory
- Start webserver (e.g.
python3 -m http.server
) - Go to
http://localhost:8000/www/
in your web browser
Configure with config.js.
Place the www/
folder somewhere web accessible. Then use the collect.py
script to update www/config.json
and to write all device data into www/data/
:
./misc/collect.py https://downloads.openwrt.org www/
or for local accessible OpenWrt builds:
./misc/collect.py ~/openwrt/bin www/
This should do it!
Settings image_url
and info_url
can also be passed to misc/collect.py
to be included in the version specific overview.json
files instead of config.json
:
--image-url
: Download link template for the image files.--info-url
: Link template that points to additional information.--version-pattern
: Only handle release versions that match a regular expression.
Variables:
{version}
: Version in the profiles.json files. E.g.19.07.4
orSNAPSHOT
.{id}
: Device identifier. E.g.tplink_archer-c7-v2
{target}
: Main- and sub target, E.g.ath79/generic
.{base}
: Distinct path to the targets directory. E.g.releases/18.06.8/targets/
Handled bymisc/collect.py
only!
The collect.py script merges data from profile.json
files generated by OpenWrt. To enable generation, go to the build settings (make menuconfig
):
Global build settings ---> [*] Create JSON info files per build image
.
If the option is not available (OpenWrt 18.06 or 19.07.3), apply commit openwrt/openwrt@881ed09.
ASU is a build server that builds OpenWrt images with a given list of packages on request. The firmware-selector can be used as an interface to send these requests and to download the images when finished.
The Firmware Selector allows to define a script to be placed in the /etc/uci-defaults/
folder of the OpenWrt image. These scripts are executed once on the first reboot and then deleted. See the OpenWrt documentation on this topic.
Visit weblate.org to contribute new translations or to improve them.
- Gluon Firmware Selector: For Gluon images, now with pictures.
- Freifunk Hennef Firmware Downloader: Similar to the project above, but PHP based.
- LibreMesh Chef: Allows to select configurations.
- GSoC Firmware Selector: Result of the GSoC
- FFB Firmware Selector: Build for Freifunk Bielefeld