Gluon Firmware Selector

Fortsetzung der Diskussion von Supportende »4/32-Geräte«:

Sicherlich möglich, müßte man dann an der Stelle Gehirnschmalz reinstecken. (Was im Zweifel an mir hängt und damit ETA 2038 hat.) Oder was bauen, daß nur the latest & greatest FW an eine neue Stelle verlinkt wird. Finde ich bei den drölfhundert Dateien je Release aber auch nervig.

Ob man ein Archiv aller Firmwares behalten will ist dann die nächste Frage, die man dann mal diskutieren müßte …

Der Plan ist durchaus, das als PR zurückzuspielen; ob das angenommen wird ist dann eine andere Frage. Andererseits sehe ich auch keinen Updatedruck, das Tool tut ja soweit.

Updaten “muss” man zum Beispiel wenn neue Geräte hinzugefügt wurden. Oder neulich gab es zum Beispiel ein neues Anleitungs Feature, oder so

Beim FFRN haben wir unter https://fw.gluon.ffrn.de/ die Images und packages:

root@tools-itter /var/www/fw.gluon # ls -lah
total 68K
drwxr-xr-x 17 root   root   4.0K Jan 17 02:31 .
drwxr-xr-x 10 root   root   4.0K Jul 20  2020 ..
drwxrwxr-x  4 100033 100033 4.0K Dec 12  2019 1.2.3-20191212
drwxrwxr-x  4 100033 100033 4.0K Dec 26  2019 1.2.3-20191226
drwxr-xr-x  4 100033 100033 4.0K Dec 29  2019 1.2.3-20191229
drwxr-xr-x  4 100033 100033 4.0K Jan  9  2020 1.2.4-20200109
drwxr-xr-x  4 100033 100033 4.0K Mar  2  2020 1.3.0-20200301
drwxr-xr-x  4 100033 100033 4.0K Mar  4  2020 1.3.0-20200303
drwxr-xr-x  4 100033 100033 4.0K Mar 13  2020 1.3.1-20200303
drwxr-xr-x  4 100033 100033 4.0K Mar 13  2020 1.3.1-20200313
drwxr-xr-x  4 100033 100033 4.0K Mar 29  2020 1.3.1-20200328
drwxr-xr-x  4 root   root   4.0K Jul 20  2020 1.3.2-20200720
drwxr-xr-x  4 100033 100033 4.0K Mar  1  2020 1.4.0-20200301
drwxr-xr-x  5 root   root   4.0K Sep  3 18:41 1.5.1-20200903
drwxr-xr-x  5 root   root   4.0K Dec 20 21:28 1.5.2-20201220
lrwxrwxrwx  1 root   root     21 Jan 10 20:53 beta -> 1.5.2-20201220/images
lrwxrwxrwx  1 root   root     21 Dec 20 21:28 experimental -> 1.5.2-20201220/images
drwxr-xr-x  4 100033 100033 4.0K Dec 11 23:15 nightlies
lrwxrwxrwx  1 100033 100033   24 Jan  3  2020 nightly -> nightlies/current/images
lrwxrwxrwx  1 root   root     21 Jan 17 02:31 stable -> 1.5.2-20201220/images

Und dann gibt es unter https://fw.ffrn.de/ den Firmware Selector:

root@tools-itter /var/www/fw # ls -lah
total 268K
drwxr-xr-x  7 root root 4.0K Nov 19 20:18 .
drwxr-xr-x 10 root root 4.0K Jul 20  2020 ..
drwxr-xr-x  2 root root 4.0K Jul  5  2020 .docker
-rw-r--r--  1 root root   76 Jul  5  2020 .dockerignore
drwxr-xr-x  8 root root 4.0K Nov 19 20:18 .git
-rw-r--r--  1 root root   25 Jul  5  2020 .gitignore
-rw-r--r--  1 root root  199 Jul  5  2020 Dockerfile
-rw-r--r--  1 root root  34K Jul  5  2020 LICENSE
-rw-r--r--  1 root root 2.5K Jul  5  2020 README.md
-rw-r--r--  1 root root 5.5K Jul  5  2020 app.css
-rw-r--r--  1 root root  41K Jul 20  2020 app.js
-rw-r--r--  1 root root 2.4K Jul  5  2020 config.js
-rw-r--r--  1 root root 2.7K Jul  5  2020 config_template.js
drwxr-xr-x  2 root root 4.0K Jul  5  2020 contrib
-rw-r--r--  1 root root  17K Nov 19 20:18 devices.js
drwxr-xr-x  2 root root 4.0K Jul 20  2020 images
-rw-r--r--  1 root root 6.5K Jul  5  2020 index.html
drwxr-xr-x  2 root root  12K Nov 19 20:18 pictures
-rw-r--r--  1 root root 6.5K Jul  5  2020 router.png
-rw-r--r--  1 root root  84K Jul  5  2020 screenshot.png
root@tools-itter /var/www/fw # ls -lah images/
total 8.0K
drwxr-xr-x 2 root root 4.0K Jul 20  2020 .
drwxr-xr-x 7 root root 4.0K Nov 19 20:18 ..
lrwxrwxrwx 1 root root   23 Jul  5  2020 beta -> /var/www/fw.gluon/beta/
lrwxrwxrwx 1 root root   31 Jul  5  2020 experimental -> /var/www/fw.gluon/experimental/
lrwxrwxrwx 1 root root   26 Jul 20  2020 nightly -> /var/www/fw.gluon/nightly/
lrwxrwxrwx 1 root root   25 Jul  5  2020 stable -> /var/www/fw.gluon/stable/

Und unter http://opkg.ffrn.de/modules/ gibt es dann noch die Packages:

root@tools-itter /var/www/opkg.mirror/modules # ls -la
total 152
drwxr-xr-x  9   100033   100033 4096 Dec 20 20:43 .
drwxr-xr-x  3   100033   100033 4096 Feb  7  2020 ..
lrwxrwxrwx  1 root     root       47 Nov 19 03:01 gluon-ffrn- -> ../../fw.gluon/nightlies//packages/gluon-ffrn-/
drwxr-xr-x 10 www-data www-data 4096 Dec 15  2019 gluon-ffrn-1.1.4-20180313
drwxr-xr-x 10 www-data www-data 4096 Dec 15  2019 gluon-ffrn-1.1.5-20180416
drwxr-xr-x 10 www-data www-data 4096 Dec 15  2019 gluon-ffrn-1.1.5-20180504
drwxr-xr-x 10 www-data www-data 4096 Dec 15  2019 gluon-ffrn-1.1.6-20180621
drwxr-xr-x 11 www-data www-data 4096 Dec 15  2019 gluon-ffrn-1.2.0-20190214
drwxr-xr-x 11 www-data www-data 4096 Dec 15  2019 gluon-ffrn-1.2.0-20190226
drwxr-xr-x 11 www-data www-data 4096 Jan  8  2020 gluon-ffrn-1.2.2-20190625
lrwxrwxrwx  1 www-data www-data   64 Dec 15  2019 gluon-ffrn-1.2.3-20191212 -> ../../fw.gluon/1.2.3-20191212/packages/gluon-ffrn-1.2.3-20191212
lrwxrwxrwx  1 www-data www-data   64 Dec 26  2019 gluon-ffrn-1.2.3-20191226 -> ../../fw.gluon/1.2.3-20191226/packages/gluon-ffrn-1.2.3-20191226
lrwxrwxrwx  1 www-data www-data   64 Dec 29  2019 gluon-ffrn-1.2.3-20191229 -> ../../fw.gluon/1.2.3-20191229/packages/gluon-ffrn-1.2.3-20191229
lrwxrwxrwx  1 www-data www-data   65 Mar  2  2020 gluon-ffrn-1.3.0-20200301 -> ../../fw.gluon/1.3.0-20200301/packages/gluon-ffrn-1.3.0-20200301/
lrwxrwxrwx  1 www-data www-data   65 Mar  4  2020 gluon-ffrn-1.3.0-20200303 -> ../../fw.gluon/1.3.0-20200303/packages/gluon-ffrn-1.3.0-20200303/
lrwxrwxrwx  1 www-data www-data   65 Mar  4  2020 gluon-ffrn-1.3.1-20200303 -> ../../fw.gluon/1.3.1-20200303/packages/gluon-ffrn-1.3.1-20200303/
lrwxrwxrwx  1 www-data www-data   65 Mar 13  2020 gluon-ffrn-1.3.1-20200313 -> ../../fw.gluon/1.3.1-20200313/packages/gluon-ffrn-1.3.1-20200313/
lrwxrwxrwx  1 www-data www-data   65 Mar 29  2020 gluon-ffrn-1.3.1-20200328 -> ../../fw.gluon/1.3.1-20200328/packages/gluon-ffrn-1.3.1-20200328/
lrwxrwxrwx  1 www-data www-data   64 Jul 20  2020 gluon-ffrn-1.3.2-20200720 -> ../../fw.gluon/1.3.2-20200720/packages/gluon-ffrn-1.3.2-20200720
lrwxrwxrwx  1 www-data www-data   74 Jan 24  2020 gluon-ffrn-1.3.x-20200124 -> ../../fw.gluon/nightlies/1.3.x-20200124/packages/gluon-ffrn-1.3.x-20200124
lrwxrwxrwx  1 www-data www-data   74 Jan 30  2020 gluon-ffrn-1.3.x-20200130 -> ../../fw.gluon/nightlies/1.3.x-20200130/packages/gluon-ffrn-1.3.x-20200130
lrwxrwxrwx  1 www-data www-data   75 Feb  5  2020 gluon-ffrn-1.3.x-20200205 -> ../../fw.gluon/nightlies/1.3.x-20200205/packages/gluon-ffrn-1.3.x-20200205/
lrwxrwxrwx  1 www-data www-data   75 Feb  6  2020 gluon-ffrn-1.3.x-20200206 -> ../../fw.gluon/nightlies/1.3.x-20200206/packages/gluon-ffrn-1.3.x-20200206/
lrwxrwxrwx  1 www-data www-data   75 Feb 13  2020 gluon-ffrn-1.3.x-20200213 -> ../../fw.gluon/nightlies/1.3.x-20200213/packages/gluon-ffrn-1.3.x-20200213/
lrwxrwxrwx  1 www-data www-data   75 Feb 14  2020 gluon-ffrn-1.3.x-20200214 -> ../../fw.gluon/nightlies/1.3.x-20200214/packages/gluon-ffrn-1.3.x-20200214/
lrwxrwxrwx  1 www-data www-data   65 Mar  1  2020 gluon-ffrn-1.4.0-20200301 -> ../../fw.gluon/1.4.0-20200301/packages/gluon-ffrn-1.4.0-20200301/
lrwxrwxrwx  1 www-data www-data   75 Feb 19  2020 gluon-ffrn-1.4.x-20200218 -> ../../fw.gluon/nightlies/1.4.x-20200218/packages/gluon-ffrn-1.4.x-20200218/
lrwxrwxrwx  1 www-data www-data   75 Feb 27  2020 gluon-ffrn-1.4.x-20200227 -> ../../fw.gluon/nightlies/1.4.x-20200227/packages/gluon-ffrn-1.4.x-20200227/
lrwxrwxrwx  1 www-data www-data   75 Feb 28  2020 gluon-ffrn-1.4.x-20200228 -> ../../fw.gluon/nightlies/1.4.x-20200228/packages/gluon-ffrn-1.4.x-20200228/
lrwxrwxrwx  1 www-data www-data   75 Mar  7  2020 gluon-ffrn-1.4.x-20200307 -> ../../fw.gluon/nightlies/1.4.x-20200307/packages/gluon-ffrn-1.4.x-20200307/
lrwxrwxrwx  1 www-data www-data   75 May  3  2020 gluon-ffrn-1.4.x-20200503 -> ../../fw.gluon/nightlies/1.4.x-20200503/packages/gluon-ffrn-1.4.x-20200503/
lrwxrwxrwx  1 www-data www-data   75 Jun  6  2020 gluon-ffrn-1.4.x-20200606 -> ../../fw.gluon/nightlies/1.4.x-20200606/packages/gluon-ffrn-1.4.x-20200606/
lrwxrwxrwx  1 root     root       65 Sep  3 18:48 gluon-ffrn-1.5.1-20200903 -> ../../fw.gluon/1.5.1-20200903/packages/gluon-ffrn-1.5.1-20200903/
lrwxrwxrwx  1 root     root       65 Dec 20 20:43 gluon-ffrn-1.5.2-20201220 -> ../../fw.gluon/1.5.2-20201220/packages/gluon-ffrn-1.5.2-20201220/
lrwxrwxrwx  1 root     root       74 Jul 20  2020 gluon-ffrn-1.5.x-20200720 -> ../../fw.gluon/nightlies/1.5.x-20200720/packages/gluon-ffrn-1.5.x-20200720
lrwxrwxrwx  1 root     root       75 Sep  3 11:57 gluon-ffrn-1.5.x-20200903 -> ../../fw.gluon/nightlies/1.5.x-20200903/packages/gluon-ffrn-1.5.x-20200903/
lrwxrwxrwx  1 root     root       75 Nov  7 11:08 gluon-ffrn-1.5.x-20201107 -> ../../fw.gluon/nightlies/1.5.x-20201107/packages/gluon-ffrn-1.5.x-20201107/
lrwxrwxrwx  1 root     root       75 Nov 19 03:06 gluon-ffrn-1.5.x-20201118 -> ../../fw.gluon/nightlies/1.5.x-20201118/packages/gluon-ffrn-1.5.x-20201118/
lrwxrwxrwx  1 root     root       75 Dec 11 23:15 gluon-ffrn-1.5.x-20201211 -> ../../fw.gluon/nightlies/1.5.x-20201211/packages/gluon-ffrn-1.5.x-20201211/

Wird halt viel auf Symlinks gesetzt, die Erstellung von denen kommt halt in das Firmware Upload Skript und gut ist.

Da wir nur ~1 Major FW/Jahr raustun, dürfte die Gerätezahl (die ja schon Gluon v2020 abdecken dürfte) bis 2021 reichen :wink: Und das Anleitungsfeature war der Trigger, das Frontend zu installieren — denn ich zumindest möchte ganz ganz ganz viel AVM im Netz haben …

Und es sind so über den Selektor keine historischen Firmwares zugreifbar. Das hätte ich schon gerne, wenn es diese Option doch gibt. Aus Performancegründen wird fw.4830.org ggf. direkt auf den Server, der das Verzeichnis per NFS bereitstellt, umziehen müssen, denn das JavaScript liest das Verzeichnis ja immer neu ein …