Skip to content

Yet another OpenWrt firmware selector. With custom image builder support.

License

Notifications You must be signed in to change notification settings

castillofrancodamian/yet_another_firmware_selector

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

OpenWrt Firmware Selector

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.

image

Quick Run

  • 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.

Installation

Place the www/ folder somewhere web accessible. Then use the collect.py script to update www/config.json and 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 or SNAPSHOT.
  • {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 by misc/collect.py only!

Generate OpenWrt JSON

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.

Attended SysUpgrade (ASU)

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.

Translations

Visit weblate.org to contribute new translations or to improve them.

Similar Projects

About

Yet another OpenWrt firmware selector. With custom image builder support.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 46.3%
  • CSS 20.3%
  • Python 17.8%
  • HTML 15.6%