Compare commits

...

3423 Commits

Author SHA1 Message Date
716daff077
testing something
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
2023-05-20 17:34:46 +02:00
f8806d672c
apt update
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
2023-05-20 12:47:24 +02:00
1e187f21ef
installed file dependency
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
2023-05-20 12:45:43 +02:00
d5f9f5dd46
added ci pipeline
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
2023-05-20 12:39:42 +02:00
David Bauer
979dd354fa
Merge pull request #2901 from maurerle/patch-3
gluon-info: Add domain to gluon-info
2023-05-10 13:30:06 +02:00
Florian Maurer
f0246b65e2
gluon-info: Add current domain to gluon-info
- provides easier information of the currently active domain
- tested by patching a running node
2023-05-10 10:02:27 +02:00
David Bauer
079f449d9d
Merge pull request #2794 from Djfe/add_cudy_wr1300v1
ramips: add support for Cudy WR1300 v1
2023-05-10 01:24:29 +02:00
Jan-Niklas Burfeind
b840afe95f
Merge pull request #2898 from blocktrron/gluon-2022.1.4-master
[master] [forward-port] docs: Add v2022.1.4 release notes
2023-05-10 00:02:50 +02:00
Jan-Niklas Burfeind
02878ee083
Merge pull request #2899 from freifunk-gluon/readthedocs-yaml
readthedocs: specify build-container
2023-05-10 00:01:54 +02:00
David Bauer
44a891807c readthedocs: specify build-container
Docs builds currently fail with

Could not import extension sphinx.builders.linkcheck
(exception: urllib3 v2.0 only supports OpenSSL 1.1.1+,
currently the 'ssl' module is compiled with OpenSSL
1.0.2n  7 Dec 2017.
See: https://github.com/urllib3/urllib3/issues/2168)

The Gluon issuetracker suggests specifying the build-container.

Link: https://github.com/readthedocs/readthedocs.org/issues/10290#issuecomment-1535120995

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-05-09 23:46:49 +02:00
David Bauer
6771803de3 docs: Add v2022.1.4 release notes
(cherry picked from commit 205e66c743)
2023-05-09 21:57:03 +02:00
David Bauer
cc452904b5
Merge pull request #2897 from herbetom/master-updates
modules: update to latest HEAD
2023-05-09 09:40:26 +02:00
Tom Herbers
677d56aea6
modules: update packages
55eed1761 mwan3: bump PKG_VERSION to 2.11.7
675bd01a1 mwan3: reset score to up+down on connected
3c9ad7df7 mwan3: refactoring mwan3track action handling
ce66eecb6  banip: release 0.8.5-2
d63f0e859  banip: release 0.8.5-1
7af20d484 cloudflared: Update to 2023.5.0
20d99ef7b  banip: update 0.8.4-5
8d9c17e91 zoneinfo: adjust to current timezone data file structure
2e667a1f8 sqlite3: Update to 3.41.2
726e94527  banip: update 0.8.4-4
bb8efb657  banip: update 0.8.4-3
02b6973b0 mwan3: bump PKG_VERSION to 2.11.6
3b80d11e2 mwan3: fix addition of routes to mwan3_connected ipset
aa68fc4cb shadowsocks-libev: ss-rules: Add 'auto-merge' flag to avoid conflicts
7398724ec mwan3: bump PKG_VERSION to 2.11.5
4addfcf15 mwan3: fix addition of iptables rules for mwan3 sticky rules
5f26bba47 slang2: Update to 2.3.3, refresh patches
3492a48b0 pbr: update to 1.1.1-1
1086d4f74 librespeed-go: update file permissions for ujail
216261ea4 banip: update 0.8.4-2
c68388fb6 banip: release 0.8.4-1
5b7e01ad5 simple-adblock: implement curl_additional_param compressed_cache_dir
2023-05-08 14:17:06 +02:00
Tom Herbers
70da43fa35
modules: update openwrt
e500494771 wireless-regdb: update to 2023.05.03
2677220d81 kernel: bump 5.10 to 5.10.179
5cc1bd5b21 kernel: bump 5.10 to 5.10.178
dcdd8e9dee kernel: bump 5.10 to 5.10.177
2023-05-08 14:17:05 +02:00
Jan-Niklas Burfeind
ed36f1456f
Merge pull request #2889 from Djfe/fixup
docs: fix supported_devices (missing newline)
2023-05-05 23:31:58 +02:00
Felix Baumann
41b2f002f3 docs: fix supported_devices (missing newline)
I made the mistake of never looking at the rendered version
fixes 95e5d382ec
backport like 8b2cc206d3 is optional
2023-05-05 23:22:18 +02:00
David Bauer
22781dac06
Merge pull request #2887 from Djfe/add_cudy_x6_v2
ramips: add support for Cudy X6 v2
2023-05-05 22:03:16 +02:00
Felix Baumann
5328f17b09 ramips: add support for Cudy X6 v2 2023-05-05 15:45:20 +02:00
David Bauer
eca926abc7
Merge pull request #2793 from Djfe/add_cudy_x6_v1
ramips: add support for Cudy X6 v1
2023-05-05 14:53:56 +02:00
Felix Baumann
76ad25f826 ramips: add support for Cudy X6 v1 2023-05-04 20:43:53 +02:00
David Bauer
91b26c65aa
Merge pull request #2886 from Djfe/master
modules: update openwrt
2023-05-04 19:54:49 +02:00
FFAC
2f463c0353 modules: update openwrt
5f583d31c7 ramips: mt7621: add support for Cudy X6 v2
2023-05-03 22:20:07 +00:00
David Bauer
8b5a282c4a
Merge pull request #2552 from AiyionPrime/ath79-migrate-hiveap-121
ath79-nand: (re)add hiveap-121
2023-05-03 01:01:15 +02:00
David Bauer
4018db1823
Merge pull request #2882 from Djfe/update-modules
modules: update openwrt
2023-05-02 01:32:23 +02:00
Felix Baumann
899dd916d0 modules: update openwrt
749cc6ffc4 ramips: Cudy X6 fixes / improvements
2023-04-30 22:03:51 +02:00
Felix Baumann
e06e555ac2 ramips: add new lines to separate vendors consistently 2023-04-30 20:51:56 +02:00
Felix Baumann
3e3a7987b6 ramips: add support for Cudy WR1300 v1 2023-04-30 20:51:56 +02:00
David Bauer
918e3ce784
Merge pull request #2880 from herbetom/master-updates
modules: update to latest HEAD
2023-04-30 14:09:26 +02:00
Tom Herbers
f7298d70f3
modules: update packages
7d7663dc1 newt: Update to 0.52.23
f64aaa69a dnsproxy: Update to 0.49.1
5d3fc9c5b dnsproxy: Update to 0.49.0
bd2cebf65 xray-core: Update to 1.8.1
f0128ce98 v2ray-core: Update to 5.4.1
4e7f27b21 obfs4proxy: Update to 0.0.14
891299822 ruby: update to 3.0.6
93bd5fad3 htop: update to 3.2.2
698132112 php8: update to 8.1.18
ec321e666 curl: update to 8.0.1
2023-04-28 00:50:18 +02:00
Tom Herbers
2a3a0e32d5
modules: update openwrt
3960c220da OpenWrt v22.03.5: revert to branch defaults
863f769b75 OpenWrt v22.03.5: adjust config defaults
5f15225c1e ramips: reduce Archer AX23 / MR70X SPI-frequency
c1ccae54ce ccache: update to 4.6.3
80653f0c07 tools/ccache: update to 4.6.2
eeff8b3be1 tools/ccache: update to 4.6.1
31b1366bc6 ramips: fix lzma-loader for buffalo_WSR_600DHP
bf81a92171 ath79: create Aruba AP-105 APBoot compatible image
b6cbab1ad7 openssl: fix CVE-2023-464 and CVE-2023-465
2023-04-28 00:50:12 +02:00
Matthias Schiffer
10e52bec3a
Merge pull request #2688 from lemoer/pr_config_mode_ui_for_interface_roles_v2
Config-Mode UI for Interface Role Assignment (v2)
2023-04-27 21:11:33 +02:00
David Bauer
75c62fd2aa
Merge pull request #2601 from AiyionPrime/key-translate
gluon-mesh-vpn-wireguard: add fastd key migration
2023-04-25 23:22:49 +02:00
lemoer
19f3c9d396 gluon-web-network: migrate to SPDX headers for licensing 2023-04-24 21:41:53 +02:00
lemoer
b774f6f434 gluon-web-model: migrate to SPDX headers for licensing 2023-04-24 21:41:53 +02:00
lemoer
abd6d6415d gluon-core: make interface roles exclusive in site config 2023-04-24 21:41:53 +02:00
lemoer
e7da501442 docs: explain that invalid interface roles are removed 2023-04-24 20:59:26 +02:00
lemoer
a31a802e85 gluon-core: fix invalid role configurations during reconfigure 2023-04-24 20:59:26 +02:00
lemoer
1e21dbcfad gluon-web-network: make roles "uplink" / "mesh" and "client" exclusive 2023-04-24 20:59:26 +02:00
lemoer
7805ff700e gluon-web-model: add exclusive options for MultiListValue 2023-04-24 20:59:20 +02:00
Jan-Niklas Burfeind
276cd0ee37 docs: gluon-mesh-vpn-key-translate 2023-04-20 00:22:19 +02:00
aiyion.prime
e4d05e6ba9 gluon-mesh-vpn-wireguard: add fastd key migration 2023-04-20 00:22:13 +02:00
aiyion.prime
759a3436e0 gluon-mesh-vpn-wireguard: add gluon-hex-to-b64
gluon-hex-to-b64 takes base64 content such as a fastd private key
in legacy form via stdin and emits it in base64 encoded (WireGuard) form.

Provides basic return codes.
2023-04-20 00:21:42 +02:00
Jan-Niklas Burfeind
5ed8508a09
Merge pull request #2864 from blocktrron/combine-dual-boot
openwrt: backport combination of dual-flash partitions
2023-04-19 22:07:53 +02:00
Matthias Schiffer
d91b11ec3d
Merge pull request #2860 from jluebbe/libbatadv-uapi-update
libbatadv: Update UAPI from kernel 6.2
2023-04-19 21:48:29 +02:00
Matthias Schiffer
051d10a59f
Merge pull request #2837 from maurerle/feature/build_dependencies
[docs] improve build dependencies and docs
2023-04-19 21:38:20 +02:00
lemoer
03b9ffdb24 gluon-web-model: uglify flag --support-ie8 is now --ie
From uglify 3.14.0 on, this command is called --ie:

ef5f7fc25e
2023-04-19 21:34:29 +02:00
lemoer
d46c5f89c5 gluon-web-network: show pretty interface names 2023-04-19 21:34:29 +02:00
lemoer
f0b2e632d0 gluon-web-network: initial draft of role configuration 2023-04-19 21:04:24 +02:00
lemoer
7cd4a189e0 gluon-web-model: add MultiListValue class 2023-04-19 21:04:23 +02:00
David Bauer
d1b215aeec
Merge pull request #2866 from AiyionPrime/fix-docs-make-linkcheck
docs: use linkcheck_ignore for unreachable links
2023-04-17 19:28:29 +02:00
Jan-Niklas Burfeind
7ca4cb3698 docs: use linkcheck_ignore for unreachable links
Config Mode
- http://192.168.1.1

(not existing) anchors on hackint used to join channels
- https://webirc.hackint.org/#
2023-04-17 16:23:18 +02:00
David Bauer
cc854594b0 openwrt: backport combination of dual-flash partitions
Backport two patches combining dual-flash layouts of OCEDO as well as
UniFi AC boards.

The two firmware partitions are already combined on OpenWrt master to
prolong the life of these devices. It allows the device to store
firmware images up to 14 MB compared to the previous 7 MB.

The intention behind backporting these patches is to allow these devices
to have a wide update path to firmware-versions requiring this extra
space. Otherwise a device might not be able to install an upgrade which
exceeds a single firmware-partition.

For UniFi AC boards it should be noted that factory-installation will
not be possible with an image exceeding a single firmware-partition. In
this case, an older OpenWrt image that fits in a single partition and
supports writing the enlarged partition space is required.

Currently, this is not the case. As these devices are end-of-sale, this
will become less of a concern over time.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-04-17 06:38:53 +02:00
Jan Luebbe
31d1429ad2 libbatadv: update UAPI and policy from batctl v2023.0
batadv_gw_modes and BATADV_ATTR_GW_MODE were missing from the local
version, so update it and the corresponding policy table from batctl.
2023-04-16 20:24:54 +02:00
Martin Weinelt
297cd5bc3f
Merge pull request #2856 from blocktrron/upstream-master-updates
modules: update to latest HEAD
2023-04-15 20:04:24 +02:00
David Bauer
4faa6f3d61 modules: update gluon
a5259c0 autoupdater: improve handling of interrupted HTTP requests
e4bd7a4 autoupdater: uclient: fix segfault after interrupted HTTP request
5521926 autoupdater: uclient: remove early returns from get_url()
2023-04-15 12:56:37 +02:00
David Bauer
c620ae789e modules: update packages
42b5ae640 golang: Update to 1.19.8
be3a2dce9 lighttpd: update to lighttpd 1.4.69 release hash
ad2f6fd4c lighttpd: remove patch included upstream
6e07b2816 lighttpd: add lighttpd-mod-webdav_min package
e5a1e8bef lighttpd: collect mods now built into lighttpd exe
9116a5880 lighttpd: fix meson build
aa6df20e5 lighttpd: remove patch included upstream
64cdc76c0 lighttpd: update to lighttpd 1.4.68 release hash
0d66dc36c lighttpd: modify build cmd for type: feature opts
8bcfb64a5 lighttpd: add lighttpd-mod-rrdtool dep on rrdtool1
0c0fd4bbd lighttpd: lighttpd-1.4.67-4
10c8bee8c lighttpd: document crypto lib options in Makefile
fb17428a1 cloudflared: Update to 2023.4.0
235acacf0 borgbackup: bump to 1.2.4
31f36e5b2 borgbackup: add missing dependencies
3d12ac7e7  banip: update 0.8.3-2
81a57cdc1  banip: release 0.8.3-1
9b81bca1b v2raya: Update to 2.0.5
bab4d7ebf apinger: add rrd graph support
e5c7e5021 apinger: improve uci and procd support
87c46fde9 rrdtool: update PKG_SOURCE_URL
38cb01297 dnsproxy: Update to 0.48.3
2023-04-15 12:56:30 +02:00
David Bauer
a834298b4e modules: update openwrt
074db57936 kernel: backport fix for recently introduced UBI bug
9af29da281 uclient: update to Git version 2023-04-13
1d4db4e4db OpenWrt v22.03.4: revert to branch defaults
94adc23fa6 OpenWrt v22.03.4: adjust config defaults
38ccc47687 imagebuilder: allow to specific ROOTFS_PARTSIZE
2023-04-15 12:56:16 +02:00
Andreas Ziegler
e40ed5810d
Merge pull request #2848 from herbetom/fix_ath79-generic_wave2
ath79-generic: switch Wave2 firmware to -ct
2023-04-13 23:13:56 +02:00
Andreas Ziegler
f21e3e129a
Merge pull request #2830 from herbetom/add_dlink-dap-x1860-a1
ramips-mt7621: add support for D-Link DAP-X1860 (A1)
2023-04-13 23:12:48 +02:00
Felix Baumann
48b017b1a4
ipq40xx-mikrotik: rename ath10k_packages to smallbuffers (#2850)
The only device using the ATH10K_PACKAGES_IPQ40XX variable in
ipq40xx-mikrotik (the MikroTik hAP ac2) has little RAM and is
using ath10k-ct-smallbuffers by default at the moment. This is
just a suggestion to rename the variable in-case the wifi driver
ever has to be replaced by ath10k.

Analogue to 4a00b8aebb

Signed-off-by: Felix Baumann <felix.bau@gmx.de>
2023-04-13 11:08:28 +02:00
Tom Herbers
4badb2702e
ath79-generic: switch Wave2 firmware to -ct
This partially reverts commit 22c47df242.

Devices in ath79-generic like the TP-Link EAP225-Outdoor v1 are really
unstable with the non -ct Wave2 firmware and regulary crash with 100% memory
consumption when only a handful devices are connected via 5 GHz.

closes freifunk-gluon/gluon#2827
2023-04-12 02:30:41 +02:00
Tom Herbers
e8e956fe57
ramips-mt7621: add support for D-Link DAP-X1860 (A1) 2023-04-09 19:30:55 +02:00
Andreas Ziegler
157a74c5ab
Merge pull request #2844 from herbetom/master-updates
modules: update to latest HEAD
2023-04-09 19:15:04 +02:00
Tom Herbers
c81e9c287b
modules: update packages
1fd9cbcf9 yq: Update to 4.33.2
93b973f51 nano: make nanorc world readable
12bef946f zoneinfo: updated to the latest release
630603042 node: bump to v16.20.0
2023-04-09 12:02:51 +02:00
Tom Herbers
10e0bd1fe0
modules: update openwrt
deafcf9162 ramips: define remapping-range for DAP-X1860
711e45e158 ramips: add support for D-Link DAP-X1860 A1
2a4a6372d3 ramips: lower re305-v3 spi-max-frequency
50d707e344 lantiq: fix lzma-loader for Netgear DGN 3500(B)
fea7478f2d iproute2: add missing libbpf dependency
b2db4fa956 ath79: tiny: Do not build TPLink WPA8630Pv2 by default
c6b6cab858 ramips: mt7621: mikrotik 760igs (hEX S) fix SFP
2faa7ff09e openssl: fix variable reference in conffiles
0636d6b925 ath79: use lzma-loader for Senao initramfs images
70d2e8b4db ath79: Fix glinet ar300m usb not working
9aaeaa8d2a toolchain: musl: Fix symbol loading in gdb
99fddbe4fd wireless-regdb: update to 2023.02.13
f677302cc4 build: fix for sourcing targets image config installed via feeds
50d37b0b37 ramips: rt5350: enable lzma-loader for ALLNET ALL5003
13d3fb3c20 bpf-headers: fix package category
7531ef7f1c sdk: expose PATENTED an NLS build options
4ed98849a5 ksmbd: update to 3.4.7
51cf5aa731 hostapd: add missing return code for the bss_mgmt_enable ubus method
d2f3422e9d kernel: filter out pahole version
5030620db6 dnsmasq: add dhcphostsfile to ujail sandbox
066ac40c29 netifd: strip mask from IP address in DHCP client params
354ad1084a lantiq: nand: don't yield while holding spinlock
6035401f46 mac80211: fix invalid calls to drv_sta_pre_rcu_remove
fc1750b305 ramips: mt7621: ASUS RT-AX53U add NMBM, nest firmware
85b6a7a195 ramips: Alternative name Asus RT-AX1800U for Asus RT-AX53U
a3fbeb2cbb ramips: add missing LEDs to Asus RT-AX53U
21a121af80 uboot-envtools: add support for ramips Asus RX-AX53U
3014c694da ramips: add support for read/write uboot env to Asus RX-AX53U
ff22a20922 comgt: ncm: support Mikrotik R11e-LTE6 modem
5909b6c886 comgt: add quirk for Mikrotik modems based on Mikrotik R11e-LTE6
05ec70f6ae kernel: add support for XMC XM25QH64C
541be7ddb2 ath79: Refresh patches
2023-04-09 12:02:43 +02:00
Magnus Frühling
4a00b8aebb
ipq40xx: use ath10k-smallbuffers for ZyXEL WRE6606 (#2842)
The WRE6066, has in contrast to other ip40xx devices, has only 128MB system RAM.
This results in OOM situations and instability, to circumvent this we need
to use ath10k-smallbuffers.

Signed-off-by: skorpy <skorpy@frankfurt.ccc.de>
2023-04-07 18:30:33 +02:00
Florian Maurer
b70b9d2a05
update install dependency docs
* add missing libelf-dev dependency (to build x86-64)
* remove subversion dependency
* add rsync dependency
* add ecdsautils to docs
2023-04-02 15:58:55 +02:00
Andreas Ziegler
f3b25c1e7d
Merge pull request #2835 from blocktrron/upstream-master-updates
modules: update to latest HEAD
2023-04-01 01:59:03 +02:00
David Bauer
7b2e04e8dc modules: update packages
391e18067 banip: update to 0.8.2-6
9748c394d banip: update to 0.8.2-5
5ae16a7a6 yq: Update to 4.33.1
e9b65e5d7 dnsproxy: Update to 0.48.2
7894fd057 dnsproxy: Update to 0.48.1
8a8c51a92 dnsproxy: Update to 0.48.0
b2c3f2d13 natmap: update to 20230322
7852691b8 banip: update to 0.8.2-4
9fb40dbb8 banip: update to 0.8.2-3
33431b63b sqlite3: Update to 3.41.1
2023-03-31 13:56:43 +02:00
David Bauer
068e8fbdce modules: update openwrt
c2331038b2 kernel: remove obsolete netfilter tcp window size check bypass patch
4ae854d055 mac80211, mt76: add fixes for recently discovered security issues
b573a785e0 ncm: add error check and retry mechanism for gcom call
f61c5cf76b kernel: bump 5.10 to 5.10.176
a4212b77c0 kernel: bump 5.10 to 5.10.175
6b19d24254 kernel: bump 5.10 to 5.10.174
24d84a13a4 kernel: bump 5.10 to 5.10.173
36bf158b47 kernel: tcindex classifier has been retired
999cb9574f x86: fix deprecated CONFIG_MICROCODE_OLD_INTERACE
a88c65507d kernel: bump 5.10 to 5.10.172
cb91aa4b29 kernel: bump 5.10 to 5.10.170
26cc831e44 kernel: bump 5.10 to 5.10.169
28e5045f3a bcm4908: include usbport trigger
836e3d1e5e bcm4908: backport v6.4 pending DTS changes
b7c031d933 ipq40xx: Linksys MR8300: fix the USB port power
0170bc1af1 ramips: mt7621: enable lzma-loader for AFOUNDRY EW1200
96e3fee7ad ramips: fix 5g mac for TOTOLINK X5000R
2023-03-31 13:56:43 +02:00
Jan-Niklas Burfeind
b8d47e6c4b
Merge pull request #2832 from Djfe/TD-W8970
docs: readd TP-Link TD-W8970 v1
2023-03-31 00:55:11 +02:00
Felix Baumann
95e5d382ec docs: readd TP-Link TD-W8970 v1
This device is already supported.
It's a lantiq device that was entered as ar71xx
in to the list of supported device and therefore
removed before the release of Gluon 22.
2023-03-31 00:33:05 +02:00
Jan-Niklas Burfeind
006396620a
Merge pull request #2831 from blocktrron/mr70x
ramips-mt7621: add support for Mercusys MR70X v1
2023-03-29 23:32:18 +02:00
David Bauer
a2056d97a9 ramips-mt7621: add support for Mercusys MR70X v1
Signed-off-by: David Bauer <mail@david-bauer.net>
2023-03-25 23:23:52 +01:00
David Bauer
3a0b0b061a
Merge pull request #2825 from blocktrron/upstream-master-updates
modules: update to latest Git HEAD
2023-03-25 23:21:21 +01:00
David Bauer
1c6405a756
gluon-core: set WAN mac from board-data (#2823)
Set the MAC-adress for the WAN interfacce in case it is defined in the
board-data.

This commit fixes random MAC-Addresses on reboot in case OpenWrt stores
them in the device network configuration.

Fixes #2808

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-03-24 17:20:53 +01:00
David Bauer
44e79fc5c9 modules: update routing
b8e0831 bird1: fix "Form token mismatch" errors in luci-app-bird1-ipv{4,6}
3d7df59 bird1: rename get_bool() to get_a_bool() in bird{4,6}-lib.sh
4e0e702 bird1-openwrt: fix Makefile issues
58a4a00 bird1-openwrt: use a single Makefile for IPv4 and IPv6 packages
2023-03-24 16:22:34 +01:00
David Bauer
63a3921acd modules: update packages
0d566071c adblock: update to 4.1.5-7
05262f346 yq: Update to 4.32.2
245d3479c cloudflared: Update to 2023.3.1
bf9bafd2c v2raya: Update to 2.0.4
66816f0f6 banip: push 0.8.2-2 to stable branch
07e032ee1 v2ray-geodata: Update to latest version
869e5573c xray-core: Update to 1.8.0
b13728e6a strongswan: add fix for CVE-2022-40617
eb4966e54 golang: Update to 1.19.7
b1f684f01 miniupnpd: bump to 2.3.3
1f1bfff84 php8: update to 8.1.16
fe75545e6 gphoto2: fix compilation with BUILD_NLS
19347485a mv88e6xxx_dump: update to 2023.03.08
ae7dd67aa simple-adblock: update init file and config
4ee651287 crowdsec: update to 1.4.6 Update crowdsec to latest upstream release version 1.4.6
6c78413ed frp: update to 0.48.0
4ab4523f7 frp: update to 0.47.0
90749ee59 v2raya: switch to use nftables
70bfe06bb perl-ack: Update to 3.7.0
b53d4f03f v2ray-core: Update to 5.4.0
acddc2050 crowdsec-firewall-bouncer: update to 0.0.25
3c59f514b yt-dlp: update to 2023.3.4
3ea3a0657 haproxy: update to v2.4.22
3e3650bc9 curl: add lang/perl-www-curl/patches/230-curl_7.88_compat.patch
009b2d005 curl: update to 7.88.1
2023-03-24 16:22:34 +01:00
David Bauer
6dc5a4735b modules: update openwrt
f5db04e8ea ramips: add support for Mercusys MR70X
c58959dc45 firmware-utils: tplink-safeloader: add Mercusys MR70X
c1bfb704b1 ramips: fix Archer AX23  WiFi MAC address conflict
3c6692ba03 ramips: add support for TP-Link Archer AX23 v1
a507243bfe firmware-utils: tplink-safeloader: add TP-Link Archer AX23 v1
788a0cf15c mpc85xx: add support for Watchguard Firebox T10
2023-03-24 16:22:34 +01:00
Stefan Weil
cab47e73e4
gluon-status-page: fix status display of wireless mesh for recent openwrt (#2826)
Instead of checking for the deprecated sysfs entry `wireless` which no
longer exists when running newer versions of openwrt, testing for `phy80211`
can be used and works for old and new versions of openwrt.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2023-03-24 13:34:25 +01:00
lemoer
6504a4dd6e
Merge pull request #2820 from stweil/contributing
actions, docs: fix English typo, wording
2023-03-22 21:19:36 +01:00
lemoer
1a489c5216
Merge pull request #2815 from bobidle/fix_typos
docs: fix typos
2023-03-22 21:18:01 +01:00
Stefan Weil
d81897a467 actions, docs: fix English typo, wording
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2023-03-21 07:16:43 +01:00
Tom Herbers
f80bef8405
ath79-generic: fix WS-AP3705i autoupdater name (#2817)
The device was introduced in #2332 and merged in 102a4b9350.

It appears that the autoupdater name wasn't correct and devices therefore don't receive updates.

root@64295-ggw3-20b399bb366f-132:~# lua -e 'print(require("platform_info").get_image_name())'
enterasys-ws-ap3705i
2023-03-19 20:33:47 +01:00
Bob Idle
337f2f119e docs: fix typos 2023-03-18 05:10:16 +01:00
David Bauer
9a4395d048
Merge pull request #2768 from herbetom/add_gl-xe300
ath79-nand: add support for GL.iNet GL-XE300
2023-03-16 07:51:20 +01:00
Andreas Ziegler
fe79b50473
Merge pull request #2813 from FreifunkChemnitz/gl-mt1300v1
ramips-mt7621: add GL.iNet MT1300
2023-03-12 00:07:34 +01:00
Steffen Förster
2c221bac79 ramips-mt7621: add GL.iNet MT1300
The GL-MT1300 is a high-performance new generation pocket-sized router
that offers a powerful hardware and first-class cybersecurity protocol
with unique and modern design.

Specifications:
- SoC: MT7621A, Dual-Core @880MHz
- RAM: 256 MB DDR3
- Flash: 32 MB
- Ethernet: 3 x 10/100/1000: 2 x LAN + 1 x WAN
- Wireless: 1 x MT7615D Dual-Band 2.4GHz(400Mbps) + 5GHz(867Mbps)
- USB: 1 x USB 3.0 port
- Slot: 1 x MicroSD card slot
- Button: 1 x Reset button
- Switch: 1 x Mode switch
- LED: 1 x Blue LED + 1 x White LED

MAC addresses based on vendor firmware:
WAN : factory 0x4000
LAN : Mac from factory 0x4000 + 1
2.4GHz : factory 0x4
5GHz : Mac form factory 0x4 + 1

Flashing instructions:
1.Connect to one of LAN ports.
2.Set the static IP on the PC to 192.168.1.2.
3.Press the Reset button and power the device (do not release the button).
  After waiting for the blue led to flash 5 times, the white led will
  come on and release the button.
4.Browse the 192.168.1.1 web page and update firmware according to web
  tips.
5.The blue led will flash when the firmware is being upgraded.
6.The blue led stops blinking to indicate that the firmware upgrade is
  complete and U-Boot automatically starts the firmware.
2023-03-11 18:14:24 +01:00
Jan-Niklas Burfeind
02d363eadc
Merge pull request #2811 from bobidle/external_links
docs: Update external links
2023-03-10 19:45:35 +01:00
Bob Idle
2f9d59cdb8 docs: Update external links 2023-03-08 18:20:53 +01:00
David Bauer
bf153bc943
Merge pull request #2810 from blocktrron/upstream-master-updates
modules: update to latest OpenWrt HEAD
2023-03-06 16:37:27 +01:00
David Bauer
ec57f6c666 ath79-generic: remove workaround
Now that OpenWrt implements a proper fix for the stalled boots on 74kc
boards, the previous workaround can be removed.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-03-05 20:32:01 +01:00
David Bauer
53b84e3424 modules: update routing
cc1dd76 bird2: bump to version 2.0.12
2023-03-05 20:31:04 +01:00
David Bauer
989a16d103 modules: update packages
f06652bc1 v2raya: drop wrong patches
b6fab0750 yq: Update to 4.31.2
614680d93 yq: Update to 4.31.1
781be9731 cloudflared: Update to 2023.3.0
889028f86 cloudflared: Update to 2023.2.2
4b630ba72 sed: remove old libpcre dependency
3e2c1336a msgpack-c: Update to 5.0.0
43ae97707 golang: Update to 1.19.6
692052b8c node: bump to v16.19.1
2fcba9a46 zerotier: update to 1.10.3
651c73467 git: update to 2.34.7
656835201 https-dns-proxy: 2022-10-15-11 update
0790a0626 cloudreve: Update to 3.7.1
11780f597 gg: Update to 0.2.18
a4393e648 dnsproxy: Update to 0.47.0
2ccdd6d27 kcptun: update to version 20230207
48d58b61c simple-adblock: bugfix: ensure directory for jsonFile is created
b0050dc7f simple-adblock: implement procd_boot_wan_timeout support
fc70290d5 adblock: update 4.1.5-6
1e59e5d12 snowflake: update to v2.5.1
c13c734e3 django: bump to version 4.0.10
d3c9e5200 irqbalance: Add upstream fix for AARCH64 irq name parsing
f38c9e1d2 simple-adblock: update to 1.9.4-1
1c0d2ce41 adblock: update 4.1.5-5
2023-03-05 20:31:00 +01:00
David Bauer
f3c7f340b8 modules: update openwrt
0a32f66fea generic: remove patch for unused kernel version
ea6fb9c16d generic: MIPS: Add barriers between dcache & icache flushes
7b05a8d05d kernel: fix mtk dsa tag padding
cfce8ab388 kernel: can: fix MCP251x CAN controller module autoload
55a48b0957 kernel: bump 5.10 to 5.10.168
a66e53d8ed kernel: bump 5.10 to 5.10.167
3167f7c9fa openssl: bump to 1.1.1t
2023-03-05 20:30:51 +01:00
Andreas Ziegler
ac14244b79
Merge pull request #2809 from AiyionPrime/master-v2022.1.3-fp
docs: Add v2022.1.3 release notes
2023-03-04 23:25:46 +01:00
Jan-Niklas Burfeind
25eb6763cd docs: Add v2022.1.3 release notes
(cherry picked from commit 190d7f8701)
2023-03-04 23:19:33 +01:00
Martin Weinelt
82723f3a45
Merge pull request #2803 from freifunk-gluon/dependabot/github_actions/korthout/backport-action-1.2.0
build(deps): bump korthout/backport-action from 1.1.0 to 1.2.0
2023-03-02 13:26:03 +00:00
Jan-Niklas Burfeind
ccca92cf92
Merge pull request #2806 from freifunk-gluon/master-bugfix
gluon-core: fix typo in wireless upgrade script
2023-03-02 14:06:25 +01:00
Andreas Ziegler
94537db4df
gluon-core: fix typo in wireless upgrade script 2023-03-02 00:23:56 +01:00
Jan-Niklas Burfeind
23145c58a0
Merge pull request #2802 from freifunk-gluon/dependabot/github_actions/actions/checkout-3
build(deps): bump actions/checkout from 1 to 3
2023-03-01 09:36:27 +01:00
Jan-Niklas Burfeind
7e8c9f41a6
Merge pull request #2804 from freifunk-gluon/dependabot/pip/docs/sphinx-rtd-theme-1.2.0
build(deps): bump sphinx-rtd-theme from 1.1.1 to 1.2.0 in /docs
2023-03-01 09:28:10 +01:00
dependabot[bot]
43faa4f0d9
build(deps): bump sphinx-rtd-theme from 1.1.1 to 1.2.0 in /docs
Bumps [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) from 1.1.1 to 1.2.0.
- [Release notes](https://github.com/readthedocs/sphinx_rtd_theme/releases)
- [Changelog](https://github.com/readthedocs/sphinx_rtd_theme/blob/master/docs/changelog.rst)
- [Commits](https://github.com/readthedocs/sphinx_rtd_theme/compare/1.1.1...1.2.0)

---
updated-dependencies:
- dependency-name: sphinx-rtd-theme
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-01 00:57:31 +00:00
dependabot[bot]
1d50bedce8
build(deps): bump korthout/backport-action from 1.1.0 to 1.2.0
Bumps [korthout/backport-action](https://github.com/korthout/backport-action) from 1.1.0 to 1.2.0.
- [Release notes](https://github.com/korthout/backport-action/releases)
- [Commits](https://github.com/korthout/backport-action/compare/v1.1.0...v1.2.0)

---
updated-dependencies:
- dependency-name: korthout/backport-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-01 00:57:18 +00:00
dependabot[bot]
002ace202f
build(deps): bump actions/checkout from 1 to 3
Bumps [actions/checkout](https://github.com/actions/checkout) from 1 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v1...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-01 00:57:16 +00:00
Jan-Niklas Burfeind
44844262cd
Merge pull request #2654 from T-X/pr-librerouter-v1
ath79-generic: add LibreRouter v1
2023-02-28 16:53:15 +01:00
Matthias Schiffer
a0f8d2ca52
Merge pull request #2695 from Kistelini/preserve_channels
gluon-core: preserve channel list for 5G radios
2023-02-27 23:28:30 +01:00
Christian Buschau
4e68059bc8
gluon-core: preserve channel list for 5G radios
Currently the 'channels' setting of a 5G radio gets overwritten or
deleted even if the 'preserve_channels' option is enabled. Don't touch it
if 'preserve_channels' is set.
2023-02-26 15:14:13 +01:00
Matthias Schiffer
193fe036b0
Merge pull request #2799 from AiyionPrime/workaround-unicast-ct
Revert "ipq40xx: switch Wave2 firmware to -ct (#2541)"
2023-02-26 13:38:55 +01:00
Jan-Niklas Burfeind
22c47df242 Revert "ipq40xx: switch Wave2 firmware to -ct (#2541)"
This is a temporary measure that fixes #2692.

This reverts commit 15ef885836.
2023-02-26 00:54:32 +01:00
Jan-Niklas Burfeind
f71e31a211
Merge pull request #2792 from freifunk-gluon/master-ath79-bugfix
gluon-core:  sleep to wait for device initialisations
2023-02-26 00:10:45 +01:00
Andreas Ziegler
d97673f715
gluon-core: sleep a few seconds during upgrade
wait for device initialisations
workaround for a timing issue during first boot on ath79-generic
after sysupgrade from ar71xx-generic image

GitHub Issue: #2779
2023-02-26 00:04:50 +01:00
Linus Lüssing
0cdaeaa0c9 ath79-generic: add LibreRouter v1
add comments about lacking radios
Co-authored-by: Jan-Niklas Burfeind <git@aiyionpri.me>
Co-authored-by: Matthias Schiffer <mschiffer@universe-factory.net>
2023-02-25 23:58:37 +01:00
Tom Herbers
b28f58dbd4
ath79-nand: add support for GL.iNet GL-XE300
The activated setup mode is indicated by the WLAN LED.

Co-authored-by: David Bauer <mail@david-bauer.net>
2023-02-25 11:44:07 +01:00
Matthias Schiffer
be672eda35
Merge pull request #2791 from FreifunkVogtland/war-ath79-hang
ath79-generic: Work around boot hang on Unifi AC-Mesh
2023-02-22 23:02:01 +01:00
Sven Eckelmann
536c771f3f ath79-generic: Work around boot hang on Unifi AC-Mesh
It looks like boot hangs on an AC-Mesh for unknown reasons. The last
message seen on the console is:

    [    0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes, linear)

But interestingly, it seems like enabling AIO somehow works around this
problem. Changing any off the following options seem to have the same
effect at the moment for Linux 5.10.160+5.10.161

    # CONFIG_KERNEL_AIO is not set
    # CONFIG_KERNEL_CGROUPS is not set
    # CONFIG_KERNEL_FANOTIFY is not set
    # CONFIG_KERNEL_FHANDLE is not set
    # CONFIG_KERNEL_IO_URING is not set
    # CONFIG_KERNEL_IPV6_MROUTE is not set
    # CONFIG_KERNEL_IPV6_SEG6_LWTUNNEL is not set
    # CONFIG_KERNEL_IP_MROUTE is not set
    CONFIG_KERNEL_PROC_STRIPPED=y

Just enable CONFIG_AIO until the actual problem was fixed.

Link: https://github.com/freifunk-gluon/gluon/issues/2784
2023-02-21 00:05:08 +01:00
Jan-Niklas Burfeind
670da836c7
Merge pull request #2535 from ffgraz/olsr2
OLSRDv2 Support: Initial Meshing
2023-02-16 11:59:13 +01:00
Maciej Krüger
37b88cf790
gluon-mesh-olsrd: remove unused files 2023-02-15 21:40:31 +01:00
Jan-Niklas Burfeind
b9ffb7dcca
Merge pull request #2787 from herbetom/master-updates
modules: update to latest HEAD
2023-02-15 09:27:47 +01:00
Tom Herbers
3354c37f47
modules: update routing
83bc4fc babeld: remove AUTORELEASE
59bc28b babeld: update to 1.12.2
2023-02-14 20:05:14 +01:00
Tom Herbers
6398670b57
modules: update packages
669357351 v2ray-geodata: Update to latest version
04af31728 v2ray-core: Update to 5.3.0
6c13c9363 xray-core: Update to 1.7.5
bfe92ef86 cloudflared: Update to 2023.2.1
ce1d359a7 cloudflared: Update to 2023.1.0
5b8e61edb php8: update to 8.1.15
65b1563d0 xfrpc: update to version 2.1.606
30b0a36c7 xfrpc: Update to 1.11.587
3f023d5af xfrpc: allow server_addr ip and domain
028345fa9 xfrpc: Update to 1.07.582
9167756cb xfrpc: update to 1.06.579
ff4c824e2 xfrpc: set xfrpc's disabled default value to 0
74ed1a15a xfrpc: fix bug of xfrpc.init
8b80ad3b9 xfrpc: update to 1.05.561
b266107c3 xfrpc: Update to 1.05.548
ef5cacd4e xfrpc: fast reverve proxy client in c language
97c38b456 simple-adblock: update to 1.9.3-7
a13b1a64d ci: update github actions to v3
7abfee2e8 ci: Use openwrt/gh-action-sdk@v5
02e95fdef autossh: return from instance function, not exit the script
76ba43711 autossh: Add dropbear proxy (-J) support
09ae01170 mv88e6xxx_dump: add new packages to debug switch issues
1497ef515 bind: update to 9.18.11
2023-02-14 20:05:14 +01:00
Tom Herbers
b8c68307c5
modules: update openwrt
f7541aecdc bpf: ignore missing LLVM bins on package for non compile steps
98b8507e83 bpf: check llvm version only when used
7370479224 at91: sam9x,sama5: fix racy SD card image generation
52564e65d5 at91: sama7: fix racy SD card image generation
863288b49d mac80211: Update to version 5.15.92-1
71cbc95111 kernel: bump 5.10 to 5.10.166
3fd3d99e3a ramips: mt7621-dts: fix phy-mode of external phy on GB-PC2
212c3ffdfc octeontx: add sqaushfs and ramdisk to features
2601873cc5 ath79: add LTE packages for GL-XE300
2702ef9427 ath79: add label-mac-device for GL-XE300
0657576ce1 ath79: add LTE led for GL.iNet GL-XE300
428d720c7f kernel: backport some mv88e6xxx devlink patches
83a13b74f5 kernel: bump 5.10 to 5.10.165
10c79414db kernel: bump 5.10 to 5.10.164
15b9c02d6c kernel: bump 5.10 to 5.10.163
a8025bc2c2 kernel: bump 5.10 to 5.10.162
2023-02-14 20:05:11 +01:00
David Bauer
1780bafafc
Merge pull request #2772 from ffgraz/warn2
gluon-web-model: fix issue with warning blocking save on private-wifi
2023-02-03 03:07:33 +01:00
Jan-Niklas Burfeind
57a0e44458
Merge pull request #2777 from freifunk-gluon/dependabot/github_actions/korthout/backport-action-1.1.0
build(deps): bump korthout/backport-action from 1.0.1 to 1.1.0
2023-02-01 22:21:02 +01:00
dependabot[bot]
2a1873b3c3
build(deps): bump korthout/backport-action from 1.0.1 to 1.1.0
Bumps [korthout/backport-action](https://github.com/korthout/backport-action) from 1.0.1 to 1.1.0.
- [Release notes](https://github.com/korthout/backport-action/releases)
- [Commits](https://github.com/korthout/backport-action/compare/v1.0.1...v1.1.0)

---
updated-dependencies:
- dependency-name: korthout/backport-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-01 00:01:21 +00:00
Jan-Niklas Burfeind
ee36d5a611
editorconfig: exclude docs/_built (#2776)
while not present unless built, they are never meant to be checked
2023-02-01 00:57:04 +01:00
aiyion.prime
a18510c09a ath79-nand: (re)add hiveap-121
Direct migration from 19.07 is currently not possible.

Gone due to
commit 45c84a117b ("ar71xx: drop target")
2023-01-31 10:23:30 +01:00
Jan-Niklas Burfeind
9ac048dbdf
docs,LICENSE: Drop copyright years (#2774) 2023-01-30 21:37:44 +01:00
David Bauer
953a227ab0
Merge pull request #2775 from blocktrron/master-v2022.1.2-bp
docs: add Gluon 2022.1.2 release notes
2023-01-30 17:22:31 +01:00
Jan-Niklas Burfeind
826e6541bc docs: remove trailing spaces
in Gluon 2022.1.2 release notes
2023-01-30 10:31:27 +01:00
David Bauer
83809093e0 docs: add Gluon 2022.1.2 release notes
(cherry picked from commit f000a605cd)
2023-01-29 23:33:26 +01:00
David Bauer
0a2eac6e5d
Merge pull request #2771 from blocktrron/upstream-master-updates
modules: update to latest HEAD
2023-01-28 22:59:58 +01:00
Maciej Krüger
ad8cfe02c2
gluon-web-model: fix Warning field not being hidden
"not self.title" doesn't work because of "self.title = title or """
2023-01-28 20:46:41 +01:00
Maciej Krüger
1f451d4021
gluon-web-model: fix issue with warning blocking save on private-wifi
The other bugfix which made this element inherit from AbstractValue
caused AbstractValue:validate() to be inherited aswell

Now added an if so validate only runs if a datatype is set
(since Element is meant as a generic way to extend web-model without
modifying web-model - also to add custom inputs - just hiding it behind an if sounds like a sane solution)
2023-01-28 20:42:52 +01:00
David Bauer
4fb43ab020 modules: update routing
74948d5 opennds: Release v9.10.0
2023-01-28 15:13:11 +01:00
David Bauer
154a245fc2 modules: update packages
4cb3303d5 nextdns: Update to version 1.39.4
7a756db00 python3: bump to version 3.10.9
bcd299d0c bash: update to version 5.2.15
080466064 pbr: bugfix: fix is_domain()
994dbb785 php8: update to 8.1.14
2023-01-28 15:13:09 +01:00
David Bauer
3597a8ba98 modules: update openwrt
ddeeb35007 mac80211: use 802.11ax iw modes
1f32774ded kernel: mtk-bmt: fix usage of _oob_read
2023-01-28 15:13:00 +01:00
David Bauer
03fe3d4a1d
Merge pull request #2595 from maurerle/feature/o2box6431
targets/lantiq-xrx200: add device Arcadyan VGV7510KW22 aka o2 Box 6431
2023-01-25 17:51:18 +01:00
Florian Maurer
f5a41dd3bc
lantiq-xrx200: add Arcadyan VGV7510KW22 (o2 Box 6431)
update lan, wan separation for o2 6431
2023-01-25 13:32:04 +01:00
Jan-Niklas Burfeind
11b2636ded
Merge pull request #2767 from herbetom/i18n_gluon-web-cellular_de
gluon-web-cellular: add German translation
2023-01-24 19:20:00 +01:00
Tom Herbers
7b25412541 gluon-web-cellular: add German translation
Co-authored-by: Jan-Niklas Burfeind <github@aiyionpri.me>
2023-01-24 16:07:25 +01:00
David Bauer
1df9fbeb54
Merge pull request #2766 from AiyionPrime/master-updates
Master updates
2023-01-23 23:28:26 +01:00
Jan-Niklas Burfeind
703313e2e0 modules: update packages
47fb67e5e v2ray-core: Update to 5.2.1
dc39bbef1 atlas-sw-probe: add more binaries
73cbdbc82 python-docutils: bump to version 0.19
328e64835 frp: update to 0.46.1
02b33536b frp: update to 0.46.0
5ba2c1314 nano: update to 7.2
05844d909 git: update to 2.34.6
2023-01-22 13:32:15 +01:00
Jan-Niklas Burfeind
d65cbdf32a modules: update openwrt
28e1770a3b tools/mkimage: build uboot with NO_SDL=1
1bead4c521 lantiq: xrx200: Fix wifi LED on o2 box 6431
2023-01-22 13:32:09 +01:00
Maciej Krüger
5baa8e07f1
gluon-mesh-olsrd: editorconfig/whitespace fixup 2023-01-20 03:01:24 +01:00
Maciej Krüger
ad378ce60f
gluon-mesh-olsrd: add olsr2 support 2023-01-20 03:01:24 +01:00
Maciej Krüger
052e08e771
gluon-mesh-olsrd: example site 2023-01-20 03:01:24 +01:00
David Bauer
760cf8e87f
Merge pull request #2763 from blocktrron/upstream-master-updates
modules: update master
2023-01-19 09:21:41 +01:00
David Bauer
4c544d4b79 modules: update packages
b4198d7ac xray-core: Update to 1.7.2
057cadb08 yq: Update to 4.30.8
1ae5d856c yq: Update to 4.30.7
37d658ce6 boinc-wrapper: add new package
b31bcb053 python-requests: update URL
28d0c75dd netperf: use git tarball
716c76b1d bc: use @DEBIAN
8e02db2d7 python-exceptiongroup: bump to 1.1.0
d8632f16d borgbackup: bump to 1.2.3
215b235c7 snowflake: update to 2.4.2
4e9dcb98f miredo: add miredo.conf conffile
9e9eb8240 pbr: update to 1.0.1-14
3232bd049 simple-adblock: update sed for allowing domains
2023-01-18 23:40:48 +01:00
David Bauer
13da5ece33 modules: update openwrt
9a12afc5e7 mbedtls: move source modification to patch
c1a26341ab Revert "toolchaini/gcc: fix libstdc++ dual abi model"
2023-01-18 23:40:38 +01:00
David Bauer
95b48893ac
Merge pull request #2760 from blocktrron/upstream-master-updates
modules: update to latest HEAD
2023-01-17 11:04:10 +01:00
David Bauer
e0256f40bd modules: update packages
2417b74fc atlas-sw-probe: update to version 5080
18fa44a14 golang: Update to 1.19.5
e81ff3fcc atlas-probe: update to 2.6.3
360bce6f3 xz: update to version 5.4.1
68d3d099b docker-compose: Update to version 2.15.1
2feedb1e2 speedtestpp: drop libxml2 dependency
df3799fe0 yt-dlp: update to 2023.1.6
69a8305f7 ocserv: disable libmaxminddb detection
5234dc93b knot: disable libmaxminddb detection
709172c95 python-pytz: bump to version 2022.7
0d346fe7f bind: disable geoip
e4a7f86bf docker-compose: Update to version 2.15.0
f709ba1ee stubby: Restart on interface trigger
4ff16a7bf stubby: Update to 0.4.3
8038868ba getdns: Update to 1.7.3
2023-01-17 00:00:53 +01:00
David Bauer
8e5c4b1edf modules: update openwrt
807483d336 dosfstools: switch to AC_CHECK_LIB
3bc6d2af76 tools/dosfstools: fix PKG_SOURCE
c0b4303d2e toolchaini/gcc: fix libstdc++ dual abi model
aa5023b9cd scripts/dl_github_archieve.py: fix generating unreproducible tar
e88e0ace7a ksmbd: Fix ZDI-CAN-18259
aca915e847 ksmbd: update to 3.4.6
2023-01-17 00:00:43 +01:00
David Bauer
355f9f7bae
Merge pull request #2759 from mweinelt/dnsmasq-dnssec-caching
Restore local DNS caching
2023-01-16 19:51:44 +01:00
David Bauer
474b26ae5b docs: remove redundant explanation 2023-01-16 19:49:33 +01:00
Martin Weinelt
d65ce73762
Revert "gluon-core: remove DNS cache feature"
This reverts commit 543eb17882.

Restores the dns caching configuration that should be feasible, since we
now require around 8 MB of flash.
2023-01-15 22:50:14 +01:00
Martin Weinelt
86502c46ba
Migrate to dnsmasq-full to restore query caching
We migrate to dnsmasq-full, while disabling most of its features.
Notably, dhcp and dnssec are compiled in, while other features of the
full variant are deselected.
2023-01-15 22:50:00 +01:00
Jan-Niklas Burfeind
acfd3f1744
Merge pull request #2758 from AiyionPrime/editorconfig-checker-270
workflows/docker: bump editorconfig-checker from 2.6.0 to 2.7.0
2023-01-15 20:01:44 +01:00
Jan-Niklas Burfeind
f1bff05c7b workflows/docker: bump editorconfig-checker from 2.6.0 to 2.7.0
- [Release notes](https://github.com/editorconfig-checker/editorconfig-checker/releases)
- [Commits](https://github.com/editorconfig-checker/editorconfig-checker/compare/2.6.0...2.7.0)

Signed-off-by: Jan-Niklas Burfeind <git@aiyionpri.me>
2023-01-15 17:17:20 +01:00
Andreas Ziegler
b2397ebf30
Merge pull request #2116 from freifunk-gluon/lint-editorconfig
actions: add editorconfig checker
2023-01-15 17:01:27 +01:00
Jan-Niklas Burfeind
17f94663a2 targets: fix indentation 2023-01-15 16:46:32 +01:00
Jan-Niklas Burfeind
edc1260743 editorconfig: add siteconf 2023-01-15 16:46:32 +01:00
Jan-Niklas Burfeind
f2d137b17a editorconfig: add exceptions for Makefiles
- [*.mk]
- [Makefile]

OpenWrt and Gluon use spaces for a better overview,
tabs are used for `make` to mark recipes as such.
2023-01-15 16:46:32 +01:00
Martin Weinelt
48b70a9ea5 contrib: Dockerfile: add editorconfig-checker
Co-authored-by: Jan-Niklas Burfeind <git@aiyionpri.me>
version bump to 2.6.0
aligned indentation
2023-01-15 16:46:25 +01:00
Martin Weinelt
c93eb80bbe actions: add editorconfig checker
Adds `lint-editorconfig` make target.

Co-authored-by: Jan-Niklas Burfeind <git@aiyionpri.me>
version bump to 2.6.0
2023-01-15 16:44:17 +01:00
Jan-Niklas Burfeind
0e5a5d31f5
Merge pull request #2751 from AiyionPrime/c-indentation
C indentation
2023-01-15 15:53:27 +01:00
Jan-Niklas Burfeind
8c345910e7
Merge pull request #2757 from AiyionPrime/editorconfig-leftovers
Editorconfig leftovers
2023-01-12 23:37:31 +01:00
Jan-Niklas Burfeind
c3be7a78b7 gluon-setup-mode: fix indentation 2023-01-12 23:02:16 +01:00
Jan-Niklas Burfeind
caeae3b3d9 package/gluon-respondd: migrate to SPDX header
found BSD-2-Clause
2023-01-12 23:02:09 +01:00
Jan-Niklas Burfeind
5f6bf492f7 package/libgluonutil: migrate to SPDX header
found BSD-2-Clause
2023-01-12 22:58:23 +01:00
Jan-Niklas Burfeind
0699362083 gluon-wan-dnsmasq: fix indentation 2023-01-12 22:44:04 +01:00
Jan-Niklas Burfeind
a5825a840a gluon-status-page: fix indentation 2023-01-12 22:44:00 +01:00
Jan-Niklas Burfeind
309922e5c9 gluon-setup-mode: fix indentation 2023-01-12 22:43:56 +01:00
Jan-Niklas Burfeind
6c4a0ae373 docs/conf.py: fix mixed indentation 2023-01-12 22:43:52 +01:00
Jan-Niklas Burfeind
ab89bacb55 libbatadv: fix c indentation 2023-01-12 21:46:55 +01:00
Jan-Niklas Burfeind
896dae59f6 gluon-web: fix c indentation 2023-01-12 21:46:55 +01:00
Jan-Niklas Burfeind
9c023fba57 gluon-status-page: fix c indentation 2023-01-12 21:46:55 +01:00
Jan-Niklas Burfeind
10613b9e52 gluon-status-page-mesh-batman-adv: fix c indentation 2023-01-12 21:46:55 +01:00
Jan-Niklas Burfeind
051c74b987 gluon-respondd: fix c indentation 2023-01-12 21:46:55 +01:00
Jan-Niklas Burfeind
e797ad4c2f gluon-radvd-filterd: fix c indentation 2023-01-12 21:46:55 +01:00
Jan-Niklas Burfeind
36f407877b gluon-neighbour-info: fix c indentation 2023-01-12 21:46:55 +01:00
Jan-Niklas Burfeind
ac7de8414e gluon-mesh-vpn-wireguard: fix c indentation 2023-01-12 21:46:55 +01:00
Jan-Niklas Burfeind
27d52b5ee5 gluon-mesh-vpn-fastd: fix c indentation 2023-01-12 21:46:55 +01:00
Jan-Niklas Burfeind
44c12e87ec gluon-mesh-batman-adv: fix c indentation 2023-01-12 21:46:55 +01:00
Jan-Niklas Burfeind
e43d4290a1 gluon-core: fix c indentation 2023-01-12 21:46:54 +01:00
Jan-Niklas Burfeind
6ff3217903 gluon-ebtables-limit-arp: fix c indentation 2023-01-12 21:46:52 +01:00
Jan-Niklas Burfeind
d7f869ad6d gluon-autoupdater: fix c indentation 2023-01-12 21:44:31 +01:00
Jan-Niklas Burfeind
cdcd1452a2
Merge pull request #2747 from AiyionPrime/editorconfig-c-header-files
migrate several c files to spdx
2023-01-12 21:21:53 +01:00
Maciej Krüger
133ddf19cf
gluon-wireless-encryption{,-wpa3}: rename to match actual package name (#2752) 2023-01-12 00:44:57 +01:00
Jan-Niklas Burfeind
00e61ae968
Merge pull request #2716 from Kistelini/add-archer-c6-v3
ramips-mt7621: add TP-Link Archer C6 v3
2023-01-10 21:18:45 +01:00
Christian Buschau
7cabc593c7
ramips-mt7621: add TP-Link Archer C6 v3 2023-01-10 21:12:22 +01:00
Jan-Niklas Burfeind
c0d27c1106
Merge pull request #2755 from stweil/typos
Fix some typos (found by codespell)
2023-01-10 20:11:10 +01:00
Stefan Weil
be7e22ddc2 Fix some typos (found by codespell)
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2023-01-10 19:07:51 +01:00
Jan-Niklas Burfeind
d374d6dfcf .editorconfig: mark c and header files as supported 2023-01-09 22:40:14 +01:00
Jan-Niklas Burfeind
df869585cf gluon-radv-filterd: migrate to spdx license header 2023-01-09 22:40:08 +01:00
Jan-Niklas Burfeind
bc4349eb75 gluon-node-info: migrate to spdx license header 2023-01-09 22:39:00 +01:00
Jan-Niklas Burfeind
1b110283c7 gluon-neighbour-info: migrate to spdx license header 2023-01-09 22:38:06 +01:00
Jan-Niklas Burfeind
7059d3c093 gluon-mesh-vpn-wireguard: migrate to spdx license header 2023-01-09 22:37:19 +01:00
Jan-Niklas Burfeind
38fd6bc96e gluon-mesh-vpn-fastd: migrate to spdx license header 2023-01-09 22:35:50 +01:00
Jan-Niklas Burfeind
df56dc18f6 gluon-mesh-vpn-core: migrate to spdx license header 2023-01-09 22:34:54 +01:00
Jan-Niklas Burfeind
79873e51d6 gluon-mesh-babel: migrate to spdx license header 2023-01-09 22:34:00 +01:00
Jan-Niklas Burfeind
7b2b2d13fa gluon-mesh-batman-adv: migrate to spdx license header 2023-01-09 22:33:03 +01:00
Jan-Niklas Burfeind
4a9d2bdb67 gluon-autoupdater: migrate to spdx license header 2023-01-09 22:28:30 +01:00
Andreas Ziegler
c60ada47fe
Merge pull request #2753 from AiyionPrime/master-updates
master updates
2023-01-08 15:58:01 +01:00
Jan-Niklas Burfeind
9ce4837617
Merge pull request #2513 from turrisxyz/setup-permissions
chore: Set permissions for GitHub actions
2023-01-08 14:46:45 +01:00
Jan-Niklas Burfeind
1e90e904cc
Merge pull request #2569 from T-X/pr-gluon-l3roamd-deprecate-node-client-prefix6
gluon-l3roamd: site: make node_client_prefix6 optional+deprecated
2023-01-08 02:26:28 +01:00
T-X
8f6eae9a8b
Merge pull request #2745 from AiyionPrime/gluon-ebtables-limit-arp-license
gluon-ebtables-limit-arp: license
2023-01-08 00:11:25 +01:00
Linus Lüssing
b3a9221b07 gluon-l3roamd: site: make node_client_prefix6 optional+deprecated
The site.node_client_prefix6() is only used internally by the l3roamd
protocol. Therefore it is unnecessary to expose it to an administrator.

Instead, if node_client_prefix6 is unspecified in the site, generate an
IPv6 Unique Local Address prefix from the site domain_seed.

This updates the site documentation as well and marks this setting as
both optional and deprecated.

Note: If you had the node_client_prefix6 specified before and want to
use the new autogeneration from the domain_seed instead then this will
break compatibility and will need a gluon-scheduled-domain switch.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2023-01-07 23:41:24 +01:00
Jan-Niklas Burfeind
9eee9e9bdb modules: update routing
1a87333 bird2: bump to version 2.0.11
2023-01-06 23:37:57 +01:00
Jan-Niklas Burfeind
6703d45d61 modules: update packages
4b30c97b5 libtorrent-rasterbar: Update to 2.0.8
db78655bb syncthing: update to 1.23.0
f8cd48207 libmaxminddb: install pkgconfig file
55222315f libmaxminddb: update to 1.7.1
27db10b96 AdGuardHome: update to v0.107.21
2048c5bbf libnetwork: Update to dcdf8f1 for Docker v20.10.22
b7500ff2d containerd: Update to v1.6.13 for Docker v20.10.22
27e985f32 docker: Update to v20.10.22
7426365de dockerd: Update to v20.10.22
511de74ce owntone: Update to 28.5
90c25ab10 owntone: update to 28.4
94a947f1c mxml: update to 3.3.1
b5fd276fd docker-compose: Update to version 2.14.2
5c9215b20 docker-compose: Update to version 2.14.1
7bd647a50 docker-compose: Update to version 2.14.0
dad5db7a2 docker-compose: Update to version 2.12.2
d3d580daa docker-compose: Update to version 2.12.0
ec76dce13 docker-compose: Update to version 2.11.2
3d9f6f2fa docker-compose: Update to version 2.11.1
8353f504a docker-compose: Update to version 2.11.0
41ab6565b docker-compose: Update to version 2.10.2
e65d20aee docker-compose: Update to version 2.9.0
0aff8059f docker-compose: Update to version 2.7.0
3846dc1f4 docker-compose: Update to version 2.6.1
a749254bd docker-compose: Update to version 2.6.0
66f07e340 docker-compose: Update to version 2.5.1
01d6208e5 docker-compose: Update to version 2.5.0
1900774ad docker-compose: Update to version 2.4.1
07647d822 docker-compose: Update to version 2.4.0
7dc695f35 docker-compose: Update to version 2.3.4
5b32db43f telnet-bsd: add package
60af04fa4 domoticz: update to 2022.1
801c00193 bind: update to version 9.18.10
82a4e7a46 golang: backport an upstream fix for non-retpoline-compatible error
01406a6ca v2ray-geodata: Update to latest version
17d72277e v2ray-core: Update to 5.2.0
c5a51a440 xray-core: Update to 1.7.0
5f5d9ddf6 rclone: Update to 1.61.1
c2f2b6977 cloudreve: Update to 3.6.2
02a6ad64d xray-core: Update to 1.6.6-2
2d059c5d9 yq: Update to 4.30.6
334c598b1 dnsproxy: Update to 0.46.5
bb646b65f dnslookup: Update to 1.8.1
5c9ffc34d cloudflared: Update to 2022.12.1
58b61913d natmap: update to 20221225
f6db13442 natmap: fix service not stopped when disabled in luci
4b9641eea natmap: add Package/conffiles
e4fc50644 libarchive: add missing CONFLICT
a139b554c libarchive: fix CVE-2022-36227
ab468882d libarchive: update to 3.5.3
2023-01-06 23:37:57 +01:00
Jan-Niklas Burfeind
70c1963cc0 modules: update openwrt
4b7f9e42e2 lantiq-xrx200: fix wan LED on o2 box 6431
7c10b7b6f0 CI: build: fix external toolchain use with release tag tests
b08e1e978c OpenWrt v22.03.3: revert to branch defaults
221fbfa2d8 OpenWrt v22.03.3: adjust config defaults
43d71ad93e mac80211: Do not build brcmsmac on bcm47xx_legacy
181390f57d uml: fix 5.10 build
1fd2f9f7be kernel: Add missing kernel configuration options
8446d22aaa gdb: Do not link against xxhash
558aa1f482 odhcpd: fix null pointer dereference for INFORM messages
af4f635eed ipq40xx: sysupgrade: allow flashing Linksys factory firmware
4bda308657 base-files: stage2: add 'tail' to sysupgrade environment
2f1b73b70d treewide: Trigger reinstall of all wolfssl dependencies
77e2a24e62 wolfssl: update to 5.5.4-stable
158a33591d mbedtls: update to version 2.28.2
b23cab2fcf toolchain: gcc: import patch fixing asm machine directive for powerpc
6be9e3e636 kernel: remove hack patch, move kirkwood specific kmods to target modules.mk
b1722a048a kernel: bump 5.10 to 5.10.161
cdce4a0bfa uhttpd: update to latest Git HEAD
2023-01-06 23:37:51 +01:00
David Bauer
7bf8de457a
Merge pull request #2710 from AiyionPrime/wavlink-backport-draft
Wavlink WS-WN572HP3 (4G)
2023-01-05 21:48:24 +01:00
Andreas Ziegler
b3a7b6ee9e
Merge pull request #2741 from freifunk-gluon/dependabot/github_actions/zeebe-io/backport-action-1.0.1
build(deps): bump zeebe-io/backport-action from 0.0.9 to 1.0.1
2023-01-05 00:21:45 +01:00
Andreas Ziegler
cd38de1bda
Merge pull request #2746 from AiyionPrime/html-indentation
html indentation
2023-01-05 00:19:57 +01:00
Jan-Niklas Burfeind
b03496ae5c
Merge pull request #2743 from AiyionPrime/fix-shell-indentation
treewide: fix indentation in .sh files
2023-01-04 21:47:18 +01:00
Jan-Niklas Burfeind
4083f150c0 backport-action: update workflow
- set permissions explicitly, as recommended in their docs
- drop github_token and github_workspace (now set per default)
- ownership has moved from "zeebe-io" to the main developer "korthout"

backport-action will follow semver from now on
2023-01-04 21:30:59 +01:00
Jan-Niklas Burfeind
8067a77f59 mt7621: add Wavlink Wavlink WS-WN572HP3 4G 2023-01-04 20:53:58 +01:00
David Bauer
40cf3bc905
Merge pull request #2631 from blocktrron/cellular-support
gluon-core / web: add cellular WWAN support
2023-01-04 20:31:19 +01:00
David Bauer
8096277fe2
Merge pull request #2706 from blocktrron/rut230
ath79-generic: add support for Teltonika RUT230 v1
2023-01-04 19:40:29 +01:00
Jan-Niklas Burfeind
524044c552 packages: fix html indentation 2023-01-04 12:36:17 +01:00
Jan-Niklas Burfeind
961ca53c54 gluon-web: migrate to spdx license header 2023-01-04 12:35:33 +01:00
Jan-Niklas Burfeind
cf0c007829 gluon-web-admin: migrate to spdx license header 2023-01-04 12:35:33 +01:00
Jan-Niklas Burfeind
ce054e1c45 gluon-config-mode-theme: migrate to spdx license header 2023-01-04 12:35:33 +01:00
Matthias Schiffer
34ba8b3047
Merge pull request #2730 from AiyionPrime/minimized-js-naming
Minimized js naming
2023-01-04 12:05:19 +01:00
Martin Weinelt
28f3eb741a
Merge pull request #2744 from AiyionPrime/lua-indentation
lua indentation
2023-01-04 01:23:59 +01:00
Jan-Niklas Burfeind
0ec3207830 gluon-web-osm: add minify flag support 2023-01-03 20:16:09 +01:00
Jan-Niklas Burfeind
389314f58a gluon-web-model: add minify flag support 2023-01-03 20:16:09 +01:00
Jan-Niklas Burfeind
348e938957 editorconfig: remove now unused js exception 2023-01-03 20:16:09 +01:00
Jan-Niklas Burfeind
6c0f224456 gluon-status-page: mark minified js as such 2023-01-03 20:15:49 +01:00
Jan-Niklas Burfeind
4738610d5d gluon-ebtables-limit-arp: replace deprecated license identifier
"GPL-2.0+" with its successor "GPL-2.0-or-later"
2023-01-03 11:04:29 +01:00
Jan-Niklas Burfeind
34dcf4c978 gluon-ebtables-limit-arp: drop LICENSE file in favor of spdx 2023-01-03 11:04:29 +01:00
Jan-Niklas Burfeind
c05abb4179 package/gluon-*/luasrc: fix lua indentation 2023-01-03 10:23:22 +01:00
Jan-Niklas Burfeind
5ccbaed6f5 gluon-web-autopupdater: migrate to spdx license header 2023-01-03 10:18:41 +01:00
Jan-Niklas Burfeind
2aa3527fdc treewide: fix indentation in .sh files
to match the editorconfig

awk code in contrib/sign.sh and contrib/sigtest.sh
reformatted as gawk does
2023-01-03 09:02:28 +01:00
Jan-Niklas Burfeind
886f6387b7 gluon-web-osm: mark minified js as such
changes ln from third to first form (see man ln)
2023-01-03 07:45:43 +01:00
Jan-Niklas Burfeind
5f371a3cd4 gluon-web-model: fix mixed indentation 2023-01-03 07:45:43 +01:00
Jan-Niklas Burfeind
cad694a22a gluon-web-model: mark minified js as such
changes ln from third to first form (see man ln)
2023-01-03 07:45:43 +01:00
Jan-Niklas Burfeind
c03c92bca2 docs: fix mixed indentation for css files 2023-01-03 07:45:43 +01:00
David Bauer
c22956ca55 gluon-web-cellular: add package
This adds a new package which allows configuration of Gluons cellular
WWAN capabilities using the configuration mode. This way, a user can
enter APN information as well as the SIM PIN and enable / disable the
functionality.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-01-02 13:59:03 +01:00
David Bauer
55096d55f0 gluon-core: add cellular support
Add cellular configuration support to Gluon. This implementtaion focuses
not on hotpluggable WWAN adapters but instead on embedded LTE modems
found in travel-routers or FWA CPEs.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-01-02 13:59:03 +01:00
David Bauer
7d9d8cb61c ath79-generic: add support for Teltonika RUT230 v1
Signed-off-by: David Bauer <mail@david-bauer.net>
2023-01-02 13:58:06 +01:00
David Bauer
2b4d3c1b73
Merge pull request #2404 from freifunk-gluon/efi-images
x86: switch to EFI-compatible images
2023-01-01 23:13:35 +01:00
dependabot[bot]
5d10d327c5
build(deps): bump zeebe-io/backport-action from 0.0.9 to 1.0.1
Bumps [zeebe-io/backport-action](https://github.com/zeebe-io/backport-action) from 0.0.9 to 1.0.1.
- [Release notes](https://github.com/zeebe-io/backport-action/releases)
- [Commits](https://github.com/zeebe-io/backport-action/compare/v0.0.9...v1.0.1)

---
updated-dependencies:
- dependency-name: zeebe-io/backport-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-01 00:05:57 +00:00
Jan-Niklas Burfeind
21bf0fbf54
Merge pull request #2736 from freifunk-gluon/master-modules-bump
modules: update modules
2022-12-29 16:49:07 +01:00
Jan-Niklas Burfeind
4c94588908
Merge pull request #2738 from GoliathLabs/add-mir3gv1
ramips-mt7621: add Xiaomi Mi Router 3G
2022-12-29 16:42:43 +01:00
Felix
84a76af866 ramips-mt7621: add Xiaomi Mi Router 3G
Co-authored-by: Jan-Niklas Burfeind <git@aiyionpri.me>
fixed commit title
2022-12-29 16:40:16 +01:00
Christof Schulze
b6e98169fd
gluon-mmfd: add missing waitforsocket function (#2735)
Fixes #2732
2022-12-27 23:47:33 +01:00
Andreas Ziegler
a58de638c7
modules: update packages
91312dbde node: bump to v16.19.0
8445e9361 Merge pull request #20160 from stangri/openwrt-22.03-pbr
1478867e5 pbr: bugfix: Makefile, rt_tables fix
6c1d003fe Merge pull request #20154 from ysc3839/natmap-fix-2203
a426a62da natmap: add forward_port option
3730093bc Merge pull request #20114 from stangri/openwrt-22.03-pbr
8e9b85daf pbr: update to 1.0.1-1
40714e889 mwan3: make mwan3.user executable
d0a0fcad8 mwan3: update to 2.11.3
0dedc2059 mwan3: only send disconnected event if interface was connected before
8d1f90b7b mwan3: change log message on already added route
c70e2ad39 mwan3: support offload routing modifier
d8a77e90f mwan3: Switch default track_ip targets from Google DNS to Cloudflare DNS
33e0c6b20 mwan3: fix balanced default config
09604ee3e golang: Update to 1.19.4
694026540 privoxy: fix preinst/postinst script indentation
c54148631 tailscale: preserve tailscaled state file
f553dab19 knot: update to version 3.2.4
bf124d380 yt-dlp: update to 2022.11.11
91ca31025 perl: enable threading support for aarch64 by default
1f3b5ba00 lxc-auto: made init script compatible with image builder
ac64d8809 igmpproxy: update to version 0.4.0
e9bc14cf3 apr-util: disable parallel build
9481f437a python3-pytz: bump to version 2022.6
ea8cfdf02 nano: update to 7.1
4cd549b1e Merge pull request #20017 from commodo/stress-ng-update-22.03
cde7af980 wget: apply upstream fix to avoid nettle linking in nossl
e3a60c072 wget: update to 1.21.3
80443fc66 stress-ng: disable xxhash & libegl stressors
54a387fb9 Merge pull request #20063 from stangri/openwrt-22.03-pbr
9b29ac76a syncthing: update to 1.22.2
c4e6977a0 Merge pull request #20077 from stangri/openwrt-22.03-simple-adblock
6b6776ab5 Merge pull request #20073 from luizluca/22.03/ruby-3.0.5
cabc98c44 simple-adblock: bugfix: add dnsmasq.nftset to uci_load_validate
43c05fbed ruby: update to 3.0.5
c6ac63b5c pbr: detect missing iptables
e4813f4fe Merge pull request #20053 from stangri/openwrt-22.03-https-dns-proxy
8dc325222 https-dns-proxy: fix restart
2075769c4 Merge pull request #20043 from stangri/openwrt-22.03-https-dns-proxy
598197373 Merge pull request #20051 from stangri/openwrt-22.03-simple-adblock
1c6c8cee4 simple-adblock: support new OISD dnsmasq config
2022-12-25 02:38:17 +01:00
Andreas Ziegler
b41f805316
modules: update openwrt
6c3e16055a kernel: backport ksmbd security fix ZDI-22-1690
275c51bf40 Revert "image-commands.mk: Be consistent in command invocation"
fec4fb3a56 sunxi: remove frequency for NanoPi R1
51a763ab0f arm-trusted-firmware-sunxi: drop CPE ID
377d805887 trusted-firmware-a.mk: use correct CPE ID
f30414c56d kernel: bump 5.10 to 5.10.160
47ac52a7c4 ath79: image: don't depend on other COMPILE targets
da79da3ac1 image: fix device profile specific COMPILE targets
9aa95bbebb rules: fix broken commitcount on alpine system
fcff234fd8 image-commands.mk: Be consistent in command invocation
be7b97d873 sunxi: fix typo in device packages for MarsBoard A10
709351bf32 kernel: Make KERNEL_MAKEOPTS recursively expanded
3b066a6581 lantiq: vr9: include usb driver for fritz 7430
39dcfcd987 wolfssl: fix build with /dev/crypto
e51f3a22aa toolchain: Update glibc 2.34 to recent HEAD
298d2d0412 Revert "mbedtls: import patch to fix illegal instruction on mpc85xx"
3de4572ed3 tools/ccache: fix build with musl and gcc 12
8e43a44f08 rpcd: update to latest Git HEAD
f43ceb60d5 iwinfo: update to latest Git HEAD
31baecb70e iwinfo: update to the latest version
f34c4a950e iwinfo: update to the latest version
9b7a3e1a5e iwinfo: update to the latest version
ce881873c0 kernel: add missing dependency to KERNEL_RPI_AXIPERF
7ccb4c6651 kernel: add missing symbol for bcm27xx
b18a0d0b92 generic: add support for EON EN25QX128A spi nor flash
d909fb1d3b kernel: bump 5.10 to 5.10.159
e5cec69484 kernel: bump 5.10 to 5.10.158
3a58bda06b kernel: bump 5.10 to 5.10.157
ee2341cac6 kernel: add symbol in generic config for 5.10.157
bc64ca15d4 kernel: kmod-net-rtl8192su: Remove package
b1204ce28c umbim: Allow roaming and partner connections
15bc6b23c7 kernel: further cleanup of xfrm[4|6]_mode*
6e396eff1a kernel: remove handling of xfrm[4|6]_mode_* modules
78fc12ddd0 kernel: fix typo for tegra crypto-sha1 module
4408f7d564 kernel: add kmod-btsdio package
6b2c445b88 kernel: remove CONFIG_MMC_BLOCK_BOUNCE
aef33ab13a ath79: fix Teltonika RUT230 v1 MAC assignment
2022-12-25 02:38:02 +01:00
Andreas Ziegler
3c0f8596f0
Merge pull request #2731 from AiyionPrime/fix-targets-scripts-contrib
Fix targets, scripts & contrib
2022-12-19 01:21:13 +01:00
Jan-Niklas Burfeind
46d6bf8304 contrib/i18n-scan.pl: fix indentation 2022-12-19 00:49:52 +01:00
Martin Weinelt
6992a3d1ac scripts: fix mixed indentation 2022-12-19 00:49:44 +01:00
Martin Weinelt
6ed243fb2b targets: fix mixed indentation
Co-authored-by: Jan-Niklas Burfeind <github@aiyionpri.me>
removed x86-legacy, added ramips-mt7621
2022-12-19 00:49:36 +01:00
Jan-Niklas Burfeind
32853d6e5a
editorconfig: add dia files (#2728)
2 spaces
2022-12-18 20:59:24 +01:00
Jan-Niklas Burfeind
04b9935b9f
Dockerfile: fix mixed indentation (#2727) 2022-12-18 20:59:03 +01:00
Jan-Niklas Burfeind
047f4fb016
docs: consistently indent .rst files with 2 spaces (#2726)
follow-up on

commit 854fef4e12 ("docs: consistently indent .rst files with 2 spaces")
2022-12-18 20:57:46 +01:00
Jan-Niklas Burfeind
36e9a85e22
issue_template/bug_report: fix indentation (#2725)
and other trailing spaces
2022-12-18 20:57:06 +01:00
Jan-Niklas Burfeind
8ad1d7a2b4
Merge pull request #2690 from lemoer/pr_batman_respondd_addition_1_ui
gluon-status-page: show gateway_tq
2022-12-15 22:40:40 +01:00
lemoer
a02ff964d5 gluon-status-page: show gateway_tq
The gateway_tq was added to respondd in #2596. Now, we also show it on
the status page.
2022-12-15 20:16:08 +01:00
Jan-Niklas Burfeind
1f87d15912
Merge pull request #2297 from AiyionPrime/gluon-state-check_babeld
gluon-mesh-babel: implement neighbour check
2022-12-14 03:14:48 +01:00
Jan-Niklas Burfeind
85f3e40a14
Merge pull request #2723 from ffgraz/warn-fix
gluon-web-model: resolve hang when submitting form with disabled element
2022-12-14 02:55:55 +01:00
Matthias Schiffer
41b8ecd617
x86: switch to EFI-compatible images
The main difference between the non-EFI and EFI images generated by
OpenWrt is that the former uses an MS-DOS partition table, while the
latter uses GPT. The EFI images still have a BIOS-compatible MBR, so
they work fine on non-EFI systems.

Closes #2403
2022-12-13 22:27:53 +01:00
Maciej Krüger
a0db0a46b3
gluon-web-model: resolve hang when submitting form with disabled element
I was made aware of a bug when submitting the form while the element is
disabled based on it's dependencies

The fix was to inherit from AbstractValue instead of just node

AbstractValue's AbstractValue:resolve_node_depends() in particular
solves the issue, but it made more sense to just use the full base class
2022-12-13 21:18:41 +01:00
Maciej Krüger
535cc3f468
gluon-web-private-wifi: add translation for message
Co-authored-by: Matthias Schiffer <mschiffer@universe-factory.net>
2022-12-13 21:18:38 +01:00
Jan-Niklas Burfeind
d225befe93
Merge pull request #2709 from freifunk-gluon/dependabot/pip/docs/sphinx-rtd-theme-1.1.1
build(deps): bump sphinx-rtd-theme from 1.0.0 to 1.1.1 in /docs
2022-12-12 09:22:07 +01:00
David Bauer
4d70f1d950
docs: add LAN-AS-WAN label to FB 7520/7530 (#2722)
These devices use all LAN ports as a WAN bridge.

Closes #2721

Signed-off-by: David Bauer <mail@david-bauer.net>

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-12-12 00:47:45 +01:00
David Bauer
096f739477
Merge pull request #2530 from ffgraz/warn
gluon-web-model: add Warning
2022-12-11 03:05:09 +01:00
Andreas Ziegler
161a87eab8
docs: update v2022.1.x release notes' known issues section (#2682)
add link to issue #2672 in known issues section of the release notes
2022-12-10 23:50:28 +01:00
Jan-Niklas Burfeind
4b535b9383
Merge pull request #2708 from freifunk-gluon/dependabot/github_actions/zeebe-io/backport-action-0.0.9
build(deps): bump zeebe-io/backport-action from 0.0.8 to 0.0.9
2022-12-10 23:23:08 +01:00
Maciej Krüger
08684e90bb
web-private-wifi: add warning about mesh on wan 2022-12-10 22:49:34 +01:00
Maciej Krüger
408ef92215
misc: add Element global to .luacheckrc 2022-12-10 22:49:29 +01:00
Maciej Krüger
896c7c6d78
gluon-config-mode-theme: add .gluon-warning class 2022-12-10 22:49:29 +01:00
Maciej Krüger
30a6b76520
gluon-web-model: add Section:element and Element, add Warning template 2022-12-10 22:49:18 +01:00
David Bauer
4d61bc1bfa
Merge pull request #2707 from AiyionPrime/dgs-1210-10p
realtek-rtl838x: add support for D-Link DGS-1210-10P
2022-12-10 17:52:41 +01:00
Jan-Niklas Burfeind
a8dc234550 realtek-rtl838x: add support for D-Link DGS-1210-10P
as well as the target itself
2022-12-09 16:32:22 +01:00
Jan-Niklas Burfeind
e53308b61e generic: try to not attempt to build kmod-usbip
targets without usb-support fail to build without this change

Co-authored-by: David Bauer <mail@david-bauer.net>
2022-12-09 16:32:22 +01:00
Jan-Niklas Burfeind
ba80cbbab8
Merge pull request #2717 from AiyionPrime/master-updates
Master updates
2022-12-09 08:42:55 +01:00
Jan-Niklas Burfeind
ffe8cab516 modules: update packages
04eadf860 dnsproxy: Update to 0.46.4
f5547cfde cloudflared: Update to 2022.11.1
4abdc2f33 github-ci: error on any shell errors
798fe3f59 django: bump version 4.0.8
ce3e9d4b4 natmap: merge "ipv4" and "ipv6" options into single "family" option
0393a5c19 snowflake: update to version 2.4.1
ec2fbd57e natmap: add new package
2022-12-09 00:32:56 +01:00
Jan-Niklas Burfeind
b9d6a64eee modules: update openwrt
6cd1035d8d ramips: add support for Wavlink WS-WN572HP3 4G
3f7ce4bd40 comgt-ncm: add support for quectel modem EC200T-EU
03ab5a60da realtek: update GPIO bindings for DGS-1210-10P
63fde4607c ustream-ssl: update to Git version 2022-12-07
1c174fe0ba CI: kernel: don't checkout and install feeds
385f78780c CI: build: skip sdk adapt to external toolchain on cache hit
8be50c369b CI: build: fix use of sdk as toolchain
1af58a2d39 ramips: mt7621: enable lzma-loader for ZyXEL WAP6805
8fbf03690e ramips: mt7621: enable lzma-loader for netis WF2881
282dd271ad kernel: ca8210: Fix crash by zero initializing data
1a0f2c3a3e e2fsprogs: Fix CVE-2022-1304
1285938d2c bcm4908: Refresh kernel patches
2022-12-09 00:32:56 +01:00
Jan-Niklas Burfeind
016b34be23
Merge pull request #2705 from herbetom/docs-configmode-enter
docs: configmode: mention gluon-enter-setup-mode
2022-12-07 22:00:10 +01:00
Tom Herbers
b4f174a41d
docs: configmode: mention gluon-enter-setup-mode
The command was introduced in v2022.1 with #2459.

Co-authored-by: Jan-Niklas Burfeind <github@aiyionpri.me>
2022-12-07 21:47:05 +01:00
Jan-Niklas Burfeind
3283abbb93
Merge pull request #2554 from AiyionPrime/ath79-migrate-wndr4300
ath79-nand: (re)add WNDR4300v1
2022-12-06 23:58:17 +01:00
Andreas Ziegler
c535047274
Merge pull request #2713 from herbetom/master-updates
modules: update modules
2022-12-06 22:46:11 +01:00
Tom Herbers
92c80ed4a8
modules: update routing
0fb5e3c opennds: Release v9.9.1
2022-12-06 14:05:58 +01:00
Tom Herbers
a3091f3c59
modules: update packages
f6a688776 xz: update to 5.2.9
b1b1281da xz: update to 5.2.7
ed99f2f00 xz: update to 5.2.6
bdc161a07 tailscale: Update to version 1.32.3
26dabd374 tailscale: update to v1.32.0
fda81981b adguardhome: bump to 0.107.18
aa61ca8bf AdGuardHome: update to v0.107.16
acb201a0a AdGuardHome: update to v0.107.12
820bcedfd AdGuardHome: update to v0.107.11
12bc0789a btrfs-progs: Update to version 6.0.1
7e75519ac libgpg-error: copy gpg-error.pc to staging directory
c38abeb95 gnupg: compile with -fcommon
6d14306a6 privoxy: fix postinst missing $
7c1b94bb1 privoxy: correctly format /etc/services additions
a505d6f26 golang: update to v1.19.3
e0238d309 golang: update to v1.19.2
b90c80aae pbr: initial commit
6b21bd34f borgbackup: add package for 1.2.2
5a7ecd11e python-pyfuse3: add package for 3.2.2
bdf7a73cb python-trio: add package for 0.22.0
e2b1c2cd4 python-sniffio: add package for 1.3.0
e029bdb32 python-outcome: add package for 1.2.0
dd9ff1b6c python-async-generator: add package for 1.10
f0a093701 python-exceptiongroup: add package for 1.0.4
0310a6edf python-sortedcontainers: add package for 2.4.0
c5877bd65 xxhash: add package for 0.8.1
452681ea7 samba4: support both user map and valid users on same time
6de7a04c4 lighttpd: lighttpd.conf vars, comments, guidance
bc6431a94 lighttpd: print stderr trace if validation fails
cf8ce7a4e php8: update to 8.1.13
e057ed882 v2raya: backports upstream fixes and add 3 new options
fe96d64b8 v2ray-geodata: Update to latest version
a8858d1e3 xray-core: Update to 1.6.5
85a0f22ca yq: Update to 4.30.5
f19180a1d libqmi: bump to 1.30.8
6cf7648bd simple-adblock: localizable error/warning messages
91b205481 librespeed-go: add new package
2e7ce8a23 simple-adblock: bugfix: detect dnsmasq ipset support
80dd929bf https-dns-proxy: improve performance on restart
6f405bd56 pdns-recursor: update to 4.7.4
11d749180 liburing: Update to v2.3
17b54726d liburing: Update to v2.2
44781b792 ices: Update to 2.0.3
198459abe gphoto2: update to 2.5.28
b7c43947f libgphoto2: update to 2.5.30
a02a11f68 syncthing: update to 1.22.1
fdd9f725a syncthing: update to 1.20.1
94f709720 syncthing: add stdiscosrv and strelaysrv
8e7192b9b tvheadend: update to git master 2022-11-20
8a0333ed7 knot: update to version 3.2.3
0e190e5cd cloudflared: Update to 2022.11.0
714075bb6 ooniprobe: Update to 3.16.5
0de8e969e unbound: update to 1.17.0
7e25e745f librespeed-cli: rename binary to librespeed-cli
dfdf74ef9 rclone: Update to 1.60.1
e769b3fdb gg: Update to 0.2.15
bee5b07c6 sqlite3: Update to 3.40.0
554f0aed0 https-dns-proxy: update Makefile package descrition
03b41dbb5 xray-core: Update to 1.6.4
dcb6389f2 nextdns: Update to version 1.38.0
ffa5f4db8 nano: update to 7.0
20d5a2216 bcp38: migrate to nftables
fd3e15543 yq: Update to 4.30.4
b7166a81f frp: update to 0.45.0
b2081557f ariang: update to 1.3.2
5c1e58973 Revert "openthread-br: new package"
553d07845 simple-adblock: update to 1.9.3-1
71e8e63a3 yq: Update to 4.30.2
bf8a6584f yq: Update to 4.30.1
67b2ba78e rsync: update to 3.2.7
6fb9da0cd rsync: incorporate upstream fixes
0c4379d16 rsync: bump to 3.2.6
2022-12-06 14:05:58 +01:00
Tom Herbers
1005f9d233
modules: update openwrt
eb639e54fc ucode: update to latest Git HEAD
9b6dcf322b mvebu: disable also wrt32x due to broken switch
69ed96fba8 kernel: netconsole: add network console logging support
1f9bf1ee82 kernel: kmod-isdn4linux: Remove package
a3dee42206 kernel: kmod-w1-slave-ds2760: Remove package
2a1bf860f3 kernel: kmod-rtc-pt7c4338: Remove package
a0bae2fef8 mvebu: cortexa9: disable devices using broken mv88e6176 switch
309a6f22ba CI: trigger check also on build and check-kernel-patches workflow change
ec9ca325c0 CI: build: fix matching for openwrt release branch for toolchain parsing
63a2ea5470 CI: fix matching for openwrt release branch for container selection
9db78a7e86 CI: build: add support to fallback to sdk for external toolchain
47519a574c CI: build: add support for external toolchains from stable branch
05c3ee608f CI: build: add support for per branch tools container
f3cb0cfdf9 CI: tools: support per branch tools container
5fc4182f1e CI: Build all boards and testing kernel
31fb360f57 CI: Allow building with internal toolchain
e74479d559 CI: Extract the OpenWrt building to own sub workflow
b7e2e14912 CI: Simplify if conditions
8ac2cf6de9 CI: packages.yml: Fix usage of pre-build tools
db347be0b3 CI: packages: Add github CI job to build all packages
99524d49b4 CI: kernel: fix deprecation of set-output
de29c8bda7 ci: kernel: trigger build check on changes in kernel.mk as well
b93a59352f CI: kernel: check if patch are refreshed for each target
d070707379 CI: bump actions/download,upload-artifact action to v3
69414201ae CI: bump actions/checkout action to v3
8c4e39eb08 CI: kernel: generate ccache cache on kernel push
303b784cc8 build: harden GitHub workflow permissions
b3e8d58151 Revert "build: harden GitHub workflow permissions"
431875b3df CI: kernel: use ccache to speedup workflow
8bbaa486cb CI: tools: compile tools with ccache support for tools container
c2df98c49c CI: Add workaround for github uppercase usernames
daeb367dc1 CI: use tools:latest container to speedup kernel workflow
fccf42cb05 CI: create Docker container containing compiled tools
047e68adb1 CI: use buildbot container for building
a69b9a8962 ci: show build failures directly in job log output
f2fb3ffd71 ci: move scripts into separate directory
7ff1477b3d CI: package kmods in kernel workflow
2f9b35624d CI: kernel: Cache external toolchain
1f13c8cd24 CI: kernel: Build all kernel modules
c3ed9f36ee CI: kernel: Checkout feeds from github
0987df4af1 CI: kernel: Show used OpenWrt configuration
f7affcd614 CI: kernel: Use downloads.cdn.openwrt.org
0f71cf7ab6 CI: kernel: Trigger workflow for more directories
586be47078 CI: run inside the buildbot docker container
0e46907ff5 CI: add Kernel compile tests
119c6573c4 CI: usability improvements for tools
ac7b1c8e94 build: handle directory with whitespace in AUTOREMOVE clean
439e19de96 scripts/ext-tools: introduce new script to install prebuilt tools
d419136ad5 build: make find_md5 reproducible with AUTOREMOVE
be2da47ced ath79: expand rootfs for DIR-825-B1 with unused space
087a2a4691 mac80211: Update to version 5.15.81
83c70346ac base-files: support "metric" in board.json
5167bcf2fc kernel: update U-Boot nvmem driver to v6.2 release version
bf1c4f1eba bcm4908: update DTS files with the latest changes
44fad4b1f6 bcm4908: fix Asus GT-AX6000 image
c45f44165b bcm4908: use upstream patches for Asus GT-AC5300 LEDs
7d63c39bf4 CI: labeler: fix wrong label for pr targeting stable branch
e516c31e14 CI: add support to tag pr targeting stable branch
8b95e14e32 Revert "CI: Add release/22.03 label to all pull requests"
ce1de42096 layerscape: Fix SPI-NOR issues with vendor patches
a704216259 mt76: move the mt7921 firmware to its own package
e7497d1083 CI: Add release/22.03 label to all pull requests
c43b5e71b8 CI: labeler: target major version of labeler action
008e9a335d build: harden GitHub workflow permissions
c7757810fc CI: include automatic Pull Request Labeler
2b5154214c ipq40xx: luma_wrtq-acn329: swap ethernet MAC addresses
68add5f364 ath79: mikrotik: use OpenWrt loader for initram image
a907c20340 kernel: add kmod-hwmon-sht3x support
a4af427d80 procd: service: pass all arguments to service
106fedd9ed ath79: fix MAC address assigment for TP-Link TL-WR740N/TL-WR741ND v4
8040f74f8d tools/patch: apply patch for EACCES on xattr copy
eda395a5e0 wolfssl: update to v5.5.3
0b22e87db0 ath79: D-Link DIR-825 B1 add factory.bin recipe
de6c3cca4d mbedtls: import patch to fix illegal instruction on mpc85xx
302ef2137d mt76: add firmware package for mt7916
844de50b7b ath79: disable image building for Ubiquiti EdgeSwitch 8XP
af0c128368 lantiq: add 6.1 tag to upstream patch
a4e8ff5ab4 lantiq: enable interrupts on second VPEs
dca73263a4 lantiq: xrx200: backport upstream network fixes
078bdc1856 kernel: bump 5.10 to 5.10.156
b7388191a5 kernel: bump 5.10 to 5.10.155
61e1f6541d kernel: modules: package Marvell gigE PHY driver
64da7c8af7 bcm27xx: fix CI build after config refresh
3564c22e46 bcm27xx: disable duplicate sdhost driver
353e468f47 kernel: support "linux,rootfs" DT property for splitting rootfs
b66037f53b bcm53xx: update DTS files with the latest changes
58a73b1135 kernel: improve description of NTFS kernel packages
932378aeb6 kernel: backport support for "linux,rootfs" in DT
af20d9d03b kernel: split out mtd hack for CONFIG_FIT_PARTITION + rootfs
2022-12-06 14:05:53 +01:00
Jan-Niklas Burfeind
32fe29a4a1
Merge pull request #2712 from freifunk-gluon/aiyion/ac2
ipq40xx-mikrotik: add mikrotik-hap-ac2
2022-12-06 07:44:31 +01:00
Maciej Krüger
68bec1f0ec ipq40xx-mikrotik: add mikrotik-hap-ac2
Co-authored-by: Jan-Niklas Burfeind <github@aiyionpri.me>
2022-12-05 23:01:12 +01:00
Jan-Niklas Burfeind
aa6853dddd
Merge pull request #2700 from misanthropos/re200v3
targets/ramips-mt76x8: add device TP-Link RE200 V3
2022-12-02 16:15:31 +01:00
dependabot[bot]
d39557aadc
build(deps): bump sphinx-rtd-theme from 1.0.0 to 1.1.1 in /docs
Bumps [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) from 1.0.0 to 1.1.1.
- [Release notes](https://github.com/readthedocs/sphinx_rtd_theme/releases)
- [Changelog](https://github.com/readthedocs/sphinx_rtd_theme/blob/master/docs/changelog.rst)
- [Commits](https://github.com/readthedocs/sphinx_rtd_theme/compare/1.0.0...1.1.1)

---
updated-dependencies:
- dependency-name: sphinx-rtd-theme
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-01 00:01:24 +00:00
dependabot[bot]
4f0c7447b4
build(deps): bump zeebe-io/backport-action from 0.0.8 to 0.0.9
Bumps [zeebe-io/backport-action](https://github.com/zeebe-io/backport-action) from 0.0.8 to 0.0.9.
- [Release notes](https://github.com/zeebe-io/backport-action/releases)
- [Commits](https://github.com/zeebe-io/backport-action/compare/v0.0.8...v0.0.9)

---
updated-dependencies:
- dependency-name: zeebe-io/backport-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-01 00:01:10 +00:00
Richard Fröhning
5a6517425b targets/ramips-mt76x8: add device TP-Link RE200 V3
Signed-off-by: Richard Fröhning <misanthropos@gmx.de>
2022-11-15 12:54:01 +01:00
Jan-Niklas Burfeind
8ce7dd15a3
docs/supported_devices: regroup revisions (#2704)
affected:
- CPE510
- WBS210
- Archer C50
2022-11-14 12:53:22 +01:00
David Bauer
3a93405a99
openwrt: add patch to expose unset symbols (#2702)
The GitHub actions pipeline is not interrupted for unset symbols due to
OpenWrt not failing in all cases of unset symbols.

Adda patch to consistently fail for unset symbols.

Ref #2701 (build process is waiting for user input)

Signed-off-by: David Bauer <mail@david-bauer.net>

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-11-14 09:25:54 +01:00
David Bauer
7a49faec4a
Merge pull request #2703 from blocktrron/upstream-master-updates
modules: update modules
2022-11-14 09:25:35 +01:00
David Bauer
91329b5230 modules: update routing
d9cd6ef batman-adv: Merge bugfixes from 2022.3
2022-11-13 22:33:36 +01:00
David Bauer
150f91a480 modules: update packages
a74d1b82e zerotier: update to 1.10.2
8aec58f78 irqbalance: update to 1.9.2
fc62b59a9 gg: Update to 0.2.14
5423b2d10 v2ray-geodata: Update to latest version
ddc4edc5b xray-core: Update to 1.6.3
27dd30aad openthread-br: new package
bf2eb2333 golang: update to version 1.18.8
48fc50950 qcsuper: add package
3e63425d7 python-pycrate: add package
2466b3c0d python-crcmod: add package
c2b7f86a8 ffmpeg: libffmpeg-full package should provide libffmpeg package, too
2022-11-13 22:33:36 +01:00
David Bauer
07e83438c1 modules: update openwrt
8c1f8f9978 ipq40xx: ZTE MF286D: fix DEVICE_PACKAGES
54dc60e71d generic: fix unset symbol
c837fc9cdb kernel: bump 5.10 to 5.10.154
bbad2ee4de kernel: bump 5.10 to 5.10.153
d2ae7613b5 ramips: improve compatibility for Youku YK-L2 and YK-L1 series
9155d40513 ramips: gl-mt1300: downclock SPI to 50MHz
ca124d2e4b ramips: mt7621: use seama-lzma-loader for D-Link DIR-860L B1
fafc9448ae ramips: rt3883: use seama-lzma-loader for D-Link DIR-645
292d3f00c7 ramips: define lzma-loader recipe for SEAMA devices
d25e1a3bde ath79: fix MAC address assignment for TP-Link ar7241 devices
7fa6351310 tools/expat: update to 2.5.0
8122aa92fd ath79: add support for Linksys EA4500 v3
1133a8f805 ath79: add support to TrendNet TEW-673GRU
5725b773b4 qoriq: fix typo in FEATURES
615dbec223 mac80211: fix mesh airtime link metric estimation
a26f7e61e8 mac80211: fix issues with receiving small STP packets
bfeffb8aed mac80211: fix decap offload for stations on AP_VLAN interfaces
88c43b5887 hostapd: remove invalid dtim_period option processing
2022-11-13 22:33:36 +01:00
edeso
53e9997a4a
ath79-generic: enable ath10k-smallbuffers for low memory ath10k boards (#2699)
fixes OOM reboots due too limited ram with ath10k 5Ghz enabled
add some comments to describe the need for ath10k-ct replacement
tested stable on an TP-Link Archer C25v1
more details
694757a08f
2022-11-10 04:54:47 +01:00
Andreas Ziegler
4ef9504c4e
Merge pull request #2698 from AiyionPrime/master-updates
modules: update to latest HEAD
2022-11-08 21:37:58 +01:00
aiyion.prime
bc09b7ecbb ath79-nand: (re)add WNDR4300v1
Gone due to
commit 45c84a1 ("ar71xx: drop target")
2022-11-08 21:08:31 +01:00
Jan-Niklas Burfeind
d8a2bc6a18 modules: update packages
2f7a640bc simple-adblock: update to 1.9.2-4
2022-11-08 14:33:38 +01:00
Jan-Niklas Burfeind
6f534fb6b0 modules: update openwrt
4628e7ae4d ramips: backport TP-Link RE200 v3/v4 LED fix
1d095c1d43 strace: replace PKG_CPE_ID
d84cf62000 strace: update to 5.19
8650f77314 strace: add nls.mk
0b80a7da58 strace: update to 5.18
faf9d20a21 strace: update to 5.17
2022-11-08 14:33:23 +01:00
David Bauer
da8eee86cf
Merge pull request #2691 from herbetom/master-updates
modules: update to latest HEAD
2022-11-08 12:43:36 +01:00
Kistelini
a072a71213
gluon-core: preserve wireless channel width during updates (#2696)
If the uci option 'gluon.wireless.preserve_channels' is set then the channel width of wireless radios (htmode) is preserved during updates, too.
2022-11-08 10:00:27 +01:00
txt-file
200e302a56
contrib: remove downloaded *.deb files from OCI container (#2697)
`apt-get clean` clears out the local repository of retrieved package files.
It removes everything but the lock file from /var/cache/apt/archives/ and
/var/cache/apt/archives/partial/.

Co-authored-by: Vieno Hakkerinen <vieno@chemnitz.freifunk.net>
2022-11-07 21:25:31 +01:00
Grische
b11d983bbc
contrib: update minimal-site site.conf for v2022.1 (#2683)
This updates the site.conf based on docs/site-example/site.conf for v2022.1
2022-11-07 02:29:39 +01:00
David Bauer
acc89e403a
Merge pull request #2689 from blocktrron/pr-nwa55axe
ramips-mt7621: add support for ZyXEL NWA55AXE
2022-11-07 02:29:02 +01:00
Tom Herbers
b686020209
modules: update packages
c5974e7d1 xray-core: Update to 1.6.2
458836e6c pulseadio: fix conffiles for pulseadio-daemon-avahi package
01cb4fc41 hub-ctrl: trim trailing spaces
3f4cc35d1 announce: trim trailing spaces
58b48b2df knot: update to version 3.2.2
8a106f066 pulseaudio: change homepage URLs to freedesktop.org
58a5e8a5e pulseaudio: use AUTORELEASE variable
05be550e7 pulseaudio: daemons should conflict to each other
6a4b1d195 pulseaudio: simplify and rework Makefile
e8c169693 luaexpat: trim trailing spaces
8f85f8984 squid: trim trailing space
8ff324419 mini_snmpd: trim trailing spaces
1fcbe2d6e lynx: trim trailing space
e4a3e0d94 librespeed-cli: add package
503e3a0e3 zoneinfo: updated to the latest release
db2989ebc zoneinfo: updated to the latest release
de77e2320 zoneinfo: updated to the latest release
cb7fe299f mpd: depend the full variant on pulseaudio instead of pulseaudio-daemon
4d8a00e54 php8: update to 8.1.12
1f71809d6 cloudflared: Update to 2022.10.3
18854f6f8 rclone: Update to 1.60.0
81b355ec5 yq: Update to 4.29.2
58bd7b001 curl: bugfix: building as selected package doesn't break build
cc160ea8d curl: update to 7.86.0
6f4e73287 python3-pytz: bump to version 2022.5
0bca5e2a0 curl: include nls.mk
56380fb01 dnsproxy: Update to 0.46.2
1acc8e3e7 v2ray-geodata: Update to latest version
ab97e3d50 xray-core: Update to 1.6.1
a1fbaa704 xray-core: remove orphan xray-geodata definition
0b68bfd6c node: bump to v16.18.0
f916e3426 ffmpeg: add conflicts and provides
f7d592607 bandwidthd: fix time_t problem Fixes issue #19510 with the change in time_t with musl 1.2
1cebcd66f atlas-probe: fix SIGSEGV error on 32bit system
ea7a0739a samplicator: update to latest master commit 2021-10-11
b4d1b8424 libwebsockets: fix recursive dependency
b2727bbe0 simple-adblock: rename wan6_trigger option
fa567eef0 https-dns-proxy: rename options
fefd89f77 libwebsockets: OpenSSL and mbedTLS variants should conflict
21ac9491f libwebsockets: full variant provides OpenSSL
deefa58a8 lighttpd: backport patch to fix dummy Sec-WebSocket-Key
54f3c8444 mariadb: Drop unused rundir fix socket dir perms
6f49212bc https-dns-proxy: add version information to binary
0be9e78c0 simple-adblock: service_triggers improvements
e7b83b5a5 https-dns-proxy: bugfix: restore empty server; misc improvements
2022-11-06 23:18:36 +01:00
Tom Herbers
56fddc608f
modules: update openwrt
e95b359eaa kernel: netsupport: Add FQ-PIE as an optional sched kmod and extract PIE
051c24c69a kernel: extract kmod-sched-act-ipt from kmod-sched
23ccc71c61 kernel: netsupport: Extract act_police
3ca45248fd kernel: netsupport: Add kmod-sched-act-sample
7ee55d82fc kernel: netsupport: Extract sched-prio and sched-red
31fd96bdbd kernel: netsupport: Add kmod-sched-drr
c61ed09228 kernel: netsupport: kmod-sched: Reorder packages
26b58991b0 ipq40xx: fix ZTE MF289F port mapping
71178a8506 ipq40xx: Fix wrong GPIO for internal status LED on ZTE MF289F
3e15a54bb0 ipq40xx: Add ZTE MF289F
7a77aacb31 uboot-envtools: Fix format of autogenerated sectors
b3b3428a0e openssl: bump to 1.1.1s
e313cd8d15 uboot-layerscape: adjust LS1012A-IOT config and env
77522d4eb7 dnsmasq: Backport DHCPv6 server fix (CVE-2022-0934)
13bd217821 busybox: awk: fix use after free (CVE-2022-30065)
fe5cd3c9d9 util-linux: Update to version 2.37.4
84b3eafe39 bcm4908: backport upstream BQL support for bcm4908_enet
0ff3adfa11 kernel: bump 5.10 to 5.10.152
0abcea19d7 kernel: bump 5.10 to 5.10.151
0667688a40 kernel: bump 5.10 to 5.10.150
fe58ee9057 ramips: Correct Unielec 01 and 06 dts wan macaddr byte location
6c5313d77c bcm4908: backport bcm4908_enet fix for NULL dereference
91e4a74fff bcm4908: optimize Ethernet driver by using build_skb()
b4bc9eb837 kernel: mtd: backport SafeLoader parser
18c77387c5 kernel: mtd: backport extended dynamic partitions support
2022-11-06 23:18:28 +01:00
David Bauer
91bfa4f9c5 ramips-mt7621: add support for ZyXEL NWA55AXE 2022-10-31 12:30:37 +01:00
Jan-Niklas Burfeind
4936b416b8
Merge pull request #2686 from herbetom/master-updates
modules: update to latest HEAD
2022-10-24 20:57:18 +02:00
Tom Herbers
9c2ee67009
modules: update routing
6b612cd alfred: Rebuild on CONFIG*_ALFRED_* changes
2e28186 batman-adv: Rebuild on CONFIG_BATMAN_ADV_* changes
2022-10-24 16:26:38 +02:00
Tom Herbers
db6b9deca6
modules: update packages
7132a6b55 adblock: update 4.1.5-4
55c412f4b softflowd: use %lld for time_t always
507620154 mariadb: Update to the latest version 10.6.10
7278c00b2 adblock: update 4.1.5-3
15ce9af90 treewide: fix procd service inactive
31b99e256 dnsproxy: Update to 0.45.4
ad1d25d0b https-dns-proxy: bugfix: prevent creation of empty interface trigger
45cdc8646 simple-adblock: remove unnecessary procd_add_reload_interface_trigger
667ba4294 adblock: update 4.1.5-2
1b93c3104 https-dns-proxy: bugfix: remove canary domains
7a7b95639 https-dns-proxy: bugfix: remove wan6 from procd triggers
9b6e0fde7 irqbalance: update to 1.9.1
40006c97c irqbalance: add meson
dc768d941 irqbalance: handle deepestcache option
b365fdf8c adblock: update 4.1.5
de80dad8c ddns-scripts: fix cloudflare&digitalocean provides
b0e520855 ddns-scripts: add PROVIDES for old package names
e8fc00367 simple-adblock: update to 1.9.2-1
f8262f405 tailscale: add version tests
20595747f tailscale: fix -version
37fd7c031 libxml2: update to 2.10.3
ceba4b361 https-dns-proxy: upstream bugfix for ca_info
b201f469c numpy: bump to version 1.23.3
93d378788 nebula: implement netifd support
746c6519f smartdns: update to 1.2022.38.1
2022-10-24 16:26:37 +02:00
Tom Herbers
1a7acd4699
modules: update openwrt
00d7702796 mac80211: Update to version 5.15.74-1
7a3d5959af ath79: fix reference clock for RouterBoard 912UAG
b5cb5f352d ramips: fix WAN mac address allocation for Unielec 01 and 06 models
ef5b1ffb9e ramips: rt3883: enable lzma-loader for Belkin F9K1109v1
b0ab21d9d0 ramips: mt7621: enable lzma-loader for Asus RT-N56U-B1
40465adbbf bcm53xx: enable Broadcom 4366b1 firmware for Asus RT-AC88U
b37ff14302 wireless-tools: add package CPE ID
69e6486136 ncurses: add package CPE ID
573606991e arm-trusted-firmware-sunxi: add package CPE ID
714345d35a libnftnl: add package CPE ID
e946d9aa9d octeon: fix imagebuilder generation by introducing generic target
6cffcb2e9f ath79: support Ruckus ZoneFlex 7321
85a7588c90 ath79: support Ruckus ZoneFlex 7372
08969f61b0 kernel: add kmod-nvme package
c1c85629b9 kernel: mtd: fix unbalanced of_node_put() in dynamic partitions code
5c0c01d226 kernel: bump 5.10 to 5.10.149
980aad01d1 kernel: bump 5.10 to 5.10.148
fb11c63511 kernel: bump 5.10 to 5.10.147
8fefd5c26c mt7621: hiwifi_hc5962: fix reboot loop by using LZMA loader
f59dcb92cf ucode: update to latest Git HEAD
f1d7f1c70f firewall4: update to latest Git HEAD
36a808b7bc mt7621: netgear_ex6150: fix reboot loop by using LZMA loader
12acecd114 OpenWrt v22.03.2: revert to branch defaults
ea845f76ea OpenWrt v22.03.2: adjust config defaults
9a599fee93 firewall4: update to latest Git HEAD
30de1b5031 ucode: update to latest Git HEAD
fa4ec03993 rpcd: update to latest Git HEAD
2022-10-24 16:26:29 +02:00
Jan-Niklas Burfeind
e828ff190f
Merge pull request #2577 from dg0tm/fix_site-example
docs: fix site-example
2022-10-24 10:29:51 +02:00
Christoph Kottke
36ab60ff45 docs: fix site-example 2022-10-24 07:55:24 +02:00
David Bauer
2f318afd2e
Merge pull request #2648 from grische/proper_7360v2_migration
xrx200: ensure the correct version for fritz7360
2022-10-21 13:33:53 +02:00
David Bauer
cea79e9e63
Merge pull request #2681 from grische/feature/fritz7520
ipq40xx-generic: add AVM FRITZBox 7520 explicitely
2022-10-21 13:33:33 +02:00
Grische
5888a50cba ipq40xx-generic: add AVM FRITZBox 7520 explicitely
AVM Fritz!Box 7520 and Fritz!Box 7530 use the same hardware platform and can
only be distinguished by using the urlader partition or the fritz-tffs tools
and read the ProductID (Fritz_Box_HW247).
2022-10-21 13:10:26 +02:00
Grische
e4ec16d9cd xrx200: migrate fritz7360-v2 using incorrect image
Migrate AVM FRITZ!Box 7360 v2 boards flashed with the incorrect v1 image to use
the newly added v2 target image during the next upgrade.
Using the v2 target image allows the boards to read the TFFS partition, which
is misaligned when using the v1 image.

Co-authored-by: Jan-Niklas Burfeind <git@aiyionpri.me>
2022-10-18 20:06:07 +02:00
Martin Weinelt
8f5636a713
Merge pull request #2678 from blocktrron/backport-v2022.1.1-rn 2022-10-18 10:55:35 +02:00
Martin Weinelt
0c66dc86d2
Merge pull request #2600 from herbetom/bridge-isolated-devices 2022-10-18 10:50:03 +02:00
David Bauer
e049e0bd4b docs: add Gluon 2022.1.1 release notes
(cherry picked from commit 59c5eb6866)
2022-10-18 10:39:59 +02:00
Martin Weinelt
8528a85089
Merge pull request #2674 from AiyionPrime/fix-tl-wr4900v1name 2022-10-17 15:51:19 +02:00
Jan-Niklas Burfeind
aa35559f13
Merge pull request #2673 from blocktrron/nwa50ax
ramips-mt7621: add support for ZyXEL NWA50AX
2022-10-17 15:21:44 +02:00
Jan-Niklas Burfeind
267124b520 supported_devices: specify revision of wdr4900 v1 2022-10-17 14:33:45 +02:00
David Bauer
33fa77a760 ramips-mt7621: add support for ZyXEL NWA50AX 2022-10-15 13:57:37 +02:00
David Bauer
1077984193
Merge pull request #2671 from blocktrron/wdr4900-updates
mpc85xx-p1010: re-enable TP-Link WDR4900
2022-10-15 11:15:04 +02:00
David Bauer
301443da02 mpc85xx-p1010: re-enable TP-Link WDR4900
Upstream added a standalone SPI kernel-loader which fixes the unbootable
image for the WDR4900. Thus, we can re-introduce this device to Gluon.

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-10-15 02:10:26 +02:00
David Bauer
95385f6de7 modules: update packages
dba8a0102 gnunnet: halt build if any command fails
c1700e3a3 gnunnet: don't copy non-existing files
9c68da83e gnunet: gnunet-rest: add libjose dependency
e1d799255 opendoas: avoid libpam dependency
53c0a2767 Revert "wget: update to 1.21.3"
e0502e477 zabbix: add variants for SSL support opkg does not offer ssl varients: zabbix-agentd zabbix-sender zabbix-get zabbix-proxy zabbix-server
f9bbda2e4 wget: update to 1.21.3
0f48935ab auc: update to 0.3.1
62a7ef57d auc: update to version 0.3.0
427008a2a snowflake: update to version 2.3.1
d57a6a35b perl-net-dns: update to version 1.35
b4be6d6b1 pcsc-lite: update to verion 1.9.9
37de51dba gawk: update to version 5.2.0
5ca1c82f8 libksba: update to version 1.6.1
c033edcca gnunet: update to version 0.17.5
30b493619 libp11: update to version 0.4.12
f8f768f90 libinput: update to version 1.19.4
19874c3a7 libevdev: update to version 1.13.0
7dc69e306 postgresql: update to version 14.5
4493098f6 pcsc-lite: update to version 1.9.8
5d5348bc5 exim: update to version 4.96
8013e8929 gpgme: update to version 1.18.0
d0dd2a730 cryptsetup: update to version 2.5.0
c2296d930 lvm2: update to release 2.03.16
2022-10-15 02:10:26 +02:00
David Bauer
c5e297e9c8 modules: update openwrt
a7fb589e8a image: always rebuild kernel loaders
5db6914f7c mpc85xx: p1010: make TP-Link WDR4900 v1 build again
f7a43e4606 mpc85xx: add SPI kernel loader for TP-Link TL-WDR4900 v1
c1fcca50ba ramips: fix ZyXEL NWA55AXE model name
2050bc4f64 ramips: add support for ZyXEL NWA50AX / NWA55AXE
bc8e24c654 busybox: nslookup: ensure unique transaction IDs for the DNS queries
2022-10-15 02:10:26 +02:00
Jan-Niklas Burfeind
935e0534ac
Merge pull request #2668 from herbetom/master-updates
modules: update to latest HEAD
2022-10-13 20:47:31 +02:00
Tom Herbers
b8bb950e62
modules: update routing
8502870 opennds: Release v9.9.0
2022-10-13 15:14:43 +02:00
Tom Herbers
3e0919d6a4
modules: update packages
33d0a7adc python3: update to 3.10.7
bb4943d55 curl: error out if wolfSSL is not usable
4d900b2a1 v2ray-geodata: split from xray-geodata
9bdab0d79 v2ray-core: add new package
bda5d8e3b yq: Update to 4.28.1
0e4e3743f cloudflared: Update to 2022.10.0
f5d5326c0 cloudflared: Update to 2022.9.1
972fb7861 gg: Update to 0.2.13
c243509b6 dnsproxy: Update to 0.45.2
44034384a dnsproxy: Update to 0.45.0
a1d8cd172 python3-pytz: bump to version 2022.4
2022-10-13 15:14:42 +02:00
Tom Herbers
416d75d48a
modules: update openwrt
f1de43d0a0 mac80211: backport security fixes
a077c6da98 mac80211: merge upstream fixes
b6487c3ccc ramips: skip bbt scan on mt7621
33457ebf0b ramips: enable support for mtk_bmt in the nand flash driver
cc8326443d ramips: mt7621_nand: initialize ECC_FDMADDR
1918404b1d ramips: mt7621_nand: reduce log verbosity
07ea71c7b7 ramips: move mt7621_nand driver to files
fb31038e1f kernel: mtdsplit: support UBI after FIT images
329b1543f3 kernel: mtk_bmt: skip bitflip check if threshold isn't set
42c8610efc kernel: mtk_bmt: add debugfs file to attempt repair of remapped sectors
bb5d415b19 kernel: add support for mediatek NMBM flash mapping support
737ee934d2 kernel: mtk_bmt: on error, do not attempt to remap out-of-range blocks
a78fd5bbb6 kernel: mtk_bmt: fix block copying on remap with bmt v2
0c21f06ef7 kernel: mtk_bmt: allow get_mapping_block to return an error
a2ce32579f kernel: split up mtk_bmt driver code
c2d55b73d9 OpenWrt v22.03.1: revert to branch defaults
eca6fc6ea0 OpenWrt v22.03.1: adjust config defaults
2022-10-13 15:14:40 +02:00
goligo
d3a220d10b
ath79-generic: Fix autoupdater for Loco M XW from v2021.1.x to v2022.1.x (#2664)
Ubiquiti Nanostation Loco M XW was renamed in v2022.1.x, but the alias to the old name was missing, so devices running the old release did not update.
2022-10-12 01:21:32 +02:00
Tom Herbers
33adfb1aeb
ath79: add support for Extreme Networks WS-AP3805i (#2659) 2022-10-08 15:56:21 +02:00
David Bauer
ece6a62637
hostapd: don't select indoor channel on outdoor operation (#2650)
Don't select channels designated for exclusive-indoor use when the
country3 element is set on outdoor operation.

This effectively prevents from using indoor-only channels in case
outdoor-mode is activated. It can be seen as a safeguard from selecting
inapprpriate channels in a site outdoor-chanlist.

Signed-off-by: David Bauer <mail@david-bauer.net>

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-10-08 02:51:31 +02:00
David Bauer
ad481c9f4f
Merge pull request #2661 from herbetom/master-updates
modules: update to latest HEAD
2022-10-08 01:49:00 +02:00
Tom Herbers
e4c7b7d29e modules: update packages
d3a4c41a5 bind: bump to 9.18.7
47e5343d5 https-dns-proxy: update to 2022-08-12-1
2022-10-08 01:45:12 +02:00
Tom Herbers
3f880e4678 modules: update openwrt
2853b6d652 ath79: fix model name of Extreme Networks WS-AP3805i
2022-10-08 01:45:03 +02:00
David Bauer
ebe3ca9d33
Merge pull request #2657 from herbetom/master-updates
modules: update to latest HEAD
2022-10-08 01:19:27 +02:00
Tom Herbers
32e7cf941a
modules: update packages
5df363db7 libgd: avoid recursive and redundant dependencies
24ad5359f tor: update to 0.4.7.10
1a070a289 expat: update to 2.4.9
2f2989e3e lighttpd: remove deprecated modules
f9515613f node: bump to v16.17.1
7869127db https-dns-proxy: add settings for canary domains
a4a6411e1 https-dns-proxy: bugfix: prevent canary domains duplicates
f624e41f3 treewide: fix security issues by bumping all packages using libwolfssl
ea8108a31 Revert "treewide: fix security issues by bumping all packages using libwolfssl"
0ddec62e6 treewide: fix security issues by bumping all packages using libwolfssl
2d061d1cb openvpn: explicitly disable engine parameter for openssl variant
0c670f870 openvpn: update to 2.5.7
50ae0353a openvpn: update to 2.5.6
8377e516e rtty: update to 8.0.1
7acb46001 php8: update to 8.1.11
52ddf2f0b nextdns: initialize nextdns from /etc/uci-defaults
eddc92a17 dnslookup: Update to 1.8.0
356534dd4 simple-adblock: allow domains bugfix & canary domains support
de00aad59 https-dns-proxy: uci wrappers & iCloud canary domains
b0e693092 bandwidthd: fix format warnings
a9423d894 unbound: update to version 1.16.3
d053da000 simple-adblock: update to 1.9.1-1
bc1598892 curl: bugfix: github source url
eed717e6e pdns-recursor: update to 4.7.3
8df44cb6e libs/cjson: bump to 1.7.15
44f898f98 pagekite: add patchs for 64bit time
d5aa9d76e mosquitto: bump to 2.0.15
4419a76ba mosquitto: add missing 'persistence' section in config
376f1afdd poemgr: update to latest HEAD
1eea84cca poemgr: fix conffiles path
5092dbd14 adblock: update 4.1.4-5
3f9a88d21 adblock: add lightswitch05 blocklist source
0247d720e hping3: add new package
be7e4f8e3 snowflake: run snowflake-proxy with procd-ujail
8c028f4fd snowflake: add package
aaedc165d squid: fix compilation with libxml (fixes #19099)
e563fe383 gatling: add package gatling
81c068840 gg: Update to 0.2.11
40106c7dc yq: Update to 4.27.5
05d1265cb xray-core: Update to 1.6.0
8a2bd2754 lighttpd: update to lighttpd 1.4.67 release hash
4df5d1348 tang: update directory
f50dc54f2 Revert "jose: remove libjose"
9550d45fd Revert "jose: fix static library usage"
5a02ae2fe knot-resolver: update to 5.5.3
88257a87a libtorrent-rasterbar: Update to 2.0.7
954dd3b90 dockerd: Update to v20.10.18
a2defb8a6 docker: Update to v20.10.18
78949c659 libnetwork: Update to 0dde5c8 for Docker v20.10.18
3ffff095c containerd: Update to v1.6.8 for Docker v20.10.18
3ef01e4dd runc: Update to v1.1.4 for Docker v20.10.18
1e329ed5e libxml2: update to 2.10.2
c4d8769c8 curl: update to 7.85.0
2022-10-06 16:11:23 +02:00
Tom Herbers
29b26c467d
modules: update openwrt
f579b8538b ath79: add low_mem to tiny image
4b5bd15091 ath79: move ubnt-xm to tiny
977f6f36a0 kernel: fix possible mtd NULL pointer dereference
562894b39d treewide: fix security issues by bumping all packages using libwolfssl
ce59843662 wolfssl: fix TLSv1.3 RCE in uhttpd by using 5.5.1-stable (CVE-2022-39173)
3d2be75b0c wolfssl: refresh patches
0c8425bf11 wolfssl: bump to 5.5.0
2c49ad36fb kernel: bump 5.10 to 5.10.146
f04515e7bd kernel: bump 5.10 to 5.10.145
a91f391b59 kernel: bump 5.10 to 5.10.144
25747a4c04 ramips: fix switch setup for ASUS RT-AX53U
23d23038dd uboot-mvebu: backport LibreSSL patches for older version of LibreSSL
1ff2993edb uboot-mvebu: backport patch to fix compilation on non glibc system
d30ddfbac4 ramips: enable LZMA loader to fix Linksys RE6500 boot
ed905fce58 tools/meson: backport WSL2 fix
e5ab159fbf firmware: intel-microcode: update to 20220809
938ae92675 toolchain: Include ./include/fortify for external musl toolchain
8f72f5e4c0 toolchain: Select USE_SSTRIP with external musl toolchain
4ad6925a9e scripts: ext-toolchain: add support for musl
65bd632069 scripts: ext-toolchain: add support for info.mk in probe_cc
b0622d1221 scripts: ext-toolchain: actually probe libc type on config generation
d1a6c35591 scripts: ext-toolchain: add option to overwrite config
24cf766dfe scripts: ext-toolchain: fix wrong prefix in print_config generation
18a88668b8 rules_mk: don't include wrapped bin with external toolchains
29927e347a rules_mk: use gcc versions for external toolchain
cd117f0596 bcm53xx: backport clk driver fix for DT nodes names
9dc46d6549 ath79: fix LibreRouter-v1 watchdog and poe_pass
0cb3a616e4 build: fix warnings from grep
463fe05d9e Makefile: fix stray \ warnings with grep-3.8
25d8b9cad6 build: fix issues with targets installed via feeds
74eeee1698 build: fix including modules.mk for targets pulled in from feeds
dafac183f3 mpc85xx: add patch to fix gpio mpc8xxx
7707b47c72 ramips: fix fw_setsys
f3ffb04a43 kernel: add missing symbol
2a6346725a bcm4908: fix -EPROBE_DEFER support in bcm4908_enet
700f5d2990 kernel: update U-Boot NVMEM driver
acc78a9cf6 bcm4908: backport mtd parser for Broadcom's U-Boot partition
2022-10-06 16:11:21 +02:00
David Bauer
8f11053e30
Merge pull request #2652 from blocktrron/upstream-master-updates
modules: update modules
2022-09-21 22:47:29 +02:00
David Bauer
433de1591e modules: update packages
74d181312 php8: update to 8.1.10
d86df0df5 jose: fix static library usage
fd5ba6154 adblock: update 4.1.4-3
dfaa4bad5 uacme: add libev dependency to uacme-ualpn
ed56ca2aa nextdns: Update to version 1.37.11
2022-09-20 21:28:47 +02:00
David Bauer
91df13c8b1 modules: update openwrt
b472753d79 mediatek: fix Unifi 6LR network config
c0b7b2049e mpc85xx: fix unset kernel symbols
7c459ac1d5 mac80211: rt2x00: experimental improvements for MT7620 wifi
d004110ef7 mac80211: rt2x00: fix typo
0755c18ff1 mac80211: add patch descriptions to rt2x00 patches
7a26f40217 mediatek: fix ledbar of UniFi 6 LR when running custom U-Boot
f54d4ea0bb ramips: add support for Ubiquiti UniFi FlexHD
a28ccd58ed ath79: Make patches apply again
2419546cee generic: move ledbar driver from mediatek target
420a86436f mediatek: add led count
40610c5322 mediatek: add initialization after reset
26cd0c1ee9 mediatek: add support for reset gpio
b5665a0045 mediatek: support reading more than one byte of response
cd0283788f mediatek: cast literal value to char
a2d251573b mediatek: correctly log i2c response
7366ee86ef mediatek: remove gpiod_direction_output()
ba6c780acb mediatek: do not use gpiod_set_raw_value()
745d3cd4aa kernel: modules: package kmod-crypto-essiv
a3f9b42789 mediatek: fix typo in bpi-r64 image recipe
29c5d5d3da mediatek: bpi-r64: make initramfs/recovery optional
d10352917b ramips: fix GB-PC1 and GB-PC2 LEDs
0c9833d0e0 wireless-regdb: update to 2022-08-12
be4abbd84a kernel: bump 5.10 to 5.10.143
4e05e7dddf kernel: bump 5.10 to 5.10.142
1b0db300cb kernel: bump 5.10 to 5.10.141
bf65d2dcba kernel: bump 5.10 to 5.10.139
e7ef88ff1d kernel: build crypto md5/sha1/sha256 modules for powerpc
2022-09-20 21:28:47 +02:00
David Bauer
115aad0931
Merge pull request #2646 from herbetom/master-updates
modules: update to latest HEAD
2022-09-18 03:08:37 +02:00
Tom Herbers
1417467bd4
modules: update packages
219b0a1e5 python-flask-socketio: update to 5.3.1
20da9e28b  adblock: update 4.1.4-2
aaf90f333  adblock: update 4.1.4
6b13e6e67 yt-dlp: update to 2022.9.1
78d60b3c0 knot: update to version 3.2.1
b3373efe5 python3: backport and fix target musl libc detection
cd3d6156f aria2: Fix aria2.init start issue Re-mount '$config_file' inside the '$config_dir' will cause aria2 process unable to start.
2022-09-16 19:05:25 +02:00
Tom Herbers
6dfd6ee834
modules: update openwrt
81388f74b5 scripts/download.pl: fix downloads with wget
b8cbca8ac8 scripts/download.pl: silence can't exec curl warning
340b138932 scripts: always check certificates
b5e39355e4 tools: remove xxd package
b531611f57 build: provide xxd -i with scripts/xxdi.pl
542447b93e scripts: xxdi.pl: add xxd -i compat mode
4c795af58b scripts: xxdi.pl: remove File::Slurp dependency
a352e30b8f scripts: add xxdi.pl
b3fa0241e2 mac80211: backport tx queueing bugfixes add a bug fix for a rare crash
94372ab6e4 bcm53xx: update NVMEM driver for NVRAM
cae4d089bc kernel: backport mtd dynamic partition patch
2022-09-16 19:05:23 +02:00
Tom Herbers
e272db6370
ath79-nand: fix upgrade from 19.07 for GL-AR300M (#2640)
Support for the device was (re)added in #2455
(merged as 94e04393b1)
2022-09-12 16:27:29 +02:00
David Bauer
d972a9df2c
gluon-core: use country3 UCI option (#2639)
Use the country3 option implemented in OpenWrt's hostapd configuration
handling instead of adding it as a custom option.

Signed-off-by: David Bauer <mail@david-bauer.net>

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-09-12 16:27:06 +02:00
David Bauer
3ab8007a1e
ipq40xx-generic: add suppot for GL.iNet GL-AP1300 (#2635) 2022-09-12 02:45:01 +02:00
David Bauer
dd30a6e658
rockchip-armv8: add support for NanoPi R4S (#2633) 2022-09-12 02:44:30 +02:00
David Bauer
6ecf0a994c
Merge pull request #2637 from blocktrron/zte-mf281
ath79-nand: add support for ZTE MF281
2022-09-12 02:43:59 +02:00
David Bauer
94249bfa6a ath79-nand: add support for ZTE MF281
Signed-off-by: David Bauer <mail@david-bauer.net>
2022-09-12 02:43:27 +02:00
David Bauer
e42adda8ad
Merge pull request #2638 from blocktrron/upstream-master-updates
modules: update to latest Git HEAD
2022-09-11 22:32:48 +02:00
David Bauer
55621d9fd1 modules: update packages
f8fec60bd ksmbd-tools: add package with hotplug.d script for auto sharing
1a0524616 ksmbd-tools: append config from /var/run/config/ for runtime shares
2022-09-11 16:26:12 +02:00
David Bauer
b3e9bcd615 modules: update openwrt
308f0831f7 ipq40xx: add GL-AP1300 label-mac-device
b317d3dbfb ipq40xx: add WAN LED mapping for GL-AP1300
2022-09-11 16:26:03 +02:00
David Bauer
cf939adfa4
Merge pull request #2636 from blocktrron/upstream-master-updates
modules: update to latest HEAD
2022-09-10 13:21:57 +02:00
David Bauer
5fc0c5afdc modules: update packages
764ba9c09 cloudflared: Update to 2022.9.0
29fdb5086 lxc: update to 5.0.1
2022-09-10 13:14:55 +02:00
David Bauer
d780247750 modules: update openwrt
fff797d26e rockchip: add system-LED aliases specific to OpenWrt
18f77ef2d6 rockchip: ensure NanoPi R4S has unique MAC address
8ff1d27e48 realtek: fix RTL839x receive tag decoding
2022-09-10 13:14:49 +02:00
David Bauer
c55ee3b7d1
Merge pull request #2634 from blocktrron/upstream-master-updates
modules: update to latest HEAD
2022-09-09 23:20:34 +02:00
David Bauer
f6f0e38d4e modules: update packages
701278306 syslog-ng: update to version 3.38.1
1342b58f2 miniupnpd: rework firewall4 integration
7cc0a0eab miniupnpd: update and fix nftables variant
2022-09-09 18:20:35 +02:00
David Bauer
622e925fea modules: update openwrt
25a041f50b ipq40xx: add LTE packages for GL-AP1300
daf1fdc6ad ath79: add support for ZTE MF281
47ba7cdfc3 realtek: fix RTL838x receive tag decoding
da7b26dfb8 mt76: update to the latest version
ab61232b0a hostapd: rename hostapd multicast_to_unicast option to multicast_to_unicast_all
2022-09-09 18:20:25 +02:00
Tom Herbers
19b54dd56f
patches: rebase MLD Querier wake up calls Android bug workaround (#2629) 2022-09-05 22:49:57 +02:00
David Bauer
375fc23d1f
Merge pull request #2628 from herbetom/master-updates-HEAD
modules: update to latest HEAD
2022-09-05 20:43:09 +02:00
T-X
0530b06557
kernel: bridge: readding MLD wakeup call feature (#2365)
With the update to OpenWrt 21.02 the bridge MLD wakeup call feature was
removed. However the issue with Android devices and MLD is still
present. Therefore readding the bridge MLD wakeup call patch and porting
it to Linux 5.10 / OpenWrt 22.03.

Link: https://issuetracker.google.com/issues/149630944
Fixes: aab2b914b8 ("modules: switch to OpenWrt 21.02")
Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2022-09-05 20:42:37 +02:00
David Bauer
52883f5eb5
Merge pull request #2609 from blocktrron/v2022.1.x-release-notes
docs: Add v2022.1 release notes
2022-09-05 17:46:50 +02:00
David Bauer
701a22bbf6 docs, README: Gluon v2022.1
Signed-off-by: David Bauer <mail@david-bauer.net>
2022-09-05 17:22:40 +02:00
David Bauer
8696e7f7f9 docs: Add v2022.1 release notes
Signed-off-by: David Bauer <mail@david-bauer.net>
2022-09-05 17:22:34 +02:00
Tom Herbers
5333c71fcd docs: wired-mesh: make commandline section referenceable 2022-09-05 17:19:59 +02:00
David Bauer
77ef353151 docs: vpn: make fastd section referenceable
Signed-off-by: David Bauer <mail@david-bauer.net>
2022-09-05 17:19:59 +02:00
Tom Herbers
4e6b7cf607
modules: update packages
85e6f9348 dnslookup: Update to 1.7.3
529842c78 dnsproxy: Update to 0.44.0
9951bdcb9 cloudflared: Update to 2022.8.4
c3a153bdb pillow: bump to version 9.2.0
7977389b2 pillow: bump to version 9.1.1
b15b99eed pillow: bump to version 9.1.0
b0fe84ca4 gg: Update to 0.2.9
5819aa071 xray-core: Update to 1.5.10
c5619b78d yq: Update to 4.27.3
426ccd2e0 uvol: fix autopart handling double/float number
32e4d8fa5 python-pycares: add new package
5dc5c7966 node: bump to v16.17.0
4c311180d strongswan: add kernel module dependency on chapoly
8b04b607a i2pd: update to version 2.43.0
240a8db7e i2pd: Update package
b519548e4 zoneinfo: updated to the latest release
fc47ed5f1 zoneinfo: updated to the latest release
2022-09-05 13:55:31 +02:00
Tom Herbers
8ed040fb32
modules: update openwrt
39c115028a bcm27xx: make NVMEM driver patch apply again
03c251ac14 bcm4908: enable NVMEM U-Boot env data driver
4efa0b70d5 kernel: backport U-Boot environment data NVMEM driver
8835da4d90 kernel: backport mtd patch adding of_platform_populate() calls
510f0628c7 OpenWrt v22.03.0: revert to branch defaults
17bd6b0477 OpenWrt v22.03.0: adjust config defaults
512e76967f uboot-mediatek: mt7622: suppress unwanted pinctrl warning
d691625ec4 mediatek: mt7622: fix DTS compatible of UniFi 6 LR variants
93e6581b90 uboot-mediatek: backport fix for unstable UART on MT7622
3889f90ee2 uboot-mediatek: no compression means IH_COMP_NONE
8ff8a4dc9e uboot-mediatek: fix factory reset on UBI
aebb19d34b uboot-envtools: mt7622: use 4k sectors for UniFi 6 LR (ubootmod)
557e4cb169 mediatek: mt7622: use variable sector size for spi-nor
f7c358c2ad uboot-mediatek: fix Ubiquiti UniFi 6 LR U-Boot mod
ae1786e543 mpc85xx: Drop pci aliases to avoid domain changes
ea4ec11f4e at91bootstrap: use sdmmc0 as booting media for sama5d27_som1_ek
c53fea7a8a uboot-at91: use sdmmc0 as booting media for sama5d27_som1_ek
2ae0ad375b kernel: rename 5.20 patches to 6.0
d3ccf0976a bcm4908: enable & setup packet steering
30bce90d84 bcm4908: prepare for Asus GT-AX6000 support
b8b5ee12cd bcm4908: backport bcmbca DT patches queued for 5.20
a79a21b509 bcm53xx: backport DT changes from 5.17 & 5.18
3abed8406b bcm53xx: drop dead upgrade code
caa43f4428 firewall4: update to latest Git HEAD
26b436e2a2 ucode: update to latest Git HEAD
0588b124e4 mac80211: disable ft-over-ds by default
dced5f2c95 ramips: define Yuncore AX820 switch LEDs
e497818e18 ath79: add support for Extreme Networks WS-AP3805i
9703a2adcc kernel: Refresh on 5.10.138
251336639c mbedtls: update to version 2.28.1
dddf01c508 Revert "mediatek: mt7622: fix banana pi r64 wps button"
89956c6532 kernel: bump 5.10 to 5.10.138
4209c33ae2 kernel: bump 5.10 to 5.10.137
a901a13505 iptables: default to ip(6)tables-nft when using buildroot
2022-09-05 13:55:30 +02:00
Martin Weinelt
c84d8e1665
Dockerfile: update base to debian:bullseye-slim (#2434)
Updates the image to have a newer build environment, which is required
for some of the maintainer scripts.

Increases the image size from 414 to 545 MB.
2022-08-31 01:40:01 +02:00
Florian Maurer
5da06538b7
ath79-generic: (re)add support for WNDR3800 (#2586) 2022-08-31 01:29:28 +02:00
Christoph Krapp
7a049cfd70
ramips-mt7621: add support for TP-Link RE500 (#2625) 2022-08-31 01:25:26 +02:00
David Bauer
87ee387e66
Merge pull request #2626 from FreifunkChemnitz/re305
ramips-mt76x8: add support for TP-Link RE305 v1
2022-08-31 01:25:16 +02:00
Steffen Förster
87cd66a0fc docs: corrected grammar 2022-08-30 20:37:39 +02:00
Steffen Förster
680d0c08cb ramips-mt76x8: add support for TP-Link RE305 v1
Specification:

SoC: MediaTek MT7628AN
RAM: 64MiB
Flash: 8MiB
Wifi:
  - 2.4GHz: MT7628AN
  - 5GHz: MT7612EN
LAN: 1x 10/100 Mbps

Flash instructions:
Flash factory image through stock firmware WEB UI.
Back to stock is possible by using TFTP and stripping down the Firmware
provided by TP-Link to a initramfs.

The flash space between 0x650000 and 0x7f0000
is blank in the stock firmware so I left it out as well.
2022-08-30 20:36:59 +02:00
David Bauer
48c18e82e2
Merge pull request #2622 from herbetom/master-updates
modules: update modules
2022-08-29 17:20:14 +02:00
Martin Weinelt
6b6bda221c
workflows: fix checkout in backports action (#2623) 2022-08-28 22:45:33 +02:00
Tom Herbers
971cde1c3b
modules: update packages
7073e7fb0 simple-adblock: bugfix for allow command
c25231611 perl-ack: Update to 3.6.0
bca4b82fc syslog-ng: fix OOM issues by adding support for logrotate
87254d108 python-uci: update to version 0.9.0
0a6a1ffcd v2raya: Update to 1.5.9.1698.1
ff09e836d sqm-scripts: Bump to v1.5.2
d4cc94757 vim: variants conflict with each other
268efbedd libgd: add conflicts to each other
afea82826 pdns-recursor: update to 4.7.2
a1067fa6b simple-adblock: update to 1.9.0-1
9646958be stress-ng: add libjpeg dep
ef1af9a43 pciutils: backport patch to fix compilation with older binutils
85e26798c liburcu: update to version 0.13.2
fddb4fe50 knot: update to version 3.2.0
b92eb75be django: bump to version 4.0.7
39943175a squid: bump to 4.17
c15e924f1 dnscrypt-proxy2: update to version 2.1.2
f1a15fd5b coova-chilli: Fix compile problem with _init()
625f17633 mpd: update to 0.23.9
900d42fbe mpd: update to 0.23.8
257242799 pciutils: update to 3.8.0
1e53ad688 travelmate: update 2.1.0
2022-08-27 15:52:37 +02:00
Tom Herbers
1fa9c28d4d
modules: update openwrt
d1f14d17aa ramips: fix GB-PC1 and GB-PC2 device support
0197cc553a hostapd: fix WPA3 enterprise keys and ciphers
567f64df57 iwinfo: update to latest HEAD
f543588812 iproute2: Fix KERNEL_INCLUDE in SDK
8de88a2aa9 umbim: bump to git HEAD
e0832778a3 mt76: update to the latest version
da3dc96b64 netifd: update to the latest version
237f8e2cfc netifd: update to git HEAD
8a9733ee0d rpcd: bump version to 2022-08-24
8f4a2e4234 rpcd: update to latest Git HEAD
f92ac40ebd uhttpd: update to latest Git HEAD
d4f20964ff ucode: update to latest Git HEAD
469db326ac nftables: fix parsing date expressions
fd268e3973 firewall4: update to latest Git HEAD
296c9aeb39 ipq806x: add missing scaling_available_frequencies for dedicated cpufreq
97213c7335 mac80211: parse the correct set of HE capabilities for AP mode
2022-08-27 15:52:24 +02:00
Christoph Krapp
ba69456653
ramips-mt76x8: add support for Netgear R6020 (#2620)
Co-authored-by: Christoph Krapp <christoph.krapp@power.cloud>
2022-08-27 12:56:36 +02:00
J. Burfeind
28a4722cc7
docs/features/wired-mesh: update to role-based configuration (#2584)
- explain what happens on gluon-reconfigure
- show workflow to alter the wired network config
- update examples
- update 'has changed in' section

resolves #2474

Co-authored-by: Tom Herbers <mail@tomherbers.de>
Co-authored-by: David Bauer <mail@david-bauer.net>
Co-authored-by: Andreas Ziegler <dev@andreas-ziegler.de>

Co-authored-by: Tom Herbers <mail@tomherbers.de>
Co-authored-by: David Bauer <mail@david-bauer.net>
Co-authored-by: Andreas Ziegler <dev@andreas-ziegler.de>
2022-08-27 12:55:07 +02:00
David Bauer
928e7a9a57
Merge pull request #2621 from freifunk-gluon/target-default-packages
Include OpenWrt's target default package lists in config generation
2022-08-25 20:01:20 +02:00
Matthias Schiffer
d20f8d41a0
scripts: target_config_lib: prepend target default package list from openwrt/tmp/.targetinfo
Device-specific package additions could generate `CONFIG_PACKAGE_...=m`
lines, which would override `CONFIG_PACKAGE_...=y` lines inserted by
OpenWrt for default packages (as Gluon did not know about these default
packages). This resulted in the unintended removal of such packages from
other devices that did not contain the same package in their device
package lists.

Avoid this issue by explicitly adding OpenWrt's target default package
list to the front of Gluon's target package list.
2022-08-23 23:35:53 +02:00
Matthias Schiffer
ca21952737
scripts: target_config_lib: add aliases for virtual default packages
OpenWrt's default package list contains the package "nftables", which is
a virtual package provided by "nftables-json" and "nftables-nojson".
Explicitly handle this case, otherwise our config check will fail when
we extend our default package list with the one from OpenWrt.
2022-08-23 23:35:53 +02:00
Matthias Schiffer
a01818f6d2
scripts: target_config_lib: remove handling for targets without devices
Another leftover from legacy OpenWrt targets, which we don't support
anymore.
2022-08-23 23:35:48 +02:00
David Bauer
16227efd5d
Merge pull request #2617 from herbetom/master-updates
modules: update to latest HEAD
2022-08-20 23:46:40 +02:00
Tom Herbers
2c8b7bfc69
modules: update routing
8872359 mesh11sd: Release v1.2.0
e819ede opennds: Release v9.8.0
2022-08-20 15:37:34 +02:00
Tom Herbers
49833af320
modules: update packages
bed539e7c miniflux: update to 2.0.38
77d94fda9 miniflux: update to 2.0.37
c04063379 yt-dlp: update to 2022.8.14
39f39f72b yt-dlp: update to 2022.7.18
9655fc279 yt-dlp: update to 2022.6.22.1
ca6eaf0cd ddns-scripts: Fix typo s/ganid/gandi/
3e1c7b9ff host-pip-requirements: update Cython to version 0.29.28
b02ea962c libmbim: bump to 1.26.4
5b87373a3 libmbim: switch to meson build tools
68946d4c7 modemmanager: switch to meson build tools
b8a8dd53c libqmi: bump to 1.30.6
94b824423 libqmi: polish Makefile
1683d7c96 libqmi: switch to meson build tools
d2a0a8e03 rclone: Update to 1.59.1
f82e778c0 gg: Update to 0.2.8
e07b43761 usteer: update to latest HEAD
613e709ce usteer: bump to git HEAD
46c8524e5 telegraf: Update to version 1.23.4
74c36ecec telegraf: Add influxdb2 output plugin to package version small
39a25cea0 stress-ng: update to 0.14.03
95d59cc2a squeezelite: update to 1.9.9-1403
fcdba64d0 frp: update to 0.44.0
ac1cf386f opendoas: fix build with PAM
2af698b98 cloudflared: Update to 2022.8.0
f37bdcc9e lighttpd: update to lighttpd 1.4.66 release hash
b66878186 ariang: update to 1.2.4
3d5f882b6 knot: update to 3.1.9
90f35f262 rsync: bump to 3.2.5
94821d9c0 opendoas: add package
b621a75f3 rclone: fix init script on CIDR format ipaddr
dd45bb89c rsync: bump to 3.2.4
8c85981f8 rsync: fix CVE-2022-29154
63d46221b python-websockets: update to version 10.3
eaefde9a4 unbound: update to 1.16.2, fix CVE-2022-30698, CVE-2022-30699
2e878763d unbound: update to 1.16.1
c5ac15a86 antfs: require kernel version 5.10 to build
80a3d7738 ptunnel-ng: fix compilation with kernel 5.15
60eff3656 pingcheck: update to 2022-03-01
a11f3757f libpfring: update to 8.0.0
6df708763 shadowsocks-libev: ss-rules: nft rule cleanup on reload
53952a136 shadowsocks-libev: ss-rules: setup policy rules for udp/ip6
6bede4157 cgi-io: update to latest Git HEAD
81601471e watchcat: fix broken ping invocation for no-address-family configuration
a4933fc0a php8: update to 8.1.9
2022-08-20 15:37:34 +02:00
Tom Herbers
af579e9906
modules: update openwrt
ecd8f7e294 ramips: get MAC addr from the encrypted partition (WG4хх223)
290ace2fe6 base-files: add mtd_get_mac_encrypted_arcadyan function
d94a28f7d2 uencrypt: add package to decrypt WG4хх223 config
bfb37d363c odhcp6c: update to git HEAD
464f349fad ramips: allow custom trx magic for Arcadyan
7edaae16db ramips: create new dtsi for Arcadyan routers
206581018c ramips: add support for MTS WG430223
1320a78aab ramips: add support for ASUS RT-AX53U
e06f97eb33 mvebu: backport pending Turris Omnia LEDs improvements
93ac163dea mvebu: backport DTS changes for Turris Omnia from mvebu/dt
659bb7638d mpc85xx: enable NAND support for all subtargets
89b7714cf6 kernel: add kmod-leds-turris-omnia
5e39f37caa toolchain: Update glibc 2.34 to recent HEAD
da7e9b201e build: add support for python3.11 and higher
dfe5c23592 iwinfo: update to latest HEAD
1d16b928b3 ath25: fix initramfs image generation
2728d13030 ath25: fix ELF image generation
46e62907f1 kernel: bump 5.10 to 5.10.136
be29de706c kernel: bump 5.10 to 5.10.135
6c901ec97d kernel: Backport upstream flowtable patches from 5.15
6a638c134d pkg-config: always use correct path for pkg-config.real
1c7a167366 kernel: kmod-phy-smsc: Add new PHY
fd4a354f3e kernel: kmod-phy-ax88796b: Add new PHY
13d66ef33f kernel: kmod-ipt-ulog: Remove package
534e256c02 kernel: kmod-nft-nat6: Remove package
2a6fa77b77 kernel: ipt-ipset: Add ipset/ip_set_hash_ipmac.ko
fc05102d51 kernel: netsupport: kmod-sched: explicitly define included modules
3b51f74a91 kernel: netsupport: kmod-sched: Add kmod-lib-textsearch dependency
9727b71147 kernel: netsupport: kmod-sched: Remove sch_fq_codel and sch_fifo
0038e96c27 arm-trusted-firmware-mediatek: skip bad blocks on SPI-NAND (SNFI)
5c69416246 fstools: add uci fstab section to conffiles for package block-mount
0855549b4b kernel: scale nf_conntrack_max more reasonably
0179ba7851 dnsmasq: fix jail_mount for serversfile
2022-08-20 15:37:27 +02:00
David Bauer
25c4af1cc7
Merge pull request #2611 from herbetom/docs_vpn_fastd_l2tp
docs: update fastd Gateway / Supernode Configuration
2022-08-19 23:42:50 +02:00
J. Burfeind
4873c9341e
ath79-generic: (re)add support for Ocedo Koala (#2606)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-08-16 22:37:42 +02:00
David Bauer
fa04b8d4c4
Merge pull request #2613 from blocktrron/fix-preserve-channel
gluon-core: provide migration for preserve_channels
2022-08-15 20:55:41 +02:00
David Bauer
bffd263617 gluon-core: return boolean from preserve_channels
This method previously returned the string literal of the config key,
leading to checks evaluating to true even in case this option was
disabled.

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-08-15 20:53:24 +02:00
David Bauer
64f75848da docs: update preserve_channels config key path 2022-08-15 20:53:24 +02:00
David Bauer
d9070eb41a gluon-core: provide migration for preserve_channels
The preserve_channels configuration option was moved to the gluon UCI
package without adding a proper migration.

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-08-15 20:53:24 +02:00
Tom Herbers
e2064e36e3
docs: vpn: add fastd Supernode offloading recommendations
closes freifunk-gluon/gluon#2603

Co-authored-by: Martin Weinelt <martin@darmstadt.freifunk.net>
2022-08-15 15:20:02 +02:00
Tom Herbers
cbef4c299a
docs: vpn: fix titles and move fastd Supernode / Gateway Configuration 2022-08-15 15:12:27 +02:00
Tom Herbers
357aa96c91
ramips-mt7621: add support for Netgear WAX202 (#2589) 2022-08-13 14:36:44 +02:00
Tom Herbers
b85135467b
ramips-mt76x8: add support for Xiaomi Mi Router 4A (100M International Edition) (#2593) 2022-08-11 02:06:42 +02:00
David Bauer
50130c3832
gluon-core: increase ath10k peer limit (#2607)
Increase the peer limit for ath10k-ct from 32 to 96 STAs like it is set
for the non-ct firmware / driver. In order to make this work with the
memory constraints of the wireless platform, reduce the number of
concurrent vdevs to the maximum Gluon uses (4).

Closes #2604

Signed-off-by: David Bauer <mail@david-bauer.net>

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-08-10 17:05:51 +02:00
David Bauer
03bfa36808
Merge pull request #2605 from herbetom/master-updates
modules: update to latest HEAD
2022-08-10 17:03:32 +02:00
lemoer
70951318bc
gluon-respondd: fix missing section "wifi" for request type "neighbours" (#2599)
The below mentioned commit introduced a regression, that the "wifi"
section of the request type "neighbours" was empty:

    ~# gluon-neighbour-info -d ::1 -r neighbours | ffh_pretty_json
    {
      "wifi": [
      ],
      ...
    }

After this commit, the section (correctly) looks like this:

    root@UFU-FWH-A272-Tresckowstr-GemR-vorne:~# gluon-neighbour-info -d ::1 -r neighbours | ffh_pretty_json
    {
      "wifi": {
        "ca:38:7e:42:5f:21": {
          "neighbours": {
            "fe:9f:4d:01:ea:e1": {
              "noise": -102,
              "inactive": 50,
              "signal": -84
            },
            "fe:df:b9:84:37:51": {
              "noise": -102,
              "inactive": 20,
              "signal": -73
            }
          }
        }
      },
      ...
    }

The issue was due to the fact, that the iteration over the (mesh) wifi interfaces
was broken. The code was assuming, that the section

    config interface 'mesh_radio0'
            option proto 'gluon_mesh'

in /etc/config/network contains an option "ifname", which it does not.
The ifname property is only stored in the corresponding section in
/etc/config/wireless:

    config wifi-iface 'mesh_radio0'
            option ifname 'mesh0'
            option network 'mesh_radio0'
            option mode 'mesh'
            ...

Therefore, we now iterate over wifi-ifaces in /etc/config/wireless, that
have the mode 'mesh' instead. This resolves the issue.

Fixes 0f1fa243f7
2022-08-09 22:24:44 +02:00
Tom Herbers
69e8b98ca1
modules: update packages
5343d6a09 yq: Update to 4.27.2
0fd2eb51a python-paho-mqtt: add missing dependency
cd36b6eb8 sslh: update to v1.22c Change notes: 	Updated Makefile package version and hash. 	Added libpcre2 dependency 	Removed USELIBPCRE make flag (no longer optional within sslh) 	Updated patch 001 to work with new sslh Makefile
1eb707605 luajit: patch: PPC/e500 SPE: use soft float instead of failing
b169fd026 libgpg-error: update to 1.45
8694f7f95 squashfs-tools: enable zstd compression by default
5c987e57d cryptsetup: fix library paths by calling autoreconf
79d1abd4c ffmpeg: update to 5.1
cec18eb0d chrony: Avoid building unused gnutls and ca dependencies
7727beb71 gensio: Avoid building unused python and libstdcpp dependecies
51ccd0761 gnutls: Avoid building unused gnutls dependency
bf519e9bc fail2ban: fix patch for python 3.10
3c5270c9d django: bump to version 4.0.6
8fdc92b86 rclone: update to 1.59.0
77afaaa47 nano: update to 6.4
2022-08-09 21:31:38 +02:00
Tom Herbers
af7c6b9b7c
modules: update openwrt
ca58b8b4fe ramips: Add Xiaomi Mi Router 4A 100M International
707ec48ab3 zlib: backport null dereference fix
5e0173de51 zlib: bump PKG_RELEASE after CVE fix
7561eab8e8 zlib: backport fix for heap-based buffer over-read (CVE-2022-37434)
1f9d603141 odhcpd: update to git HEAD
39ac29a68a uboot-mvebu: update to v2022.07
ec8b5cf0e6 realtek: Fix typo in Kconfig prompt
247ef07540 ramips: support fw_printenv for Netgear WAX202
62fff4e1e6 umdns: add missing syscall to seccomp filter
ecf0dc7055 ramips: Add support command fw_setsys for Xiaomi routers
bd9bb13012 ltq-vdsl-app: Fix counter overflow resulting in negative values
bd74c11155 kernel: silence refresh warning
dcb782792b x86: add missing Lex 3I380NX network detection
c2c32bdc80 lantiq: fix lan port 3+4 phy-mode settings for Fritzbox 3390
456d05d6d8 ipq40xx: fix RUTX10 Wi-Fi woes
daa73dc681 libmnl: fix build when bash is not located at /bin/bash
596efe1356 OpenWrt v22.03.0-rc6: revert to branch defaults
f1ff3fd95c OpenWrt v22.03.0-rc6: adjust config defaults
042d558536 mac80211: Update to version 5.15.58-1
c9cc3189ed wolfssl: fix math library build
535f4a5bff odhcp6c: update to latest git HEAD
5a7bcd6977 firewall3: update file hash
c5f0eab222 uboot-at91: fix build on buildbots
972b833e91 uboot-at91: update to linux4sam-2022.04
39810995fb at91bootstrap: update at91bootstrap v4 targets to v4.0.3
2022-08-09 21:31:36 +02:00
lemoer
6df0647301
gluon-mesh-batman-adv: add "gateway_tq" field to respondd statistics (#2596)
This new field reflects the TQ to the selected gateway.

Before this commit, if you had connectivity issues in a larger mesh,
it was a tedious task to understand which nodes are affected and which
are not. By providing this new value for each node, it becomes easier
to see which nodes are affected by the connectivity issues and which
are not.

The new field "gateway_tq" is located at the toplevel of the
statistics resource (next to "gateway" and "gateway_nexthop"):

    gluon-neighbour-info -d ::1 -r statistics
    {
        ...
        "gateway": "02:a1:71:04:09:10",
        "gateway_nexthop": "88:e6:40:20:90:10",
        "gateway_tq": 193,
        ...
    }
2022-08-09 21:09:28 +02:00
David Bauer
5600b87014
Merge pull request #2553 from ffgraz/mmfd
Move common firewall rules to respective packages
2022-08-09 20:43:14 +02:00
Tom Herbers
75ceb0d963
web-admin: ignore minor compat-version on upgrade (#2590)
This implements the same behavior as it is used in the autoupdater [1].

This is for example required to allow the manual installation of
firmware upgrades via the config mode on devices which where migrated
from swconfig to DSA. Otherwise the image will always be invalid.

[1] b804281664
2022-08-09 20:16:33 +02:00
Matthias Schiffer
20eea9b9ca
gluon-mesh-vpn-fastd: fix respondd segfault under load (#2594)
When running "fastd -v" fails, line may be NULL, causing a segfault in
strncmp.
2022-08-09 20:09:31 +02:00
Tom Herbers
33779ccd96
gluon-core: enable bridge port isolation for br-mesh_other interfaces 2022-08-09 10:51:55 +02:00
David Bauer
fa123e56d4
Merge pull request #2591 from herbetom/master-updates
modules: update to latest HEAD
2022-08-05 02:17:09 +02:00
Tom Herbers
b38e590268
modules: update packages
d385ac504 curl: switch default SSL to mbedTLS
910a8a075 telegraf: Update to version 1.23.3
ce619701b knot: update to 3.1.8
93d53a56d dockerd: Update to v20.10.17
17758cf81 docker: Update to v20.10.17
90bbda1b5 libnetwork: Update to f6ccccb for Docker v20.10.17
0f2e46afe containerd: Update to v1.6.6 for Docker v20.10.17
f238e8f7c runc: Update to v1.1.2 for Docker v20.10.17
c85111226 dawn: update to 2022-07-24
944a896e5 dawn: update to 2022-07-22
0902a5fc0 usteer: update to latest HEAD
71db92ef6 usteer: bump to git HEAD
c90aaa1ec dawn: update to 2022-07-21
9552a30bc mutt: add PKG_CONFIG_DEPENDS
ffe306981 opusfile: add autoreconf
10a6452b8 golang: Update to 1.18.4
fb7206356 libextractor: fix iconv handling
7d74fbf37 glib2: disable fortify source
756a3243d wifidog: fix compilation with more recent wolfssl
ef545e031 curl: fix compilation with wolfSSL
fdd16fefa yq: Update to 4.26.1
b0118aab5 xray-core: Update to 1.5.9
d9c09bb40 dawn: update to 2022-07-18
f4eb0c359 mpd: add missing AUDIO_SUPPORT in CONFIG_DEPENDS
ff0dd2d12 mpd-full: remove partial BUILD_PATENTED on ffmpeg
c1732453f postfix: fix download failure
97ebbd014 travelmate: update 2.0.9-2
86408bf66 dawn: update to 2022-07-16
09d9d6093 watchcat: add support to run a script
afd77fd6c watchcat: add IP version selection support; fix bug with unlockbands
8829c4025 libuwsc: fix compiltation with wolfSSL
e1090a022 pdns: update to 4.6.3
a3f25a711 pdns-recursor: update to 4.7.1
71bd1a8a5 telegraf: Update to version 1.23.2
fe38196a7 telegraf: Update to version 1.23.1
859f7319a dnslookup: Update to 1.7.1
e34230521 cloudflared: Update to 2022.7.1
0ac8154bc xr_usb_serial_common: bump to 2022-03-30
cdf76bc38 fio: update to 3.29
298786838 libarchive: fix ext2fs build race error condition
be959ca32 nebula: update to 1.6.0
81cd7959f node: July 7th 2022 Security Releases
d2a2c005d nsutils: Update to latest version, switch to cmake
241a7198a nsutils: bump to new release
953e29f06 python-cryptography: Fix failing build
2022-07-31 13:49:54 +02:00
Tom Herbers
2fd9b8aa19
modules: update openwrt
8b6b73d0e8 wolfssl: make shared again
7ca89e1187 kernel: bump 5.10 to 5.10.134
1db4f5cba3 x86: update defconfig for 5.10.133
762703d397 kernel: bump 5.10 to 5.10.133
aedcbaae37 kernel: bump 5.10 to 5.10.132
a409bd7705 octeon: add SUPPORTED_DEVICES to er/erlite
e0d3dc5de1 uboot-bcm4908: include SoC in output files
066547b974 bcm4908: build bootfs image per-SoC
506432a783 lantiq: fix network port GPIO settings for Fritzbox 3390
ee27a2b706 ipq806x: Archer VR2600: fix switch ports numbering
f2c12b8940 layerscape: update PKG_HASH / PKG_MIRROR_HASH
bddfd3f7ed sdk: add spidev-test to the bundle of userspace sources
396dc89ee7 realtek: correct egress frame port verification
f8a44c22d4 realtek: correct egress frame priority assignment
4da0b5a786 realtek: fix egress L2 learning on rtl839x
8614b8eb5f realtek: fix egress port mask on rtl839x
c240fed242 ramips: add support for Netgear WAX202
d5858c6d97 image: add support for Netgear encrypted image
a1068f77c9 wolfssl: Do not activate HW acceleration on armvirt by default
dbe19b1041 libpcap: fix PKG_CONFIG_DEPENDS for rpcapd
a12eb71c88 wolfssl: WOLFSSL_HAS_WPAS requires WOLFSSL_HAS_DH
41fa086e6f kernel: Refresh kernel patches
aa237757e0 kernel: bump 5.10 to 5.10.131
a51f54b41d kernel: bump 5.10 to 5.10.130
f14122f8e6 kernel: bump 5.10 to 5.10.129
73ef008ea6 kernel: bump 5.10 to 5.10.128
cb9a69807e firewall3: bump to latest git HEAD
8ccd657629 mt7622: remove 300 MHz from dts
606fc4cd81 bcm4908: use upstream-accepted watchdog patches
7eda42a3f3 bcm4908: backport latest DT patches
187f5147d3 kernel: update leds-bcm63138 driver
f1fc90e5a1 kernel: backport LEDs driver for BCMBCA devices
a8001815a6 opkg: update to 2022-02-24
479890083d firmware: intel-microcode: update to 20220510
c5ee4b7863 openssl: bump to 1.1.1q
ade7c6db1e wolfssl: bump to 5.4.0
409534860f ath79: bsap18x0: pad rootfs image
1be4cad669 ath79: ja76pf2: use nvmem cells to specify MAC addresses
94530067ad ath79: move image check for devices with RedBoot
8e09f9ffc3 ath79: switch some RedBoot based devices to OKLI loader
01b8cd3200 rockchip: reliably distribute net interrupts
4fb05e45df wolfssl: re-enable AES-NI by default for x86_64
ec9f82fa18 mac80211: fix AQL issue with multicast traffic
945b13e369 realtek: build sane factory images for DGS-1210 models
3fbf45bd09 realtek: build factory images for all DGS-1210 models
128575d0fd realtek: rename u-boot-env2 to board-name
9081098273 scripts: fix CAMEO tag generator
87e58a43ea realtek: build DGS-1210 images with CAMEO tag
b151362d19 scripts: add CAMEO tag generator
72466aaeb9 realtek: add DGS-1210-28 factory image
b2876e6a3a scripts: add cameo image header generator
8b4169f1c9 bcm53xx: use -falign-functions=32 for kernel compilation
e291e49da3 bcm53xx: enable & setup packet steering
5359a8ca38 bcm53xx: disable GRO by default at kernel level
027f7b18b9 bcm53xx: revert bgmac back to the old limited max frame size
bd826dc9f9 kernel: drop patch adding hardcoded kernel compilation flags
da7c57b086 kernel: support setting extra CFLAGS for kernel compilation
614a420084 kernel: use KCFLAGS for passing EXTRA_OPTIMIZATION flags
2022-07-31 13:49:45 +02:00
Lukas Meyer
0acbbaa3cd
ramips-mt7620: add support for Xiaomi Mi Router 3G v2 (#2587) 2022-07-21 19:40:38 +02:00
Andreas Ziegler
534d92efa6
Merge pull request #2582 from AiyionPrime/ath79-migrate-WNR2200
ath79-generic: migrate wnr2200 and add similar variant
2022-07-18 22:14:10 +02:00
Andreas Ziegler
2d763e4008
Merge pull request #2581 from AiyionPrime/ath79-migrate-re450
ath79-generic: (re)add RE450 v1
ath79-generic: (re)add RE355 v1
2022-07-18 22:13:16 +02:00
J. Burfeind
08cbee99f9
ath79-generic: (re)add wzr-hp-g300nh-s (#2551)
Note: Buffalo has introduced hardware changes without bumping the
revision number. 19.07 did not support the rb-variant so there's no need
to implement a migration for the rb-variant.
Every g300nh supported by Gluon should either be the s-variant or
been flashed wrongly.

Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-07-18 22:11:49 +02:00
Andreas Ziegler
8448dd2dc5
Merge pull request #2523 from AiyionPrime/ath79-migrate-wndr3700v4
ath79-nand: migrate wndr3700v4
2022-07-18 02:31:41 +02:00
aiyion.prime
5deb3aaeff ath79-nand: (re)add WNDR3700v4
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-07-17 14:41:13 +02:00
aiyion.prime
76d382772a ath79-nand: add GL.iNet section title 2022-07-17 14:38:54 +02:00
aiyion.prime
ab999b1666 ath79-generic: (re)add RE355 v1
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-07-16 12:30:35 +02:00
aiyion.prime
af4129198d ath79-generic: (re)add RE450 v1
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-07-16 12:30:30 +02:00
Andreas Ziegler
ac24b707ed
Merge pull request #2583 from T-X/pr-alfa-network-ap121f
ath79-generic: (re)add support for ALFA Network AP121F
2022-07-11 00:05:54 +02:00
Linus Lüssing
4cbd748e52 ath79-generic: (re)add support for ALFA Network AP121F
Gone due to
commit 45c84a1 ("ar71xx: drop target")

Note that it was wrongly marked as device class tiny in
commit 7fd7116e2a ("targets: add device-class flags") in the past,
the device has 64MB RAM and not 32MB.

Also, the device has no "led-running" assigned in DTS. The device has
three LEDs: "green:vpn", "green:lan" and "green:wlan". The first LED,
"green:vpn", has a "V" icon and was used to show the VPN connection
status in the vendor firmware. This LED will be used via the newly
added "led-boot" fallback in gluon-setup-mode. But will be unused
during normal operation due to the unassigned "led-running" in DTS.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2022-07-10 23:23:39 +02:00
aiyion.prime
26b5764c74 gluon-setup-mode: add fallback led-boot as status
for devices in targets that do no implement `get_status_led` in /etc/diag.sh
and do not have an led-running in their dts
2022-07-10 23:22:11 +02:00
J. Burfeind
11905af169
ath79-generic: (re)add support for UniFi AC Mesh Pro (#2462)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-07-10 23:10:07 +02:00
aiyion.prime
844f1a8665 ath79-generic: add WNR2200-16M
The CN/RU variant of the device has the same hardware
as the EU already supported, but contains a 16M flash chip.
2022-07-10 21:47:54 +02:00
aiyion.prime
b12ea4169a ath79-generic: (re)add WNR2200-8M
Gone due to
commit 45c84a117b ("ar71xx: drop target")

ar71xx only supported the 8M variant
2022-07-10 21:47:48 +02:00
Steffen Förster
0cd7af9b52
ath79-generic: add AVM FRITZ!WLAN Repeater 300E support (#2406)
Specifications:
* SoC: AR7242 (Virian 400MHz)
* RAM: 64 MB DDR (W9751G6JB-25)
* Flash: 16MB SPI flash (S25FL129PIF)
* WiFi: AR9382 (2.4/5GHz) + 2x SE2595L
* LAN: 1x1000M (PEF7071V)

To install via EVA bootloader, a FTP connection need to be
established to 192.168.178.1 within the first seconds after power on:

  ftp> quote USER adam2
  ftp> quote PASS adam2
  ftp> binary
  ftp> debug
  ftp> passive
  ftp> quote MEDIA FLSH
  ftp> put lede-ar71xx-generic-fritz300e-squashfs-sysupgrade.bin mtd1
2022-07-08 21:13:18 +02:00
Matthias Schiffer
e53e4440ae
gluon-core: always store primary MAC address in lowercase hex digits (#2579)
Depending on the source of the primary MAC address, uppercase digits
would be used on some devices. Convert the address to lowercase for
consistency.

We only change the case for newly configured nodes to avoid changing the
node ID and derives MAC addresses for existing installations.
2022-07-08 20:55:24 +02:00
David Bauer
001316724b
Merge pull request #2578 from blocktrron/upstream-master-updates
modules: update to latest HEAD
2022-07-08 20:54:47 +02:00
David Bauer
842df426bf ramips-mt7622: rename Ubiquiti UniFi 6 LR
The Ubiquiti UniFi 6 LR now has a v2 with a different LED setup, thus
the previous model was added a v1 suffix.

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-07-07 21:40:05 +02:00
David Bauer
a9fff111bd treewide: rename ip6tables-legacy
The ip6tables-legacy metapackage was renamed to ip6ables-zz-legacy.
2022-07-07 19:06:14 +02:00
Maciej Krüger
242a2dccd5
gluon-mesh-layer3-common: add node_prefix6 to check_site 2022-07-07 13:54:08 +02:00
Maciej Krüger
c3af0aca96
gluon-mesh-layer3-common: add radvd from babel 2022-07-07 13:54:05 +02:00
Maciej Krüger
b5f36c7e00
gluon-mesh-layer3-common: add ip6 from babel 2022-07-07 13:52:25 +02:00
Maciej Krüger
b59eb548b5
gluon-mesh-babel: use layer3 common 2022-07-07 13:52:25 +02:00
Maciej Krüger
85d61f12bd
gluon-mesh-babel: remove common fw rules 2022-07-07 13:52:25 +02:00
Maciej Krüger
0cf6fade94
gluon-mmfd: add firewall rules 2022-07-07 13:52:25 +02:00
Maciej Krüger
583dc69961
gluon-l3roamd: add firewall rules 2022-07-07 13:52:25 +02:00
Maciej Krüger
ef7ef09af8
gluon-mesh-layer3-common: add package 2022-07-07 13:52:24 +02:00
David Bauer
317fd91080 modules: update routing
69afa34 bird2: bump to version 2.0.10
2022-07-07 12:49:06 +02:00
David Bauer
88b2f240a2 modules: update packages
1123b9dae travelmate: update 2.0.9
a686f7975 xtables-addons: update to 3.21
d50620e22 xtables-addons: update to 3.20
9b1569377 xtables-addons: add PKG_LICENSE_FILES and use SPDX
1c4e8a14e xtables-addons: fix various warning in lua patch
4a5633b6b xtables-addons: update to 3.19
736996ecb Revert "gcc: update 11 minor version"
d45c8f4c0 collectd: Fix various issues with lantiq dsl metrics.
6e49bec96 unbound: update to 1.16.0
f93755c93 yt-dlp: add package
e846059b1 youtube-dl: drop package
ed2234c1e glib2: replace intl patch with upstream solution
45f10a3be glib2: update libintl handling
19d957cfc glib2: update to 2.70.5
e1598040f openwisp-monitoring: added 0.1.1
dcc80b42c openwisp-config: update to 1.0.1
95acc51cd yq: Update to 4.25.3
3743870bc acme: switch from iptables to nft
d845c3dc3 travelmate: update 2.0.8-3
5651f6a3e gcc: update 11 minor version
d713c4b4d gcc: depend on libzstd
e32d33a2a gcc: update to allow compiling different versions
90e5bfd4f gcc: change maintainer
2022-07-07 12:49:05 +02:00
David Bauer
650f1a0bae modules: update openwrt
f854de6ada OpenWrt v22.03.0-rc5: revert to branch defaults
0345c613ba OpenWrt v22.03.0-rc5: adjust config defaults
bfd070e7fa kernel: Add missing mediatek configuration options
5c7aed8b1e openssl: bump to 1.1.1p
6b78bf1fd8 mediatek: mt7622: fix white dome LED of UniFi 6 LR
5a82803c76 mvebu: cortexa72: fix ImageBuilder for IEI Puzzle devices
fa56db5ccc uboot-mediatek: update UniFi 6 LR board name
d302839b65 mediatek: add Ubiquiti UniFi 6 LR v2 targets
d815e1f67c mediatek: new target ubnt_unifi-6-lr-v1-ubootmod
8f0d8869d5 mediatek: new target mt7622-ubnt-unifi-6-lr-v1
1d96f6863e mediatek: build ubnt-ledbar as a module
2bea35cb55 mediatek: remove crypto-hw-mtk package
5a81e00063 mediatek: mt7622: fix banana pi r64 wps button
e459a87eaf mediatek/mt7629: Activate CONFIG_ARM_ARCH_TIMER_EVTSTREAM
fcd62930f7 mt76: update to the latest version
ee67afeda9 kernel: Refresh patches for all targets
32e9095662 mt76: update to the latest version
a3946a7cd1 mac80211: fix mesh queue selection issue
158a5af801 ramips: improve YunCore AX820 LEDs
6b44a6e731 kernel: bump 5.10 to 5.10.127
66da295f5a kernel: bump 5.10 to 5.10.126
7d6b8f5bdf qoriq: enable Book-E Watchdog Timer
85b5bad5a1 ipq40xx: cut ath10k board file for mikrotik subtarget
973ff0b8e8 ipq40xx: mikrotik: dont include ath10k-board-qca4019 by default
3e38bd1353 ipq-wifi: remove packaged BDF-s for MikroTik devices
80602d472a ipq40xx: mikrotik: provide BDF-s on demand
02cfd1f5a8 mac80211: ath10k: backport bus and device specific API 1 BDF selection
52a64755fc ath10k-ct: update to 2022-05-13
1edf306b31 firewall4: bump to git HEAD
e222660bc8 qoriq: enable HARDENED_USERCOPY
9296d8970a qoriq: disable CONFIG_COMPAT
c9448285f1 qoriq: 02_network fix sweth globbing logic
04091ffd68 qoriq: define reset button for Firebox M300
c7673625d9 qoriq: define leds for Firebox M300
d6a06e1d18 ath79: add support for RouterBOARD mAP
344ecf433a ipq40xx: mikrotik: make RouterBoot partition writeable
fbbc127f42 ath79: mikrotik: add rw soft_config to extra devices
993b70a429 kernel: fix variable erasesize patch
656036a534 x86: 64: Add kmod-igc to default packages
fb3b927643 iptables: default to ip(6)tables-nft
e4caacc887 kernel: add missing symbol to 5.10 config
7c240ee279 qoriq: use FIT uImage for Firebox M300 kernel
88101fa239 qoriq: use KERNEL_SUFFIX in Build/sdcard-img
2b8021d614 kernel: bump 5.10 to 5.10.125
f2f03545d4 kernel: bump 5.10 to 5.10.124
50db012243 kernel: bump 5.10 to 5.10.123
4faf889e7e kernel: bump 5.10 to 5.10.122
81530d69ef kernel: bump 5.10 to 5.10.121
d8d8b82c59 dropbear: cherry-pick upstream commit 544f28a0
f91b0d7a92 wolfssl: disable AES-NI by default for x86_64
2b392383e6 x86: fix damaged config 5.10 refresh
9c609080b0 generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM]
63b4881fcb include/prereq-build.mk: macOS cross build improvements
d989124c02 broadcom-wl: Fix compilation with kernel 5.10
d8f8c78d96 464xlat: delete SNATed conntracks on interface teardown
049093b9fd mediatek: UniFi 6 LR: disable RTC
d65ad3efa5 ramips: decrease SPI frequency for Phicomm K2P
267f86a7b2 wireless-regdb: bump to 2022.06.06
7e223a89a1 prereq-build: add additional git detection
08e1812900 mac80211: increase airtime scheduler quantum
aab535d2bb mac80211: add airtime fairness improvements
2022-07-07 12:48:58 +02:00
David Bauer
0394047a70
Merge pull request #2574 from blocktrron/lantiq-dsa
lantiq-xrx200: allow updates from swconfig to DSA
2022-07-06 22:20:10 +02:00
David Bauer
c06bdd6cfe
gluon-core: only restore WAN proto on upgrade (#2576)
Only restore the netifd proto for the WAN bridge in case the upgrade is
done from an older Gluon version.

For DSL targets, OpenWrt defaults the WAN proto to pppoe, while Gluon
uses the Ethernet ports for WAN. When unconditionally preserving the WAN
proto, pppoe is carried over to Gluon's network config.

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-07-06 22:19:55 +02:00
timniklas
39f9bf7ac3
ipq40xx-mikrotik: add support for mikrotik-sxtsq-5-ac (#2573)
Co-Authored-By: J. Burfeind <github@aiyionpri.me>

Co-authored-by: Tim-Niklas Koch <info@tnkoch.de>
Co-authored-by: J. Burfeind <github@aiyionpri.me>
2022-07-06 22:18:40 +02:00
David Bauer
758d869dd1
lantiq-xway: remove DSL specific packages (#2575)
Gluon does not support usage of the integrated ADSL modem, thus
DSL-related packages can be removed.

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-07-06 11:20:04 +02:00
David Bauer
17156cc06b lantiq-xrx200: make DSA images swconfig upgradable
Update the device-support version for image-metadata so that older Gluon
versions not implementing skipping minor compat-version checks are able
to update to newer Gluon versions.

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-07-05 23:49:49 +02:00
David Bauer
3aba0fe610 gluon-core: remove unused lantiq case
There was never a device with a dedicated WAN port supported in Gluon
which could make use of such a workaround.

As the only relevant lantiq-xrx200 target now uses swconfig anyways,
we can remove this workaround.

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-07-05 23:45:07 +02:00
J. Burfeind
e5a6233709
ath79-generic: (re)add WBS510 v1 (#2543)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-07-03 23:49:38 +02:00
Maximilian Baumgartner
7b43eb2eed
mediatek-mt7622: add support for Xiaomi AX3200 (#2566) 2022-07-03 23:33:27 +02:00
Andreas Ziegler
66f7a0f62e
modules: update gluon (#2572)
04d2b6f sse-multiplex: fix pipe FD leaks
2022-07-03 22:41:56 +02:00
Maximilian Baumgartner
6269ab21c3
mediatek-mt7622: add support for Linksys E8450 (#2565) 2022-07-03 19:35:14 +02:00
David Bauer
a1ce26be8f
Merge pull request #2560 from blocktrron/dsa-migration
ramips-mt7621: enable swconfig to DSA migration
2022-06-26 14:01:22 +02:00
David Bauer
1987720bd2
Merge pull request #2570 from blocktrron/upstream-master-updates
modules: update to latest HEAD
2022-06-26 14:00:54 +02:00
David Bauer
82571e3fee ramips: add MT7621 WiFi devpath migration
Add a migration script to migrate the device path of PCIe WiFi hardware
from OpenWrt 19.07 to the one used with OpenWrt 21.02+.

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-06-26 02:13:30 +02:00
David Bauer
8e8aa0c846 openwrt: make DSA images upgradable from swconfig
Set the compat-version of the sysupgrade image to 1.0 in order to allow
upgrades from Gluon-sources which are based on swconfig and do not
ignore mismatching minor compat-versions.

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-06-26 02:13:30 +02:00
David Bauer
a0c6f2d570 modules: update routing
1735768 olsrd: replace patch for storms with real patch
2022-06-26 02:07:22 +02:00
David Bauer
fc866afbf0 modules: update packages
4c4ac1b58 travelmate: update 2.0.8-2
ddf610ca4 syslog-ng: update to version 3.37.1
34dc9074f dnsdist: switch from liblua to luajit
6c942ec7f Revert "lxc: export systemd cgroups after install"
345ae974b lxc: export systemd cgroups after install
6a89a690f libreswan: update to 4.7
a5765aa29 nfdump: update to 1.6.24
70d787c82 knot-resolver: update to version 5.5.1
40c2ef8c7 travelmate: update 2.0.8
26481ea6c luajit: backport softfloat ppc support
2022-06-26 02:07:21 +02:00
David Bauer
8c9043fbef modules: update openwrt
a4390ea283 apm821xx: WNDAP660: fix ethernet port ordering
7bc1d76419 ramips: mt7621-dts: fix claiming rgmii2 pin group for EdgeRouter X SFP
d01e374074 ramips: force ZyXEL NR7101 to boot from "Kernel" partition
b9d67e2608 ath79: fix rootfs padding for D-Link DAP-2xxx
4130e7ed54 mpc85xx: p2020: add RTC ds1307 to kernel
d929abbbde bcm53xx: remove 07_set_preinit_iface_bcm53xx
c1868ef656 tools/libressl: update to version 3.4.3
8a3fb45722 netfilter: kmod-nft-xfrm
43fd8f4aba libusb: fix missing link
f608779f92 mt76: update to the latest version
daa8d7e32d realtek: make "u-boot-env" partition writable for Netgear 3xx series
c32dfc7fe0 realtek: make Netgear GS1xx u-boot env partition writable
2022-06-26 02:07:11 +02:00
David Bauer
b931513f19 modules: update gluon
b804281 autoupdater: ignore minor compat-version
2022-06-26 02:02:59 +02:00
David Bauer
ef3e195340
Merge pull request #2548 from AiyionPrime/ath79-lan-split
gluon-core: split dual lan devices
2022-06-25 18:06:46 +02:00
aiyion.prime
8ee1d44567 gluon-core: split dual lan devices 2022-06-25 16:37:45 +02:00
Andreas Ziegler
62fb2c8a47
Merge pull request #2567 from AiyionPrime/fix-make-lint
Fix make lint
2022-06-25 01:05:43 +02:00
J. Burfeind
10eca3ba0e
ath79-generic: (re)add support for NanoStation Loco M5 (XW) (#2562)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-06-25 01:04:44 +02:00
Manu.WTF
73471f24db
ath79-generic: (re)add TL-WR902AC v1 (#2546)
TP-Link TL-WR902AC v1 is a pocket-size, dual-band (AC750), successor of
TL-MR3020 (both devices use very similar enclosure, in same size). New
device is based on Qualcomm QCA9531 v2 + QCA9887. FCC ID: TE7WR902AC.

Specification:

- 650/391/216 MHz (CPU/DDR/AHB)
- 1x 10/100 Mbps Ethernet
- 1x USB 2.0 (GPIO-controlled power)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH
- 2T2R 2.4 GHz (QCA9531)
- 1T1R 5 GHz (QCA9887)
- 5x LED (GPIO-controlled), 2x button, 1x 3-pos switch
- UART pads on PCB (TP1 -> TX, TP2 -> RX, TP3 -> GND, TP4 -> 3V3, jumper
  resitors are missing on TX/RX lines)
- 1x micro USB (for power only)

Flash instructions:

Use "factory" image under vendor GUI.

Recovery instructions:

This device contains tftp recovery mode inside U-Boot. You can use it to
flash OpenWrt (use "factory" image) or vendor firmware.

1. Configure PC with static IP 192.168.0.66/24 and tftp server.
2. Rename "openwrt-ath79-generic-tplink_tl-wr902ac-v1-squashfs-factory.bin"
   to "wr902acv1_un_tp_recovery.bin" and place it in tftp server dir.
3. Connect PC with LAN port, press the reset button, power up the router
   and keep button pressed until WPS LED lights up.
4. Router will download file from server, write it to flash and reboot.

MAC Address summary:
- wlan1 (2.4GHz Wi-Fi): Label MAC
- wlan0 (5GHz Wi-Fi): Offset -1 from label
- eth0 (Wired): Offset +1 from label

Root access over serial line in vendor firmware: root/sohoadmin.

Based on support in ar71xx target by: Piotr Dymacz <pepe2k@gmail.com>
2022-06-25 00:20:39 +02:00
David Bauer
6c69c437f7
Merge pull request #2568 from blocktrron/upstream-master-updates
modules: update to latest HEAD
2022-06-23 13:31:03 +02:00
David Bauer
404d7ac5c2 modules: update routing
1e1d004 cjdns: support the supernodes feature (#884)
2c3cf7f cjdns: bump v21.1 and patch find-python (#883)
2022-06-23 00:37:37 +02:00
David Bauer
15a47d1b23 modules: update packages
782f9a2b0 xray-core: Update to 1.5.8
976a19be5 cloudflared: Update to 2022.6.2
7fa87d732 v2raya: Update to 1.5.8.1
2869c80fc django: bump to version 4.0.5
d588074cc ddns-scripts: mydns.ip to mydns.jp
2d2f7a07f curl: bump to 7.83.1
2022-06-23 00:37:36 +02:00
David Bauer
f88403fe89 modules: update openwrt
618ab576be base-files: allow ignoring minor compat-version check
2726c8c315 ramips: fix booting on ZyXEL NBG-419N v2
515404a81b realtek: add support for power LED on Netgear GS108Tv3
bbf8651ba5 realtek: add support for power LED on Netgear GS308Tv1
2022-06-23 00:37:28 +02:00
aiyion.prime
ca37f2036c gluon-enter-setup-mode: remove unused pipefail
posix-sh does not support pipefail this way
2022-06-22 14:58:30 +02:00
aiyion.prime
4ab486dd2c run-build.sh, gluon_bat0.sh: add double quotes
to prevent word splitting and globbing
2022-06-22 14:56:12 +02:00
J. Burfeind
1f2a41d763
ath79-generic: (re)add wzr-hp-ag-300h / wzr-600dhp (#2515)
Both are effectively the same hardware, the latter being Buffalos
replacement model.

Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-06-20 01:48:13 +02:00
David Bauer
df07fc8040
gluon-client-bridge: simplify OWE-TM configuration (#2550)
OpenWrt now allows to specify the ifname of the transition interface
instead of SSID and BSSID, internally automatically detecting these from
interfaces on the same PHY. Thus, these cross-VAP dependant
configuration can be omitted from UCI.

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-06-19 17:06:02 +02:00
Andreas Ziegler
ff60b42203
ramips-mt7621: add support for Netgear R6260 (#2556) 2022-06-19 01:42:47 +02:00
Andreas Ziegler
7aa09d566b
Merge pull request #2563 from blocktrron/upstream-master-updates
modules: update to latest upstream HEAD
2022-06-19 01:41:08 +02:00
David Bauer
4a72489ff4 modules: update packages
27ff7f17d prometheus-node-exporter-lua: fix waiting for interface
2022-06-18 22:20:38 +02:00
David Bauer
72c333f56d modules: update openwrt
76c5c95d94 Revert "mac80211: add a bug fix for a rare crash"
8f7e0cbebf ramips: fix RT-AC57U button level
2022-06-18 22:20:25 +02:00
Andreas Ziegler
dab951ba0e
Merge pull request #2549 from blocktrron/upstream-master-updates
modules: update to latest upstream
2022-06-17 23:49:09 +02:00
Maximilian Baumgartner
a581396e49
rampis-mt7621: add support for Cudy WR2100 (#2555) 2022-06-17 23:29:54 +02:00
Maximilian Baumgartner
b74287c017
rampis-mt7621: add support for Netgear WAC104 (#2557)
Co-authored-by: Maximilian Baumgartner <aufhaxer@googlemail.com>
2022-06-17 23:27:06 +02:00
J. Burfeind
1f4c5681e4
ath79-generic: add support for CPE710v1 (#2558) 2022-06-17 23:12:36 +02:00
J. Burfeind
1ab1df080e
ath79-generic: (re)add support for NanoStation Loco M2 (XW) (#2547)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-06-16 14:52:05 +02:00
David Bauer
d7ee78d33d modules: update packages
8706ce73a python3: Update to 3.10.5, refresh patches
fe2783799 dnsdist: update to 1.7.2
6a7ee3e0a dawn: update to 2022-06-13
d6ad2268f dawn: update to 2022-06-11
179c12e13 dawn: update to 2022-06-09
c7552ebf6 telegraf: update to version 1.23.0
f84ccb401 node: bump to v16.15.1
61ea9bb1a lighttpd: update to lighttpd 1.4.65 release hash
4d09e0637 irqbalance: upstream patch to fix segfault
827a6352b irqbalance: upstream patch to fix irq-module relation
942a09163 prometheus-node-exporter: fix ubus stations
a9accc565 prometheus-node-exporter-lua: use uhttpd-mod-lua
ab327729c prometheus-node-exporter-lua: fixup openwrt collector
a7110baf4 prometheus-node-exporter-lua: add netclass.lua collector
2022-06-16 11:09:42 +02:00
David Bauer
f7a834fb1c modules: update openwrt
f393581f66 hostapd: add owe_transition_ifname
19f3ee51a2 mpc85xx: enable error reporting for RAM and PCIe
3a02b8a29f uboot-mvebu: update to version v2022.04
b65e4d7c5f uboot-mvebu: remove enabled CONFIG_CMD_SETEXPR
68a6d7aaab uboot-mvebu: add patch to enable setexpr for clearfog boards
2022-06-16 11:09:34 +02:00
J. Burfeind
01a0e42a72
lantiq-xrx200: split 7360v2 into own device (#2544) 2022-06-14 22:16:30 +02:00
dependabot[bot]
4b079dbe4d
build(deps): bump zeebe-io/backport-action from 0.0.7 to 0.0.8 (#2539)
Bumps [zeebe-io/backport-action](https://github.com/zeebe-io/backport-action) from 0.0.7 to 0.0.8.
- [Release notes](https://github.com/zeebe-io/backport-action/releases)
- [Commits](https://github.com/zeebe-io/backport-action/compare/v0.0.7...v0.0.8)

---
updated-dependencies:
- dependency-name: zeebe-io/backport-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-14 22:13:05 +02:00
David Bauer
ad7d3300b9
Merge pull request #2545 from blocktrron/upstream-master-updates
modules: update to latest Git HEAD
2022-06-14 01:36:36 +02:00
David Bauer
01af592f7e modules: update routing
4b2b6b3 naywatch: add log when naywatch activates
2022-06-12 18:47:15 +02:00
David Bauer
cc42c79d50 modules: update packages
3aaf33242 mosh-full: Add perlbase-text dependency
7caba084e mosh-full: Sort dependencies alphabetically
afea2bcaf beep: change git repository to fix CVE-2018-0492 and CVE-2018-1000532
a7c3a883d node: bump to v16.15.0
b38fedc4d xray-core: increase nofile limitation
927464150 xray-core: Update to 1.5.7
486508e25 dnsproxy: Update to 0.43.1
e9bab297a golang: Update to 1.18.3
83516e303 gg: Update to 0.2.6
fb773a5fe htop: update to 3.2.1
bc417a955 libcoap: make sure `libcoap-3-notls.so` is installed
b1fa0b81c ksmbd-tools: update to 3.4.5
b86d48ee2 ksmbd-tools: update to 3.4.4
0060d7663 irqbalance: remove local patch for socket directory
cd35bee8b irqbalance: update to 1.9.0
dbec8e910 yggdrasil: stop properly
2022-06-12 18:47:14 +02:00
David Bauer
52d4ae5ad7 modules: update openwrt
3cfe050c4a kernel: crypto: add kmod-crypto-chacha20poly1305
23f0fea742 sunxi/cortexa53: enable armv8-CE crypto algorithms
83dfa4156e rockchip/armv8: enable armv8-CE crypto algorithms
7f4467784f octeontx: add armv8-CE version of CRC T10
9ff2e7d3e7 mvebu/cortexa72: enable armv8-CE crypto algos
75ffc994ba mvebu/cortexa72: refresh kernel 5.10 config
cd25cc0558 mvebu/cortexa53: enable armv8-CE crypto algos
23bc97c281 mvebu/cortexa53: refresh kernel 5.10 config
33dd466422 layerscape/armv8_64b: enable armv8-CE crypto algos
51f1480e48 bcm4908: enable armv8-CE crypto algorithms
4101c8191e bcm27xx/bcm2711: enable asm crypto algorithms
8f393cf2f8 bcm27xx/bcm2710: enable asm crypto algorithms
2b4fba8750 ath79: D-Link DAP-2680: select QCA9984 firmware
d5f911e68f OpenWrt v22.03.0-rc4: revert to branch defaults
677e3c18fe OpenWrt v22.03.0-rc4: adjust config defaults
2b1941e47d bcm53xx: remove BROKEN flag from Asus RT-AC88U
a83dc6b06d kernel: move Toshiba-TC58NVG0S3H patch to ipq40xx
3b90edaff9 wolfssl: make WOLFSSL_HAS_OPENVPN default to y
fe9c4593b5 wolfssl: enable CPU crypto instructions
50b6f5604b wolfssl: add benchmark utility
f4b7541b22 wolfssl: don't change ABI because of hw crypto
ff889898d2 kernel: bump 5.10 to 5.10.120
0ca9367069 kernel: bump 5.10 to 5.10.119
49f8a75031 kernel: bump 5.10 to 5.10.118
3ce3de934c kernel: bump 5.10 to 5.10.117
b24c301709 ksmbd: update to 3.4.5
e8fedf26ab ath79: allow use GPIO17 as regular gpio on GL-AR300M devices
c29641f718 ath79: ZTE MF286[,A,R]: use GPIO19 as ath9k LED
9325aefaf3 ath79: ZTE MF286[,A,R]: fix WLAN LED mapping
720a7db7ea build: fix find warning with SCAN_EXTRA
8e9eaef70a kernel: fix crashes in bridge offload code
33df033b73 mac80211: add a bug fix for a rare crash
d04a947b6b uboot-imx: fix wrong make flags overriding
972160a0f7 kernel: backport flow offload fixes
26958e9724 bmips: dgnd3700v2: fix network config
fe04b41d70 libubox: update to the latest version
9c0f94e955 ltq-vdsl-app: disconnect when service is stopped
8f4b5fdd5f ltq-vdsl/ltq-adsl: fix elapsed time calculation
ea0744fbc6 ltq-atm/ltq-ptm: avoid unnecessary build dependencies
290c13b7d7 ltq-vdsl-mei: add locking to interrupt handler
d0397abd9d ltq-vdsl-app: set MAC address for vectoring error reports
642d6c0c6d ltq-vdsl-mei: enable vectoring error sample callback
e56836dfc1 ltq-vectoring: add driver
de0a9b0eab realtek: add gpio-restart for D-Link DGS-1210-28
e2ca166479 realtek: add reset button for D-Link DGS-1210-28
638220bfee packages: nvram: add NVRAM quirks for bcm53xx target
bee8612d4f bcm53xx: add support for Asus RT-AC88U
ee4a765090 realtek: add support for ZyXEL GS1900-24E
045fe28d4e ramips: use hotplug script for EAP615-Wall MACs
f77d77e726 tools/mkimage: increase tmpfile name length limit
4afa65af8e fstools: update to git HEAD
0a47d52287 ubus: update to git HEAD
76b4b50bbe netifd: update to git HEAD
19f287a7ca procd: update to git HEAD
2ca8bccb00 netifd: update to the latest version
002e05bf9f uqmi: update to git HEAD
2022-06-12 18:47:08 +02:00
Matthias Schiffer
ae7b87b0f0
Merge pull request #2520 from freifunk-gluon/check-updater-branch
gluon-autoupdater: check default branch name, check number of pubkeys, revert invalid branch on update/reconfigure
2022-06-11 10:32:19 +02:00
David Bauer
fa021884cc
Merge pull request #2351 from lemoer/pr_docs_wireguard
docs: add docs for gluon-mesh-vpn-wireguard
2022-06-09 21:39:22 +02:00
J. Burfeind
9b7b053878
ath79-generic: (re)add Archer C58 v1 (#2521)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-06-08 23:23:08 +02:00
lemoer
707f81926f docs/user: move mtu to mtu.rst 2022-06-07 18:30:54 +02:00
lemoer
2daf13cd4a docs: add docs for gluon-mesh-vpn-wireguard 2022-06-07 18:30:54 +02:00
David Bauer
15ef885836
ipq40xx: switch Wave2 firmware to -ct (#2541)
Use the candelatech firmware for the QCA Wave-2 firmware.

The Qualcomm firmware used for the IPQ401x chip in OpenWrt in 22.03
is experiencing heavily degraded performance due to excessive
retransmits when using A-MSDU. Disabling VHT modes or switching to the
candelatech firmware circumvents this issue.

Apply the same to other Wave-2 platforms in order to keep consistency
with upstream.

Wave-1 chips do not support mesh modes with the -ct firmware, so keep
using the QCA firmware in their case.

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-06-05 11:55:25 +02:00
David Bauer
98be390391
Merge pull request #2540 from blocktrron/upstream-master-updates
modules: update to latest HEAD
2022-06-03 05:50:59 +02:00
David Bauer
4d84617598 modules: update packages
656ed7aef openwisp-config: update to 1.0.0
29d26d1d0 xray-core: Update to 1.5.6
0647d444b cloudflared: Update to 2022.5.3
62514d596 yq: Update to 4.25.2
a9eed2e80 php8: update to 8.1.6
b42781523 php8: update to 8.1.5
a60cb1fbd libxml2: update to 2.9.14
dbe3820f3 pdns-recursor: update to 4.7.0
1646a22dd strongswan: support child rekey by bytes and packets
2022-06-02 17:03:22 +02:00
David Bauer
e56486b6d8 modules: update openwrt
f765f2f114 ipq40xx: add Aruba AP-365 specific BDF
59e1b59bb3 malta: use default OpenWrt network configuration
dbd4c345fb firewall4: update to latest Git HEAD
dad1533030 ucode: update to latest Git HEAD
2022-06-02 17:03:14 +02:00
J. Burfeind
fc5644f606
docs: use default language 'en' (#2538)
Since sphinx-5.0.0 "None" is not recommended anymore.
2022-06-01 01:06:27 +02:00
Matthias Schiffer
0b9d3b78c4
ath79-generic: update Archer C6 v2 image name (#2534)
The DTS model name has been changed to "TP-Link Archer C6 v2 (EU/RU/JP)"
to distinguish it from the US version.

Closes #2533
2022-06-01 01:06:06 +02:00
J. Burfeind
2887adef5f
ath79-generic: (re)add support for NanoBeam M5 (XW) (#2432)
Gone due to
commit 071cf7b20f ("Switch to Lua for target definitions")

Has prior been introduced as untested -> broken in
commit d586720c5c ("ar71xx-generic: add support for Ubiquiti NanoBeam M5")

Was commented out in the former commit.
2022-05-30 20:44:43 +02:00
David Bauer
7c7fbd14b7
Merge pull request #2524 from s-2/dir-825
ath79-generic: migrate D-Link DIR-825 B1 from ar71xx
2022-05-29 17:31:22 +02:00
David Bauer
541000eeb0
Merge pull request #2536 from blocktrron/upstream-master-updates
modules: update to latest HEAD
2022-05-29 17:30:22 +02:00
David Bauer
ecace93311 modules: update routing
b7a8391 mesh11sd: Release v1.1.1
2022-05-29 00:03:18 +02:00
David Bauer
e42620cd89 modules: update packages
70c8dc36c lua-openssl: update to version 0.8.2-1
a5a0c94cc banip: mark as broken
f263b042a dnslookup: Update to 1.7.0
244eb582f dnsproxy: Update to 0.43.0
80675bedb dnsproxy: Update to 0.42.4
ba8efcc27 vpnc: Update to 0.5.3+git20220517
009915f4f haproxy: Update HAProxy to v2.4.17
1efe209f1 tailscale: update to version 1.24.2
4b697c468 node-serialport: Support for npm@8
403eb59cd node-hid: Support for npm@8
52cb98ae9 node-cylon: Support for npm@8
575fbc5b9 node-arduino-firmata: Support for npm@8
83a9458a1 node-serialport-bindings: Support for npm@8
20a92ce23 node-yarn: Support for npm@8
9934d2851 node-homebridge: Support for npm@8
97d325e6d node-javascript-obfuscator: Support for npm@8
7e853be8f node: Major update from v14 to v16
2022-05-29 00:03:16 +02:00
David Bauer
a8a1a058b4 modules: update openwrt
b42511c007 ath79: fix label MAC address for D-Link DIR-825B1
0ed3446bfc OpenWrt v22.03.0-rc3: revert to branch defaults
f0e0bcba5e OpenWrt v22.03.0-rc3: adjust config defaults
9f415792e1 ath79: NanoBeam M5 fix target_devices
d9cb31f944 ath79: add support for Ubiquiti NanoBeam M5
fca0069247 OpenWrt v22.03.0-rc2: revert to branch defaults
4f6f9caf1f OpenWrt v22.03.0-rc2: adjust config defaults
2022-05-29 00:03:07 +02:00
lemoer
c133fbbef6
push_pkg.sh: use scp protocol for openssh scp (#2479)
Starting from OpenSSH 9.0p, scp started to use sftp in favor of the
scp protocol by default. As dropbear in OpenWrt currently does not
support sftp by default, we now use the fallback cli switch "-O"
to use the scp protocol for scp.
2022-05-28 20:41:10 +02:00
Jan
b690939fae
ramips-mt7620: remove "broken" status for ASUS RT-AC51U (#2494) 2022-05-27 21:40:05 +02:00
Sebastian Schaper
d56a0f2602 ath79-generic: migrate D-Link DIR-825 B1 from ar71xx
Signed-off-by: Sebastian Schaper <openwrt@sebastianschaper.net>
2022-05-27 19:28:04 +02:00
Matthias Schiffer
92a6b81e8a
gluon-autoupdater: check that good_signatures does not exceed number of provided pubkeys 2022-05-27 12:12:26 +02:00
Matthias Schiffer
3a893f67ce
ci: minimal-site: set good_signatures to 0
Do not fail the new check that good_signatures ≤ #pubkeys.
2022-05-27 12:12:26 +02:00
Matthias Schiffer
53cf8796c7
gluon-autoupdater: revert to default branch when configured branch is invalid
An invalid branch may be set for various reasons:

- Previous firmware had an invalid default branch
- Branch list has changed and old UCI branch config was removed by a
  site-specific upgrade script
- Manual UCI configuration
2022-05-27 12:00:32 +02:00
Matthias Schiffer
2c65f0834b
gluon-autoupdater: factor out default_branch() function
Make the code clearer and prepare for invalid branch fixup.
2022-05-27 12:00:32 +02:00
Matthias Schiffer
db48b6b693
gluon-autoupdater: check default branch name
Check the default branch (both from site.conf and GLUON_AUTOUPDATER_BRANCH)
against the list of configured branch names to avoid misconfiguration.
2022-05-27 12:00:32 +02:00
Matthias Schiffer
d24ae56378
gluon-core: check-site: support checking "custom" values
The new "value" helper can be used to turn a Lua value into a path that
can be passed to need_*() etc.
2022-05-27 12:00:31 +02:00
Matthias Schiffer
674ec7b64a
ath79-generic: re-add support for Ubiquiti UniFi AP Outdoor+ (#2440)
Removed in 45c84a117b ("ar71xx: drop target").
2022-05-26 23:35:18 +02:00
Maciej Krüger
a0df96eb97
ath79-mikrotik: add support for Mikrotik RB951Ui-2nD (#2377)
Re-add mikrotik target

Note that previous images were generic ones and as such no migration
path is provided other than manually flashing the image via config-mode.
2022-05-22 11:45:28 +02:00
David Bauer
1ef3edbe58
Merge pull request #2352 from lemoer/pr_site_vpn_mtu_in_provider
RFC: gluon-mesh-vpn-*: make MTU of VPN device provider specific
2022-05-22 11:45:10 +02:00
J. Burfeind
36f406746e
gluon-status-page: fix mesh-vpn section for wg (#2502)
Since freifunk-gluon/packages#250 mesh-vpn-peers
can be empty arrays if they're not connected
and the node is in a WireGuard site.
2022-05-21 20:27:14 +02:00
lemoer
d3dbc3d8ed docs: move mtu in site.rst 2022-05-21 20:09:01 +02:00
lemoer
5f8da70ffd docs: adjust example site.conf 2022-05-21 20:08:52 +02:00
David Bauer
ae27394f78
Merge pull request #2528 from blocktrron/upstream-master-updates
base: update modules
2022-05-21 18:13:31 +02:00
lemoer
7c81897b4c gluon-mesh-vpn-*: make vpn MTU provider specific
If a community uses different vpn providers, they typically
assume the same MTU for the wan device underneath the VPN. As
different VPN providers however have different overhead, the MTU
of the VPN device differs for each provider. Therefore this
commit makes the MTU of the VPN device provider specific.

This has two advantages:
1. The same site.conf can used to bake firmwares for different
   VPN providers (only by selecting a diferent vpn feature in the
   site.mk).
2. We are coming closer to the option of integrating multiple VPN
   providers into one firmware.
2022-05-21 18:12:49 +02:00
David Bauer
18818bb624 modules: update routing
f6d2b09 babeld: rewrite description
37d2c78 babled: update to 1.12.1
255c859 babeld: update to 1.12
f2bebea alfred: Merge bugfixes from 2022.1
2bebe7e batctl: Merge bugfixes from 2022.1
0ab07cf batman-adv: Merge bugfixes from 2022.1
2022-05-21 18:09:26 +02:00
David Bauer
6fcc04ab64 modules: update packages
b708cf5a1 ffmpeg: update to 5.0.1
2d0893afb pigeonhole: update to 2.3.18
2904343fb dovecot: update to 2.3.18
771fc2373 openconnect: bump to version 9.01
6621ab68b miniflux: update to 2.0.36
aaab4075c openldap: drop use of HTTP in favor of HTTPS
2abb60c16 audit: avoid interferece with base libaudit build
964e972af audit: remove host build
0c44bdcea audit: Fix compilation with kernel 5.15
223f6215b poemgr: add package
9f4253df4 shadowsocks-libev: fix compat issue with newer version of ucode
044425dc4 bluez: Update to 5.64, update/refresh patches
30c39ca1d docker: Update to v20.10.16
b23eb24dc dockerd: Update to v20.10.16
6f3e7f879 libnetwork: Updated to 339b97 for docker v20.10.16
c5061b93d containerd: Update to v1.6.4 for docker v20.10.16 * Overrode `PREFIX` to have the old behaviour
33d3642c8 runc: Update to v1.1.1 for docker v20.10.16
001ab241e icu: bump to 71.1
136fb020f usteer: update to latest HEAD
db966f719 telegraf: Update to version 1.22.4
864bc0eac golang: Update to 1.18.2
867ad434f micropython-lib: Update to latest master
0cd609b67 ci: Look for changed packages in the PR branch only
9d2246b28 docker: fix compilation with glibc
5af6f2592 dockerd: fix compilation with glibc
8905f9808 dockerd: Add firewall independent dependencies
79614bb2a dockerd: Sorted dependencies for better diffs
c227c65c6 docker:  Update to 20.10.14
df8b28232 dockerd: Update to 20.10.14, and update version checking mechanism
23547de3c containerd: Update to 1.5.11
c79b4f85b runc: update to 1.0.3
f8892740c privoxy: update to 3.0.33 and fix the init script
6f606107e lxc: export systemd cgroups after install
245c658fa cloudflared: Update to 2022.5.1
61a2e96d2 dnsproxy: Update to 0.42.3
f8e2c5dca dawn: update to 2022-05-09
68c7cb1d3 haproxy: Update HAProxy to v2.4.16
db148cc08 adblock: list maintenance
821fd2499 strongswan: add wolfssl plugin
220c75cef htop: update to 3.2.0
dad9ae19e v2rayA: Update to 1.5.7
2aa2a157b cloudreve: Update to 3.5.3
d51f7c20b cloudreve: Update to 3.5.2
0e639eb47 cloudflared: Update to 2022.5.0
23fc3e63c youtube-dl: update to 2021.12.17
50e306326 usteer: update to latest HEAD
f26d5e546 passh: updated per OpenWrt's common practice
3bd1d510e passh: an sshpass alternative
7fddd201f sexpect: updated per OpenWrt's common practice
40e42950c sexpect: Expect for Shells
b282f5bba https-dns-proxy: 2021-11-22-3: add support for Canary Domains
b93534691 zerotier: fix segfault on ARM platforms
2022-05-21 18:09:25 +02:00
David Bauer
7a80663f18 modules: update openwrt
34b6abf5a8 ath79: add support for MikroTik hAP (RB951Ui-2nD)
03cfdf72e2 ath79: add support for MikroTik RouterBOARD hAP ac lite
80baa60259 firewall4: update to latest Git HEAD
4575498276 ucode: update to latest Git HEAD
e90f74feb6 kernel: bump 5.10 to 5.10.116
95c315f200 ath79: fix ar934x spi driver delays
97a2012ecc openssl: bump to 1.1.1o
6f8db8fee3 wolfssl: bump to v5.3.0-stable
3aeb6e975f ipq806x: add support for Arris TR4400 v2 / RAC2V1A
a11c3cde27 realtek: add support for ZyXEL GS1900-16
9b20e2a699 ath79: add Netgear WNDAP360
6729fa2dd2 ath79: add support for TP-Link Deco M4R v1 and v2
3c57430d1c ramips: add led_source for Asus RT-AC1200 devices
e431195abf ramips: add support for Cudy X6
5439efe37d ramips: Add support for SERCOMM NA502S
fe5943a7bd ramips: add support for Wavlink WL-WN533A8
5454735574 ramips: create shared DTSI for Wavlink WN53XAX devices
7152bc84f4 ramips: add support for TP-Link RE650 v2
d627ea510c ramips: add support for YunCore AX820/HWAP-AX820
9c2ed54aa2 firmware-utils: bump to git HEAD
87f9dd665a firmware-utils: bump to git HEAD
3963a90df8 kernel: Add missing devm_regulator_get_exclusive()
7a0af40e37 kernel: bump 5.10 to 5.10.115
e0aaecdbb8 kernel: bump 5.10 to 5.10.114
416e8aefe1 IPQ4019: AVM FRITZ!Box 7530: Remove NAND ECC restrictions from DTS
ec45e1ff68 kernel: add support for Toshiba TC58NVG0S3HTA00 NAND flash
144d9c4a43 uboot-fritz4040: Add support for Toshiba NAND
9ef931f96b ath79: ZTE MF286[A,R]: add "Power button blocker" GPIO switch
54e759d05d ipq40xx: revert Cell-C RTL30VW to legacy caldata extraction
0f8eba4f95 ath79: fix I2C on GL-AR300M devices
308ce46076 ipq40xx: Lyra: update RGB LED-Controller node for 5.10+
19a8c723b6 lantiq: xway: disable unused switch drivers
a374a959b9 realtek: do not reset SerDes on link change
7b4702afef realtek: Trap all frames with switch as destination to CPU-port
1c6a179e1a ramips: fix booting on Samknows SK-WB8
6120a66e6a bcm27xx: include 'rtc' in target's 'FEATURES'
ae64d0624c kernel: fix corrupted padding on small packets with mt753x dsa
53fc6e9ede kernel: fix flow offload issues with pppoe
77e123340f mediatek: add patches for MT7622 WED (wireless ethernet dispatch)
2022-05-21 18:09:18 +02:00
Martin Weinelt
99bdce1072
ramips-mt7621: add TP-Link RE650v1 (#2527)
- [x] Must be flashable from vendor firmware
  - [x] Web interface
  - [ ] TFTP (untested, but possible according to OpenWrt wiki)
  - [ ] Other: <specify>
- [x] Must support upgrade mechanism
  - [x] Must have working sysupgrade
    - [x] Must keep/forget configuration (`sysupgrade [-n]`, `firstboot`)
  - [x] Gluon profile name matches autoupdater image name
        (`lua -e 'print(require("platform_info").get_image_name())'`)
- [x] Reset/WPS/... button must return device into config mode
- [x] Primary MAC address should match address on device label (or packaging)
      (https://gluon.readthedocs.io/en/latest/dev/hardware.html#notes)
  - When re-adding a device that was supported by an earlier version of Gluon, a
    factory reset must be performed before checking the primary MAC address, as
    the setting from the old version is not reset otherwise.
- Wired network
  - [x] should support all network ports on the device
  - [x] must have correct port assignment (WAN/LAN)
    - On devices supplied via PoE, there is usually no explicit WAN/LAN labeling on the hardware.
      The PoE input should be the WAN port in this case.
- Wireless network (if applicable)
  - [x] Association with AP must be possible on all radios
  - [x] Association with 802.11s mesh must work on all radios
  - [x] AP+mesh mode must work in parallel on all radios
- LED mapping
  - Power/system LED
    - [x] Lit while the device is on
    - [x] Should display config mode blink sequence
          (https://gluon.readthedocs.io/en/latest/features/configmode.html)
  - Radio LEDs
    - [x] Should map to their respective radio
    - [x] Should show activity
  - Switch port LEDs
    - [x] Should map to their respective port (or switch, if only one led present)
    - [x] Should show link state and activity
2022-05-21 14:17:29 +02:00
Maciej Krüger
57c0bdbf56
gluon-core: add post-setup.d .keep (#2525)
This folder is referenced in files/lib/netifd/proto/gluon_mesh.sh, but 
there's no .keep for it
2022-05-20 18:59:37 +02:00
Sebastian Schaper
3ee60c77ba ath79-generic: fix whitespace
Signed-off-by: Sebastian Schaper <openwrt@sebastianschaper.net>
2022-05-17 18:54:15 +02:00
J. Burfeind
02edf564bd
ath79-generic: (re)add CPE210v3 (#2506)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-05-13 23:36:34 +02:00
J. Burfeind
523dead05b
ath79-generic: (re)add support for wndr3700 (#2482)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-05-11 23:00:43 +02:00
David Bauer
6ccd7c587b
Merge pull request #2503 from freifunk-gluon/import-release-notes
Import v2021.1.2 release notes, README / copyright updates
2022-05-08 12:14:19 +02:00
Matthias Schiffer
b68f2484ff
treewide: remove leftover GLUON_SPECIALIZE_KERNEL dependencies (#2514)
This was removed in commit c23bc293ef ("treewide: remove
GLUON_SPECIALIZE_KERNEL").
2022-05-08 12:14:03 +02:00
naveen
341ed3b311 chore: Set permissions for GitHub actions
Restrict the GitHub token permissions only to the required ones; this way, even if the attackers will succeed in compromising your workflow, they won’t be able to do much.

- Included permissions for the action. https://github.com/ossf/scorecard/blob/main/docs/checks.md#token-permissions

https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions

https://docs.github.com/en/actions/using-jobs/assigning-permissions-to-jobs

[Keeping your GitHub Actions and workflows secure Part 1: Preventing pwn requests](https://securitylab.github.com/research/github-actions-preventing-pwn-requests/)

Signed-off-by: naveen <172697+naveensrinivasan@users.noreply.github.com>
2022-05-08 01:00:16 +00:00
Matthias Schiffer
9d403c9849
docs: dev/hardware: update hardware support documentation (#2458)
Replace most of the page to account for the changes that have happened
in Gluon and OpenWrt in the last 4 years:

- Switch from Shell-based target definition language to Lua
- Removal of targets using legacy build code

Closes #2360
2022-05-07 18:27:45 +02:00
David Bauer
56eaf4aa28
treewide: switch crypto lib to WolfSSL (#2509)
WolfSSL has a significant lower flash footprint. Also, issues with OWE /
SAE connections were fixed in OpenWrt a while ago.

See ddcb970274

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-05-07 15:17:03 +02:00
Matthias Schiffer
b1a12a4a0c
generic: reduce kernel size some more (#2510)
Remove a few features that became enabled by default since OpenWrt 19.07.
Disabling CONFIG_RELAY also reduces RAM usage.
2022-05-07 15:16:47 +02:00
David Bauer
1bcd4a47c9
Merge pull request #2508 from blocktrron/gluon-size
generic: reduce flash consumption
2022-05-07 00:01:45 +02:00
David Bauer
fd6f8c2919 generic: optimize kernel size
Remove kernel symbols which are not required for Gluon.

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-05-06 20:57:25 +02:00
David Bauer
6fe2e6fc80 target: remove nftables
Gluon still uses firewall3 and iptables, so remove dependency on
nftables.
2022-05-06 20:57:03 +02:00
David Bauer
d656d38c7c mesh-vpn-core: require legacy iptables
Require legacy iptables, as Gluon still depends on firewall3. Otherwise,
nftables is pulled in as a dependency.
2022-05-06 20:55:57 +02:00
David Bauer
436d6053cb
Merge pull request #2504 from freifunk-gluon/update-modules
Update modules
2022-05-06 08:43:35 +02:00
Matthias Schiffer
8ebba2350a
modules: update OpenWrt packages
948ea0e9c046 ecdsautils: update to v0.4.1
97333939dbcc hwdata: update to version 0.359
22c8efd9377c tor: bump to 0.4.7.7 stable
241e70f5fd84 etherwake-nfqueue: swap iptables for nftables dependency
61e0ee2e8e30 rclone: Update to 1.58.1
a8374c48e14f apfree-wifidog: fix compile error
2af08fe724f3 gst1-libav: fix compilation with ffmpeg5
419054a05f56 libtorrent-rasterbar: Update to 2.0.6

With the update to ecdsautils 0.4.1, we can remove the downstream patch
again.
2022-05-05 20:08:12 +02:00
Matthias Schiffer
f0e76390ef
modules: update OpenWrt base
5ff900e0ade7 firewall: config: remove restictions on DHCPv6 allow rule
2ac5ee7f8a99 fstools: update to git HEAD
ffe12f8b48cf procd: update to git HEAD
0dc3ecf0da1c base-files: simplify restorecon logic
efc38b315e9b selinux-policy: update to version 1.1
6cb08b17979c base-files: add missing $IPKG_INSTROOT to restorecon call
9282cb0be06c base-files: address sed in-place without SELinux awareness
dc71658a802b fstools: update to git HEAD
3a974b5bcd77 ipq40xx: fix BDF file for pcie wifi chip on the GL.Inet GL-B2200
d90c7621f40f kernel: bump 5.10 to 5.10.113
e9c14fa85f4d kernel: bump 5.10 to 5.10.112
fa8e050c4bcb f2fs-tools: fix resize.f2fs (#9800)
0c25b9cb11bf ath79: add USB power control for GL-AR300M series
a142d96ade46 mpc85xx: Fix output location of padded dtb
fbd9605a908d build: don't remove BUILD_LOG_DIR in _clean
946f60aaebc6 dnsmasq: add logfacility file to jail mounts
6d5a097232b0 ath79: ubnt: drop swconfig on ac-{lite,lr,mesh}
18649fbff04a bcm63xx: fix description fix name case
d79380ac1dff ath79: ZTE MF286R: add comgt-ncm to DEVICE_PACKAGES
4c5d2cde1307 ramips: zbt-wg2626: Add the reset gpio for PCIe port 1
2022-05-05 20:07:26 +02:00
Matthias Schiffer
605c7e0806
docs: import v2021.1.2 release notes and update README 2022-05-05 20:01:08 +02:00
Matthias Schiffer
9aaeda8df3
Update copyright years 2022-05-05 19:57:47 +02:00
Matthias Schiffer
204f7e56e3
Merge pull request from GHSA-xqhj-fmc7-f8mv
ecdsautils: verify: fix signature verification (CVE-2022-24884)
2022-05-05 18:02:38 +02:00
J. Burfeind
743ba02fe9
ramips-mt76x8: add support for TP-Link Archer C20 v4 (#2500)
Co-authored-by: Ilja Gerhardt <ilja@cryptix.net>

Co-authored-by: Ilja Gerhardt <ilja@cryptix.net>
2022-05-05 11:10:07 +02:00
J. Burfeind
40f8275918
ath79-generic: (re)add Archer C7 v4 (#2497)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-05-05 01:19:29 +02:00
J. Burfeind
ab3e831b7c
ath79-generic: (re)add support for tl-wdr3500-v1 (#2450)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-05-04 00:33:05 +02:00
Matthias Schiffer
5e6bac4e52
ecdsautils: verify: fix signature verification (CVE-2022-24884)
A vulnerability was found in ecdsautils which allows forgery of ECDSA
signatures. An adversary exploiting this vulnerability can create an update
manifest accepted by the autoupdater, which can be used to distribute
malicious firmware updates by spoofing a Gluon node's connection to the
update server.
2022-05-03 20:35:16 +02:00
J. Burfeind
6526612aaf
ath79-generic: (re)add archer c60 (#2496)
Device is marked as broken due to ath9k+ath10k 8/64.

Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-05-02 23:38:56 +02:00
Andreas Ziegler
948d3e10e7
ath79-generic: (re)add support for archer-c59-v1 (#2489) 2022-05-01 19:38:12 +02:00
J. Burfeind
4ec8c4db19
ath79-generic: (re)add support for gl-usb150 (#2476)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-05-01 19:36:13 +02:00
Tom Herbers
aef006e02e
mpc85xx-p1020: add Extreme Networks WS-AP3825i (#2495) 2022-05-01 10:43:32 +02:00
David Bauer
154ecf6ad8
Merge pull request #2426 from freifunk-gluon/switch-2203
modules: use OpenWrt 22.03
2022-04-30 23:47:27 +02:00
David Bauer
90dfd25e06 mpc85xx-p1010: remove TP-Link WDR4900
Remove support for the TP-Link WDR4900, as it us currently unable to
load its kernel sure to factory bootloader constraints.

Progress on this topic is tracked in #2491
2022-04-30 16:35:44 +02:00
David Bauer
78b2bca383 generic: remove jool workaround
Jool can be built without error on 22.03. Remove this workaround.
2022-04-30 16:35:06 +02:00
David Bauer
8fde14f63d generic: remove firewall4 2022-04-30 16:35:06 +02:00
David Bauer
3dc3b40819 treewide: replace ip6tables with ip6tables-legacy 2022-04-30 16:35:06 +02:00
David Bauer
e453b503bd modules: switch to OpenWrt 22.03 2022-04-30 16:35:05 +02:00
David Bauer
f54c0e789f
Merge pull request #2493 from blocktrron/modules-220427
modules: update to latest HEAD
2022-04-27 19:03:57 +02:00
Matthias Schiffer
a27edd4baa
Merge pull request #2459 from ffgraz/cm
gluon-setup-mode: add gluon-enter-setup-mode
2022-04-27 18:36:59 +02:00
Matthias Schiffer
1992383134
Merge pull request #2457 from MyIgel/statuspage-fix-tables
gluon-status-page: explicitly add tbody element to fix table manipulation
2022-04-27 17:20:24 +02:00
David Bauer
61b7085ff7 modules: update routing
b8461cc batman-adv: compat: Add atomic mc_forwarding support for stable kernels
a0d61bd mesh11sd: [New Package] Release v1.0.0
6166db3 naywatch: fix reboot_now
2022-04-27 13:57:23 +02:00
David Bauer
0bb999732c modules: update packages
0d142ffd2 telegraf: Update to version 1.22.2
587caf22a xray-core: Update to 1.5.5
87f14264f prometheus-node-exporter-lua: improve ubnt-manager
959860dc4 git: update to version 2.34.3
636342ee4 golang: Update to 1.17.9
51231fc5c ffmpeg: update to version 4.3.4
45426fa3d ruby: update to 3.0.4
4d34758b6 ci: use openwrt/gh-action-sdk@v4
edc9829bd delve: Update to 1.8.2
fe3e0493d usteer: update to latest HEAD
8995d3f02 python3-speedtest-cli: update to 2.1.3
827c37533 ooniprobe: Update 3.14.2
04a580232 ooniprobe: update to version 3.10.1
a33113111 ooniprobe: update to version 3.9.2
9f90da736 ooniprobe: update to version 3.9.0
918ca913b ooniprobe: update to version 3.8.0
a11f9a412 ooniprobe: update to version 3.7.0
915fed260 ooniprobe: update to version 3.5.2
78bcd00c1 yq: Update to 4.24.5
8406439bd yq: Update to 4.24.4
754c075a8 prometheus-node-exporter-lua: fix ubnt-manager collector
8ac019e76 prometheus-node-exporter-lua: add ubnt-manager collector
406abcbcc ubnt-manager: add ubnt-manager
216a37d65 pdns-recursor: add patch for CVE-2022-27227
f618daa55 pdns: add patch for CVE-2022-27227
427f2f995 haveged: update to 1.9.18
25a2c9f70 php7-pecl-redis: update to 5.3.7
3094dfadd php7-pecl-http: update to 3.2.5
77dcb4c90 php8: update to 8.0.17
e74e59d04 telegraf: Update to version 1.22.1
14d7e1608 keepalived: fix libip6tc dependency
3fbe10e59 keepalived: add missing CONFIG_ prefix to PKG_CONFIG_DEPENDS elements
bbb13556d adguardhome: Update adguardhome to v0.107.5
19e621a43 adguardhome: Bump adguardhome to v0.107.3 stable
d86d6d02b adguardhome: Update to v0.107.2 stable
9fa3942a8 nextdns: Update to version 1.37.11
894f58ceb yq: Update to 4.24.2
fbcaa8bce ksmbd-tools: revert update to 3.4.4
2022-04-27 13:57:23 +02:00
David Bauer
70ed8ea18b modules: update openwrt
5b7d01b427 iwinfo: update to latest HEAD
39aaec62ca hostapd: refresh patches
e2030fcfa7 hostapd: add ubus link-measurements notifications
1a2940f68e hostapd: add ubus method for requesting link measurements
b4a9597154 hostapd: add support for enabling link measurements
5a18028c69 iwinfo: update to latest HEAD
b519d76276 iwinfo: update to latest Git head
01cc5e195d iwinfo: update to latest Git HEAD
44781b265c iwinfo: update to the latest version
f7c445aa7d iwinfo: update to the latest version
75cbd8de00 wolfssl: fix compilation with /dev/crypto
1418439da9 kernel: add missing config symbols
39f1815b3e mac80211: fix QCA9561 PA bias
1769e3162e ramips: mt7620: disable SOC VLANs for external switches
30e47fb1e4 ramips: mt7620: ethernet: use more macros and bump version
3f976d0225 ramips: mt7620: fix RGMII TXID PHY mode
6685eb29e5 ramips: mt7620: add ephy-disable option to switch driver
47db830b82 ramips: mt7620: move mt7620_mdio_mode() to ethernet driver
6876465875 ramips: mt7620: use DTS to set PHY base address for external PHYs
5d7805c78b ramips: mt7620: allow both internal and external PHYs
01bbed7444 ramips: mt7620: fix ethernet driver GMAC port init
6491212ea7 ramips: mt7620: remove useless GMAC nodes
a14c2d409c ramips: mt7620: simplify DTS properties for GMAC
c652a06eef ramips: mt7620: enable autonegotiation for all ports
08ec622c46 ramips: make PHY initialization more descriptive
4123f177f9 ramips: add support for the Wavlink WL-WN579X3
92af15077f ramips: split Youku YK1 to YK-L1 and YK-L1c
55f8eb84d2 ramips: improve pinctrl for Youku YK-L1
92489b4f82 ramips: speed up spi frequency for Youku YK-L1
bea1891182 ramips: remove obsolete mx25l25635f compatible hack
6c44b157e5 mvebu: kernel: enable CONFIG_BLK_DEV_NVME
f0f9b7ac5c OpenWrt v21.02.3: revert to branch defaults
42a15ca378 OpenWrt v21.02.3: adjust config defaults
1d4dea6d4f ath79: Move TPLink WPA8630Pv2 to ath79-tiny target
41a97c2074 bcm27xx: add AMP2 to HifiBerry DAC+ / DAC+ Pro package
9a765554f4 ath79: add support for MikroTik RouterBOARD mAP lite
2cc9ee8000 ath79: add support for Yuncore A930
06874171d1 ath79: add support for Yuncore XD3200
c5ef62a218 wolfssl: bump to 5.2.0
99b00edf35 mac80211: Update to version 5.10.110-1
9132344444 bpftools: fix feature override for masking clang
169c9e3a88 ramips: fix reboot for remaining 32 MB boards
39bf2aee0e kernel: bump 5.4 to 5.4.188
3008f1f441 imagebuilder: fix broken image generation with external targets
2022-04-27 13:57:23 +02:00
David Bauer
099d2bd693
docs: fix mpc85xx-p1010 target name (#2492)
The mpc85xx-generic target was renamed to mpc85xx-p1010 in OpenWrt
21.02. The target name in Gluon docs was never adjusted however.

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-04-25 00:02:08 +02:00
J. Burfeind
ed0cb90d42
ath79-generic: (re)add support for archer-c25-v1 (#2477)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-04-21 22:42:07 +02:00
J. Burfeind
374b81ddc0
ath79-generic: (re)add support for wndr3700v2 (#2485)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-04-21 22:34:11 +02:00
Igor Scheller
1ceb4428da gluon-status-page: Use querySelector instead of firstElementChild 2022-04-17 23:26:17 +02:00
Igor Scheller
68a5a74d1d gluon-status-page: Move mesh vpn id to table body, directly use table body 2022-04-17 23:10:40 +02:00
eberhab
9ec4abd043
ramips-mt76x8: add support for TP-Link Archer C20 v5 (#2481)
https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=86e7353bff2a5de257de8ec62e782f016eed143c

Co-authored-by: Tom Herbers <mail@tomherbers.de>
2022-04-17 20:47:27 +02:00
Matthias Schiffer
a8d25670ce
gluon-core: use copy of "WAN" role list for "single" default (#2478)
Instead of using roles.wan directly as the default for roles.single,
create a copy of the table, so subsequent modifications of roles.single
don't affect roles.wan as well.

Fixes migration of Mesh-on-WAN status when no default for "single"
interfaces is set in site.conf.
2022-04-17 20:46:53 +02:00
Tom Herbers
588502cff1
ath79-generic: (re)add support for tl-wr1043n-v5 (#2483)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-04-17 20:31:43 +02:00
Manu.WTF
f63fa832fd
ath79-generic: (re)add support for unifiac-pro (#2439) 2022-04-17 11:56:19 +02:00
Matthias Schiffer
1252871217
gluon-core: fix gluon.util.get_role_interfaces() with empty role list (#2472)
The function failed when an interface has no roles assigned, breaking
several upgrade scripts.

Closes #2471
2022-04-17 01:19:22 +02:00
Matthias Schiffer
4225bd3853
gluon-core: fix setting interface default roles from site.conf (#2463)
Make the code match the docs and check_site.lua by actually looking up
the "default_roles" field, not "roles".
2022-04-13 00:49:46 +02:00
Igor Scheller
ea7b3163d1 gluon-status-page: Code clarification and formatting 2022-04-11 23:51:19 +02:00
J. Burfeind
684b4a80a0
ath79-generic: (re)add support for wbs210v1 (#2461)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-04-08 00:18:34 +02:00
Maciej Krüger
1d7d50cf23
gluon-setup-mode: use gluon-enter-setup-mode 2022-04-06 22:30:02 +02:00
Maciej Krüger
cc49806e08
gluon-setup-mode: add gluon-enter-setup-mode
Script to enable setup mode and reboot

Fixes #2412
2022-04-06 22:29:45 +02:00
J. Burfeind
8e9a186e5a
ath79-generic: (re)add support for glinet_6416 (#2453)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-04-05 23:02:54 +02:00
J. Burfeind
94e04393b1
ath79-nand: (re)add support for glinet_gl-ar300m (#2455)
Gone due to
commit 45c84a117b ("ar71xx: drop target")

Changed subtarget in between, similar change in
commit bed66fa248 ("ath79: move GL.iNet GL-AR750S to NAND subtarget")
2022-04-05 19:29:02 +02:00
J. Burfeind
5a0c299d8c
ath79-generic: (re)add support for tl-wr842nd-v3 (#2451)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-04-05 19:26:00 +02:00
Manu.WTF
2ea793f9b2
ath79-generic: (re)add support for avm_fritz4020 (#2435) 2022-04-04 19:08:38 +02:00
J. Burfeind
7c268290ee
ath79-generic: (re)add support for tl-wr1043nd-v2 (#2452)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-04-03 16:12:01 +02:00
J. Burfeind
a3c69d539d
ath79-generic: (re)add support for GL-AR750 (#2454)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-04-03 15:55:12 +02:00
Igor Scheller
3e0a6a64e3 gluon-status-page: Use <tbody> as browsers can add it automatically 2022-04-03 13:54:20 +02:00
J. Burfeind
dfa209a88a
ath79-generic: (re)add NanoStation M2/M5 (XW) (#2443)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-04-03 00:01:38 +02:00
Matthias Schiffer
332944af2b
Merge pull request #2448 from AiyionPrime/ath79-migrate-unifi-ac-lite
ath79-generic: (re)add unifi-ac-{lite,lr}
2022-04-02 17:57:48 +02:00
aiyion.prime
d3a2c657f9 ath79-generic: (re)add unifi-ap-ac-lite
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-04-02 15:49:36 +02:00
aiyion.prime
b901dfa691 ath79-generic: (re)add unifi-ap-ac-lr
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-04-02 15:46:16 +02:00
J. Burfeind
6fe1e64f27
ath79-generic: (re)add Archer C5 v1 (#2427)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-04-02 00:18:47 +02:00
dependabot[bot]
e42f0f36c8
build(deps): bump actions/labeler from 3 to 4 (#2446)
Bumps [actions/labeler](https://github.com/actions/labeler) from 3 to 4.
- [Release notes](https://github.com/actions/labeler/releases)
- [Commits](https://github.com/actions/labeler/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/labeler
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-01 15:48:45 +02:00
dependabot[bot]
6547978c75
build(deps): bump actions/upload-artifact from 2.3.1 to 3 (#2445)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 2.3.1 to 3.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v2.3.1...v3)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-01 15:47:39 +02:00
dependabot[bot]
e66b2594ca
build(deps): bump actions/checkout from 2 to 3 (#2444)
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-01 15:46:08 +02:00
Matthias Schiffer
3331d1f247
Merge pull request #2447 from freifunk-gluon/update-modules
Update modules
2022-04-01 15:41:39 +02:00
aiyion.prime
ad20c6a0a4 modules: update routing
c96b101 babeld: bump to version 1.11
5edac3e ci: use openwrt/gh-action-sdk@v4
0d5e814 CI: update SDK action to v3
15d83ef babeld: add add_filter function
2022-03-31 20:32:26 +02:00
aiyion.prime
cd3a2e71e9 modules: update packages
7157e9b4d zerotier: revert to 1.8.4
3e53f0c88 vala: update to version 0.56.0 (LTS version)
384f983d5 vala: update to version 0.54.8
7be116683 vala: update to 0.54.2
601bee7bf vala: update to 0.52.3
8359d159f vala: update to 0.52.1
78aa0f6ca pynacl: fix build with updated sodium-minimal patch
e6330a60e python3: Update to 3.9.12
8142c9baf telegraf: Update to version 1.22.0 to openwrt 21.02
915018e39 rclone: Update to 1.58.0
cd3dc69d6 gnunet-fuse: update to 0.16.0
add708f03 gnunet: update to version 0.16.2
a62591148 libsodium: update maintainer email address
4f7fcd927 libsodium: include ed25519_core in minimal build
7deecb5d9 samba4: update to 4.14.12
71734db27 samba4: update to 4.14.11; fix AD_DC build
2022-03-31 20:32:26 +02:00
aiyion.prime
6b16b06941 modules: update openwrt
ee62912b2d ath79: migrate Archer C5 5GHz radio device paths
f6513143ad ath79: fix label MAC address for Ubiquiti UniFi AP Outdoor+
5cf00adf21 apm821xx: fix crash/panic related to SATA/SSD choice
0e5350db43 mvebu: SFP backports for GPON modules
52de8bf86e cypress-firmware: drop several packages
41d36bb2d0 cypress-firmware: update it to version 5.4.18-2021_0812
2022-03-31 20:32:26 +02:00
J. Burfeind
023c9af9dd
ath79-generic: (re)add Archer C7 v5 (#2436)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-03-31 18:15:12 +02:00
Manu.WTF
e2aaccda57
ath79-generic: (re)add support for tl-wr810n-v1 (#2442) 2022-03-31 16:21:44 +02:00
J. Burfeind
dbdf532867
ath79-generic: (re)add support for GL-AR150 (#2441)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-03-31 08:16:39 +02:00
David Bauer
55da2a7b0e
mpc85xx-p1010: add Sophos RED 15w rev.1 (#2438)
This adds support for the Sophos RED 15w rev.1 gateway.

It is a branch-office SD-WAN device based on the P1014 networking SoC.

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-03-30 17:19:08 +02:00
Manu.WTF
8fdda51f98
ath79-generic: (re)add support for archer-c7-v2 (#2437) 2022-03-29 17:54:08 +02:00
David Bauer
e60b3eb386
modules: update to latest version (#2433)
* modules: update openwrt

cd17ca7d6f ath79: fix link for long cables with OCEDO Raccoon

* modules: update routing

7c7d11e olsrd: set lqm via ipc
2022-03-26 22:43:42 +01:00
Matthias Schiffer
a7846e4031
Merge pull request #2431 from AiyionPrime/ath79-migrate-wr1043v4
ath79-generic: (re)add support for tl-wr1043nd-v4
2022-03-26 18:00:21 +01:00
aiyion.prime
4ea3478ba0 ath79-generic: (re)add support for tl-wr1043nd-v4
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-03-26 12:45:07 +01:00
aiyion.prime
00510b0ee9 modules: update packages
ee69afe6f nano: provide nano-full with most features enabled
951ef6747 netatalk: update to version 3.1.13
2022-03-26 12:45:07 +01:00
aiyion.prime
f19cec2df4 modules: update openwrt
30e6f28853 ath79: fix TPLINK_HWREV field for TL-WR1043ND v4
2022-03-26 12:45:07 +01:00
J. Burfeind
39c3c7adf3
ath79-generic: (re)add support for UniFi AP PRO (#2416)
Ubiquiti UniFi AP PRO

Gone due to
commit 45c84a1 ("ar71xx: drop target")
2022-03-26 11:11:32 +01:00
J. Burfeind
087c15ae0c
ath79-generic: (re)add support for UniFi AC Mesh (#2428)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-03-26 10:52:35 +01:00
J. Burfeind
1bfad8ff02
ath79-generic: (re)add support for CPE510 v1.x (#2430)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-03-25 23:39:19 +01:00
Sebastian Schaper
9751744797
ath79: migrate D-Link DAP-1330 and DIR-550 from ar71xx (#2417)
also add DAP-1365, which is a different case variant of DAP-1330

Signed-off-by: Sebastian Schaper <openwrt@sebastianschaper.net>
2022-03-25 22:23:55 +01:00
J. Burfeind
d1b801b202
ath79-generic: (re)add support for tl-wr1043nd-v3 (#2415)
Gone due to
commit 45c84a1 ("ar71xx: drop target")
2022-03-25 20:37:12 +01:00
J. Burfeind
fd8d5a3cdb
ath79-generic: (re)add support for CPE210 v2.x (#2429)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-03-25 18:21:24 +01:00
Matthias Schiffer
138792e7eb
Merge pull request #2421 from AiyionPrime/ath79-migrate-ubnt-uap
ath79-generic: (re)add support for UniFi AP
2022-03-24 21:31:39 +01:00
J. Burfeind
a5ada094bf
ath79-generic: (re)add support for CPE210 v1.x (#2410)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-03-24 19:21:45 +01:00
aiyion.prime
71d3f4cad1 ath79-generic: (re)add support for UniFi AP LR
Gone due to
commit 45c84a1 ("ar71xx: drop target")
2022-03-24 12:09:22 +01:00
aiyion.prime
aa5355f662 ath79-generic: (re)add support for UniFi AP
Gone due to
commit 45c84a1 ("ar71xx: drop target")
2022-03-24 12:07:31 +01:00
aiyion.prime
da43083e01 modules: update routing
fc0b140 opennds: Release v9.7.0 (for 21.02)
2022-03-24 10:36:54 +01:00
aiyion.prime
ec2a6a790e modules: update packages
c2aeec5ef xray-core: Update to 1.5.4
5eb1ab8a6 yq: Update to 4.23.1
a7a93cfcc python3: Update to 3.9.11, refresh patches
2022-03-24 10:36:54 +01:00
aiyion.prime
a76d0f2210 modules: update openwrt
f65edc9b99 zlib: backport security fix for a reproducible crash in compressor
fdd862f9ac sunxi: cortexa7: fix ethernet link detection on a20-olinuxino-lime2
4910ffa8e9 mvebu: udpu: include LM75 kmod by default
d38f7ec56f mvebu: udpu: fix initramfs booting
56d69ee70d ath79: fix label MAC address for Ubiquiti UniFi
c6256a6533 ramips: remove kmod-mt7663-firmware-sta from device packages
28343cfb7d kernel: backport DSA patches fixing null-pointer dereference
2022-03-24 10:36:54 +01:00
Matthias Schiffer
086aa7afa0
Merge pull request #2325 from FreifunkVogtland/ath79-openmesh
ath79-generic: Re-add OpenMesh devices
2022-03-24 09:21:03 +01:00
Matthias Schiffer
9c13c4755e
gluon.mk: print source file name in GluonSrcDiet (#2424)
luasrcdiet will not print the name of its input file when an error
occurs. To facilitate debugging, echo the name before calling it, so it
is visible with V=s or BUILD_LOG=1.
2022-03-24 06:48:10 +01:00
Matthias Schiffer
7d75cfddfc
scripts: target_lib: remove profile override support (#2423)
No legacy OpenWrt targets exist anymore which require the .config profile
name to differ from the image name.
2022-03-24 06:47:40 +01:00
Martin Weinelt
5e166d80d9
Merge pull request #2425 from freifunk-gluon/scripts-filter 2022-03-23 23:49:35 +01:00
Matthias Schiffer
fc21c51ab2
ci: build all targets on changes in scripts/
The scripts directory contains most of our build system, so changing it
should trigger a build of all targets.
2022-03-23 23:40:24 +01:00
Sebastian Schaper
866bf11903
ath79-generic: add support for D-Link DAP-2660 A1 (#2414)
Signed-off-by: Sebastian Schaper <openwrt@sebastianschaper.net>
2022-03-23 23:35:39 +01:00
Matthias Schiffer
7ebc88147e
docs: move release notes TOC to sub page (#2408)
This allows us to organize the TOC a bit better by adding sections per
major version. We can even increase the maxdepth to 2 now, which looks
great in my opinion.

In addition, the full list of releases is not shown in the sidebar
anymore when viewing a completely different part of the documentation,
which took up more than half of the total sidebar entries.
2022-03-23 20:26:56 +01:00
J. Burfeind
d9c7b1c6fc
ath79-generic: (re)add AVM Fritz!WLAN Repeater 450e (#2420)
Gone due to
commit 45c84a117b ("ar71xx: drop target")
2022-03-23 20:14:51 +01:00
David Bauer
6bca6e4eaa
modules: update packages (#2411)
762794d14 usteer: add package
89cea2a6e zerotier: update to 1.8.6
f7554858e zerotier: update to 1.8.4
7673192a9 zerotier: update to 1.8.3
56c457058 zerotier: update to 1.8.2
614b4e003 zerotier: update to 1.8.1
52fcc9bf6 zerotier: add respawn procd param
1e1d5f5d6 zerotier: add option to copy config
748d87c88 zerotier: fix cross compile in macOS
2022-03-22 00:28:30 +01:00
Sven Eckelmann
979cc0a2ed ath79-generic: Add support for OpenMesh OM5P-AN
Device specifications:
======================

* Qualcomm/Atheros AR9344 rev 2
* 560/450/225 MHz (CPU/DDR/AHB)
* 64 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 1T1R 2.4 GHz Wi-Fi
* 2T2R 5 GHz Wi-Fi
* 6x GPIO-LEDs (3x wifi, 2x ethernet, 1x power)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default)
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* TI tmp423 (package kmod-hwmon-tmp421) for temperature monitoring
* 2x ethernet
  - eth0
    + AR8035 ethernet PHY
    + 10/100/1000 Mbps Ethernet
    + 802.3af POE
    + used as LAN interface
  - eth1
    + 10/100 Mbps Ethernet
    + builtin switch port 1
    + 18-24V passive POE (mode B)
    + used as WAN interface
* 12-24V 1A DC
* internal antennas

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to the
device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin
2022-03-21 09:37:03 +01:00
Sven Eckelmann
4ff8f2f770 ath79-generic: Add support for OpenMesh OM5P-AC v2
Device specifications:
======================

* Qualcomm/Atheros QCA9558 ver 1 rev 0
* 720/600/200 MHz (CPU/DDR/AHB)
* 128 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 2T2R 2.4 GHz Wi-Fi (11n)
* 2T2R 5 GHz Wi-Fi (11ac)
* 4x GPIO-LEDs (3x wifi, 1x power)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default))
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* TI tmp423 (package kmod-hwmon-tmp421) for temperature monitoring
* 2x ethernet
  - eth0
    + AR8035 ethernet PHY (RGMII)
    + 10/100/1000 Mbps Ethernet
    + 802.3af POE
    + used as LAN interface
  - eth1
    + AR8031 ethernet PHY (RGMII)
    + 10/100/1000 Mbps Ethernet
    + 18-24V passive POE (mode B)
    + used as WAN interface
* 12-24V 1A DC
* internal antennas

This device support is based on the partially working stub from commit
53c474abbdfe ("ath79: add new OF only target for QCA MIPS silicon").

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to the
device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Gluon image name change
=======================

The device had the image name "openmesh-om5p-acv2" in older versions of Gluon.
This had to be changed with the new name in the device trees of the ath79
device tree.
2022-03-21 09:37:03 +01:00
Sven Eckelmann
6e35f6b95a ath79-generic: Add support for OpenMesh OM5P-AC v1
Device specifications:
======================

* Qualcomm/Atheros QCA9558 ver 1 rev 0
* 720/600/240 MHz (CPU/DDR/AHB)
* 128 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 2T2R 2.4 GHz Wi-Fi (11n)
* 2T2R 5 GHz Wi-Fi (11ac)
* 6x GPIO-LEDs (3x wifi, 2x ethernet, 1x power)
* external h/w watchdog (enabled by default))
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* TI tmp423 (package kmod-hwmon-tmp421) for temperature monitoring
* 2x ethernet
  - eth0
    + AR8035 ethernet PHY (RGMII)
    + 10/100/1000 Mbps Ethernet
    + 802.3af POE
    + used as LAN interface
  - eth1
    + AR8035 ethernet PHY (SGMII)
    + 10/100/1000 Mbps Ethernet
    + 18-24V passive POE (mode B)
    + used as WAN interface
* 12-24V 1A DC
* internal antennas

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to the
device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Gluon image name change
=======================

The device had the image name "openmesh-om5p-ac" in older versions of Gluon.
This had to be changed with the new name in the device trees of the ath79
device tree.
2022-03-21 09:37:03 +01:00
Sven Eckelmann
e0abce03e6 ath79-generic: Add support for OpenMesh OM5P
Device specifications:
======================

* Qualcomm/Atheros AR9344 rev 2
* 560/450/225 MHz (CPU/DDR/AHB)
* 64 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 2x 10/100 Mbps Ethernet
* 2T2R 5 GHz Wi-Fi
* 6x GPIO-LEDs (3x wifi, 2x ethernet, 1x power)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default)
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 2x fast ethernet
  - eth0
    + builtin switch port 1
    + used as LAN interface
  - eth1
    + 18-24V passive POE (mode B)
    + used as WAN interface
* 12-24V 1A DC
* internal antennas

WAN/LAN LEDs appear to be wrong in ar71xx and have been swapped here.

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to the
device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin
2022-03-21 09:37:03 +01:00
Sven Eckelmann
d427c94ee0 ath79-generic: Add support for OpenMesh OM2P-LC
Device specifications:
======================

* Qualcomm/Atheros AR9330 rev 1
* 400/400/200 MHz (CPU/DDR/AHB)
* 64 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 2x 10/100 Mbps Ethernet
* 1T1R 2.4 GHz Wi-Fi
* 6x GPIO-LEDs (3x wifi, 2x ethernet, 1x power)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default)
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 2x fast ethernet
  - eth0
    + builtin switch port 1
    + used as LAN interface
  - eth1
    + 18-24V passive POE (mode B)
    + used as WAN interface
* 12-24V 1A DC
* internal antennas

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to
the device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin
2022-03-21 09:37:03 +01:00
Sven Eckelmann
03d894f33a ath79-generic: Add support for OpenMesh OM2P-HS v4
Device specifications:
======================

* Qualcomm/Atheros QCA9533 v2
* 650/600/217 MHz (CPU/DDR/AHB)
* 64 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 2x 10/100 Mbps Ethernet
* 2T2R 2.4 GHz Wi-Fi
* 6x GPIO-LEDs (3x wifi, 2x ethernet, 1x power)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default)
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 2x fast ethernet
  - eth0
    + 24V passive POE (mode B)
    + used as WAN interface
  - eth1
    + 802.3af POE
    + builtin switch port 1
    + used as LAN interface
* 12-24V 1A DC
* internal antennas

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to
the device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Gluon image name change
=======================

The device had the image name "openmesh-om2phsv4" in older versions of Gluon.
This had to be changed with the new name in the device trees of the ath79
device tree.
2022-03-21 09:37:03 +01:00
Sven Eckelmann
eed91a9be6 ath79-generic: add support for OpenMesh OM2P-HS v3
Device specifications:
======================

* Qualcomm/Atheros AR9341 rev 1
* 535/400/200 MHz (CPU/DDR/AHB)
* 64 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 2x 10/100 Mbps Ethernet
* 2T2R 2.4 GHz Wi-Fi
* 6x GPIO-LEDs (3x wifi, 2x ethernet, 1x power)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default)
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 2x fast ethernet
  - eth0
    + 802.3af POE
    + builtin switch port 1
    + used as LAN interface
  - eth1
    + 18-24V passive POE (mode B)
    + used as WAN interface
* 12-24V 1A DC
* internal antennas

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to
the device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Gluon image name change
=======================

The device had the image name "openmesh-om2phsv3" in older versions of Gluon.
This had to be changed with the new name in the device trees of the ath79
device tree.
2022-03-21 09:37:03 +01:00
Sven Eckelmann
ce324d11ec ath79-generic: add support for OpenMesh OM2P-HS v2
Device specifications:
======================

* Qualcomm/Atheros AR9341 rev 1
* 535/400/200 MHz (CPU/DDR/AHB)
* 64 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 2x 10/100 Mbps Ethernet
* 2T2R 2.4 GHz Wi-Fi
* 6x GPIO-LEDs (3x wifi, 2x ethernet, 1x power)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default)
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 2x fast ethernet
  - eth0
    + 802.3af POE
    + builtin switch port 1
    + used as LAN interface
  - eth1
    + 18-24V passive POE (mode B)
    + used as WAN interface
* 12-24V 1A DC
* internal antennas

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to
the device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Gluon image name change
=======================

The device had the image name "openmesh-om2phsv2" in older versions of Gluon.
This had to be changed with the new name in the device trees of the ath79
device tree.
2022-03-21 09:37:03 +01:00
Sven Eckelmann
19026314d7 ath79-generic: add support for OpenMesh OM2P-HS v1
Device specifications:
======================

* Qualcomm/Atheros AR9341 rev 1
* 535/400/200 MHz (CPU/DDR/AHB)
* 64 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 2x 10/100 Mbps Ethernet
* 2T2R 2.4 GHz Wi-Fi
* 6x GPIO-LEDs (3x wifi, 2x ethernet, 1x power)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default)
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 2x fast ethernet
  - eth0
    + 802.3af POE
    + builtin switch port 1
    + used as LAN interface
  - eth1
    + 18-24V passive POE (mode B)
    + used as WAN interface
* 12-24V 1A DC
* internal antennas

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to
the device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Gluon image name change
=======================

The device had the image name "openmesh-om2phs" in older versions of Gluon.
This had to be changed with the new name in the device trees of the ath79
device tree.
2022-03-21 09:37:03 +01:00
Sven Eckelmann
0cca0f5e7f ath79-generic: Add support for OpenMesh OM2P v4
Device specifications:
======================

* Qualcomm/Atheros QCA9533 v2
* 650/600/217 MHz (CPU/DDR/AHB)
* 64 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 2x 10/100 Mbps Ethernet
* 1T1R 2.4 GHz Wi-Fi
* 6x GPIO-LEDs (3x wifi, 2x ethernet, 1x power)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default)
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 2x fast ethernet
  - eth0
    + Label: Ethernet 1
    + 24V passive POE (mode B)
  - eth1
    + Label: Ethernet 2
    + 802.3af POE
    + builtin switch port 1
* 12-24V 1A DC
* external antenna

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to
the device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Gluon image name change
=======================

The device had the image name "openmesh-om2pv4" in older versions of Gluon.
This had to be changed with the new name in the device trees of the ath79
device tree.
2022-03-21 09:37:03 +01:00
Sven Eckelmann
5a64deec9a ath79-generic: Add support for OpenMesh OM2P v2
Device specifications:
======================

* Qualcomm/Atheros AR9330 rev 1
* 400/400/200 MHz (CPU/DDR/AHB)
* 64 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 2x 10/100 Mbps Ethernet
* 1T1R 2.4 GHz Wi-Fi
* 6x GPIO-LEDs (3x wifi, 2x ethernet, 1x power)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default)
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 2x fast ethernet
  - eth0
    + builtin switch port 1
    + used as LAN interface
  - eth1
    + 18-24V passive POE (mode B)
    + used as WAN interface
* 12-24V 1A DC
* external antenna

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to
the device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Gluon image name change
=======================

The device had the image name "openmesh-om2pv2" in older versions of Gluon.
This had to be changed with the new name in the device trees of the ath79
device tree.
2022-03-21 09:37:03 +01:00
Sven Eckelmann
47eda6a501 ath79-generic: Add support for OpenMesh OM2P v1
Device specifications:
======================

* Qualcomm/Atheros AR7240 rev 2
* 350/350/175 MHz (CPU/DDR/AHB)
* 32 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 2x 10/100 Mbps Ethernet
* 1T1R 2.4 GHz Wi-Fi
* 6x GPIO-LEDs (3x wifi, 2x ethernet, 1x power)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default)
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 2x fast ethernet
  - eth0
    + 18-24V passive POE (mode B)
    + used as WAN interface
  - eth1
    + builtin switch port 4
    + used as LAN interface
* 12-24V 1A DC
* external antenna

The device itself requires the mtdparts from the uboot arguments to
properly boot the flashed image and to support dual-boot (primary +
recovery image). Unfortunately, the name of the mtd device in mtdparts is
still using the legacy name "ar7240-nor0" which must be supplied using the
Linux-specfic DT parameter linux,mtd-name to overwrite the generic name
"spi0.0".

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to the
device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Gluon image name change
=======================

The device had the image name "openmesh-om2p" in older versions of Gluon.
This had to be changed with the new name in the device trees of the ath79
device tree.
2022-03-21 09:37:03 +01:00
Sven Eckelmann
bc71c915d2 ath79-generic: Add support for OpenMesh MR1750 v2
Device specifications:
======================

* Qualcomm/Atheros QCA9558 ver 1 rev 0
* 720/600/240 MHz (CPU/DDR/AHB)
* 128 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 3T3R 2.4 GHz Wi-Fi (11n)
* 3T3R 5 GHz Wi-Fi (11ac)
* 6x GPIO-LEDs (2x wifi, 2x status, 1x lan, 1x power)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default))
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 1x ethernet
  - AR8035 ethernet PHY (RGMII)
  - 10/100/1000 Mbps Ethernet
  - 802.3af POE
  - used as LAN interface
* 12-24V 1A DC
* internal antennas

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to the
device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Gluon image name change
=======================

The device had the image name "openmesh-mr1750v2" in older versions of Gluon.
This had to be changed with the new name in the device trees of the ath79
device tree.
2022-03-21 09:37:03 +01:00
Sven Eckelmann
39750f19f8 ath79-generic: Add support for OpenMesh MR1750 v1
Device specifications:
======================

* Qualcomm/Atheros QCA9558 ver 1 rev 0
* 720/600/240 MHz (CPU/DDR/AHB)
* 128 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 3T3R 2.4 GHz Wi-Fi (11n)
* 3T3R 5 GHz Wi-Fi (11ac)
* 6x GPIO-LEDs (2x wifi, 2x status, 1x lan, 1x power)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default))
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 1x ethernet
  - AR8035 ethernet PHY (RGMII)
  - 10/100/1000 Mbps Ethernet
  - 802.3af POE
  - used as LAN interface
* 12-24V 1A DC
* internal antennas

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to the
device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Gluon image name change
=======================

The device had the image name "openmesh-mr1750" in older versions of Gluon.
This had to be changed with the new name in the device trees of the ath79
device tree.
2022-03-21 09:37:03 +01:00
Sven Eckelmann
0de095fe9f ath79-generic: Add support for OpenMesh MR900 v2
Device specifications:
======================

* Qualcomm/Atheros QCA9558 ver 1 rev 0
* 720/600/240 MHz (CPU/DDR/AHB)
* 128 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 3T3R 2.4 GHz Wi-Fi
* 3T3R 5 GHz Wi-Fi
* 6x GPIO-LEDs (2x wifi, 2x status, 1x lan, 1x power)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default))
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 1x ethernet
  - AR8035 ethernet PHY (RGMII)
  - 10/100/1000 Mbps Ethernet
  - 802.3af POE
  - used as LAN interface
* 12-24V 1A DC
* internal antennas

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to the
device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Gluon image name change
=======================

The device had the image name "openmesh-mr900v2" in older versions of Gluon.
This had to be changed with the new name in the device trees of the ath79
device tree.
2022-03-21 09:37:03 +01:00
Sven Eckelmann
9d794294b0 ath79-generic: Add support for OpenMesh MR900 v1
Device specifications:
======================

* Qualcomm/Atheros QCA9558 ver 1 rev 0
* 720/600/240 MHz (CPU/DDR/AHB)
* 128 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 3T3R 2.4 GHz Wi-Fi
* 3T3R 5 GHz Wi-Fi
* 6x GPIO-LEDs (2x wifi, 2x status, 1x lan, 1x power)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default))
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 1x ethernet
  - AR8035 ethernet PHY (RGMII)
  - 10/100/1000 Mbps Ethernet
  - 802.3af POE
  - used as LAN interface
* 12-24V 1A DC
* internal antennas

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to the
device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Gluon image name change
=======================

The device had the image name "openmesh-mr900" in older versions of Gluon.
This had to be changed with the new name in the device trees of the ath79
device tree.
2022-03-21 09:37:03 +01:00
Sven Eckelmann
dd7eac7e7f ath79-generic: Add support for OpenMesh MR600 v2
Device specifications:
======================

* Qualcomm/Atheros AR9344 rev 2
* 560/450/225 MHz (CPU/DDR/AHB)
* 128 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 2T2R 2.4 GHz Wi-Fi
* 2T2R 5 GHz Wi-Fi
* 8x GPIO-LEDs (6x wifi, 1x wps, 1x power)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default))
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 1x ethernet
  - AR8035 ethernet PHY (RGMII)
  - 10/100/1000 Mbps Ethernet
  - 802.3af POE
  - used as LAN interface
* 12-24V 1A DC
* internal antennas

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to the
device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Gluon image name change
=======================

The device had the image name "openmesh-mr600v2" in older versions of Gluon.
This had to be changed with the new name in the device trees of the ath79
device tree.
2022-03-21 09:37:03 +01:00
Sven Eckelmann
e2ccf75342 ath79-generic: Add support for OpenMesh MR600 v1
Device specifications:
======================

* Qualcomm/Atheros AR9344 rev 2
* 560/450/225 MHz (CPU/DDR/AHB)
* 128 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 2T2R 2.4 GHz Wi-Fi
* 2T2R 5 GHz Wi-Fi
* 4x GPIO-LEDs (2x wifi, 1x wps, 1x power)
* 1x GPIO-button (reset)
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 1x ethernet
  - AR8035 ethernet PHY (RGMII)
  - 10/100/1000 Mbps Ethernet
  - 802.3af POE
  - used as LAN interface
* 12-24V 1A DC
* internal antennas

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to the
device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Gluon image name change
=======================

The device had the image name "openmesh-mr600" in older versions of Gluon.
This had to be changed with the new name in the device trees of the ath79
device tree.
2022-03-21 09:37:03 +01:00
Sven Eckelmann
767b4123cf ath79-generic: Add support for OpenMesh A40
Device specifications:
======================

* Qualcomm/Atheros QCA9558 ver 1 rev 0
* 720/600/240 MHz (CPU/DDR/AHB)
* 128 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 2T2R 2.4 GHz Wi-Fi (11n)
* 2T2R 5 GHz Wi-Fi (11ac)
* multi-color LED (controlled via red/green/blue GPIOs)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default))
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 2x ethernet
  - eth0
    + Label: Ethernet 1
    + AR8035 ethernet PHY (RGMII)
    + 10/100/1000 Mbps Ethernet
    + 802.3af POE
    + used as WAN interface
  - eth1
    + Label: Ethernet 2
    + AR8035 ethernet PHY (SGMII)
    + 10/100/1000 Mbps Ethernet
    + used as LAN interface
* 1x USB
* internal antennas

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to the
device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin
2022-03-21 09:37:03 +01:00
Sven Eckelmann
df114faec0 ath79-generic: Add support for OpenMesh A60
Device specifications:
======================

* Qualcomm/Atheros QCA9558 ver 1 rev 0
* 720/600/240 MHz (CPU/DDR/AHB)
* 128 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 3T3R 2.4 GHz Wi-Fi (11n)
* 3T3R 5 GHz Wi-Fi (11ac)
* multi-color LED (controlled via red/green/blue GPIOs)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default))
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 2x ethernet
  - eth0
    + Label: Ethernet 1
    + AR8035 ethernet PHY (RGMII)
    + 10/100/1000 Mbps Ethernet
    + 802.3af POE
    + used as WAN interface
  - eth1
    + Label: Ethernet 2
    + AR8031 ethernet PHY (SGMII)
    + 10/100/1000 Mbps Ethernet
    + used as LAN interface
* 1x USB
* internal antennas

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to the
device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin
2022-03-21 09:37:03 +01:00
David Bauer
a3203b26c4
Merge pull request #2372 from freifunk-gluon/uci-regen
Regenerate network and system UCI configs on every reconfigure, switch to role-based interface configuration
2022-03-20 17:54:04 +01:00
David Bauer
f75bb7cec5
Merge pull request #2409 from blocktrron/modules-20220320
modules: update modules
2022-03-20 10:31:18 +01:00
David Bauer
1c1b5f1f26 modules: update routing
5971f19 cjdns: pass for some build warnings (#738)
b88e322 cjdns: fix uci-defaults (#714)
6501c70 mrd6: Makefle reordering
fb03ab0 mcproxy: include PKG_MIRROR_HASH, refresh patches
3b84442 pimbd: include PKG_MIRROR_HASH
65ae8ea minimalist-pcproxy: include PKG_MIRROR_HASH
4dfa42e mrd6: include PKG_MIRROR_HASH
fd76bed oonf-dlep-radio: refactor define Package/oonf-dlep-radio
3c70d01 oonf-dlep-radio: refactor Makefile (package versioning, downloading)
550502c oonf-dlep-proxy: add PKG_MIRROR_HASH
b99b6fa oonf-dlep-proxy: fix compilation with Ninja
e2eaefe oonf-dlep-radio: add PKG_MIRROR_HASH
0de13bc opennds: Release v9.6.0 (for 21.02)
10d3ffd olsrd: fix setting default interface config
9e2383e batman-adv: Merge bugfixes from 2022.0
bb0f31a babeld: remove unused return variable
bcc3588 babeld: add add_interface function
2022-03-20 01:43:19 +01:00
David Bauer
016fddb69c modules: update packages
ac99fde54 haproxy: update to version 2.2.22
ee4267e97 tree: bump to 2.0.2
f01cf663b curl: Fix compiling curl wolfSSL IPv6 disabled
185c5e365 bind: bump to 9.18.1
919dd8013 libnetfilter-log: update to 1.0.2
8e9f10223 libxml2: update to 2.9.13
793e7ee48 auc: don't segfault on invalid URL
31e2e7ccb auc: fall back to 'sdcard' image
8999b60db auc: accept both 'y' and 'Y' as confirmation from user
1adcda368 auc: add '-n' parameter for dry-run
facfdaca2 attendedsysupgrade-common: update to 2021
aa41482d3 yq: Update to 4.22.1
8518b2d5d yq: Update to 4.21.1
f550d9066 syslog-ng: update to version 3.36.1
b2ec8c84f tvheadend: bind to LAN IP by default
e061d8eff dockerd: fix compilation with glibc
fd30ce33f docker: fix compilation with glibc
a11359b88 yggdrasil: bump to 0.4.3
1d7d46db0 i2pd: Update package
c384dbb19 i2pd: add service reload support
938187fa2 coova-chilli: remove kmod dep on binary package
109f2770a cache-domains: Fixed hotplug script not running
5562cef26 nextdns: Update to version 1.37.10
5f20a9171 golang: Update to 1.17.8
1a0cb5ce4 curl: update to 7.82.0
701ca2532 python-twisted: Update to 22.2.0
4c0748396 python-twisted: Update to 22.1.0, refresh patches
3e75dc582 mdnsresponder: Fix nullpointer dereference while parsing interface list
9722b1ec0 crowdsec-firewall-bouncer: remove crowdsec package dependency
5b51bb3a5 kcptun: bump to v20210922
81ed00124 samplicator: fix Wformat warning
da82b8c9c ocserv: updated to 1.1.6
a8b73c250 openconnect: updated to 8.20
e208f42c5 yq: Update to 4.20.2
e2bf8e1d8 MarkupSafe: update to version 2.1.0
41fe385fd domoticz: update to 2021.1
e9dee2684 minizip: update to 3.0.2
697115688 minizip: update to 3.0.1
adc6fcc88 minizip: update to 3.0.0
584c0c437 expat: import patches for CVEs
5f3226dc1 nfdump: update to 1.6.23
e7715b18b htpdate: drop www.freebsd.org from default server list
4d0e0f414 nano: update to 6.2
45009c340 unbound: update to version 1.15.0
9ba9579a1 yq: Update to 4.20.1
a5de4042c pcapplusplus: Add new package
10a805492 vnstat2: update to version 2.9
42f35cdda vnstat2: add hotplug script for adding interfaces
f8820d2ae vnstat2: fix all interfaces being monitored when none are configured
86f85cde4 vnstat2: update to version 2.8
f4a390c59 php7: update to 7.4.28
5eb97e05e php8: update to 8.0.16
b409127e6 slide-switch: Update to 0.9.7
4919a791a golang: Update to 1.17.7, refresh patch
43276c649 tvheadend: fix first-run
362c8c4df ksmbd-tools: update to 3.4.4
41ca56ff2 ksmbd-tools: Fix ksmbd service is semi-killed at system startup
c4bb2fadc ksmbd: update to 3.4.4
06ffe5c4d ksmbd: update to 3.4.2
c7e0be3a3 ksmbd: update to 3.4.1
d5f588268 dockerd: Update to 20.10.12
66dda3aa2 docker: Update to 20.10.12
845d2203b yq: Update to 4.19.1
4e8267602 dtc: drop package
845b9a1df knot: update to 3.1.6
d286939b7 knot: update to 3.1.5
38eaee347 nano: update to 6.1
0329b2c11 xray-core: Update to 1.5.3
d18542ecf ruby: update to 3.0.3
a507620a1 https-dns-proxy: init script refactoring
5dcf0b57c slide-switch: Update to 0.9.6
4bd6bc41c ffmpeg: update to version 4.3.3
ac4ecdf85 tinyionice: add package
1a40a0a0b yq: Update to 4.18.1
32e85322c yq: Update to 4.17.2
675755537 apache2: security update to version 2.4.52
74f9ae028 bind: bump to 9.18.0
b29655996 crowdsec: update from latest upstream release 1.3.0
3b28c6f38 wg-installer: use babeld add_interface function
1026a1fd4 crowdsec-firewall-bouncer: fix name in initd to start the process
9137583d3 nano: Add a plus variant with more features
2cd892879 https-dns-proxy: update to 2021-11-22-1
8d8cf2628 dawn: update to 2022-01-17
f921cc4b7 python-dns: update to version 2.1.0
df7568303 prosody: update to version 0.11.13
14b623f73 telegraf: Update package to version 1.21.3
82c35fa92 telegraf: Move config file to /etc/telegraf.conf because /etc/config is the default uci folder. Also marking it as configuration file prevents overwriting it on updates.
989aecf2b telegraf: Add package for telegraf
299684dd5 ffmpeg: update to 4.3.2
213aaa1f3 clamav: update to version 0.104.2
9c476ee99 clamav: update to 0.104.0
294196303 node: January 10th 2022 Security Releases
fc835bcaa tvheadend: fix conffiles section
48bf1a0d0 lighttpd: update to lighttpd 1.4.64 release hash
82339309f lighttpd: update to lighttpd 1.4.63 release hash
527f2b920 lighttpd: update to lighttpd 1.4.62 release hash
4f990b7cd tvheadend: fix typo in uriparser
aeb8aad5c wg-installer: fix multiple namespaces
e29f38650 php8: update to 8.0.15
d7c78f83b tvheadend: disable uriparser
c7f25b25d python3: Update to 3.9.10, refresh patches
b9bfe1ef1 wg-installer: remove unused dependency
9a836f430 wg-installer: create wireguard key if it does not exist
317ba6a43 wg-installer: install cronjob
a430932a7 wg-installer: check if a key is already inserted
0aaa90629 wg-installer: rework code
dea64c08e wg-installer: cosmetic changes
2022-03-20 01:43:17 +01:00
David Bauer
205ebc8584 modules: update openwrt
180b750c02 hostapd: add STA extended capabilities to get_clients
411c73f748 hostapd: add op-class to get_status output
e44a781e11 hostapd: add beacon_interval to get_status ubus output
95b0b8725c hostapd: remove unused mac_buff allocation
3731ffa0ee hostapd: report bssid, ssid and channel over ubus
53c60d4bfa hostapd: ubus: add notification for BSS transition response
88075c87dc hostapd: ubus: add BSS transtiton request method
b1c3539868 openssl: bump to 1.1.1n
864bba55d8 uboot-bcm4908: use "xxd" from staging_dir
92020d4242 tools: xxd: use more convenient source tarball
17e9553284 tools: add xxd (from vim)
f44f8b07b0 base-files: call "sync" after initial setup
e8a806c49e bcm4908: include U-Boot in images
45b3f2aa0f uboot-bcm4908: add package with BCM4908 U-Boot
604274c24b x86: legacy: enable pata_sis driver
13c9f1f37d bcm4908: support "rootfs_data" on U-Boot devices
e12ffac02d bcm4908: fix USB PHY support
f1e1daa6e8 u-boot.mk: add LOCALVERSION (explicitly specify OpenWrt build)
0327104686 tools/libressl: update to version 3.4.2
8ed3b5b04b tools/libressl: update to 3.4.1
2736a5df94 tools/libressl: update to 3.3.4
49b2e6365d tools/libressl: update to 3.3.3
2d69d098e0 kernel: bump 5.4 to 5.4.182
7bd583e5f3 uboot-envtools: mvebu: update uci defaults for Turris Omnia
b2896d413e ipq806x: base-files: asrock: fix bootcount include
952de38ef4 Revert "ramips: increase spi-max-frequency for ipTIME mt7620 devices"
abf8209d7f hostapd: fix radius problem due to invalid attributes
610b2cff60 ipq806x: base-files: asrock: fix bootcount include
b99d7aecc8 wolfssl: fix API breakage of SSL_get_verify_result
7612ecb201 ramips: mt7621: do memory detection on KSEG1
7fc336484b rpcd: backport 802.11ax support
d1c15c41d9 OpenWrt v21.02.2: revert to branch defaults
30e2782e06 OpenWrt v21.02.2: adjust config defaults
bf0c965af0 ramips: fix NAND flash driver ECC bit position mask
adb65008c8 kernel: backport fix for initializing skb->cb in the bridge code to 5.4
b7af850bd2 tools/mtools: update to 4.0.35
5d553d8767 tools/fakeroot: fix unresolved symbols on arm64 macOS
c8d6a7c84e tools/fakeroot: fix build on MacOS arm64
83bf22ba2e tools/fakeroot: explicitly pass CPP variable
230ec4c69c bcm4908: backport watchdog and I2C changes
87b9ba9ed9 bcm4908: backport first 5.18 DTS changes
e6a718239f bcm4908: backport bcm_sf2 patch for better LED registers support
e6aaa061d0 bcm4908: backport BCM4908 pinctrl driver
59e7ae8d65 tcpdump: Fix CVE-2018-16301
de948a0bce glibc: update to latest 2.33 HEAD
0c0db6e66b hostapd: Apply SAE/EAP-pwd side-channel attack update 2
5b13b0b02c wolfssl: update to 5.1.1-stable
7d376e6e52 libs/wolfssl: add SAN (Subject Alternative Name) support
5ea2e1d5ba wolfssl: enable ECC Curve 25519 by default
4108d02a29 ustream-ssl: update to Git version 2022-01-16
32d50a1281 mbedtls: Update to version 2.16.12
c6ddf8d502 kernel: bump 5.4 to 5.4.179
a4c0c031b8 ath79: Add support for OpenMesh OM5P-AC v2
6d266ef158 imagebuilder: fix local packages/ folder
2022-03-20 01:43:10 +01:00
Martin Weinelt
e82ca1c095
Merge pull request #2407 from AiyionPrime/pr_fritzflash 2022-03-16 15:56:35 +01:00
Steffen Förster
6ecc0e9fd6 docs: fix invalid fritztools link 2022-03-16 15:28:49 +01:00
Matthias Schiffer
31124ac687
patches: refresh "packages" patches (#2400) 2022-02-23 21:50:15 +01:00
Matthias Schiffer
073e559dc5
gluon-mesh-babel: do not allow disabling VXLAN (#2376)
With Babel, wired meshing cannot run on the same logical interface as
non-mesh traffic, so using VXLAN is mandatory.
2022-02-23 19:10:13 +01:00
David Bauer
428b8afb92
Merge pull request #2186 from freifunk-gluon/fastd-l2tp
fastd: add L2TP offload support
2022-02-23 19:03:19 +01:00
Matthias Schiffer
26b26395d1
Merge pull request #2399 from MyIgel/remove-xhtml
treewide: Replace xhtml content type with html, remove xhtml workaround, replace self closing tags
2022-02-22 21:46:29 +01:00
Matthias Schiffer
210cacdf55
docs: update for role-based interface configuration 2022-02-22 18:52:15 +01:00
Matthias Schiffer
a671b5081c
gluon-core: preserve explicitly marked network and system sections
A section can be marked as preseved by setting the gluon_preserve option
to 1. In addition the following conditions must hold:

- The preserved section must not already exist after OpenWrt's and
  Gluons setup scripts run. Modifying existing sections is currently
  unsupported.
- Preserved sections must be named, so it can be detected whether a
  section conflicts with a preexisting one.
2022-02-22 18:52:15 +01:00
Matthias Schiffer
6dcee2e324
gluon-web-network: update wired mesh settings for new role-based configuration 2022-02-22 18:52:15 +01:00
Matthias Schiffer
316e96a467
gluon-core, gluon-setup-mode: reset ifname sysconfigs on each update, introduce single_ifname
Allow interface names to change on updates to handle hwconfig -> DSA and
similar migrations.

On devices with only a single interface, a sysconfig single_ifname is
created instead of wan_ifname or lan_ifname to allow separate
configuration in site.conf.
2022-02-22 18:52:15 +01:00
Matthias Schiffer
c779d12369
treewide: use interface roles as basis for network configuration
With the new role-based interface configuration, it would be better to
rename the wan/wan6 interfaces to uplink/uplink6, but that would cause
unnecessary churn for the firewall configuration, so it is left for a
later update.

As all interfaces with the 'uplink' role are in the br-wan bridge, it is
not possible to assign these to the 'mesh' role independently - instead,
br-wan is added as a mesh interface as soon as a single interface has
both the 'uplink' and 'mesh' roles. The UCI section for this
configuration is now called 'mesh_uplink' instead of 'mesh_wan'.

For all interfaces that have the 'mesh', but not the 'uplink' role a
second configuration 'mesh_other' is created. If there is more than one
such interface, all these interfaces are bridged as well (creating a
bridge 'br-mesh_other'). This replaces the 'mesh_lan' section with its
optional 'br-mesh_lan' bridge, but can also include interfaces that were
not considered "LAN" when interfaces roles are modified (via site.conf
or manually).
2022-02-22 18:52:15 +01:00
Matthias Schiffer
4b8251c988
gluon-core: initialize interfaces role configuration
The new configuration generates sections iface_single/lan/wan in
/etc/config/gluon. These sections usually refer to a sysconfig-controlled
interface list, but adding custom sections with verbatim interfaces names
is also possible.

Each interface section contains a list of roles. The supported roles are
'client', 'uplink' and 'mesh'. Multiple roles can be configured on the
same interface (for example the old 'mesh_on_wan' setting would become
'uplink'+'mesh').

'client' is subsumed by any other role configured on the same interface
('client'+'mesh' is equivalent to 'mesh'). This property is important, as
it allows the Wired Mesh settings in gluon-web-network to simply add and
remove the mesh role without having to care what other roles are set -
so in the default setup, this would switch between 'client' and
'client'+'mesh' for the LAN interface.

By default, the WAN interface has role 'uplink' and the LAN interface
'client'; if only a single interface exists, the roles from the WAN
interface are used by default. The default for each of the three
interfaces (WAN/LAN/single) can be changed separated in site.conf,
superseding the old mesh_on_wan, mesh_on_lan and single_as_lan settings.
2022-02-22 18:52:15 +01:00
Matthias Schiffer
05c29512ec
gluon-core: sysconfig: avoid unnecessary writes
Do not write files when the content is unchanged.

Avoids a few unnecessary filesystem writes when resetting ifname
sysconfigs on each upgrade.
2022-02-22 18:52:15 +01:00
Matthias Schiffer
c2a5f57c40
treewide: regenerate network and system configs on every reconfigure 2022-02-22 18:52:15 +01:00
Matthias Schiffer
eea49a2834
gluon-config-mode-core: discard gluon-reconfigure output (#2395)
The stdout output of gluon-web scripts is directly sent to uhttpd,
becoming a part of the HTML output or even replacing HTTP status or
headers. The output of gluon-reconfigure is not supposed to end up
there.

While we're at it, also add an exec to avoid an unnecessary shell
process.
2022-02-22 18:51:45 +01:00
Igor Scheller
f033fcfc0d treewide: Replace /> self closing html tags with > 2022-02-22 18:48:09 +01:00
Igor Scheller
d728f17b8f treewide: Replace xhtml content type with html, remove xhtml workaround 2022-02-20 12:45:43 +01:00
Igor Scheller
bbc00017a9
gluon-web-osm: Fix " rendering in attribution with CDATA tag (#2398) 2022-02-20 11:51:58 +01:00
Martin Weinelt
65f5a3b0dd
Merge pull request #2394 from freifunk-gluon/update-ol 2022-02-15 15:51:24 +01:00
Matthias Schiffer
62b24ed7ce
gluon-web-osm: update OpenLayers default URL to 5.3.0
The OpenLayers JS/CSS download URL is dead. Update it to make the map
work again:

- Update from OpenLayers 5.2.0 to 5.3.0
- Switch from the obsolete rawgit.com URL to jsdelivr.net (rawgit.com
  was only redirecting to jsdelivr.net for the last few years anyways)
- Set a fixed commit in the URL, so the URL doesn't become outdated again
2022-02-13 22:07:36 +01:00
Martin Weinelt
545d1cbb11
patches: build perl single-threaded (#2392)
Prevents spurious build failures.
2022-02-11 21:40:22 +01:00
Matthias Schiffer
a8c7676215
docs: update Mesh VPN documentation
- Restructure page
- Add information on how to add L2TPv3 offloading support to a build
  using configurable ciphers. The null method is not reocmmended anymore.
- Add notes and pointers regarding the gateway configuration to provide
  gateway admins with hints on how to modify their configuration to
  accommodate this new feature.
- Mention wireguard support

Based-on-patch-by: Felix Kaechele <felix@kaechele.ca>
2022-02-08 21:09:16 +01:00
Matthias Schiffer
7c6befc7c3
gluon-mesh-vpn-fastd: add L2TP offload support 2022-02-08 21:09:15 +01:00
Matthias Schiffer
15eeb86f42
gluon-{,web-}mesh-vpn-fastd: add support for null@l2tp method
THe "null" and "null@l2tp" methods are considered equivalent and always
added and removed together when the method list is "configurable".
"null@l2tp" is added before "null", so it is preferred when the peer
supports both.
2022-02-08 21:01:42 +01:00
Matthias Schiffer
487d312d25
fastd: update and add L2TP variant
This also drops the GMAC-based methods from gluon-mesh-vpn-fastd's
check_site.lua, as they are not supported anymore.
2022-02-08 21:01:42 +01:00
David Bauer
2729293058
Merge pull request #2359 from freifunk-gluon/x86-separate-images
x86: copy separate kernel and rootfs images to "other" directory
2022-02-08 20:43:34 +01:00
Matthias Schiffer
68e8d32570
Merge pull request #2383 from freifunk-gluon/web-fixes
gluon-web: prohibit cross-origin POST requests
2022-02-03 16:49:22 +01:00
Matthias Schiffer
b6e498ba06
Merge pull request #2381 from freifunk-gluon/patch-cleanup
Update OpenWrt base, clean up patches
2022-02-03 16:48:54 +01:00
Matthias Schiffer
db80146093
Merge pull request #2368 from freifunk-gluon/lint-sh-fixes
lint-sh fixes
2022-02-03 16:37:18 +01:00
Matthias Schiffer
1041014cf3
Merge pull request #2382 from freifunk-gluon/cleanup
Removal of more obsolete migrations, minor cleanup and improvements to lsupgrade.sh
2022-02-01 23:31:41 +01:00
Matthias Schiffer
a83466be6e gluon-web: prohibit cross-origin POST
As gluon-web uses standard multipart/form-data requests, browsers don't
enforce any cross-origin restrictions. To prevent malicious injection of
POST requests into the config mode, match the Origin header against the
Host header of the request.
2022-02-01 23:27:38 +01:00
Matthias Schiffer
f3960eeb47 gluon-web: improve error handling of parse_message_body()
Actually raise an error and turn it into an HTTP 400 return code when
something goes wrong, rather than ignoring the error.

We also improve the conditions under which errors are thrown before
pump() is called: We don't need to check for the multipart/form-data
content-type twice, and a POST without this content-type is now always
an error.
2022-02-01 23:27:38 +01:00
Matthias Schiffer
de43b306d4 gluon-web: add CRLF to text/plain Internal Server Error output
Having a trailing newline is nice when viewing the returned data in a
terminal.
2022-02-01 23:27:38 +01:00
Matthias Schiffer
94519cfc56
gluon-web-*: remove unused "token" form value
This was a remnant of LuCI that was never used in gluon-web.
2022-02-01 23:22:08 +01:00
Matthias Schiffer
c75d90d9ab
workflows: lint: switch from apt to apt-get -y, add update
Using apt in scripts is discouraged. Also add an update to hopefully fix
the lua-check installation failure in CI.
2022-02-01 23:22:08 +01:00
Martin Weinelt
ae1187a29e
Merge pull request #2387 from freifunk-gluon/backport-action 2022-02-01 01:26:56 +01:00
Martin Weinelt
139c56073a
workflows: add backports action
By applying a label `backport <branch>` the action will automatically
try to cherry-pick the change to the target branch after the pull
request was successfully merged.
2022-02-01 01:26:30 +01:00
Matthias Schiffer
3ea770db73
ath79-generic: swap interfaces on TP-Link WBS210 v2 (#2385)
Swap the interfaces so than the PoE input port LAN0 is used for WAN and
config mode, and LAN1 becomes LAN.

To this end, the code previously used for ar71xx and removed in
commit 9fdc57c175 ("treewide: drop ar71xx platform specific code") is
reintroduced.

Fixes #2384
2022-01-28 19:45:34 +01:00
Matthias Schiffer
578daf5f87
gluon-core: remove obsolete config file 2022-01-23 14:44:07 +01:00
Matthias Schiffer
12127813c5
gluon-core: move preserve_channels setting to /etc/config/gluon
/etc/config/gluon-core is used for nothing else.

As /etc/config/gluon uses a named wireless section, also change the
get_first() to get().
2022-01-23 14:44:06 +01:00
Matthias Schiffer
b68a07e930
gluon-mesh-vpn-fastd: merge secret generation setup into main upgrade script
There wasn't really a reason to have a separate script to set a single
value.

In addition, the old script was using the identifier 'c' instead of
'uci' for the UCI cursor. Following the convention of the other scripts
is helpful so it is easy to grep for all uses of a certain config file/
option.
2022-01-23 14:44:06 +01:00
Matthias Schiffer
d8f6ed2406
gluon-node-info: remove obsolete migration/fixup 2022-01-23 14:44:06 +01:00
Matthias Schiffer
225e8692bd
gluon-radvd: remove obsolete migration 2022-01-23 14:44:06 +01:00
Matthias Schiffer
c530070e96
gluon-mesh-vpn-tunneldigger: remove obsolete migration 2022-01-23 14:44:06 +01:00
Matthias Schiffer
84f4c164f4
gluon-setup-mode: remove obsolete migration 2022-01-23 14:44:06 +01:00
Matthias Schiffer
c7e38fdc2c
contrib: lsupgrade: optimize output
- Use printf instead of echo for better portability
- Print whole path without reordering components
- Deduplicate code
2022-01-23 14:44:06 +01:00
Matthias Schiffer
c0afb9cc39
contrib: lsupgrade: do not search the OpenWrt "packages" feed
Iterating over all the package directories in the OpenWrt feed takes a
while, even though it doesn't contain any upgrade scripts. Skip the
whole directory.
2022-01-23 14:44:06 +01:00
Matthias Schiffer
1e50966b84
kernel: drop obsolete ebtables patches
We are on Linux 5.4, so these patches for Linux 4.14 don't do anything.
2022-01-23 11:39:02 +01:00
Matthias Schiffer
0db3c58329
modules: update OpenWrt base
97b95ef8b918 uci: update to the latest master

Replace the downstream UCI patch with a proper OpenWrt 21.02 backport.
2022-01-23 11:36:08 +01:00
David Bauer
2924afe562
Merge pull request #2378 from freifunk-gluon/master-updates
modules: updates
2022-01-21 21:10:34 +01:00
Martin Weinelt
5e1d46e2b7 modules: update gluon
5bca036 pretty-hostname: instantly apply hostname
a85fa33 treewide: change Github URLs from git:// to https:// (#252)
2022-01-20 12:44:27 +01:00
Martin Weinelt
afc9d6b235 modules: update routing
c2e138d olsrd: add ubus ipc integration to olsrd
7d07ef9 CI: fix runtime testing for non master branch
61cd00c naywatch: introduce kick-count
440e7af naywatch: fix mode without watchdog
c8b613e olsrd: fix meshing via wireguard tunnels
2022-01-20 12:44:26 +01:00
Martin Weinelt
6149057072 modules: update packages
444b64e36 cryptsetup: update to version 2.4.3
a259a4aaa git: update to version 2.34.1
0cdffbaf9 crowdsec: update from upstream latest release 1.2.3
031fbb16a smcroute: update to 2.5.5
fcf163335 smcroute: update to 2.5.4
c7470d1d8 wg-installer: switch to ubus call for olsrd hotplug
8c3ce87fd wg-installer: rework iproute2 commands
3f88edfa5 2to3: add package host tool
bb09bc37b CI: fix runtime testing for non master branch
bbd3d70cd i2pd: Update to 2.40.0 and update package sources
19d32003c i2pd: remove unneeded functions.sh
8d150985c i2pd: Update to 2.38.0
5ee9fb98d i2pd: update to 2.36
d0bb48741 mariadb: Add sudo dependency
f4d8f9c98 mariadb: Check and fix datadir owner issues during upgrade
7a3f41af4 mariadb: update to version 10.4.22
d3e6dc51e mg: bump to 7.0
15b41a675 zerotier: add configuration reload trigger
2bca94d83 netdata: Update init script to use -D rather than -nd
c7fef6db5 atlas-probe: update to version 2.4.1
98c1fe435 atlas-sw-probe: update to version 5040
1a40e3c89 crowdsec-firewall-bouncer: update to 0.0.21
432140a36 crowdsec: update to 1.2.2
b5443ccdf apache: fixup apxs
19451ec86 apache: security bump to 2.4.51
6fe1b64e7 wg-installer: fix shell typo
f21f39cfd wg-installer: allow defining link costs for hotplugs
995251746 wg-installer: private key as parameter
652ebf1a3 wg-installer: generate new keys for every connection
5f517cc58 golang: Update to 1.17.6
92e357ebd wg-installer: fix using symlinks for conf files
caa72e5c5 fail2ban: fix 2to3 error
b3764db33 wg-installer: fix cleanup script
1e179f92a haveged: update to 1.9.17
d36455277 wg-installer: fix get_usage function
49f898044 wg-installer: delete old interfaces
335ad2a4d wg-installer: fix dependencies
f2745c85a wg-installer: fix typo in cleanup function
1de352b60 wg-installer: fix ipv4 meshing via olsr
efb5bdf07 wg-installer: add link-local to client interface
bf1c780af wg-installer: add cleanup script
032d0157c wg-installer: add ipv4 support
33d6705d2 getdns: remove maintainer
b1dfbf975 getdns: bump to 1.7.0
f755690b0 wg-installer: add hotplug script for olsr
85b6d750d radicale2: Update to 2.1.12
2415cbb9b radicale: Update to 1.1.7
4e1bfe4e9 inadyn: update to 2.9.1
2022-01-20 12:44:24 +01:00
Martin Weinelt
da6965c391 modules: update openwrt
1472a8fa42 procd: update to git HEAD
015f170fe6 procd: update to git HEAD
cd5ba0cfbb ustream-ssl: variants conflict with each other
6eced97ce4 lantiq: flag FritzBox 7360 family buttons active-low
b59f3b08b4 firmware-utils: tplink-safeloader: fix Archer A7v5 factory flashing from vendor fw > v1.1.x
43d105ec2a kernel: bump 5.4 to 5.4.171
1db847488d ath79: rb912: fix pll init issues
6ced8cad8e kernel: backport workaround for Realtek RTL8672 and RTL9601C chips
77ee281a3e kernel: add kmod-ledtrig-pattern
aa2de44cdd kernel: fix AutoLoad parameter for uleds module
bc37a699e5 kernel: add kmod-leds-uleds
96b5962704 mvebu: remove patch that was applied into linux stable
5beaa75d94 openssl: bump to 1.1.1m
93842b20dc bcm4908: include ATF in bootfs images
18b10db2f1 arm-trusted-firmware-bcm63xx: add ATF for Broadcom devices
739e359241 kernel: backport support for multicolor & RGB LEDs to 5.4
608c7dccf2 bcm4908: sysupgrade: add pkgtb format support
b6ed2641df busybox: backport dd support for iflag=count_bytes
7e4485fd5b bcm4908: add uboot-envtools to default packages
4cd5d11fa3 bcm4908: add fdt-utils to default packages
1d4a28d5e1 dtc: support printing binary data with fdtget
ce5d0378bf dtc: import package for dtc & fdt from packages feed
6292d1e354 bcm4908: sysupgrade: refactor handling different firmware formats
a00854040d ipq40xx: specify FritzBox 7530 LAN port label numbers
27225e3538 kernel: ath10k: provide a build variant for small RAM devices
104774c3b0 mvebu: puzzle: wan LED and fix default network
47d82f0710 mvebu: enable Aquantia phy driver for Puzzle devices
164ed6069c mvebu: add id for AQR112 Ethernet phy variants
daf4301071 mvebu: import patch enabling AQR113 PHY
ee5750043c mvebu: import patch enabling AQR112 and AQR412 PHY
a03840a1a9 mvebu: puzzle-m901: add LEDs, fan and reset button
280bb7c10c mvebu: puzzle-m902: add GPIO reset button
1e5df4d550 mvebu: puzzle-mcu: improve led driver
99a1e88297 mvebu: puzzle-m902: add driver for MCU driving LEDs, fan and buzzer
3b14ddf8d2 build: fix opkg install step for large package selection
2022-01-20 12:44:18 +01:00
Luflosi
55e95dd49b
ath79-generic: add support for TP-Link Archer A7 v5 (#2374) 2022-01-14 23:20:22 +01:00
Matthias Schiffer
a9f11e36bd
Merge pull request #2373 from mkg20001/infobinary
gluon-core: add gluon info binary
2022-01-14 20:19:08 +01:00
aiyion.prime
6b6a091634 fixup! gluon-mesh-babel: implement neighbour check 2022-01-14 11:47:37 +01:00
Maciej Krüger
a8d6a99f5b
gluon-mesh-vpn-wireguard: fix empty string key
Co-Authored-By: Matthias Schiffer <mschiffer@universe-factory.net>
2022-01-14 04:53:28 +01:00
Maciej Krüger
78ca654c5c
gluon-mesh-vpn-fastd: fix empty string key
Co-Authored-By: Matthias Schiffer <mschiffer@universe-factory.net>
2022-01-14 04:53:28 +01:00
Maciej Krüger
08a8ef0bcd
gluon-web-admin: remove pubkey empty string workarround
Co-Authored-By: Matthias Schiffer <mschiffer@universe-factory.net>
2022-01-14 04:53:25 +01:00
Maciej Krüger
816d2796be
gluon-core: add gluon info binary
This copies the code from web-admin and uses it to create a neat
cli-accessible summary about a node

This could also be extended or possibly have all the data the status
page has

Co-Authored-By: Matthias Schiffer <mschiffer@universe-factory.net>
2022-01-14 04:53:19 +01:00
J. Burfeind
7427ba2280
gluon-status-page: split bwlimit into two lines (#2371)
Fixes: 1cb0fc84fc ("gluon-status-page: swap bandwidth limits (#2304)")
Resolves #2370
2022-01-07 21:35:15 +01:00
Matthias Schiffer
f32c683601
scripts: lint-sh: ignore warnings about POSIX sh compatiblity
The following features are available in Busybox ash, so we don't need to
warn about them for runtime scripts:

- local keyword
- echo -n / -e
- String indexing

These warnings are new in shellcheck 0.7.2, which would otherwise fail
for various scripts.
2022-01-03 03:25:27 +01:00
Matthias Schiffer
24682a3197
contrib: push_pkg: fix lint issues with shellcheck 0.7.1
0.7.1 complains about unescaped backslashes in double quotes (which are
intepreted by printf in the two affected places). While the warning was
retired with shellcheck 0.7.2, it seems like a good idea to fix it
anyways.
2022-01-03 03:25:27 +01:00
David Bauer
60c6b4023b
Merge pull request #2361 from freifunk-gluon/cleanup-target-lib
Target build cleanup
2022-01-02 19:20:19 +01:00
David Bauer
b95b857aa8
Merge pull request #2339 from freifunk-gluon/status-page-iwinfo
gluon-status-page: use UCI + iwinfo to get channel information
2022-01-02 19:18:53 +01:00
Tom Herbers
17731ae8fd
scripts/container.sh: allow for empty Branch Names and git errors (#2363)
Resolves #2362
2022-01-01 19:20:41 +01:00
David Bauer
0d0801da99
Merge pull request #2364 from freifunk-gluon/migration-cleanup
Clean up obsolete upgrade migrations
2022-01-01 18:20:42 +01:00
Matthias Schiffer
eaac48e20d
gluon-mesh-vpn-fastd: remove obsolete migration 2022-01-01 01:46:19 +01:00
Matthias Schiffer
97ef7889c6
gluon-core: remove more obsolete migrations 2022-01-01 01:45:52 +01:00
Matthias Schiffer
9712912904
gluon-l3roamd: remove obsolete migration code 2021-12-31 23:22:14 +01:00
Matthias Schiffer
5b40265ff2
gluon-mesh-batman-adv: remove obsolete migration code 2021-12-31 23:16:15 +01:00
Matthias Schiffer
bae14abca4
gluon-core: remove obsolete proto 'batadv' -> 'gluon_mesh' migration
More migration code from 2016.
2021-12-31 22:51:29 +01:00
Matthias Schiffer
16bf5e3e5d
gluon-core: remove obsolete sysconfig.gluon_version handling
The file /lib/gluon/version/core hasn't existed since early 2014, so
this whole script is obsolete.
2021-12-31 22:51:29 +01:00
Matthias Schiffer
6633ff1bf8
Merge pull request #2357 from blocktrron/upstream-master-updates
modules: update OpenWrt & packages
2021-12-31 15:13:27 +01:00
Matthias Schiffer
adda317176
build: set GLUON_DEPRECATED = 0 by default
We currently don't have any deprecated devices, so it doesn't make much
sense to force every site to specify this variable. Make it default to 0
instead.
2021-12-31 14:44:47 +01:00
Matthias Schiffer
a0fae1f827
scripts: target_lib: remove obsolete non-device image handlers
All our targets use the OpenWrt device abstraction. Since commit
6ba58c9b17c90e41b521d796ab76e5723ee017170
("generic: force per-device RootFS") building non-device targets is not
possible anymore, so we can remove these obsolete handlers.
2021-12-31 14:36:30 +01:00
Matthias Schiffer
cc174ad1d0
x86: copy separate kernel and rootfs images to "other" directory
For regular use, a full disk image is always recommended, as it is
required to support sysupgrades.

During development or for automated tests, separate images for the
kernel and rootfs may be useful to pass additional kernel cmdline or use
nfsroot/virtiofs. The rootfs is only available as a (squashfs)
filesystem image, not as a TAR archive (the TAR archive in OpenWrt's bin
directory does not contain DEVICE_PACKAGES, so it is missing most of
Gluon's packages).
2021-12-31 13:47:36 +01:00
Matthias Schiffer
cd7da8472e
x86: fix indentation of package lists 2021-12-31 13:46:41 +01:00
David Bauer
904c51527a modules: update packages
7a15a271a mwan3: fix mwan3 flush conntrack table call
2f52958e0 golang: Update to 1.17.5, add patch
f7973fc7a adguardhome: update to 0.107.0
d5ce7603d xray-core: Update to 1.5.2
60419af87 xray-core: Update to 1.5.1
c8b6cffcd yq: Update to 4.16.2
a21e79094 adblock: 4.1.3-4
2021-12-31 03:18:13 +01:00
David Bauer
fb231959da modules: update openwrt
4dddb7ca36 tcpdump: libpcap: Remove http://www.us.tcpdump.org mirror
47a5b9744b linux-firmware: amd: consolidate amd's linux-firmware entries
6003752394 linux-firmware: Update to version 20211216
7306b9e810 linux-firmware: update to 20210511
d0b0ebf966 linux-firmware: update to version 20210315 and trim down broadcom FW
209c77e90f linux-firmware: ath10k: add support for Qualcomm Atheros QCA9377
2ed471a12a firmware: intel-microcode: update to 20210608
a20e9474df cypress-nvram: fix firmware is not exist for raspberry pi compute 4
dbe2a6343f base-files: fix service_running check
e81dd8a10a base-files: upgrade: fix efi partitions size calculation
8166bbf680 ccache: update to 4.2.1
5e2a2b086c mvebu: Turris Omnia: use SFP module, if present
24e564d327 mvebu: backport Turris Omnia DTS changes to 5.4
32c74552b2 kernel: bump 5.4 to 5.4.168
a8ad881b83 apm821xx: fix WD MyBook Live DUO USB-Port
d655eea053 hostapd: only attempt to set qos map if supported by the driver
2021-12-31 03:18:03 +01:00
Martin Weinelt
65da23ada4
Merge pull request #2356 from freifunk-gluon/doc-make-update 2021-12-31 03:01:45 +01:00
Matthias Schiffer
efb4a4f637
docs: user/getting_started: add a footnote regarding make update
Add some explanation when `make update` needs to be run again.
2021-12-31 02:50:23 +01:00
Tom Herbers
48d00abe4f
README.md: add link to Matrix room (#2354)
Co-authored-by: David Bauer <mail@david-bauer.net>
2021-12-30 23:51:40 +01:00
David Bauer
a250177d07
Merge pull request #2349 from freifunk-gluon/doc-indent
docs: consistent indentation + minor fixes
2021-12-30 23:30:55 +01:00
Matthias Schiffer
4019293e85
gluon-respondd: remove obsolete migration from upgrade script (#2350)
announced was renamed to respondd in 2016. Let's remove the obsolete
migration code.
2021-12-25 11:42:57 +01:00
Matthias Schiffer
543039d190
docs: remove obsolete workaround for paragraphs in nested lists
With older versions of the RTD theme, paragraphs in nested lists would
lead to inconsistent spacing. This has been fixed, so we can remove our
workaround to use line blocks instead of paragraphs.
2021-12-24 14:22:20 +01:00
Matthias Schiffer
ac3ac29158
docs: minor grammer/wording fixes 2021-12-24 14:18:16 +01:00
Matthias Schiffer
854fef4e12
docs: consistently indent .rst files with 2 spaces
2 spaces is the most common indentation width used in the docs; adjust
the rest for consistency.

Also change .editorconfig accordingly.
2021-12-24 14:16:04 +01:00
Matthias Schiffer
0e19b1a5c2
Merge pull request #2345 from freifunk-gluon/master-updates
modules: update openwrt
2021-12-23 13:52:18 +01:00
Martin Weinelt
6728c4a103
Add helper to run a containerized build environment (#2292)
Using `make container` or, if you don't have automake/gmake on your host
system, `./scripts/container.sh` will build an image for the current
branch your are on and drop you into a shell running inside a container
using that image.

From there all tooling required to work on Gluon is available.

Supports both podman (preferred) and docker.
2021-12-21 21:40:27 +01:00
Martin Weinelt
5e11afbe86 modules: update routing
a85b7c7 opennds: Release v9.5.1 (for 21.02)
d4622d8 ohybridproxy: revert to default log level
47436b0 batman-adv: Prevent use from libc headers to not build with BIG_ENDIAN
2021-12-21 21:18:08 +01:00
Martin Weinelt
d7c2df08d4 modules: update packages
a87752712 python-lxml: update to version 4.6.5
944e937d9 php8: update to 8.0.14
4308764d8 seafile: remove myself as maintainer of these packages
aa7454e46 python-packages: remove myself as maintainer
f01af1e66 crowdsec-firewall-bouncer: update to 0.0.18
f4519023c php7: update to 7.4.27
e818e3ed3 nano: update to version 6.0
e7e91ca07 libqmi: fix missing CONFIG_ prefix
7164762fd ldns: update to 1.8.1
59e70a29c unbound: update to 1.14.0
e6628357a htop: update to 3.1.2-1
c28d3dcb5 htop: explicitly disable some build options
97574e9de htop: update to 3.1.0
6ddb16bc3 node: bump to 14.18.2
4f251d6df hwdata: update to version 0.354
92129f9cf python-babel: update to version 2.9.1
134bae302 python-babel: update to version 2.9.0
5750f8337 knot: update to 3.1.4
149c3014f gnutls: don't run aclocal --install
4ee031906 bind: bump to 9.17.20
cbc9de5f1 knot-resolver: update to version 5.4.3
bb89205f5 yq: Update to 4.16.1
1743adc23 python3: update to version 3.9.9
5ebaa73d5 msmtp: update to version 1.8.1.9
a9fed2403 mariadb: Create compatibility symlinks
0e40e25fc mariadb: Install all supporting sql files
753fe1d21 mariadb: Tweak default configuration
ed572e389 mariadb: Init script improvements
fb4c9e5c4 mariadb-common: Drop package and adjust configuration
e84c48890 nextdns: Update to version 1.37.7
75a0ffc21 nextdns: Update to version 1.37.6
a97bd3135 syslog-ng: update to version 3.35.1
3cad5b76d yggdrasil: bump to 0.4.2
a7a724733 yggdrasil: uci ifname is now known as device
271961e3a nextdns: Update to version 1.37.5
5d82c0716 ddns-scripts: use HTTPS for spdyn
ff5728497 icu: bump to 70.1
8162066e1 curl: update to 7.80.0
4877a3b72 yq: Update to 4.15.1
4f78eb825 crowdsec: update to 1.2.1 crowdsec-firewall-boucer: update to 0.0.16
103484c4b nebula: update to 1.5.0
2021-12-21 21:18:07 +01:00
Martin Weinelt
cadee7bfc6 modules: update openwrt
e1b79b1dc3 mac80211: optimize airtime fairness code to reduce cpu usage
5414aa88ae kernel: backport the upstream implementation of threaded NAPI to 5.4
4b52d89531 mac80211: Update toversion 5.10.85
5a8faa407a bcm53xx: sysupgrade: fix support for Luxul's legacy firmware format
052619a71b bcm4908: build chk image for Netgear RAXE500
d5f9c6729f bcm4908: start working on Netgear RAXE500 image
76ccf10c59 bcm4908: enable MTD_CMDLINE_PARTS
97b76de576 bcm4908: continue work on images for U-Boot based devices
1da38bb4db bcm4908: backport upstream DT commits
570c26f664 bcm4908: add watchdog support
027dd3c50b bcm4908: start work on images for devices using U-Boot
2c1f27bf4b bcm4908img: detect Linksys images
1d1c695273 bcm4908img: store offset of tail data
f24e745b25 bcm63xx-cfe: update to the latest master
c808c55b39 bcm53xx: sysupgrade: refactor handling different firmware formats
29f73a7968 bcm53xx: sysupgrade: simplify extracting image from Seama seal
0ebf62e7f4 bcm53xx: enable Linksys EA6300 & EA9200 builds
67978e4ce5 bcm53xx: backport the latest upstream DT changes
6f9e9d978a bcm53xx: fix Luxul XWR-3150 LAN ports numbering
2912bba4cb otrx: update to the latest master
3d05cd40a6 otrx: use firmware-utils.git to avoid code duplication
14940aee45 kernel: bump 5.4 to 5.4.163
06547e0a58 ath79: add support for Xiaomi AIoT Router AC2350
c67509efd7 ramips: fix tl-mr3020-v3 switch topology to configure vlans via luci
5124b96e72 busybox: update to 1.33.2 bugfix release
266890bb12 mt76: update to the latest version
efc76b1361 mac80211: bump PKG_RELEASE
1276ef9c1c mac80211: fix tx aggregation locking issue
b1e684fa88 mac80211: fix queue assignment of aggregation start requests
462ccf90be mt76: update to the latest version
36848e2c29 uboot-lantiq: danube: fix hanging lzma kernel uncompression #2
4172a8e0ad lantiq: set maximum kernel size for P2812HNUF3
0e0192098a mac80211: backport fix for dealing with stripped IV on rx
77667a7eb6 hostapd: add a patch that allows processing auth requests for peers in blocked state
9127e5193e hostapd: bump PKG_RELEASE
4679c4ae25 mac80211: bump PKG_RELEASE
36c3103cba mac80211: add a fix for kernel warnings when forwarding packets in mesh mode
ea91ebedce mac80211: fix regression in SSN handling of addba tx
2021-12-21 21:17:58 +01:00
David Bauer
fdc79c5721
gluon-ebtables-limit-arp: declare clock as extern (#2343)
Declare the clock variable as extern in the header file.

Fixes compilation of gluon-ebtables-limit-arp with OpenWrt master:

multiple definition of `clock'; /gluon/openwrt/tmp/ccuynR0G.o:(.bss+0x230): first defined here

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-12-20 17:37:51 +01:00
Martin Weinelt
703c8e64c6
Merge pull request #2338 from freifunk-gluon/wifi-band 2021-12-20 01:25:08 +01:00
Matthias Schiffer
17e1aa4ffd
gluon-core: migrate wireless configuration from hwmode to band
The migration is done very early, as other upgrade scripts depend on the
band setting through platform.device_uses_11a().
2021-12-19 16:43:19 +01:00
David Bauer
c52089fcda
treewide: use radio band option to determine frequency band
The 'hwmode' setting has been replaced with 'band' in OpenWrt to add
support for newer bands outside of 2.4G and 5G. Adjust Gluon accordingly.

[Matthias Schiffer: rebased, extended commit message]
2021-12-19 16:43:12 +01:00
Martin Weinelt
f6faa50ad5
Merge pull request #2337 from freifunk-gluon/makefile-fixes 2021-12-19 14:11:21 +01:00
Martin Weinelt
f7c04b571c
Merge pull request #2342 from freifunk-gluon/ci-fixes 2021-12-19 14:08:04 +01:00
Matthias Schiffer
d8aca7f211
workflows: build-gluon: avoid failure when no path filter matches
The CI should be successful when there is nothing to check. Add if
condition as proposed in [1].

[1] https://github.com/dorny/paths-filter/issues/66#issuecomment-778267385
2021-12-18 23:51:17 +01:00
Matthias Schiffer
83808221d7
workflows: build-gluon: remove obsolete comment
build-gluon.yml is not generated anymore.
2021-12-18 23:47:41 +01:00
Martin Weinelt
4d22ab188e
Merge pull request #2341 from freifunk-gluon/dependabot/pip/docs/sphinx-rtd-theme-1.0.0 2021-12-18 16:13:05 +01:00
Martin Weinelt
1f1dccf13f
Merge pull request #2340 from freifunk-gluon/dependabot/github_actions/actions/upload-artifact-2.3.1 2021-12-18 16:00:36 +01:00
dependabot[bot]
131baaa555
build(deps): bump sphinx-rtd-theme from 0.5.2 to 1.0.0 in /docs
Bumps [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) from 0.5.2 to 1.0.0.
- [Release notes](https://github.com/readthedocs/sphinx_rtd_theme/releases)
- [Changelog](https://github.com/readthedocs/sphinx_rtd_theme/blob/master/docs/changelog.rst)
- [Commits](https://github.com/readthedocs/sphinx_rtd_theme/compare/0.5.2...1.0.0)

---
updated-dependencies:
- dependency-name: sphinx-rtd-theme
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-18 14:41:58 +00:00
dependabot[bot]
18cddd2046
build(deps): bump actions/upload-artifact from 1 to 2.3.1
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 1 to 2.3.1.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v1...v2.3.1)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-18 14:41:54 +00:00
Felix
ae911a1331
Add dependabot.yml config (#2335) 2021-12-18 15:41:33 +01:00
Matthias Schiffer
b40b1c82e0
Merge pull request #2312 from freifunk-gluon/gluon-web-wifi-cleanup
Hide WLAN config on devices without WLAN + related cleanup
2021-12-16 20:03:27 +01:00
Matthias Schiffer
1013dcb148
gluon-ebtables-filter-ra-dhcp: disable DHCPv4 filter when gw_mode == 'server' (#2324)
In meshes without VPN or supernodes, it may be desirable to connect a
router providing IPv4 addresses directly to a regular Gluon node. For
this to work, it was necessary to remove the gluon-ebtables-filter-ra-dhcp
package from the node, so the autoupdater also needed to be disabled.

To avoid this, make gluon-ebtables-filter-ra-dhcp disable the DHCPv4
filter rules when gw_mode is set to 'server'.

No solution is provided for RA/DHCPv6, but this seems less pressing for
local meshes, as nodes can already provide working IPv6 connectivity
by themselves through gluon-radvd.
2021-12-16 20:01:57 +01:00
Matthias Schiffer
201e1597b1
gluon-status-page: use UCI + iwinfo to get channel information
The network.wireless status ubus call only returns the configured
channel from UCI, breaking the status page in outdoor mode, where the
configuration contains 'auto' instead of a number.

Fixes: 0d3fa6b59b ("gluon-status-page: use ubus to get radio channels")
Closes #2336
2021-12-15 22:48:13 +01:00
Matthias Schiffer
286d07b35f
Makefile: error earlier when site.mk is missing
The site.mk target was only evaluated after the whole makefile was
parsed. This caused the GLUON_DEPRECATED error to be emitted first
(hiding the more helpful message that no site config was found) on Gluon
2021.1.x, where GLUON_DEPRECATED is used in a toplevel if in targets.mk.

By moving the check from recipe context to the toplevel, we ensure that
it is evaluated during parsing.
2021-12-15 20:59:26 +01:00
Matthias Schiffer
caa09e2fae
Makefile: remove duplicate GLUON_RELEASE entry from GLUON_VARS 2021-12-15 20:48:53 +01:00
David Bauer
e153ba6bd7 modules: update routing
6d10a01 batman-adv: Merge bugfixes from 2021.4
3336ecd naywatch: warn user
9e7698f babeld: remove unnecessray blob_buf_init calls
c524118 babeld: free blob-buffers that are on stack
1fcda9d olsrd: wait for wireless to initialize before starting
2021-11-23 22:31:31 +01:00
David Bauer
1ed8a6c4fc modules: update packages
b320cc083 docker: Update to 20.10.11
307236dca dockerd: Update to 20.10.11
b35eba3c9 containerd: Update to 1.4.12
b74f8b68c conntrack-tools: import patch to fix cache
47ce72c8b conntrack-tools: add a patch to fix endianness issue
41b3505f7 php8: update to 8.0.13
2381ced33 php7: update to 7.4.26
495c76cd5 rosy-file-server: drop this package
e112fc953 nextdns: Update to version 1.37.4
8d99ece4b golang: Update to 1.17.3
c0ceaca00 auc: remove superfluous variables
34e512ac2 auc: use /json/v1/
a95f71a73 auc: fix some minor issues
15beed2b4 rclone: Update to 1.57.0
966e3cc09 yq: Update to 4.14.2
2c6faddd3 exim: update to version 4.95
4f84a8631 exim: some clean ups
72288cc39 exim: add default config and init script, enable lmtp
783ee334f exim: update to version 4.94.2
cead8569e exim: fix compilation without deprecated OpenSSL APIs
b30fc0a67 gpgme: update to version 1.16.0
c55523b8c podman: update to 3.4.1
23415c437 podman: fix broken conffiles
4ccf03482 podman: update to 3.3.1
37df6c3ca podman: change permissions on /usr/share/containers/seccomp.json
ea7b959fd podman: update to 3.2.0
16a3da37a podman: change permissions on /etc/containers
a129759f0 podman: bumb version to 3.1.2
405bc67f8 podman: update to 3.1.1
961551a85 podman: Add selinux variant and several improvements
cb1d97d52 podman: add 'crun' to containers.conf
90e58bdb9 podman: update to version 3.0.1
2b7349773 conmon: update to 2.0.30
6e74b5d7b conmon: update to 2.0.29
18cc7640b conmon: fix segfault, correct a typo and update description
78a629de7 conmon: update to version 2.0.27
e4d64cc27 conmon: update to 2.0.26
da757a11e cni-plugins: update to version 1.0.1
95c604415 cni-plugins: update to version 1.0.0
89574510e cni-plugins: depend on kmod-veth
3a8dac1bc cni-plugins: update to version 0.9.1
2a684bdfa cni: update to version 1.0.1
e1489cd0f cni: update to 0.8.1
2d027dc82 libinput: update to version 1.19.2
0972feac5 libinput: update to version 1.19.1
975bb6f48 libinput: package libinput cli applets and quriks
cd42b74ac libinput: update to version 1.18.0
4042c299b libinput: update to version 1.17.1
2e5a72bf5 libevdev: update to version 1.12.0
d337bce97 libextractor: update to version 1.11
fd4648a61 pyodbc: update to version 4.0.32
aac8be18a pyodbc: update hash
fe1b4a705 pyodbc: update to version 4.0.31
c4c8aeef2 Werkzeug: update to version 2.0.2
0eb4b34fe Jinja2: update to version 3.0.3
1c0dba883 click: update to version 8.0.3
738e354e2 perl-mail-spamassassin: update to version 3.4.6
68e5146b1 perl-mail-spamassassin: fix compilation without deprecated OpenSSL APIs
7882b7a01 perl-net-dns: update to version 1.32
de68cf3c4 perl-net-dns: update to version 1.30
8dbccb11e opentracker: update to git HEAD of 2021-08-23
10a19bf58 opentracker: update to git HEAD
1bab442de opentracker: update to git HEAD
9fde4ba67 libksba: update to version 1.6.0
132280158 libksba: update to version 1.5.1
821bcc603 libassuan: update to version 2.5.5
2260a2227 libgpg-error: patch to fix cross-compile
8c8e57488 libgpg-error: update to 1.42
a7a051959 i2c-tools: update to version 4.3
698f54b32 hiredis: update to version 1.0.2
543c0969d hiredis: fix compilation with macOS
2fb629239 gawk: update to version 5.1.1
dc8398b66 ccid: update to version 1.4.36
7ee645cba ccid: fix compilation under macOS
920608fdc ccid: update to version 1.4.35
c0d45ae37 ccid: update to version 1.4.34
4c9cb7aa5 cryptsetup: update to version 2.4.1
d6474f836 cryptsetup: update to version 2.3.6
c840b702b cryptsetup: update to version 2.3.5
010ac6555 opensc: update to version 0.22.0
45388a559 opensc: update to version 0.21.0
4f879fe49 pcsc-lite: update to version 1.9.4
98bd76585 pcsc-lite: update to version 1.9.1
717f494ca postgresql: update to version 13.5
3b0f19d6d lvm2: update to version 2.03.14
bc5bb1254 lvm2: update to version 2.03.13
3bbdaa49e lvm2: add hotplug script to scan and enable PVs on hotplug
633e6a303 lvm2: update to version 2.03.12
99dcad1ae lvm2: don't use `-normal` suffix for non-SELinux variants
ec01d0c39 libudev-zero: update to version 1.0.0
beffb3c3f libudev-zero: update to version 0.5.2
3d417377b libudev-zero: update to version 0.4.8
6918a2c9a php8: Clean up and update distributed php.ini for php 8.0.12
44838c21e cyrus-sasl: patch CVE-2019-19906
ad1c43328 dockerd: Update to 20.10.10
786d3c7d7 docker: Update to 20.10.10
895dac37b containerd: Update to 1.4.11
2c928a098 runc: Update to 1.0.2
7e45ad87f php7: Clean up and update distributed php.ini for php 7.4.25
309c5d62a nano: enable showing line numbers with M-N (Alt-n)
50fdbd3a7 nano: enable line numbers (from cmdline)
07b7e67e6 mosquitto: bump to 2.0.13
8c504b293 php7-pecl-redis: update to 5.3.4
ab0bcf1ea php7-pecl-imagick: update to 3.5.1
1ded6ea24 php7-pecl-http: update to version 3.2.4
37941038a xray-core: remove dead jail files
4df93ea61 afuse: Add new package
6eecc3bd4 php7: Support for icu 70.1
f173d1d1d php8: Support for icu 70.1
f2300cd65 tvheadend: add patch to update hdhomerun
3aa30ceee rclone-ng: initial package
33b852064 rclone-webui-react: initial package
698699409 rclone: add test script
139dcb277 rclone: fix logic err in service file
ebabd2430 rclone: initial package
3ff099e0d yq: Update to 4.14.1
fdda9ff98 mariadb: Update to version 10.4.21
6b2535230 lighttpd: update to lighttpd 1.4.61 release hash
a740068f0 lighttpd: update to lighttpd 1.4.60 release hash
6d753e569 bind: Bump to 9.17.19
74081b945 nginx: fix compilation with BUILD_NLS
f57e56fd4 generate-ipv6-address: fix PIC compilation
7f10cee8c php7: update to 7.4.25
a446dba54 php8: update to 8.0.12
b6d2c8f69 dawn: set symm_enc default to 0
733126fc8 mariadb: update to 10.4.18
18a48195c python-websockets: new package
bf3fc8365 atlas-probe: allow parallel build
11f686bc3 atlas-probe: Fix compilation with gcc11
9d02dfdbb knot-resolver: update to 5.4.2
55ba91017 git: update to version 2.33.1
5a96548c2 msmtp: update to version 1.8.17
e6cea0eb5 syslog-ng: update to version 3.34.1
08107fbc5 dnscrypt-proxy2: update to version 2.1.1
63a261a34 checksec: update to version 2.5.0
e0a2da463 miniflux: new package
bc785e584 redis: update to version 6.2.6
edadea28c redis: update to version 6.2.5
86ce4cee0 redis: update to version 6.2.4
0412c3f0e redis: update to version 6.2.3
f5464f16d redis: update to version 6.2.2
cdd2b4668 redis: update to version 6.2.1
a92f8ea07 redis: update to version 6.2.0
14a3dfd30 knot: update to version 3.1.3
5fccb6fd7 dawn: update to 2021-10-26
e2d1c8a0d dawn: respawn dawn in case of crash
44629438d dawn: update to 2021-10-13
4855c37bd dawn: update to 2021-08-05
ded142471 docker: update to 20.10.9
4ae2fa2df dockerd: update to 20.10.9
a8b45f6f6 yq: Update to 4.13.5
97cd95d09 nextdns: Update to version 1.37.3
26e9cbc4c ksmbd-tools: update to 3.4.2
6bc415fce ksmbd-tools: update to 3.4.1
6657d5f61 ksmbd: use hostname only as name
8677e7efa ksmbd-tools: update to 3.4.0
35fefa105 django: bump to version 3.2.8
4d0867210 vpn-policy-routing: bugfixes: killall and tmpfs params
c8c12fdad node: bump to 14.18.1 / October 12th 2021 Security Releases
33c4ad121 vpn-policy-routing: revert to 0.3.4-8
a1556162a msgpack-c: Update to 4.0.0
b0efc1697 msgpack-c: don't check for GTest
5195be18a nnn: update to 4.2
70ddf0543 fakepop: fix compilation with PKG_ASLR
9b2e060e5 lxc: update to 4.0.10
b7bec631e simple-adblock: update to 1.8.8-1
3faeb8b09 curl: update to 7.79.1
e4dec5bea knot: update to 3.1.2
a597e12e2 crowdsec-firewall-bouncer: initial package v0.0.15
738fda6b6 crowdsec: initial package v1.2.0
b92db741e yq: Update to 4.13.4
b1bd6ec8f https-dns-proxy: update to 2021-09-27
ac6566a7d tor: update to 0.4.5.10
db856b617 acme: update to 3.0.1
70a8a309a golang: Update to 1.17.2
f41827d27 perl: perlmod.mk: use flock when hostpkg/perl used
58181f8fe ttyd: fix ssl ca option init
0139e44ff python-pytz: bump to version 2021.3
e155b3d29 nano: update to 5.9
39a116f58 smcroute: update to version 2.5.3
d09b92396 autossh: fix procd env issue
da5684671 autossh: fix compilation without ssh installed
3741e45ea php8: update to 8.0.11
b188ecff2 php8: fix module loading with glibc (refs #16642)
934de93ad php8: update to 8.0.10
998d21563 php7: update to 7.4.24
49ffbab9c php7: fix module loading with glibc (refs #16642)
dc5faddac travelmate: support meta-refresh with single-quote
c98f06003 cache-domains: Fixed remote script usage change * Removed all unnecessary files after configuration * Reduced code duplication * Changed to symlinking config instead of copying
1f3f63f5d haveged: update to 1.9.15
670fe1ea1 yq: Update to 4.13.3
2021-11-23 22:31:31 +01:00
David Bauer
66d818fe83 modules: update openwrt
dec9e83956 hostapd: fix goto loop for ubus assoc handler
c254d83ea8 hostapd: enable ht40 in wpa_supplicant when using wider HE modes
0243f09465 hostapd: add support for providing vendor specific IE elements
28b30ae10b hostapd: add eap_server support
21eb0a5aa3 hostapd: add default values for r0kh/r1kh
32b047e22e hostapd: add support for configuring the beacon rate
1f5155d005 hostapd: add support for configuring rts threshold
75f72696b5 hostapd: fix use after free bugs
0b75372275 hostapd: add wmm qos map set by default
6ac1b9188a hostapd: support qos_map_set without CONFIG_INTERWORKING
5a8988baa9 hostapd: refresh patches
9b660c63ad hostapd: fix a race condition on adding AP mode wds sta interfaces
d9373c5922 hostapd: fix max_oper_chwidth setting for HE
4a53adbd43 hostapd: let netifd set bridge port attributes for snooping
345f8fc7f3 hostapd: respect fixed channel BW in HE20 mode
23909a85de hostapd: make proxyarp work with libnl-tiny
aada4d0e78 hostapd: fix a segfault on sta disconnect with proxy arp enabled
c75d176882 hostapd: make the snooping interface (for proxyarp) configurable
93dc8760b0 hostapd: configure inter-AP communication interface for 802.11r
ce7a170414 hostapd: add additional radius options
7d1c464a23 hostapd: add extra options for hotspot 2.0 / interworking
e480a0986e hostapd: fix civic location option
46aa34ee0f hostapd: enable airtime policy for the -basic variants
62fa301cce hostapd: add patch for disabling automatic bridging of vlan interfaces
2982f1ec0a mt76: update to the latest version
ee5b593435 mac80211: fix crash in drivers relying on mac80211 retransmitting packets for powersave clients
fb98c8a610 mac80211: backport a few trivial patches
2007d4e208 mac80211: backport AP mode TWT support
c5ef1cee8a mac80211: backport support for BSS color changes
bb5da058db mac80211: add missing change for encap offload on devices with sw rate control
52300733cd mac80211: backport SAR power limit support
68886f3018 mac80211: merge the virtual time based airtime scheduler
c20f4e24bd mac80211: set beamformer/beamformee number of antennas in VHT caps
91ba22e3a4 mac80211: fix IBSS/adhoc mode for brcmfmac
27e4c5cf47 mac80211: allow retry of wifi setup if an iw interface add command fails
4a70b93f2d mac80211: fix HT40 mode for 6G band
cdb867b73a mac80211: fix processing HE capabilities (FS#3871)
7b7b494d56 mac80211: fix typo
8e3b3fa577 mac80211: do not enable VHT in the default config on 2.4 GHz
4edda0c544 mac80211: fix detecting VHT capabilities when generating the default config
8133d59da9 mac80211: add more HE capabilities
42d542e04f mac80211: fix center freq selection for 6 GHz
b535ec25eb mac80211: set hostapd op_class for 6 GHz
7a2405efc6 mac80211: rework default config script
d0b33833ae mac80211: make use of the new 'band' option
be55e7d5dd netifd: update to the master branch
aae63bb9a9 iw: enable print wpa ie for scan
df363764b7 netifd: fix deletion of ip tunnels (FS#4058)
c744798cad uboot-lantiq: danube: fix hanging lzma kernel uncompression
4b0f87729c wireless-regdb: update to version 2021.08.28
0b7311300b kernel: bump 5.4 to 5.4.158
2f04012b20 base-files: chmod 1777 /var/lock
6ec5dbd2a1 libpcap: add rpcapd as package
6fe4b7aa2b gpio-button-hotplug: convert to gpio descriptor (gpiod_) API
4607f55439 bcm4908: fix calculation of new cferam index
b4c40a7efc ramips: minew g1-c: Allow dynamic RAM sizes
f441be3921 iproute2: m_xt.so depends on dynsyms.list
a77ea2f05f OpenWrt v21.02.1: revert to branch defaults
b4d7885af7 OpenWrt v21.02.1: adjust config defaults
88151b8303 ipq40xx: ar40xx: reset port status register
23778f067a wolfssl: fix compile when enable-devcrypto is set
3f8adcb215 wolfssl: remove --enable-sha512 configure switch
249478ec48 wolfssl: always build with --enable-reproducible-build
23cd9fafa8 ath79: mikrotik: use 64 KiB SPI NOR erase sectors
16414718f9 wolfssl: update to 4.8.1-stable
5a02760c8f wolfssl: fix build with GCC 10 on 32 x86 targets
24b23ed96a layerscape: Add missing config option
7bf7f78891 layerscape: Fix build in dtb
2274e4c1fc ncurses: add tmux terminfo
eb5c2fed51 ncurses: add screen-256color terminfo
df9ca41322 ncurses: split long line of supported terminfo
f509ff77d4 glibc: update to latest 2.33 HEAD (bug 28213)
a13efd2253 tools/isl: update the download URL
284f8a64b7 ath10k-ct: update to version from 2021-09-22
aa2d61eced tools/m4: update to 1.4.19
b4ed8a9275 kernel: bump 5.4 to 5.4.154
43a5bebda1 wolfssl: bump PKG_RELEASE
4b212b1306 wolfssl: build with WOLFSSL_ALT_CERT_CHAINS
c43a5921fa mvebu: add support for iEi Puzzle-M901/Puzzle-M902
bb1eb5e8e6 mvebu: backport CN9130 dts necessary files changes to 5.4
f1f304940b build: prereq detect Python 3.10 for `python3` binary
e7c5e08db0 kernel: ar8216: add get_features method
9b258f220f prereq-build: recognize Python 3.10
913403b587 build: fix `which` detection on Fedora & MacOS
e604873e8a uhttpd: make organization (O=) of the cert configurable via uci
76d90a5eaf uboot-lantiq: fix sha1.h header clash when system libmd installed
8cc7ac54b6 kernel: bump 5.4 to 5.4.150
2021-11-23 22:31:31 +01:00
Matthias Schiffer
e26b508b72
Merge pull request #2330 from AiyionPrime/status-page-cleanup
Status page cleanup
2021-11-12 19:13:40 +01:00
aiyion.prime
1944ea0e01 gluon-status-page: fix lastImage in Signal() 2021-11-12 12:23:37 +01:00
aiyion.prime
8c85be2125 gluon-status-page: fix address_to_groups()
In js `return` does behave like `continue` in a forEach() iteration.
The fixed function was intended to return nothing on error and does so
now, instead of a shorter (useless) array like before.
2021-11-12 12:19:47 +01:00
David Bauer
102a4b9350
ath79-generic: add support for Enterasys WS-AP3705i (#2332) 2021-11-01 00:38:36 +01:00
David Bauer
7b2ab5e6c6 modules: update Gluon packages
52d7ac4 respondd-module-airtime: move const specifier to the right location
8067032 respondd-module-airtime: remove incorrect fprintf argument
1412236 respondd-module-airtime: remove PHY ID again
1dd5cd1 respondd-module-airtime: improve error handling
b4858b1 net/wgpeerselector: keep same datatype on ubus status (#250)

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-10-25 00:15:08 +02:00
Matthias Schiffer
51a1708453
gluon-neighbour-info: avoid recv() with NULL buffer (#2323)
Calling functions like recv() with a NULL buffer is not explicitly
allowed by the POSIX standard, so it must be avoided to be portable
across different libc implementations. Allocate an initial buffer before
handling requests, and also pass this buffer to the peek recv() call.

Fixes: 531937cf6f ("gluon-neighbour-info: fix broken output with large results")
2021-10-16 14:01:34 +02:00
Matthias Schiffer
f910cab618
Merge pull request #2316 from freifunk-gluon/gluon-version
Clean up Gluon version number handling, allow .scmversion override
2021-10-09 13:14:50 +02:00
Matthias Schiffer
f419db58a2 Set PKG_VERSION in gluon.mk
This removes PKG_VERSION and PKG_RELEASE from most Makefiles, as the
value was never useful for Gluon packages; instead, PKG_VERSION is set
to 1 in gluon.mk.

It also removes two other weird definitions:

- gluon-iptables-clamp-mss-to-pmtu replicating the old PKG_VERSION logic
  from gluon-core, but without the fixed PKG_BUILD_DIR to prevent
  unnessary rebuilds
- gluon-hoodselector set GLUON_VERSION=3
2021-10-07 23:42:38 +02:00
Matthias Schiffer
1c89f616a9 build: add support for .scmversion files for GLUON_VERSION and GLUON_SITE_VERSION
Sometimes it is useful to override the default version detection, for
example when local patches are applied to a repo. Allow providing a
version number using a file called .scmversion, which is the same that
the Linux kernel and U-Boot use.
2021-10-07 23:42:38 +02:00
Matthias Schiffer
b5db6435e5
build: pass GLUON_VERSION and GLUON_SITE_VERSION to build
A helper script is introduced to get the version from `git describe`.
2021-10-05 21:48:07 +02:00
Matthias Schiffer
a6187cce70
gluon-core, gluon-site: get version numbers from .config
Calling git describe directly breaks isolation between the build system
and packages. Replace this with proper .config variables, like we
already do for GLUON_RELEASE.

Also replace the PKG_VERSION hack with a static '1', as we do for other
packages - while having those version numbers in opkg was cute, it was
also entirely useless. Having a fixed PKG_VERSION allows us to remove
the PKG_BUILD_DIR override as well.
2021-10-05 21:48:07 +02:00
T-X
531937cf6f
gluon-neighbour-info: fix broken output with large results (#2322)
Currently a buffer with a fixed size of 8192 bytes is used. However the
result can potentially be larger, which leads to a truncated JSON
output on stdout. UDP packets, without compression and with IP
fragmentation, can be up to 64KiB large.

Instead of using a fixed size buffer on the stack ask the kernel first
about the size of the UDP data and allocate a buffer of appropriate size
on the heap before receiving the UDP data.

The issue was observed with a custom respondd provider.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2021-10-04 21:23:29 +02:00
Martin Weinelt
c5f5fc5624
Merge pull request #2321 from freifunk-gluon/master-updates 2021-10-03 01:20:17 +02:00
Martin Weinelt
1419c463ed modules: update routing
d8b4457 naywatch: fix procd handling
c30b5d5 opennds: Release v9.4.0 (for 21.02)
2021-10-02 17:01:08 +02:00
Martin Weinelt
0049b2b53c modules: update packages
7fcb8024d openpyxl: bump to version 3.0.9
c0b23efab [openwrt-21.02] delve: Update to 1.7.2
365b62f4f zerotier: update to 1.6.6
172ebab28 xray-core: Update to 1.4.5
5d3faa6a4 yq: Update to 4.13.2
713051525 attendedsysupgrade-common: use sysupgrade.openwrt.org
ecf1e6575 libmbim: bump to 1.24.8
54a095164 modemmanager: bump to 1.16.6
dab28002f libqmi: bump to 1.28.8
602dbc60f libqmi: bump to 1.28.6
d8f33f73e lxc: remove legacy cgroups from common.conf
67e9ed1d5 syncthing: update to 1.18.2
2021-10-02 17:01:06 +02:00
Martin Weinelt
f57f72fabc modules: update openwrt
1c95d78f08 ipq-wifi: Work around Plasma Cloud PA1200 5GHz crash
22db28683c ipq-wifi: Update Plasma Cloud PA1200 BDFs to firmware 3.5.12
2021-10-02 17:00:54 +02:00
David Bauer
4684f42173 modules: update openwrt
3a051a234a hostapd: fix segfault when deinit mesh ifaces
5c904bcb37 rockchip: fix broken squashfs sysupgrade
bf30ad1408 apm821xx: MBL: band-aid MBL DUO
65835e0d5f mac80211: Update to backports-5.10.68
7f7bf36ec5 ramips: add support for minew g1-c

Closes #2318 #2319

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-09-24 12:47:13 +02:00
Matthias Schiffer
160ad7eea1
Merge pull request #2313 from lemoer/pr_x86_dont_build_ext4_images
x86: don't build ext4 images
2021-09-20 17:42:00 +02:00
lemoer
53434127d6 x86: don't build ext4 images
Since we're discarding the ext4 images anyways, we now stop building 
them as well and save a few seconds of build time.
2021-09-19 21:24:17 +02:00
lemoer
27cd003d1b actions: rebuild targets if includes change 2021-09-19 21:24:17 +02:00
David Bauer
98664fdcb4 modules: update packages
2cd1fa16b python-astral: update to version 2.2
e1c24c07f fail2ban: patch CVE-2021-32749
6979ce4a6 php7: fix config file upgrade issue (fixes #14623)
2929694f8 php7: update to 7.4.23
54d1c110b yq: Update to 4.13.0
fd21207cf travelmate: update to 2.0.7-2
2bb2a48d1 openpyxl: bump to version 3.0.8
50351667a adguardhome: bump to 0.106.3
a98adbc47 adguardhome: bump to 0.106.2
8236e0441 adguardhome: bump to 0.106.1
b5ad600a7 adguardhome: bump to 0.106.0
be38dc31e adguardhome: bump to 0.105.2
b1b8128e4 adguardhome: bump to 0.105.1
8a06dc026 autoconf: fix shebang
8638a565c parted: add new package
3fdaf7d8d golang: Update to 1.17.1
929b57d85 banip: update 0.7.10-3
af46ac4bf travelmate: update to 2.0.7
40b7ea606 ntfs-3g: patch CVE-2019-9755
e72cc2b0a python3: bump version to 3.9.7
cd82a36ba fail2ban: fix hotplug when disabled
a5109ac20 django: bump to version 3.2.7
98708c83e fail2ban: fix package for fail2ban v0.11.2
f056f252c fail2ban: initial package of fail2ban version 0.11.2 python3-pyinotify: initial package version 0.9.6 of pyinotify for python3
89bdb70f1 nextdns: Update to version 1.37.2
58b23e9bc unbound: backport fix for permission denied error
60a7fc782 unbound: update to 1.3.2
b81785de9 unbound: fix build on non-linux systems
8ca8872b3 cgi-io: update to latest Git HEAD
4ba1aac1f haproxy: Update HAProxy to v2.2.17
178b9484d wsdd2: update to git (2021-08-09), switch to Netgear repo
593931084 samba: update to 4.14.7
ca591b551 tor: update to version 0.4.5.8
a5206895e nextdns: Update to version 1.37.1
642d2b0a5 xray-core: Update to 1.4.3
6071edf17 banip: update 0.7.10-2
9cf487461 nextdns: Update to version 1.37.0
dd093d410 pillow: bump to version 8.2.0
7022e9913 acme: Fix uhttpd restart to load new certificates
6256cf49d python-certifi: update to version 2021.5.30
59dab31e0 squashfs-tools: bump to version 4.5
73364d0c4 hplip: add a patch to respect CFLAGS
6b1133720 collectd: sensors plugin - depend on lm-sensors
090623ac1 mwan3: Use shebang in /etc/mwan3.user
119a05ffd perlbase-data: Add dependency on perlbase-scalar
502ca434c lttng-tools: fix linking with full language support enabled
73bd199ab stoken: fix compilation with BUILD_NLS
7674639c5 augeas: fix compilation with BUILD_NLS
9d4046157 treewide: Remove GO_PKG_LDFLAGS for stripping binaries
0b8baefec openvpn: add OpenVPN option push-peer-info
82dc4c08b python-cryptography: Update to 3.4.8
65057dcbb tailscale: update to version 1.12.3
f818f4a0d tailscale: update to version 1.12.1
13faefa9b tailscale: update to version 1.8.7
a1b8c64c2 tailscale: update to version 1.8.1
d721fea58 libssh: update to 0.9.6
2021-09-19 20:09:55 +02:00
David Bauer
7da50e3582 modules: update openwrt
a44fd27070 ipq40xx: Fix board-2.bin package name for Plasma Cloud PA2200
f6cce83358 ipq40xx: Fix board-2.bin package name for Plasma Cloud PA1200
5eb6d7a358 ipq40xx: Select correct board-2.bin for EnGenius EMR3500
15780763c4 ipq40xx: Select correct board-2.bin for EnGenius EMD1
c37a9e506c kernel: backport switchdev fix for bridge in bridge configurations
a300e3c890 kernel: Add missing kernel config options
f11cdd3006 build: Replace KERNEL_LOCKUP_DETECTOR with KERNEL_SOFTLOCKUP_DETECTOR
0e29e05dee kirkwood: increase kernel partition of Linksyses
601864c09e mvebu: limit mvneta tx queue workaround to 32 bit SoC
6f8143fa4a OpenWrt v21.02.0: revert to branch defaults
b2ae423314 OpenWrt v21.02.0: adjust config defaults
2021-09-19 20:09:45 +02:00
lemoer
3f7c0b3ae8
gluon-mesh-vpn-wireguard: add package (#2168)
The address of the vpn interface is calculated in the style of
modified EUI-64, based on a virtual mac address. This virtual mac
address consists of 0x00 as first byte and the other five bytes
are taken from the first bytes of md5sum(base64 encoded public key).

The algorithm was taken by the ffmuc, with a slight difference. ffmuc
calculated the result of md5sum(base64 encoded public key + '\n')
which was interpreted as accidential fault and therefore dropped.

Example:
- Public-Key: "gP3VJnTTvnQut+z4O+m0N9RgMyXbgyUbUkF3E3TKX2w="
- Address: "fe80::02ca:b8ff:fedc:2eb3"

The following interfaces are used for wireguard:
- wg_mesh  -> wireguard interface
- mesh-vpn -> vxlan iface on top of wg_mesh

If you use this new feature, make sure the NTP servers in your site
config are publicly reachable. This is necessary, since wireguard
requires correct time before the vpn connection is established.
Therefore gluon performs ntp time synchronisation via WAN before it
establishes the vpn connection. Therefore the NTP servers have to
be publicly reachable (and not only via mesh).
2021-09-15 01:25:59 +02:00
David Bauer
bc43067ddd modules: update Gluon packages 2021-09-15 01:07:19 +02:00
Manu.WTF
1eeca33c8d
ramips-mt7621: add support for Ubiquiti UniFi 6 Lite (#2310)
Hardware
--------
MediaTek MT7621AT
256M DDR3
32M SPI-NOR
MediaTek MT7603 2T2R 802.11n 2.4GHz
MediaTek MT7915 2T2R 802.11ax 5GHz

Not Working
-----------
 - Bluetooth (connected to UART3)

UART
----

UART is located in the lower left corner of the board. Pinout is

0 - 3V3 (don't connect)
1 - RX
2 - TX
3 - GND

Console is 115200 8N1.

Boot
----

1. Connect to the serial console and connect power.

2. Double-press ESC when prompted

3. Set the fdt address

   $ fdt addr $(fdtcontroladdr)

4. Remove the signature node from the control FDT

   $ fdt rm /signature

5. Transfer and boot the OpenWrt initramfs image to the device.
   Make sure to name the file C0A80114.img and have it reachable at
   192.168.1.1/24

   $ tftpboot; bootm

Installation
------------

1. Connect to the booted device at 192.168.1.20 using username/password
   "ubnt".

2. Update the bootloader environment.

   $ fw_setenv devmode TRUE
   $ fw_setenv boot_openwrt "fdt addr \$(fdtcontroladdr);
     fdt rm /signature; bootubnt"
   $ fw_setenv bootcmd "run boot_openwrt"

3. Transfer the OpenWrt sysupgrade image to the device using SCP.

4. Check the mtd partition number for bs / kernel0 / kernel1

   $ cat /proc/mtd

5. Set the bootselect flag to boot from kernel0

   $ dd if=/dev/zero bs=1 count=1 of=/dev/mtdblock4

6. Write the OpenWrt sysupgrade image to both kernel0 as well as kernel1

   $ dd if=openwrt.bin of=/dev/mtdblock6
   $ dd if=openwrt.bin of=/dev/mtdblock7

7. Reboot the device. It should boot into OpenWrt.
2021-09-15 00:44:34 +02:00
Matthias Schiffer
a40a89d906
gluon-web-wifi-config, gluon-web-private-wifi: hide pages on devices without WLAN
Fixes: #2311
2021-09-13 18:10:49 +02:00
Matthias Schiffer
5f1f960753
gluon-core: introduce device_uses_wlan() helper 2021-09-13 17:47:04 +02:00
Matthias Schiffer
ed7134fae6
gluon-web-wifi-config: reuse device_uses_11a() instead of reimplementing it less efficiently 2021-09-13 17:43:16 +02:00
Matthias Schiffer
7a2cd66cb9
gluon-core: move a few WLAN-specific functions from gluon.platform to gluon.wireless
Avoid requiring gluon.wireless from gluon.platform, and requiring
gluon.platform from various other scripts.
2021-09-13 17:41:15 +02:00
lemoer
077439de46
treewide: remove duplicate i18n translations (#2309)
Before this commit, some *.po files contained the same translation
twice within the same file. While this did not led to errors in
gluon yet, it is still invalid. This commit fixes that and removes
the duplicates.
2021-09-11 22:47:11 +02:00
Martin Weinelt
664afaa0bd
Merge pull request #2272 from freifunk-gluon/ci/owe
contrib/ci/minimal-site: build with owe and wpa3 support
2021-09-06 02:38:11 +02:00
Martin Weinelt
b4677b8b88 contrib/ci/minimal-site: build with owe and wpa3 support 2021-09-06 02:37:45 +02:00
Martin Weinelt
0851b3d7a9
Merge pull request #2307 from freifunk-gluon/prefix-check
treewide: clean up site checks for prefix[46] and extra_prefixes6
2021-09-06 02:33:54 +02:00
Matthias Schiffer
1ae7046958
treewide: clean up site checks for prefix[46] and extra_prefixes6
- Move site check for prefix4 and extra_prefixes6 to gluon-core, so the
  rules don't need to be duplicated in several packages. This also fixes
  gluon-respondd not checking extra_prefixes6 at all when
  gluon-ebtables-source-filter is not installed as well.
- A redundant check for prefix6 is removed from gluon-l3roamd (this was
  already checked by gluon-core)
- A separate check for prefix4 remains in gluon-client-bridge, as the
  setting in mandatory there
2021-09-04 21:17:29 +02:00
Matthias Schiffer
90fe74bf4d
Merge pull request #2289 from freifunk-gluon/status-page-improvements
Status page improvements
2021-09-04 21:11:05 +02:00
J. Burfeind
83d0e3274e
ath79-generic: add support for Onion Omega (#2306)
* ath79-generic: add support for Onion Omega

support was previously dropped in
commit 45c84a117b ("ar71xx: drop target")

* fixup! ath79-generic: add support for Onion Omega

* fixup! ath79-generic: add support for Onion Omega
2021-09-04 17:42:44 +02:00
Tom Herbers
794f4b2d3d
ramips-mt76x8: add support for GL.iNet microuter-N300 (#2303) 2021-09-04 17:42:16 +02:00
Björn Dobe
a492e629f8
ipq40xx: add support for Aruba AP-303H / Instant ON AP11D (#2302)
- [x] must be flashable from vendor firmware
  - [ ] webinterface
  - [ ] tftp
  - [x] other: Console port available. Manufacturer specific cable required.
        Tutorial in OpenWRT commit message https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=c6e972c8772a628a1a2f2e5590d7c6f4acef9ab0
- [x] must support upgrade mechanism
  - [x] must have working sysupgrade
    - [x] must keep/forget configuration (if applicable)
      *think `sysupgrade [-n]` or `firstboot`*
  - [x] must have working autoupdate
        root@Aruba-AP-303H:~# lua -e 'print(require("platform_info").get_image_name())'
        aruba-ap-303h
- [x] reset/wps/phone button must return device into config mode
- [x] primary mac should match address on device label (or packaging) (https://gluon.readthedocs.io/en/latest/dev/hardware.html#notes)
- wired network
  - [x] should support all network ports on the device
  - [x] must have correct port assignment (WAN/LAN)
- wifi (if applicable)
  - [x] association with AP must be possible on all radios
  - [x] association with 802.11s mesh must be working on all radios
  - [x] ap/mesh mode must work in parallel on all radios
- led mapping
  - power/sys led (_critical, because led definitions are setup on firstboot only_)
    - [x] lit while the device is on
    - [x] should display config mode blink sequence
(https://gluon.readthedocs.io/en/latest/features/configmode.html)
  - radio leds
    - [x] should map to their respective radio
    - [x] should show activity
  - switchport leds
    - [x] should map to their respective port (or switch, if only one led present)
    - [x] should show link state and activity
- outdoor devices only
  - [ ] added board name to `is_outdoor_device` function in `package/gluon-core/luasrc/usr/lib/lua/gluon/platform.lua`
- ToDo (upstream):
  - enable PoE pass through on interface E3
        system.poe_passthrough=gpio_switch
        system.poe_passthrough.name='PoE Passthrough'
        system.poe_passthrough.gpio_pin='446'
        system.poe_passthrough.value='0' (0 is active)
2021-09-01 23:31:01 +02:00
Martin Weinelt
c132c5abb7
Merge pull request #2301 from herbetom/eap225-outdoor
ath79-generic: add support for TP-Link EAP225-Outdoor v1
2021-09-01 15:12:55 +02:00
Martin Weinelt
bd78e4af4d
Merge pull request #2305 from AiyionPrime/master-updates
modules: update
2021-09-01 15:07:39 +02:00
aiyion.prime
30f9dd7a9f modules: update routing
e294a22 batman-adv: Refresh patches with quilt
519ef4a batman-adv: Merge bugfixes from 2021.2
8d93475 olsrd: add filtergw plugin
76a7bc7 olsrd: update to 2021-06-21
3912935 olsrd: use SPDX
69e2fe6 bird2: Fix bus error on OSPF on IPQ806X
2021-09-01 10:17:09 +02:00
aiyion.prime
55827f97bb modules: update packages
fa1791dbc htop: Add HTOP_LMSENSORS config option
19998f14f banip: update 0.7.10
36ffcd66f xray-core: fix build under go 1.17
2b17d1ca9 golang: Update to 1.17
0e3c2d959 gpsd: bump to 3.23
3b73213bf yq: Update to 4.12.1
954eba88a auc: update to version 0.2.4
af4098118 yq: Update to 4.12.0
cec17047d apr: patch CVE-2021-35940
1c982c63a nextdns: Update to version 1.36.0
4adf9a1c1 mosquitto: allow auth options with per listener settings
c4f61bf57 mosquitto: init: support more UCI options
6c9d59571 airos-dfs-reset: add airos-dfs-reset
baceb237a [openwrt-21.02] delve: Update to 1.7.1
0bd7e25f2 phantap: update to latest commit
06011c690 travelmate: update to 2.0.6
3733d0a7d travelmate: update to 2.0.5-3
d89bb6bec https-dns-proxy: patch CMakeList.txt to use OpenWrt CFLAGS
8b5002a6e dnscrypt-proxy2: Upgrade to 2.1.0
ffb8b452a c-ares: update to version 1.17.2
ce0c9af93 mc: add a missing Syntax file
f5669e3a6 mblaze: new package
af616fc58 hwdata: update to version 0.350
0240320e8 tvheadend: update to v4.2.8, remove static ffmpeg
4ddc4a613 tvheadend: fix compilation with GCC 9 and 10
fdee10fde python3-setuptools: add _distutils_hack
affb4038c zabbix: Call killall with the -s
d0444c0f5 git: update to 2.33.0
e583b7e3e mc: update to 2.8.27
542aa086e curl: update to 7.78.0
dd49c191a auc: update to version 0.2.0
395f55203 unixodbc: use 'install' when copying host binaries
b3c416b2d perl: perlmod.mk: use 'install' for host binaries
5665c3bdf stubby: Add multi WAN support for procd trigger
1ca9b3c98 stubby: remove maintainer
39b401638 stubby: remove libidn2 and libunwind dependencies
57eab26bb stubby: bump to 0.4.0
cb7030229 sqm-scripts: bump to v1.5.1
eed183c5f travelmate: update to 2.0.5-2
3eab47600 travelmate: update to 2.0.5
20ff270f2 django: bump to version 3.2.6
b3cfba1de dockerd: Updated to 20.10.8
832671029 docker: Updated to 20.10.8
6fb2beb6a containerd: Updated to 1.4.9 for docker 20.10.8
f815bdd72 runc: Updated to 1.0.1 for docker 20.10.8
10b295626 whois: update to 5.5.9
6f82209e4 whois: update to 5.5.8
eda1e1045 gitlab-runner: update to 14.0.1
aa4171673 clamav: update to 0.103.3
2fc25208a irssi: add test.sh
8de166f42 irssi: update to 1.2.3
e264d6689 atlas-sw-probe: fix copypaste error and clean tmp dir on exit
9cb317541 Flash: update to version 2.0.1
eb5e13d37 Jinja2: update to version 3.0.1
573338fe4 Werkzeug: update to version 2.0.1
d1007d29f MarkupSafe: update to version 2.0.1
9fa4ce04a click: update to version 8.0.1
735f9ed87 itsdangerous: update to version 2.0.1
979464c6a net/snort3: Include default configs and snort2lua
2021-09-01 10:17:07 +02:00
aiyion.prime
3e100322d2 modules: update openwrt
5cc0535800 ath79: add support for onion omega
085c67762d kernel: bump 5.4 to 5.4.143
ff31cfb856 openssl: bump to 1.1.1l
5bfb9c30a1 prereq-build: require python3-distutils
f78017006b uboot-layerscape: fix dtc compilation on host gcc 10
8f039acee4 uboot-at91: fix dtc compilation on host gcc 10
378769b555 kernel: bump 5.4 to 5.4.142
662401d903 ipq40xx: fix Edgecore ECW5211 boot
61c65acbda ath79: kernel: Add missing quote to drivers/mfd/Kconfig
25d9fe8468 bcm27xx-userland: update to latest version
35eb06066e bcm27xx-userland: factor out a -dev package
750b966866 x86: kernel: set NR_CPUS to 512
2021-09-01 10:16:55 +02:00
Tom Herbers
1cb0fc84fc
gluon-status-page: swap bandwidth limits (#2304) 2021-08-31 20:07:17 +02:00
Tom Herbers
5a034be6b3
ath79-generic: add support for TP-Link EAP225-Outdoor v1 2021-08-28 18:52:52 +02:00
Tom Herbers
1ad629e503 ath79-generic: sort TP-Link devices 2021-08-28 18:18:13 +02:00
citronalco
34fc9544b8
ath79-generic: add support for TP-Link WBS210 v2 (#2299) 2021-08-27 23:15:04 +02:00
Martin Weinelt
66d3b1749b
scripts: add update-modules helper (#2294)
Iterates over all configured modules and checks them for updates.
2021-08-15 01:32:05 +02:00
David Bauer
bf79ab93f5 docs: Add v2021.1.1 release notes
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit d7f9e17f3c)
2021-08-14 19:23:50 +02:00
aiyion.prime
9c197daf78 gluon-mesh-babel: implement neighbour check 2021-08-13 09:00:50 +02:00
J. Burfeind
6e09539539
gluon-mesh-batman-adv: implement neighbour and default_gw4 check (#2274) 2021-08-12 21:02:58 +02:00
micw
a1b961994a
Add support for tp-link CPE510 V2 (#2287)
Co-authored-by: Michael Wyraz <michael.wyraz@evermind.de>
2021-08-12 17:14:38 +02:00
Martin Weinelt
e4086446cc
Use python3 in CI and documented build requirements
This has become possible with OpenWrt 21.02 and while the Dockerfile
already received that updated, we forgot to update the CI and the
documentation.
2021-08-12 01:27:50 +02:00
micw
6b699f376c
Add support for tp-link CPE510 V3 (#2283) 2021-08-11 19:15:37 +02:00
Martin Weinelt
a814fd5ebf
Merge pull request #2293 from freifunk-gluon/master-updates
modules: update
2021-08-11 12:43:08 +02:00
Matthias Schiffer
df06b05b2a
Merge pull request #2288 from freifunk-gluon/wdr3600
ath79-generic: add TP-Link TL-WDR3600/4300
2021-08-11 07:56:07 +02:00
Martin Weinelt
1b1820ac2e modules: update gluon
8353495 autoupdater: Add HTTP-Header X-FIRMWARE-VERSION (#246)
2021-08-11 03:44:47 +02:00
Martin Weinelt
de06ac1b79 modules: update routing
79a8e56 opennds: Release v9.3.0
52aaf90 naywatch: add naywatch
e7e25b8 olsrd: rename general to procd
e93c579 olsrd: make respawn_threshold configurable
0eb67d7 olsrd: improve respawn settings
0e24192 opennds: [21.02] Backport of Release v9.2.0
c53a640 olsrd: add olsrd-neigh.sh
911c0cb olsrd: fix olsrd starting before network
5a09ac1 opennds: [21.02] Backport of Release v9.1.1
ce4d457 olsrd: reload if config changed via uci
2021-08-11 03:44:45 +02:00
Martin Weinelt
f322c696a8 modules: update packages
dccb98855 knot-resolver: update to version 5.4.0
e38772510 knot: update to version 3.1.0
a2819fab7 golang: Update to 1.16.7
1a3687049 python-twisted: Update to 21.7.0, refresh patches
78a25390b libxslt: fix compilation because of wrong libxml2 check in configure script
beba98240 simple-adblock: update to 1.8.7-6
51de4b108 php7: update to 7.4.22
38fc5d866 libxml2: update to 2.9.12
e928ef733 php8: add CI runtime test
91be67942 php8: update to 8.0.9
bc6d77a7c node: bump to 14.17.4
af5c3af0c curl: enable HTTP/2 support by default
3cb1894b8 https-dns-proxy: update to 2021-07-29-01
c4a323903 nextdns: Update to version 1.35.0
bda6773b9 dawn: update to 2021-07-27
25a0a5cc4 travelmate: update to 2.0.4
877b65214 adblock: bugfix 4.1.3-3
11455c0fd librouteros: don't build docs
2c7ad7ca6 yq: Update to 4.11.2
fefd88227 syslog-ng: update to version 3.33.2
17c4b0332 ddns-scripts: use https for google ipv6 ddns url
d2cb8f4ee erlang: disable PIE
fc598339c yggdrasil: bump to 0.4.0
4ea887e64 vpnbypass: updates to 1.3.2-1
5e69e4108 Revert "net/miniupnpd: ext_ip_reserved_ignore support"
117c6bf76 knot: update to version 3.0.8
1c69a5270 knot: update to version 3.0.7
17809e28a yq: Update to 4.11.0
eabde6aab delve: Update to 1.7.0
ec9700fee golang: Update to 1.16.6
f7ba01cdd sane-backends: use macros (properly), remove chmod
041e28776 sane-backends: fix usbid file generation
48576dba7 vpn-policy-routing: update to 0.3.5-1
a0183d3f6 stress-ng: bump to version 0.12.10
0805c1199 stress-ng: bump to version 0.12.07
43a391e5f stress-ng: bump to version 0.12.06
752da2a8b stress-ng: bump to version 0.12.04
23925c77a ruby: update to 3.0.2
dd1930f03 dawn: update to 2021-07-11
c6fcfda21 dawn: update to 2021-07-08
8aeb26b41 yq: Update to 4.9.8
cc78ba6b5 addrwatch: Various fixes
6a24f88c3 yggdrasil: allow HTTPS connections
0a5ab6882 yggdrasil: bump to 0.3.16
79417f0a3 python-cffi: bump to version 1.14.6
02a0c8a4f python-simplejson: bump to version 3.17.3
1954ed36a openvpn: enable LZO support by default for OpenSSL variant
827fa8e21 syslog-ng: disable mqtt
f58494968 mwan3: bump PKG_VERSION to 2.10.11
7e71550f1 mwan3: add troublshoot command from LuCI
4f5b05ab8 mwan3: cleanup help output
588d781df syslog-ng: update to version 3.33.1
56d7a225e apache: update to 2.4.48
e11d70d0c transmission: add new syscalls to seccomp filter
ee11ce67a netdata: update to version 1.30.1
3ac73fa18 wsdd2: update to git 2021-06-28
7723235f4 samba4: update to 4.14.5
a2a9702f8 softethervpn5: update to 5.02.5180
104af774c rpcbind: update to 1.2.6
90341aa79 libtirpc: update to 1.3.2
c66b3dc45 lxc: add patch to switch GPG server
a5a176d86 yq: Update to 4.9.7
4bc55dd04 python3: do a simple ls on pip & setuptools if not selected for build
ef50ed85a python3: update to version 3.9.6
033b04ee7 mwan3: use default routes from additional tables
790a49c09 libuv: fix CVE-2021-22918
c605f4cb4 django: bump to version 3.2.5
63ca71937 nextdns: Update to version 1.34.2
57ed36db4 tessdata: uncompress tarball only once to speed up builds
3d7d41f71 tessdata: update to 2.1.0
7d9210015 openconnect: backport iconv/intl fix
5201d8739 python-dateutil: add setuptools-scm build dep
c2657a2e9 adblock: update 4.1.3-2
8e1a8026b crun: update to 0.20
15b873947 crun: bump to version 0.19.1
dae7bdd91 crun: Don't build on arc
08abbfd9b crun: add package crun
0f395b994 auc: update to version 0.1.8
51dd1c1fd delve: add package
3fef9fffa cache-domains: Fixed missing wildcard entries
24e67d6fa nextdns: Update to version 1.33.11
4692a31be travelmate: startup fixes
29eab35c6 openvpn: update to 2.5.3
1216b02d4 tcpreplay: bump to version 4.3.4
56e4da231 python-lxml: bump to version 4.6.3
535bcdb57 pillow: bump to version 8.1.2
1e01952ce ddns-scripts: get l3 device for bind network using curl
99f838dd6 ddns-scripts: Fix for domains with dash
12cd69329 ddns-scripts: Fix for wildcard subdomain
2021-08-11 03:44:44 +02:00
Martin Weinelt
eb65a726d9 modules: update openwrt
94efa1c612 fritz-tools: fix returning wrong values due to strncmp usage
d9be07169e mbedtls: update to 2.16.11
f407b2f43c mvebu: armada-37xx: add patch to forbid cpufreq for 1.2 GHz
b254bd697d Revert "mvebu: 5.4 fix DVFS caused random boot crashes"
4003eeab35 dnsmasq: reset EXTRA_MOUNT in the right place
6ca34c5c0c dnsmasq: fix more dnsmasq jail issues
b88ab44036 dnsmasq: rework jail mounts
8ef5894197 dnsmasq: use local option for local domain parameter
da5fd91073 dnsmasq: add ignore hosts dir to dnsmasq init script
9531e70708 OpenWrt v21.02.0-rc4: revert to branch defaults
134ac824c5 OpenWrt v21.02.0-rc4: adjust config defaults
2d5ee43dc6 kernel: bump 5.4 to 5.4.137
2021-08-11 03:44:38 +02:00
David Bauer
14b1224f97
ipq40xx: add support for Aruba AP-365 / InstantOn AP17 (#2290) 2021-08-11 01:14:30 +02:00
Martin Weinelt
3bb3f02bcd contrib: drop Jenkins setup
Has gone unused for a while now and if it is needed again it can be
retrieved from the history.
2021-08-10 22:42:19 +02:00
Martin Weinelt
f193b75cae
Merge pull request #2291 from freifunk-gluon/ci/conditional-matrix 2021-08-10 22:37:32 +02:00
Martin Weinelt
ee4cd2806d
actions: update checkouts to v2 2021-08-10 22:16:08 +02:00
Martin Weinelt
1f8c5d1c8f
actions: build targets conditionally 2021-08-10 22:16:08 +02:00
J. Burfeind
38d6f75dd3
gluon-state-check: implement state checker (#2245) 2021-08-10 16:22:34 +02:00
Matthias Schiffer
a357278464
gluon-status-page: fix display of non-string values from respondd data
Fixes the display of client counts, which are numbers and not strings
in the respondd data.

Fixes: 3a885a1b22 ("gluon-status-page: make "gateway nexthop" a link (#2278)")
2021-08-08 12:11:20 +02:00
Matthias Schiffer
0d3fa6b59b
gluon-status-page: use ubus to get radio channels
Do not depend on the respondd-airtime module just to get the configured
channels. This removes the display of the frequency in addition to the
channel, as it is not readily available.

In addition, the translation string is improved to allow for text after
the channel number.
2021-08-08 12:11:20 +02:00
Matthias Schiffer
f2e0f7e3a8
gluon-status-page: avoid complex math
This code is usually running on an embedded CPU without FPU. In
addtition to its inefficience, the algorithm is also much harder to
understand.

Replace the logarithm formula with a simple loop.
2021-08-08 12:11:20 +02:00
Matthias Schiffer
dcb8738a5a
gluon-status-page: fix indentation 2021-08-08 12:11:20 +02:00
Matthias Schiffer
4d21d4134e
ath79-generic: add support for TP-Link TL-WDR3600/4300 v1 2021-08-08 11:21:06 +02:00
Matthias Schiffer
af74622cb5
ath79-generic: sort TP-Link devices 2021-08-08 11:21:06 +02:00
David Bauer
d3d22ba677
ath79-generic: add support for Joy-IT JT-OR750i (#2282) 2021-07-30 20:16:34 +02:00
David Bauer
596c6314a9 modules: update OpenWrt
a205de5594 ramips: mt76x8: add missing config symbol
8abe67d6d2 x86: move Kconfig symbol to common config
2e1a5a4353 generic: add missing Kconfig symbol

Fixes #2277

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-07-30 20:14:49 +02:00
David Bauer
108d613f1c modules: update OpenWrt
941ba3ffc4 ath79: fix JT-OR750i switch LED assignment
17cb9a9a9e ath79: enable missing pinmux for JT-OR750i
a5850c049e ath79: add support for Joy-IT JT-OR750i
55d9c020a1 netifd: update to the latest version
089efd61e9 netifd: update to the latest version
60fad8f82b glibc: update to latest 2.33 HEAD (bug 28011)
c58afca1aa glibc: update to latest 2.33 HEAD (BZ #27646, bug 27896, BZ #15271)
249aeaa9d8 dnsmasq: distinct Ubus names for multiple instances
a1d50e7b45 kernel: bump 5.4 to 5.4.132
88c8d0a219 dnsmasq: add /tmp/hosts/ to jail_mount
4633471d74 odhcpd: fix invalid DHCPv6 ADVERTSIE with small configured leasetime (FS#3935)

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-07-29 20:52:34 +02:00
Steffen Förster
9fb00d137b
ramips-mt76x8: add support for TP-Link RE200 v2 (#2275)
TP-Link RE200 v2 is a wireless range extender with Ethernet and 2.4G and 5G
WiFi with internal antennas. It's based on MediaTek MT7628AN+MT7610EN.

Specifications
--------------

- MediaTek MT7628AN (580 Mhz)
- 64 MB of RAM
- 8 MB of FLASH
- 2T2R 2.4 GHz and 1T1R 5 GHz
- 1x 10/100 Mbps Ethernet
- UART header on PCB (57600 8n1)
- 8x LED (GPIO-controlled), 2x button

There are 2.4G and 5G LEDs in red and green which are controlled
separately.

MAC addresses
-------------

The MAC address assignment matches stock firmware, i.e.:
LAN : *:0D
2.4G: *:0E
5G  : *:0F

Installation
------------

Web Interface
-------------

It is possible to upgrade to OpenWrt via the web interface. Simply flash
the -factory.bin from OEM. In contrast to a stock firmware, this will not
overwrite U-Boot.
2021-07-29 08:34:51 +02:00
David Bauer
46194fb87d ath79-generic: remove superluous newline 2021-07-29 00:44:32 +02:00
lemoer
d4dee692c6
contrib: add push_pkg.sh to enhance package development workflow (v2) (#2023)
v2: In contrast to the last patches, this is now built on top of ssh
    only, without using e.g. 9pfs. Furthermore it works also with
    arbitary remote hosts on any target/architecture. Also the
    scripts were renamed and moved to /scripts.

The aim of this commit is to allow fast rebuild cycles during the
development of gluon packages.

Currently the following workflow can be used:

	# start a local qemu instance
	scripts/run_qemu.sh output/images/factory/[...].img

	# do your changes in the file you want to patch
	vi package/gluon-ebtables/files/etc/init.d/gluon-ebtables

	# rebuild and update the package
	scripts/push_pkg.sh package/gluon-ebtables/

	# test your changes
	...

	# do more changes
	...

	# rebuild and update the package
	scripts/push_pkg.sh package/gluon-ebtables/

	# test your changes
	...

	(and so on...)

Implementation details:
- Currently this is based on ssh/scp.
- Opkg is used to install/update the packages in the remote machine.

Benefits:
- This works with compiled and non-compiled packages.
- This works with native OpenWrt and Gluon packages.
- This even performs the check_site.lua checks as they are integrated
  as post_install scripts into the openwrt package.
- It works for all architectures/targets.
2021-07-23 19:50:15 +02:00
Matthias Schiffer
f4a3afe8fb
treewide: correctly specify conffiles (#2276)
Specify conffiles for our packages, so they aren't overwritten during
opkg updates. While this only matters during development, it is
unintended to have different behaviour for opkg update and full firmware
updates.
2021-07-23 19:48:58 +02:00
lemoer
3a885a1b22
gluon-status-page: make "gateway nexthop" a link (#2278)
With this commit, the gateway nexthop is now a clickable link, that leads
to the status page of the nexthop.
2021-07-23 19:10:27 +02:00
Matthias Schiffer
e7df324639
Merge pull request #2249 from freifunk-gluon/doctheme
docs: update Sphinx theme
2021-07-21 19:21:27 +02:00
David Bauer
338a831ae3 modules: update OpenWrt
df4feb1655 ipq40xx: fix FRITZRepeater 1200 RGMII delay
f3f70fb956 netifd: update to the latest version

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-07-18 16:43:50 +02:00
David Bauer
9fa45ac489
ramips-mt76x8: add support for RAVPower RP-WD009 (#2265) 2021-07-18 16:41:27 +02:00
Matthias Schiffer
bfec08546b
gluon-core: use uci:delete_all() instead of foreach()+delete() (#2273) 2021-07-17 23:24:01 +02:00
David Bauer
f01c62e594
gluon-core: wireless: support PHY lookup for multi-PHY devices (#2267)
The PHY lookup helper "find_phy_by_path" could not lookup the PHY name
for paths from multi-phy devices.

An example for such a path would be:
'1e140000.pcie/pci0000:00/0000:00:01.0/0000:02:00.0+1'

The integer after the plus (+) character determines the PHY index of the
specific device in relation to the PHY with the lowest index of the
device.

For example, if the device provides phy2 and phy3, the above path would
describe phy3. In case the device provides phy0 and phy1, it would
describe phy1.

Rewrite the "find_phy_by_path" function to support those paths as well
as regular device paths in a universal manner.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-07-17 22:50:02 +02:00
aiyion.prime
c2e27196de
gluon-web-admin: use util.popen3 in remote.lua
[Matthias Schiffer: whitespace changes, error handling]
2021-07-15 17:55:08 +02:00
aiyion.prime
e410a9c2e5 gluon-core: implement popen3() in gluon/util.lua
[Matthias Schiffer: simplify close_fds() helper and use in child process]
2021-07-15 17:53:07 +02:00
Matthias Schiffer
14236ed8f6
Merge pull request #2237 from freifunk-gluon/installed-check-site
Run site check for manual package installations
2021-07-14 16:20:20 +02:00
Matthias Schiffer
76a242b595
Merge pull request #2271 from freifunk-gluon/tiny-flash-cleanup
Remove ramips-rt305x and now unused build features
2021-07-14 16:20:01 +02:00
David Bauer
5ec8676b28
gluon-core: delete all network device sections (#2263)
Delete all default network device sections upon first boot.

Only LAN & WAN networks are defined at this point. We are using the
legacy way of definiting bridges via the interface sections ifname
option.

The prior filtering was based upon a single device and didn't take into
consideration that DSA interface names can be named arbitrarily.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-07-14 01:49:33 +02:00
David Bauer
73b0128468 modules: update OpenWrt
23cde9d12a mpc85xx: add missing Kconfig symbols
fe498dd3f1 netifd: update to the latest version

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-07-13 22:21:36 +02:00
Matthias Schiffer
aed14db84f build: remove no_opkg
With the removal of ramips-rt305x, all targets come with opkg again.
2021-07-13 21:37:39 +02:00
Matthias Schiffer
c23bc293ef treewide: remove GLUON_SPECIALIZE_KERNEL
With the removal of ramips-rt305x, the last user of
GLUON_SPECIALIZE_KERNEL is gone.
2021-07-13 21:37:39 +02:00
Matthias Schiffer
09c9b78e30 ramips-rt305x: drop target
VoCores aren't exactly useful mesh nodes except for experimentation.
They certainly aren't worth maintaining a whole target, in particular
one that has a WLAN driver not used by any other target.
2021-07-13 21:37:39 +02:00
David Bauer
6ff19a495f modules: update OpenWrt
38cdc57be6 mediatek: add missing config symbols
6073d2c02a generic: add missing config symbols
8921e36ed8 iwinfo: move device info into -data package
d3278c4343 build: ensure that dash isn't prepended twice to abi version suffix
47f617ef8d build: prepend ABI suffixes with a dash if package name ends with digit
febf6db0d0 ath79: add missing MTD_NAND_RB91X symbol
983fcc42a4 ath79: add missing GPIO_LATCH symbol
0ad49d368b ath79: mikrotik: fix beeper phantom noise on RB912
ffa943f0b9 ath79: ar934x: fix mounting issues if subpage is not supported
88e1c9b0b5 ath79: add support for MikroTik RouterBOARD 912UAG-2HPnD
bd2e070557 ath79: add NAND driver for MikroTik RB91xG series
43723e6db9 ath79: add gpio-latch driver for MikroTik RouterBOARDs
3eb34bc251 hostapd: make wnm_sleep_mode_no_keys configurable
89d21b7f62 hostapd: make country3 option configurable
72f0733123 ltq-deu: Mark lantiq DEU broken
b0424190ef iwinfo: build with nl80211 backend only and make shared
d723002d84 treewide: unmark selected packages nonshared
86f6171788 ath10k-ct: fix typo in Makefile
24cfa5005e ath10k-ct: update to latest version
69c10497c7 kernel/modules: move act_gact into kmod-sched-core
fc4b5411b3 package/comgt: Handle bind/unbind events

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-07-13 01:00:30 +02:00
Martin Weinelt
76185e3a2a
gluon-status-page: relax nodeinfo query timeout (#2262)
It was found that a one second timeout for nodeinfo data may be too low,
so that when a node is otherwise occupied that timeout may be reached
too often.

The nodeinfo query response is also vital to the status-page base
template, so that when it times out, the site will be turned in a broken
state, that it cannot recover from.

Fixes: #2256
2021-07-12 19:23:29 +02:00
Matthias Schiffer
3a2d176df8
build: run site checks for manual package installations 2021-07-12 17:07:40 +02:00
Matthias Schiffer
298723c22b
gluon-core: gluon-check-site: do not fail when IPKG_INSTROOT is unset 2021-07-12 17:06:49 +02:00
Matthias Schiffer
eb3fad4bae
build: move check_site.lua main script into gluon-core package
Installing the script into the image allows site checks to run for
manual package installations via opkg.
2021-07-12 17:06:35 +02:00
Matthias Schiffer
3386221ef1
gluon.mk: fix indentation
A leading tab character usually marks recipe lines in Makefiles;
non-recipe lines must be indented using spaces.

The incorrect tab character doesn't seen to have caused any issues in
this case, but it should be fixed nonetheless, if only for consistency.
2021-07-11 22:39:48 +02:00
David Bauer
19759f8cd3
Merge pull request #2264 from blocktrron/origin-ap3610
ath79-generic: add support for Siemens WS-AP3610
2021-07-07 17:05:55 +02:00
David Bauer
99c13423fc ath79-generic: add support for Siemens WS-AP3610 2021-07-06 19:20:17 +02:00
David Bauer
19381a235e modules: update Gluon packages
825aa0c respondd-module-airtime: fix null pointer deref
2021-07-03 02:34:00 +02:00
Martin Weinelt
97f6710d45
Merge pull request #2259 from blocktrron/bugfix-util-file-contains-line-exists
gluon-core: util: check if file exists prior to reading
2021-07-01 03:42:36 +02:00
Martin Weinelt
737a239c31
Merge pull request #2258 from blocktrron/pr-update-actions
actions: add mediatek-mt7622 target
2021-07-01 03:41:21 +02:00
David Bauer
4f133ac24e actions: add mediatek-mt7622 target
Add the newly added mediatek-mt7622 to the firmware build-test matrix.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-07-01 03:35:06 +02:00
David Bauer
ff9f295f7d gluon-core: util: check if file exists prior to reading
The file_contains_line helper function was not testing whether a file
exists or not prior attempting to read from it.

Add this check to circumvent errors on the private WiFi config in
case the hwflags file is missing.

Reported-by: Tom Herbers <freifunk@tomherbers.de>
Tested-by: Tom Herbers <freifunk@tomherbers.de>
Signed-off-by: David Bauer <mail@david-bauer.net>
2021-07-01 03:14:08 +02:00
David Bauer
e8159069d5 modules: update OpenWrt
d666ebcaa3 ubus: update to the latest version
a9100f2196 base-files: wifi: tidy up the reconf code
b27b63b082 base-files: wifi:  swap the order of some ubus calls
6f13a39035 mac80211: print an error if wifi teardown fails
9302e63d1a mac80211: always call wireless_set_data  (FS#3784)
bea9380149 mac80211: fix no_reload logic (FS#3902)
ccbe535604 mac80211: backport fix for nl80211 control port tx (fixes FS#3857)
4c29ff7cb8 mac80211: add support for 802.3 encap offload with software rate control
a078037ace mac80211: improve rate control performance
9fa925362f busybox: sysntpd: add trigger to reload server
a75928d125 busybox: sysntpd: option to bind server to iface

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-07-01 03:07:35 +02:00
David Bauer
439b3e0208 gluon-core: read NanoPi R2S primary MAC from LAN board data
The relevant entry for the primary MAC location was lost when rebasing
the patch on OpenWrt 21.02.

Fixes commit ded4b8a711 ("rockchip-armv8: add FriendlyARM NanoPi R2S")

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-07-01 03:05:50 +02:00
Martin Weinelt
1b620c831b
Merge pull request #2250 from blocktrron/pr-nanopi-r2s 2021-06-30 22:01:54 +02:00
Martin Weinelt
598f78f89a
Merge pull request #2257 from blocktrron/pr-routing-url
modules: update routing feed URL
2021-06-30 21:56:36 +02:00
David Bauer
3f8d12f55c modules: update routing feed URL
The OpenWrt routing feed was moved to the OpenWrt GitHub org.

Update the URL, as the old one might not work in the future.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-06-30 21:51:35 +02:00
David Bauer
969d406427
Merge pull request #2252 from blocktrron/pr-docs-a5-v11
docs: remove dropped hardware from docs
2021-06-30 19:16:18 +02:00
David Bauer
ab4c99842a
Merge pull request #2255 from blocktrron/pr-u6-lr
mediatek-mt7622: add support for UniFi 6 LR
2021-06-29 23:32:36 +02:00
David Bauer
4e00f1f62c
Merge pull request #2254 from Dark4MD/new-device-mi4a-gigabit
ramips-mt7621: add Xiaomi Mi Router 4A (Gigabit Edition)
2021-06-29 23:32:29 +02:00
David Bauer
436e39b43d
Merge pull request #2253 from Dark4MD/new-device-mi4c
ramips-mt76x8: add Xiaomi Mi Router 4C
2021-06-29 23:32:18 +02:00
David Bauer
3d94a09e96 mediatek-mt7622: add support for Ubiquiti UniFi 6 LR
Signed-off-by: David Bauer <mail@david-bauer.net>
2021-06-29 22:23:05 +02:00
David Bauer
260a75cd59 gluon-core: use HE radio mode if available
Configure a radio for HE (802.11ax) operation in case it's supported by
the hardware. This can be the case for 2.4 GHz as well as 5 GHz.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-06-29 22:23:05 +02:00
Dark4MD
aab7d8aca9 ramips-mt76x8: add Xiaomi Mi Router 4C
Specifications:

- CPU: MediaTek MT7628AN (580MHz)
- Flash: 16MB
- RAM: 64MB DDR2
- 2.4 GHz: IEEE 802.11b/g/n with Integrated LNA and PA
- Antennas: 4x external single band antennas
- WAN: 1x 10/100M
- LAN: 2x 10/100M
- LEDs: 2x yellow/blue. Programmable (labelled as power on case)
                      - Non-programmable (shows WAN activity)
- Button: Reset

How to install:

1- Use OpenWRTInvasion to gain telnet and ftp access.
2- Push openwrt firmware to /tmp/ using ftp.
3- Connect to router using telnet. (IP: 192.168.31.1 -
   Username: root - No password)
4- Use command "mtd -r write /tmp/firmware.bin OS1" to flash into
   the router..
5- It takes around 2 minutes. After that router will restart itself
   to OpenWrt.
2021-06-29 11:04:11 +02:00
Dark4MD
a5e085b57c ramips-mt7621: add Xiaomi Mi Router 4A (Gigabit Edition)
Specifications:

- SoC:      MediaTek MT7621
- Flash:    16 MiB NOR SPI
- RAM:      128 MiB DDR3
- Ethernet: 3x 10/100/1000 Mbps (switched, 2xLAN + WAN)
- WIFI0:    MT7603E 2.4GHz 802.11b/g/n
- WIFI1:    MT7612E 5GHz 802.11ac
- Antennas: 4x external (2 per radio), non-detachable
- LEDs:     Programmable "power" LED (two-coloured, yellow/blue)
            Non-programmable "internet" LED (shows WAN activity)
- Buttons:  Reset

Installation:

Bootloader won't accept any serial input unless "boot_wait" u-boot
environment variable is changed to "on".

Vendor firmware won't accept any serial input until "uart_en" is
set to "1".

Using the https://github.com/acecilia/OpenWRTInvasion exploit you
can gain access to shell to enable these options:

To enable uart keyboard actions - 'nvram set uart_en=1'
To make uboot delay boot work - 'nvram set boot_wait=on'
Set boot delay to 5 - 'nvram set bootdelay=5'

Then run 'nvram commit' to make the changes permanent.

Once in the shell (following the OpenWRTInvasion instructions) you
can then run the following to flash OpenWrt and then reboot:

'cd /tmp; curl https://downloads.openwrt.org/...-sysupgrade.bin
  --output firmware.bin; mtd -e OS1 -r write firmware.bin OS1'
2021-06-29 11:02:15 +02:00
David Bauer
c8b1999780 docs: remove dropped hardware from docs
Fixes commit 89dc6b203d ("ramips-rt305x: drop devices with insufficient flash")

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-06-29 00:47:17 +02:00
David Bauer
0f60214fc0 actions: add rockchip-armv8 target 2021-06-29 00:25:09 +02:00
David Bauer
ded4b8a711 rockchip-armv8: add FriendlyARM NanoPi R2S 2021-06-29 00:25:09 +02:00
David Bauer
4985b21858 modules: update OpenWrt
e16a45f258 iwinfo: update to latest Git HEAD
0c51b265bf iwinfo: update to latest Git HEAD
85cef1cf22 kernel: bump 5.4 to 5.4.128
e171d11f55 libusb: Fix parsing of descriptors for multi-configuration devices
3d62b5d5c6 base-files: fix /tmp/TZ when zoneinfo not installed
3047df2317 base-files: fix zoneinfo support
ab5010d170 exfat: update to 5.12.3
72d93c1ba4 realtek: Fix failsafe mode
7a5a247c1f base-files: failsafe: Remove the VLAN modifier from interface name
c0fdfd15fc base-files: failsafe: Fix IP configuration
98b1a6435f kernel: Backport patch to automatically bring up DSA master when opening user port
ec780bdb92 kernel-5.4: backport latest patches for wireguard
82c700de67 hostapd: fix handling of the channel utilization options
1247a6bb35 bcm4908: fix Ethernet broken state after interface restart
25daa921da bcm4908: add kmod-gpio-button-hotplug
74dbf3412b base-files: fix typo in config_generate MAC check
125deb4d78 base-files: set MAC for bridge ports (devices) instead of bridge itself
e410ef8389 hostapd: wolfssl: add RNG to EC key
f6d8c0cf2b wolfssl: always export wc_ecc_set_rng
56228e9393 ath79: don't autodetect AR8033 PHY capabilities
2e157714a8 build,json: fix generation with empty profiles
8add3e139c build: preserve profiles.json between builds
2021-06-27 22:38:26 +02:00
Martin Weinelt
4f53b9848c
Merge pull request #2248 from blocktrron/pr-ar71xx-cleanup 2021-06-26 23:53:23 +02:00
David Bauer
9c60b455c9 docs: hardware: fix minor grammar issue 2021-06-26 22:55:03 +02:00
Matthias Schiffer
65c9d05d54
docs: drop obselete theme fixes 2021-06-26 20:40:43 +02:00
Matthias Schiffer
32ae071954
docs: pin theme version
rtd.io uses a severely outdated theme version with several known bugs by
default. Pin to a never version to get the bugfixes.
2021-06-26 20:39:31 +02:00
Matthias Schiffer
028c1de03a
docs: add .readthedocs.yml to set Python version and requirements.txt 2021-06-26 20:39:22 +02:00
David Bauer
69ba8e3cfe gluon-core: fix handling of multi-port interfaces
Multi-port interfaces are stored in the network config as an array using
the ports key.
2021-06-26 19:56:17 +02:00
David Bauer
98b16933d3 gluon-core: update board.json interface path
Single LAN and WAN interfaces are now stored in the network configs
"device" key.
2021-06-26 19:55:38 +02:00
Martin Weinelt
e7c45e5425
Merge pull request #2236 from freifunk-gluon/badges 2021-06-26 02:33:43 +02:00
David Bauer
f16061e021 docs: replace ar71xx occurences with ath79
Replace occurences of ar71xx with ath79. Remove references of ar71xx
targets which are not relevant anymore.
2021-06-26 02:20:08 +02:00
David Bauer
9fdc57c175 treewide: drop ar71xx platform specific code 2021-06-26 02:17:15 +02:00
David Bauer
003c90f0b2 docs: drop ar71xx targets from supported devices 2021-06-26 02:14:59 +02:00
Martin Weinelt
916cc33802
Merge pull request #2235 from freifunk-gluon/next-2102 2021-06-26 00:15:19 +02:00
David Bauer
4a75e0942e generic: drop BUSYBOX_CONFIG_FEATURE_PREFER_IPV4_ADDRESS
These config changes are not necessary anymore, as it's now the default
behavior.

Ref: https://github.com/freifunk-gluon/gluon/pull/2235#issuecomment-859654947
Signed-off-by: David Bauer <mail@david-bauer.net>
2021-06-26 00:12:28 +02:00
David Bauer
6ba58c9b17 generic: force per-device RootFS
All targets now use OpenWrt device abstraction. Thus, all targets now
can be built using a per-device RootFS.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-06-22 01:59:48 +02:00
David Bauer
38a11eaca8 gluon-core: remove default bridge devices 2021-06-22 01:59:48 +02:00
David Bauer
a02270651c actions: update workflow 2021-06-22 01:59:48 +02:00
David Bauer
2aa6f90bb3 docs contrib: add dependency on qemu-utils 2021-06-22 01:59:48 +02:00
David Bauer
ddd0d35d2e generic: remove TLS packages
Signed-off-by: David Bauer <mail@david-bauer.net>
2021-06-22 01:59:48 +02:00
David Bauer
45c84a117b ar71xx: drop target 2021-06-22 01:59:48 +02:00
David Bauer
89dc6b203d ramips-rt305x: drop devices with insufficient flash 2021-06-22 01:59:48 +02:00
Martin Weinelt
f4b0d007f3 contrib: Dockerfile: install rsync
The kernel build requires rsync.
2021-06-22 01:59:48 +02:00
David Bauer
9afb48b6b8 x86: use upstream APU2 LED / GPIO driver 2021-06-22 01:59:48 +02:00
Martin Weinelt
4d0b8ccca3 contrib: Dockerfile: add python3, drop python2 2021-06-22 01:59:48 +02:00
David Bauer
bed66fa248 ath79: move GL.iNet GL-AR750S to NAND subtarget 2021-06-22 01:59:48 +02:00
Martin Weinelt
74c0717171 x86: fix reference to kmod-sp5100-tco 2021-06-22 01:59:48 +02:00
David Bauer
2acc7f1bae x86: update profile names 2021-06-22 01:59:48 +02:00
David Bauer
0bfa4417dd mpc85xx: update profile names 2021-06-22 01:59:48 +02:00
David Bauer
df78d58d35 sunxi: update profile names 2021-06-22 01:59:48 +02:00
David Bauer
102fcac799 gluon-core: update ramips boardnames 2021-06-22 01:59:48 +02:00
David Bauer
7e0b450ec8 ramips: update profile names 2021-06-22 01:59:48 +02:00
Martin Weinelt
77007d0c1d brcm2708: rename targets to bcm27xx 2021-06-21 16:28:15 +02:00
David Bauer
a38f2a4cf1 packages: fix missing argument to posix.glob 2021-06-21 16:28:15 +02:00
David Bauer
002e3a9c19 targets: remove wpad-basic-wolfssl by default 2021-06-21 16:28:15 +02:00
David Bauer
aab2b914b8 modules: switch to OpenWrt 21.02 2021-06-21 16:28:15 +02:00
David Bauer
4f68ddf0d0
Merge pull request #2242 from Dark4MD/master
ramips-mt76x8: add Xiaomi Mi Router 4A (100M Edition)
2021-06-21 16:17:25 +02:00
Matthias Schiffer
7e45878b4e
Merge pull request #2240 from blocktrron/pr-gluon-mesh-vpn-respondd-fix
gluon-mesh-vpn-core: fix potential null pointer dereferences
2021-06-16 17:29:15 +02:00
David Bauer
8d565cefc9
Merge pull request #2241 from freifunk-gluon/gluon-mesh-vpn-tunneldigger-fix
gluon-mesh-vpn-tunneldigger: fix Lua mesh-vpn provider module location
2021-06-16 10:32:10 +02:00
David Bauer
344f8a47db gluon-mesh-vpn-core: fix two more missing NULL checks
read_stdout can return NULL and thus the return value need to be checked
prior to accessing it.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-06-16 10:31:49 +02:00
Dark4MD
0b00ed9193 ramips-mt76x8: add Xiaomi Mi Router 4A (100M Edition) 2021-06-15 20:12:35 +02:00
Matthias Schiffer
f7e473edfa
gluon-mesh-vpn-tunneldigger: fix Lua mesh-vpn provider module location 2021-06-15 16:32:37 +02:00
David Bauer
7e1e9fe2bd gluon-mesh-vpn-core: avoid reading null pointer
In case the limit_ingress or limit_egress options are not present in
gluon's mesh_vpn section the respondd provider compares a string literal
with a NULL pointer, crashing respondd.

Check both pointers prior to comparing them in order to mitigate this
issue.

Suggested-by: Matthias Schiffer <mschiffer@universe-factory.net>
Signed-off-by: David Bauer <mail@david-bauer.net>
2021-06-14 11:08:38 +02:00
Matthias Schiffer
867b18deeb
Merge pull request #2234 from freifunk-gluon/lua-jsonc-host
treewide: use lua-jsonc instead of lua-cjson for JSON handling during build
2021-06-13 09:06:32 +02:00
Matthias Schiffer
8a422ac0cb treewide: use lua-jsonc instead of lua-cjson for JSON handling during build 2021-06-12 23:30:47 +02:00
Matthias Schiffer
8a41d8d72d modules: update Gluon packages
64148a9baf14 lua-jsonc: add host build support
c2623391bf42 lua-jsonc: do not link against liblua
2021-06-12 23:30:47 +02:00
Martin Weinelt
091230d3ea
README.md: add a teaster, update state of documentation 2021-06-11 00:32:39 +02:00
Martin Weinelt
897efe0759
README.md: add some badges 2021-06-11 00:22:42 +02:00
Martin Weinelt
05199e7e33
docs: expand on multicast improvements in v2021.1
I mixed up two separate improvements into one, this change aims to
clarify them based on a suggestion and conversation with @T-X.
2021-06-11 00:08:24 +02:00
Martin Weinelt
206e0fe5e0
Merge pull request #2230 from freifunk-gluon/release-notes/v2021.1 2021-06-10 23:41:55 +02:00
Martin Weinelt
187386cb79
README, docs: Gluon v2021.1 2021-06-10 23:20:56 +02:00
Martin Weinelt
9c1b943036
docs: Add v2021.1 release notes 2021-06-10 23:20:56 +02:00
David Bauer
3f59fdc648 modules: update OpenWrt packages
476b8b82b Merge pull request #15806 from blocktrron/pr-xr-usb-serial-1907
73c098477 xr_usb_serial_common: add PKG_MIRROR_HASH
7100f4006 xr_usb_serial_common: fix build
465ddb5b2 Merge pull request #15770 from DeathCamel58/libnet-1.2.x-libnet-config-fix
f7d4a6753 Merge pull request #15780 from stangri/19.07-https-dns-proxy
6ab17abde https-dns-proxy: update to 2021-06-03-1
bdbf33f69 libnet: Export `libnet-config` in development enviornments

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-06-08 17:27:41 +02:00
Martin Weinelt
c97be1e18a
Merge pull request #2209 from T-X/pr-batman-adv-noflood+mcast-fw-relax 2021-06-08 01:40:12 +02:00
David Bauer
20f665b16d
Merge pull request #2217 from AiyionPrime/status_page_bandwidth_limit
gluon-status-page: add bandwidth limit
2021-06-08 01:37:36 +02:00
David Bauer
278f6c3b62 modules: update OpenWrt
ffd4452f8b mac80211: Update to backports version 4.19.193-test1
ccc505502e kernel: bump 4.14 to 4.14.235
2021-06-08 01:15:22 +02:00
aiyion.prime
b973c8f133 gluon-status-page: show bandwidth limits 2021-06-07 21:21:42 +02:00
David Bauer
edff676de9
Merge pull request #2216 from AiyionPrime/meshvpn_core_respondd_simple_tc
gluon-mesh-vpn-core: respondd bandwidth_limit
2021-06-07 19:51:58 +02:00
aiyion.prime
c71959df68 gluon-mesh-vpn-core: add simple-tc respondd-provider
omit unlimited bandwidth limit
A value of '-' marks a streamdirection as unlimited.
2021-06-07 11:27:12 +02:00
David Bauer
16c5c64141
Merge pull request #2220 from AiyionPrime/status_page_vpn_protocol
gluon-status-page: vpn protocol
2021-06-06 19:51:48 +02:00
aiyion.prime
b53997836f gluon-status-page: show vpn protocol 2021-06-05 21:39:34 +02:00
David Bauer
ece75b9824
Merge pull request #2227 from blocktrron/master-modules-update-040621
modules: update to latest Git HEAD
2021-06-04 22:30:40 +02:00
David Bauer
b2414ec4a9
Merge pull request #2219 from AiyionPrime/meshvpn_core_respondd_vpn
gluon-mesh-vpn-core: respondd active, enabled
2021-06-04 18:47:01 +02:00
David Bauer
b246300f96 modules: update OpenWrt routing
101632e Merge pull request #658 from ecsv/batadv-for-19.07
a995b62 batman-adv: Merge bugfixes from 2021.1
118536c bird2: Makefile polishing
9d6ef13 bird2: update to version 2.0.8

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-06-04 18:42:27 +02:00
aiyion.prime
b0b80a32b7 gluon-mesh-vpn-core: add vpn protocol respondd provider 2021-06-04 18:41:10 +02:00
David Bauer
c90d6b98a8 modules: update OpenWrt packages
1c90bc08a banip: remove logd dependency
ad6476b4f Merge pull request #15728 from stangri/19.07-https-dns-proxy
2b0cb41c0 https-dns-proxy: 2021-05-14 bugfix: fallback to HTTP/1 by default
e8c0e3c20 netdata: update to version 1.30.1
e23677d86 Merge pull request #15717 from stangri/19.07-https-dns-proxy
b28e2c763 https-dns-proxy: update to 2021-05-14-1; bugfixes for dhcp server backup
2543c33b0 syslog-ng: update to 3.32.1
e05c97a19 nano: update version to 5.7
91e1399cf nextdns: Update to version 1.32.1
9fd4ed8af bind: bump to 9.16.15
aebeefcd5 zerotier: update to 1.6.5
18b564ef5 Merge pull request #15509 from hswong3i/openwrt-19.07-SQUID_enable-ssl-crtd
ad6712d42 squid: Enable dynamic SSL certificate generation
439da3db8 mosquitto: fix log_type config support
221785358 ksmbd-tools: update to 3.3.9
3412c7a45 dnscrypt-proxy2: sync blocked-names to upstream one
139217f8a dnscrypt-proxy2: upgrade to 2.0.45
27678dc75 adblock: fix polish source URL
e426ad56b Merge pull request #15477 from rs/nextdns-1.32.0-openwrt-19.07
6027afee1 nextdns: Update to version 1.32.0
afed88b48 Merge pull request #15468 from rs/nextdns-1.12.5-openwrt-19.07
f1e6b878f nextdns: Update to version 1.12.5
11dc84032 irqbalance: upgrade to version 1.8.0
287154116 pulseaudio: update to 14.0
3bdf75bd2 pulseaudio: fix compilation without deprecated OpenSSL APIs
ba0558e8a pulseaudio: fix compilation with ICONV_FULL
1248994b9 pulseaudio: Update ARM NEON/VFP detection
4021cb65a pulseaudio: do not build NEON with unsupported platforms
8eb7d95ba pulseaudio: add lto and gc-sections to reduce size
15fb6ec36 pulseaudio: fix pkgconfig paths
eac2ca1c6 pulseaudio: update to 13.0
f0aa4486a pulseaudio: Backport upstream patch
e5701228c Merge pull request #15384 from VolunteerComputingHelp/openwrt-19.07
8ca4ab69e Merge pull request #15413 from luizluca/19.07/ruby-2.6.7
5c16a052f ruby: update to 2.6.7
807e088bb netdata: disable shared memory totals by default
09ba05583 https-dns-proxy: bugfix: race condition with dnsmasq
0072fc533 boinc: Transfer v7.16.16 from 21.02 to 19.07
ba1a801f7 adblock: fix games_tracking source url
1cf2e3530 Merge pull request #15254 from dibdot/19.07
74c8fb403 travelmate: minimal change to fix cp detection
56e1674ef rpcd-mod-lxc: add postinst to reload rpcd on update/installation
560a0ea2b ksmbd-tools: update to 3.3.8
0863ab323 ksmbd-tools: Add a mDNS TXT record for the ksmbd service
52d3ce0f6 ksmbd-tools: update to 3.3.7
f275b3f41 ksmbd-tools: update to 3.3.6
ba329c4ea ksmbd-tools: update to 3.3.5
055b1cd58 nut: fix typo in nutshutdown script
e88b4d873 netdata: update to version 1.29.3
f6bc822ff syslog-ng: update to version 3.31.2

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-06-04 18:40:44 +02:00
David Bauer
88224a209a modules: update OpenWrt
1153773c78 ubox: fix init script validation of log_ip option
a1ee0ebbd8 tools/mklibs: Fix compile with GCC 11
84c5dbcf2a openwrt-keyring: Only copy sign key for 19.07 and 21.02
c07c98d28e openwrt-keyring: add OpenWrt 21.02 GPG/usign keys
e10830193c generic: platform/mikrotik: release mtd device after use
f342de468b kernel: bump 4.14 to 4.14.232
ded3ad3c2f Extend checks on build prerequisites for building OpenWRT core
5bec393fcb prereq-build: test for perl's Data::Dumper
a2728a806a tplink-safeloader: fix C7v5 factory flashing from vendor fw > v1.1.x

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-06-04 18:39:07 +02:00
David Bauer
c88ddb4ba6
Merge pull request #2226 from AiyionPrime/pr_doc_refresh_patches
docs: add 'make refresh-patches'
2021-05-27 17:57:59 +02:00
aiyion.prime
9303297b35 docs: add 'make refresh-patches' 2021-05-27 11:25:31 +02:00
David Bauer
71c3b8321b
Merge pull request #2102 from blocktrron/mesh-vpn-abstraction
mesh-vpn: fully abstract VPN methods
2021-05-26 21:15:42 +02:00
David Bauer
98a1c196ed mesh-vpn: fully abstract VPN methods
This fully abstracts VPN methods, making gluon-mesh-vpn-fastd and
gluon-mesh-vpn-tunneldigger completely self-contained.

Provide a LUA interface for generic interacting with VPN methods in
gluon-mesh-vpn-core and web packages.

This also adds the ability to install tunneldigger and fastd to the same
image, selecting the VPN method based on the selected domain.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-05-22 06:54:23 +02:00
David Bauer
17dd5abd75
Merge pull request #2223 from freifunk-gluon/wizard-reconfigure
Simplify save/commit handling of config wizard sections
2021-05-19 13:39:03 +02:00
David Bauer
436b29d767 gluon-config-mode-core: add missing uci save
A missing uci save for gluon-setup-mode caused the initial setup-process
to be stuck in a config-mode loop.
2021-05-18 19:16:18 +02:00
Matthias Schiffer
42335a07c9
gluon-config-mode-core: unconditionally run gluon-reconfigure
Simplify the individual form providers by always running reconfigure. This
also commits all UCI packages, so we can remove all tracking of UCI
sections from the wizard code.

Instead of returning a list of packages to commit, the providers just
save their settings directly. Explicit runs of upgrade scripts are
removed, as they are now run by reconfigure.
2021-05-15 00:03:02 +02:00
Matthias Schiffer
16fab561db
gluon-config-mode-mesh-vpn: override Section:write() instead of Section:handle() 2021-05-15 00:03:02 +02:00
Matthias Schiffer
df9fa32d58
gluon-web-model: add state tracking to sections
This add support for a write() method on sections, in addition to the
value and form level write(). write() is only called when the section is
valid and visible. In addition, write() is empty by default, so it can be
overridden more easily.
2021-05-15 00:02:44 +02:00
Martin Weinelt
bb920eaefc
targets: clarify why ar71xx-mikrotik is marked as broken 2021-05-14 18:34:17 +02:00
Martin Weinelt
9f37489881
Merge pull request #2221 from freifunk-gluon/auto-labeling 2021-05-14 01:31:43 +02:00
Martin Weinelt
d4057c3eb6
.github/labeler.yml: auto label pull requests
according to the paths they touch.
2021-05-14 01:31:14 +02:00
Martin Weinelt
0ac3061225
Merge pull request #2214 from AiyionPrime/status_page_mesh_protocol 2021-05-09 16:53:49 +02:00
David Bauer
10486b1b7a
Merge pull request #2218 from AiyionPrime/fix_respondd_leak
libgluonutil: free getline
2021-05-08 22:54:10 +02:00
aiyion.prime
5c12b037d7 libgluonutil: free getline
Co-Authored-By: lemoer <git@irrelefant.net>
2021-05-08 20:35:24 +02:00
David Bauer
1c38906eef
Merge pull request #2163 from lemoer/pr_vpn_as_gluon_wired
Generalize proto "gluon_wired.sh"
2021-05-07 00:10:27 +02:00
aiyion.prime
a683486514 fixup! gluon-status-page: add mesh protocol to status-page 2021-05-06 19:03:06 +02:00
David Bauer
545713ac9f
Merge pull request #2213 from freifunk-gluon/modules-openwrt
modules: update OpenWrt
2021-05-06 17:14:50 +02:00
aiyion.prime
77a6b9a947 gluon-status-page: add mesh protocol to status-page 2021-05-06 16:37:32 +02:00
Martin Weinelt
47a2f03660
modules: update OpenWrt
1b5a45a4a7 mac80211: Update to backports version 4.19.189-1
a883e3af38 dropbear: Fix CVE-2020-36254
2021-05-06 01:51:12 +02:00
lemoer
bbecd44be1 gluon-core: extend gluon_wired proto for l3 devices
This is a preparation to use the gluon_wired.sh proto on top of
layer 3 tunnel interfaces.
2021-05-06 00:43:01 +02:00
lemoer
c14b4c0b4b gluon-core: add vxlan option to gluon_wired proto
Before this commit the decision whether a vxlan layer will be
introduced between the lower interface before the interface is
added to batman was inside the proto. Now the decision is moved
to the user of the proto.
2021-05-06 00:43:01 +02:00
David Bauer
9e09d08cf6
Merge pull request #2177 from blocktrron/pr-wan-radio-ifname
gluon-web-private-wifi: define ifname for WAN radio
2021-05-03 17:39:31 +02:00
David Bauer
589dff7c14 modules: update OpenWrt
08ef2073d4 ramips: backport unlocked mdiobus accessors
2021-05-03 00:44:56 +02:00
David Bauer
e729b81312 gluon-private-wifi: add package
Add a package for handling upgrade-scripts speific for the WAN radio
operation.

This way, the config mode interface can be removed seperately from the
core functionality to perform tasks on system upgrade. This can be
useful when the setup-mode is removed entirely for space preservation.
2021-05-02 23:25:32 +02:00
David Bauer
5f08b47659 modules: update OpenWrt
7198ae4cf3 openvpn: update to 2.4.11
a8beddcd34 openvpn: update to 2.4.9
f82ddf9024 openvpn: update to 2.4.8
718e97c5c8 ramips: mt7530 swconfig: fix race condition in register access
8788e86245 ppp/pppoe-discovery: fix -W option
4398a35067 kernel: bump 4.14 to 4.14.231
906f560e79 kernel: bump 4.14 to 4.14.230
2021-05-02 20:59:45 +02:00
Martin Weinelt
46d2008eef
Merge pull request #2210 from blocktrron/mesh-sae-unused-params
mesh-wireless-sae: drop unused function parameters
2021-05-02 13:58:58 +02:00
David Bauer
a922944fee mesh-wireless-sae: drop unused function parameters
Drop these unused parameters in the function description, as only the
first parameter is referenced within the function block.
2021-05-02 02:20:00 +02:00
Linus Lüssing
98f3f63842 gluon-ebtables-filter-multicast: relax IPv6 multicast firewall rules
Allow the transmission of IPv6 multicast packets as long as they are not
flooded through the whole mesh.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2021-05-01 22:36:14 +02:00
Linus Lüssing
cb505a354a batman-adv: Introduce no noflood mark
This mark prevents a multicast packet being flooded through the whole
mesh. The advantage of marking certain multicast packets via e.g.
ebtables instead of dropping is then the following:

This allows an administrator to let specific multicast packets pass as
long as they are forwarded to a limited number of nodes only and are
therefore creating no burdon to unrelated nodes.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2021-05-01 22:33:59 +02:00
David Bauer
f4adb66772 gluon-web-private-wifi: define ifname for WAN radio
Set the ifname for the WAN radio (Private WLAN) to wanX, X being the
radio index.

All other radios created by Gluon already have their ifname defined
following this pattern.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-05-01 20:57:15 +02:00
Martin Weinelt
a63be6928c
Merge pull request #2208 from blocktrron/actions-next-subbranch
actions: build gluon for next sub-branches
2021-05-01 13:54:59 +02:00
David Bauer
53b647f748 actions: build gluon for next sub-branches
Currently we do not perform CI firmware builds on the next-2102 branch.

Build Gluon for all branches starting with "next" to increase the
coverage of our build tests.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-05-01 13:35:36 +02:00
Martin Weinelt
069c8b2035
Merge pull request #2207 from blocktrron/web-admin-flashsize
web-admin: fix firmware partition name
2021-05-01 12:27:26 +02:00
David Bauer
d0551c2dcd web-admin: fix firmware partition name
The rudimentary flash size determination function expects the partition
for the devices firmware to be called "linux" while it is (since quite
some time) "firmware".

Fix this error to display available flash size as well as more useful
error message in case the uploaded firmware image exceeds the flash
space.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-05-01 03:15:51 +02:00
David Bauer
4cd644a7a8
Merge pull request #2206 from T-X/pr-batman-adv-enable-mcast-optimizations
gluon-mesh-batman-adv: reenable batman-adv multicast optimizations
2021-04-29 01:07:52 +02:00
Linus Lüssing
288daf5a47 gluon-mesh-batman-adv: reenable batman-adv multicast optimizations
With batman-adv 2020.4 and the according backports to batman-adv v2019.2
several more bugs were found and fixed regarding the batman-adv
multicast optimizations feature.

Also a "wakeup-call" feature was added to the Linux bridge IGMP/MLD
snooping code in Gluon to work around issues with Android devices.

With batman-adv now at v2019.2, multicast-to-multi-unicasts conversion
is supported, too. Which means that even if there are a few outdated nodes
these and all other recipients will be served multicast packets via unicast,
too, as long as the sum of receiving nodes does not exceed the multicast
fanout setting (default: 16). If is exceeded, then batman-adv will revert
back to broadcast flooding automatically.

Long story short, with all these extra measures in place, let's reenable
the batman-adv multicast optimizations to reduce the layer 2 overhead
and in preparation for multicast applications in the future.

The default is enabled for this feature anyway, so removing the
"batctl multicast_mode 0" overwrite is sufficient.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2021-04-29 00:40:39 +02:00
Martin Weinelt
7904e0315f
modules: update OpenWrt
cc0b70467d mac80211: backport upstream fixes
2c46ba4356 kernel: backport fix for flexcan bug
7f3ec4ce39 kernel: bump 4.14 to 4.14.229
273ded68b8 kernel: bump 4.14 to 4.14.228
c43c434b58 kernel: bump 4.14 to 4.14.227
2021-04-28 01:14:56 +02:00
Martin Weinelt
3b9aebf13b .editorconfig: bunch of additions
Formats:
- Restructured Text
- JSON
- MarkDown

Specific Files:
- .ecrc
- CMakeLists.txt

Ignore:
- /patches/ directory, we will not be editing foreign patches for their
  indentation
2021-04-28 01:01:35 +02:00
David Bauer
24a21336d8
Merge pull request #2128 from tokudan/master-autoupdater-doc
autoupdater: document behaviour if manifest DATE is in the future
2021-04-28 00:57:17 +02:00
Daniel Frank
be9d2cd201
docs: autoupdater: document manifest header
Explains the behaviour when DATE is either in the future or in the past
and hints at how the firmware rollout can be controlled using the
PRIORITY variable.

Co-Authored-By: Martin Weinelt <martin@darmstadt.freifunk.net>
2021-04-28 00:54:21 +02:00
David Bauer
3f267d637e
Merge pull request #1986 from 2tata/archer-d50
targets/ath79-generic: add archer-D50 v1
2021-04-28 00:31:06 +02:00
Jan-Tarek Butt
9826a12b38 ath79-generic: add Archer D50 v1
Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>
Signed-off-by: David Bauer <mail@david-bauer.net>
2021-04-28 00:30:25 +02:00
David Bauer
5f3bb758b3
Merge pull request #2154 from yanosz/patch-1
Mention names of opkg-keys in doc
2021-04-28 00:20:02 +02:00
yanosz
96dfbc46c0
docs: Document location and handling of opkg keypair
Co-Authored-By: Martin Weinelt <martin@darmstadt.freifunk.net>
2021-04-28 00:18:31 +02:00
David Bauer
490c522351
Merge pull request #2200 from AiyionPrime/status_page_role
gluon-status-page: add role to status-page
2021-04-28 00:11:26 +02:00
David Bauer
0ce961eb8c
Merge pull request #2201 from AiyionPrime/status_page_wifi_channel
gluon-status-page: add channels to status-page
2021-04-28 00:10:46 +02:00
aiyion.prime
e6bdbe811a gluon-status-page: use sitetranslation for role 2021-04-23 15:57:37 +02:00
aiyion.prime
f14707cfa2 gluon-status-page: use mac80211 identifier (phy) 2021-04-22 22:43:48 +02:00
aiyion.prime
dc400c9220 gluon-status-page: reformat spaces 2021-04-22 21:43:55 +02:00
aiyion.prime
344d3ab686 gluon-status-page: add channels to status-page 2021-04-22 21:43:55 +02:00
David Bauer
b72588a014 modules: update Gluon packages 2021-04-22 20:25:23 +02:00
Martin Weinelt
a2be901803
docs: Add v2020.2.3 release notes 2021-04-14 02:10:15 +02:00
aiyion.prime
b6ec181c80 gluon-status-page: add role to status-page 2021-04-12 12:08:04 +02:00
Martin Weinelt
e713f9658f
Merge pull request #2197 from txt-file/patch-2
contrib/Dockerfile: use apt-get instead of apt
2021-04-07 19:10:31 +02:00
Martin Weinelt
503059ba29
Merge pull request #2196 from AiyionPrime/fix_tq_width_firefox_dejavu_sans
statuspage: fix tq width
2021-04-07 18:52:38 +02:00
Vieno Hakkerinen
09d6f70b07
contrib/Dockerfile: use apt-get instead of apt
* apt is meant for user interactive usage. apt does not guarantee a stable CLI.
* set DEBIAN_FRONTEND=noninteractive to tell apt-get that no user interaction is wanted
2021-04-07 18:01:56 +02:00
aiyion.prime
5e2525f573 statuspage: fix tq width
overflow for 'DejaVu Sans'.
2021-04-07 13:02:33 +02:00
Martin Weinelt
2e6752074f
Merge pull request #2192 from txt-file/patch-1
contrib/actions: use apt-get instead of apt
2021-04-05 22:55:18 +02:00
Vieno Hakkerinen
ca7a8ff528
contrib/actions: use apt-get instead of apt
apt does not have a stable CLI interface. Don't use it in scripts.
2021-04-05 21:33:04 +02:00
Martin Weinelt
34e8aed9f8
Merge pull request #2191 from freifunk-gluon/ci-relax-runner-pin 2021-04-05 19:43:31 +02:00
Martin Weinelt
394bc8e6bd
contrib/actions: drop custom sources.list 2021-04-05 04:11:29 +02:00
Martin Weinelt
e6b996f0e1 Revert "actions: pin Ubuntu version"
This reverts commit d9621048ed.
2021-04-05 04:09:42 +02:00
Martin Weinelt
272e30fda6
modules: update packages
fdd4afe6a adblock: fix init status command
5a8a7aeab libreswan: update cu 3.32
7af60cc3e libftdi1: Improve build binary reproducibility
aa3e95ac6 https-dns-proxy: bugfix: correct PROCD firewall object
abb3c7ede mariadb: update to version 10.2.37
cb6509e88 gnutls: patch security issue
41388ed8a php: add fix for updated ICU 68+
353063521 https-dns-proxy: support for additional Force DNS ports
44b301125 bind: update to version 9.16.13
612fbeb58 nnn: update to version 3.4
1952a1c2a python-aiohttp: backport fix for CVE-2021-21330
13ab7af3f icu: update to 68.2
2120a3cf5 icu: update to 68.1
10712797f icu: fix compilation under CentOS 7
79ddd0328 icu: update to 67.1
227597c97 haproxy: Update HAProxy to v2.0.21
a8a405928 tmate: add new package
01ab015a9 msgpack-c: add new package
97beb7d36 minidlna: update to 1.3.0
0494d8706 tor: update to version 0.4.4.8
40d56e46b mwan3: remove mwan3 ubus call on mwan3 iface hotplug ACTION
b66d262d7 net/mosquitto: bump to 1.6.14
e573dac5f CI: backport GitHub action CI
81fa8cf89 nextdns: Update to version 1.11.0
af02206e2 vpn-policy-routing: better processing of custom user files
5c58de5e6 libpam: update to 1.5.1
86a70892d libpam: update to 1.5.0
ef17e4a30 libpam: update to 1.4.0
85d122fdc nano: update to 5.6.1
a6a27c904 ninja: update to 1.10.2
b4adde587 ninja: fix typo
7fd680224 ninja: use for CMake
1299b07ee ninja: update to 1.10.1
86bb11e97 vpn-policy-routing: update to 0.3.2-18
2faeeb18e python-maho-mqtt: bump to versio 1.5.1
5c95dda73 unbound: update to 1.13.1
3abe9d0ae vpn-policy-routing: bugfix: netflix user file missing redirect
904d911c5 vpn-policy-routing: update user netflix file
2666b3d00 nano: update to version 5.6
7d26130b3 vpn-policy-routing: custom user scripts improvements
7d9d8616c libedit: update to version 20210216-3.1
ca01f389d libedit: update to version 20193112-3.1
855023214 adblock: update blocklist sources
39f3941cd knot: update to version 3.0.4
1662ca26b knot: update to 3.0.3
9389a5dd1 knot: disable embedded xdp
7619ff0df knot: update to 3.0.2
5ddcc2e05 knot: disable libnghttp2 autodetection
fb103be86 knot: update to version 3.0.1
523011bf4 screen: backport fix for CVE-2021-26937
8e1b62d4b openvswitch: update to version 2.11.6 (security fix)
5e24f6db6 vpn-policy-routing: update to version 0.3
0d0e4b96b netdata: update to version 1.29.2
2980cb8db netdata: update to version 1.29.1
f05ba1bbc python3: Update to 3.7.10, refresh patches
7be89f1f3 zerotier: bump to 1.6.4
fcf72948a bind: bump to 9.16.12
feb1a188e ksmbd: remove kmod-crypto-arc4 dependency
2f7026e65 htop: update to 3.0.5-1
ad186135a python-paho-mqtt: Update to version 1.5.0
3f0dbcdae isc-dhcp: seeing crashes when attempting to update dynamic dns
95fa96bda ttyd: force enable authentication for login
1a4184c07 https-dns-proxy: support for force DNS/DNS hijacking
b1fec2b7b mosquitto: bump to 1.6.13
5954e5695 getdns: disable static linking of getdns utilities
db69f0b57 zerotier: update to 1.6.3
1cec6bcfa getdns: Fix TLS V1.3 Ciphersuites option in Stubby
d7b42dcaa getdns: fix compilation without deprecated OpenSSL APIs
798c3ba3f keepalived: fix config typo
d41a0b75a keepalived: add script security param to fix warning
dbc66a08f ksmbd: update to 3.3.4
86c880712 ksmbd-tools: update to 3.3.4
dee2e818b keepalived: set default run directory for pid file on build
cf7969564 simple-adblock: remove dependency on jsonfilter & old code
bee91a9d8 sudo: backport patches for CVE-2021-3156
46d327a59 samba4: fix for #13758
e8d15424b nextdns: Update to version 1.10.1
11e9a2e17 php7: Fix prepare target incorrectly referencing 'configure.in' instead of 'configure.ac'
aae5144e7 msmtp: update to version 1.8.14
8e54decfa youtube-dl: update to version 2021.1.16
3b582ebd3 youtube-dl: update to version 2020.12.7
46253b17d https-dns-proxy: bugfix: high CPU utilization
cc38c62ad openwisp-config: update to version 0.5.0
50725c4c8 Revert "libzip: update to 1.7.3"
d8f0ebaa3 libzip: update to 1.7.3
9a0a7f928 libzip: update to 1.7.1 (closes #12512)
5fc922043 libzip: update to 1.6.1
9174036e4 libzip: update to 1.6.0
92f095b21 libzip: fix musl-fts failure
a0d9d76b2 libzip: add package
93d3bfd08 nano: update to 5.5
1224d6c21 idevicerestore: update to 1.0.0
9cfae98a7 idevicerestore: update to 2020-04-20
23f85f8fa idevicerestore: update to 2020-02-17
cb2d40346 idevicerestore: Update to 2019-12-26
202469750 idevicerestore: Add package
646461e2b libirecovery: update to official tarball
4f3b1aa38 libirecovery: fix version
e871dcf6b libirecovery: Update to 1.0.0
4175b8074 libirecovery: Add package
7707d2d78 haproxy: Update HAProxy to v2.0.20
8cc7aef3c nextdns: Update to version 1.9.6
67a324b5e syslog-ng: update to version 3.30.1
9e29bd4de https-dns-proxy: update to 2020-11-25: add HTTP auth and DSCP codepoint support
6d2ea90c3 haveged: update to 1.9.14
64b8dade4 usbmuxd: update to 1.1.1
42f227066 usbmuxd: enable systemd support
13485a4e5 usbmuxd: Update to 2020-01-20
c5aae4a76 usbmuxd: Update to latest master
0d0820d43 usbmuxd: Update to latest git version
46ecb7d58 imobiledevice: backport iOS 14 backup patch.
c71f4a82e libimobiledevice: update to 1.3.0
2ca8db427 libimobiledevice: update to 2020-02-19
2e2775dbc libimobiledevice: Update to 2020-01-20
cbda7d908 libimobiledevice: Update to latest master
f988eff7a libimobiledevice: Update to 2019-11-29
b856f627b libusbmuxd: update to 2.0.2
d59f1c90d libusbmuxd: Several fixes
a17c2aec3 libusbmuxd: Update to 2.0.1
5fc564827 libplist: add missing pkgconfig files in libplist 2.2
7660f6fa2 libplist: update to 2.2.0
8c28123e7 libplist: Several fixes
a60434422 libplist: Update to 2.1.0
3645d2876 libplist: Switch to normal releases
cafbae712 php7: drop patch for openssl deprecated API (fixes #14357)
4d1e525fc netdata: update to version 1.28.0
0563feebc adblock: backport fixes
40c1005f2 htop: update to 3.0.4-1
6bd3f5c37 mwan3: use ping -I for ipv6 after tunnel kernel fix
2a7bbad22 noddos: remove
182264c5b ulogd: Add back autoreconf
6106d1f28 ulogd2: Build IPFIX module
c8730e951 ulogd2: Backport upstream patches
5845691cb net: ulogd2: add myself as maintainer
df1c29679 nut: fix _ handling
e04535e99 qemu: bump PKG_RELEASE
3eb2e140e simple-adblock: config update
dc529c8cd wsdd2: update to git 2020-11-19
adb214338 samba4: update to 4.11.17
304888a37 htop: update to 3.0.3-1
0266f31c9 htop: update to 3.0.2-1
391267fc9 qemu: add patch for qga guest-shutdown command
4626c3bd6 utils/lcd4linux: fix package source
dc015ffe2 simple-adblock: bugfix - config update
9ca6bdaa0 https-dns-proxy: update binary to 2020-08-21
13d999882 zerotier: add patch to avoid including sys/auxv.h
061f81ff6 miniupnpd: Don't override ipv6_listening_ip
2021-04-05 02:49:29 +02:00
Martin Weinelt
87209b9f41
modules: update OpenWrt
81266d9001 openssl: bump to 1.1.1k
6165bb0d60 openssl: sync package download URLs with master
c336db7a78 mbedtls: update to 2.16.10
616fff2a94 mwlwifi: add PKG_FLAGS:=nonshared
dce6b118eb scripts: bundle-libraries.sh: fix broken SDK compiler
afdd5dcd0d build: reduce number of files passed to ipk-remove
1fcd833c9a build: call ipkg-remove using xargs if #args>=512
33df82be36 build: package-ipkg: avoid calling wildcard twice
3402334413 kernel: bump 4.14 to 4.14.224
55e9d87754 kernel: bump 4.14 to 4.14.223
c64742a96e wolfssl: bump to v4.7.0-stable
4b19b2db78 hostapd: P2P: Fix a corner case in peer addition based on PD Request
0a08a9a2b4 build: fix checks for GCC11
a5672f6b96 Revert "base-files: source functions.sh in /lib/functions/system.sh"
b4a4d04b91 kernel: bump 4.14 to 4.14.222
86aeac4fc9 base-files: source functions.sh in /lib/functions/system.sh
e9c0c5021c hostapd: backport ignoring 4addr mode enabling error
a36d2ee310 ramips: remove factory image for TP-Link Archer C20 v1

Fixes: CVE-2021-3450, CVE-2021-3449, CVE-2021-3336, CVE-2021-27803
2021-04-05 02:47:25 +02:00
J. Burfeind
2c0f8292c6
gluon-neighbour-info: end before timeout (#2185)
End the process after one result in case -l is not given
and destination address is unicast.
Reduces singleshot execution time from timeout seconds to around 150ms.

resolves #2184
2021-03-15 17:52:34 +01:00
Matthias Schiffer
2ecbe488bc
gluon-core: remove unneeded KERNEL_L2TP_IP config symbol
No package uses l2tp_ip.
2021-03-07 18:48:06 +01:00
Matthias Schiffer
f68bad1171
modules: update Gluon packages
3822f44013cc tunneldigger: remove unneeded kmod-l2tp-ip dependency
95c805c863cd tunneldigger: update to latest upstream (#238)
2021-03-07 18:47:12 +01:00
David Bauer
7d100bc4ca ramips-mt7620: remove factory images for Archer C20 v1
Upstream removed the factory images for the Archer C20 v1 as they
potentially brick the device. Remove them from Gluon to avoid build
failures on the next OpenWrt 19.07 bump.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-02-28 12:21:24 +01:00
Andreas Ziegler
e511b3bcb4
modules: update OpenWrt routing packages
e26b474 Merge pull request #644 from ecsv/batadv-for-19.07
369908c alfred: Start up alfred without valid interfaces
97e7600 alfred: Fix procd process handling for disable state
0a3432d Merge pull request #636 from ecsv/batadv-for-19.07
596dc84 batman-adv: Merge bugfixes from 2021.0
862a2df batctl: Merge bugfixes from 2021.0
2021-02-18 17:49:32 +01:00
Andreas Ziegler
6d3da664b0
modules: update OpenWrt
6aef4bc7c3 lantiq: fritz7320: enable USB power supply
6bf5bfc19f openssl: bump to 1.1.1j
f44153038e OpenWrt v19.07.7: revert to branch defaults
d5ae565873 OpenWrt v19.07.7: adjust config defaults
c4a6851c72 kernel: bump 4.14 to 4.14.221
f8b849103d ramips: ethernet: Disable TSO support to improve stability
2021-02-18 17:45:12 +01:00
David Bauer
d9621048ed actions: pin Ubuntu version
ubuntu-latest is now assigned to Ubuntu 20.04. As we use custom apt
sources for 18.04, pin to this version for now to fix the CI.
2021-02-15 01:38:51 +01:00
David Bauer
429223b99f modules: update OpenWrt
fec1aa6dfb mt76: update to the latest version
224fa47bf9 ramips: mark toggle input on EX6150 as a switch
3a05aa17db mac80211: Remove 357-mac80211-optimize-skb-resizing.patch
171d8bce0c ramips: remove factory image for TP-Link Archer C2 v1
2eb8444363 ath79: fix USB power GPIO for TP-Link TL-WR810N v1
d5a8e85878 wolfssl: Backport fix for CVE-2021-3336
cf5e5204d9 bcm63xx: sprom: override the PCI device ID
4465b44fc1 kernel: bump 4.14 to 4.14.219
4b9ade65ec bcm63xx: R5010UNv2: fix flash partitions for 16MB flash
ab9cb390be hostapd: fix P2P group information processing vulnerability
1e90091c5d opkg: update to latest git HEAD of branch openwrt-19.07
312c05611b kernel: bump 4.14 to 4.14.218
3100649458 wolfssl: enable HAVE_SECRET_CALLBACK
e9d2aa9dc6 wolfssl: Fix hostapd build with wolfssl 4.6.0
2044c01de8 wolfssl: Update to v4.6.0-stable
5ac0b2b431 mvebu: omnia: make initramfs image usable out of the box
2021-02-15 01:29:38 +01:00
David Bauer
39c1f67236 modules: update OpenWrt
a7a207e18b mt76: update to the latest version
1ce5008597 wireguard: Fix compile with kernel 4.14.217
2ecb22dc51 kernel: bump 4.14 to 4.14.217
11f4918ebb dnsmasq: backport fixes
9999c87d3a netifd: fix IPv6 routing loop on point-to-point links
250dbb3a60 odhcp6c: fix IPv6 routing loop on point-to-point links
d816c6cd31 kernel: bump 4.14 to 4.14.216
c21d59dc11 imagebuilder: pass IB=1 on checking requirements
2021-02-01 13:16:18 +01:00
David Bauer
ec8c4043ef
Merge pull request #2178 from T-X/pr-bridge-fix-mc-snoopers-join-deadlock
kernel: bridge: Fix a deadlock when enabling multicast snooping
2021-01-25 20:45:46 +01:00
Linus Lüssing
13cb7504f4 kernel: bridge: Fix a deadlock when enabling multicast snooping
[ Upstream commit 851d0a73c90e6c8c63fef106c6c1e73df7e05d9d ]

From: Joseph Huang <Joseph.Huang@garmin.com>

When enabling multicast snooping, bridge module deadlocks on multicast_lock
if 1) IPv6 is enabled, and 2) there is an existing querier on the same L2
network.

The deadlock was caused by the following sequence: While holding the lock,
br_multicast_open calls br_multicast_join_snoopers, which eventually causes
IP stack to (attempt to) send out a Listener Report (in igmp6_join_group).
Since the destination Ethernet address is a multicast address, br_dev_xmit
feeds the packet back to the bridge via br_multicast_rcv, which in turn
calls br_multicast_add_group, which then deadlocks on multicast_lock.

The fix is to move the call br_multicast_join_snoopers outside of the
critical section. This works since br_multicast_join_snoopers only deals
with IP and does not modify any multicast data structures of the bridge,
so there's no need to hold the lock.

Steps to reproduce:
1. sysctl net.ipv6.conf.all.force_mld_version=1
2. have another querier
3. ip link set dev bridge type bridge mcast_snooping 0 && \
   ip link set dev bridge type bridge mcast_snooping 1 < deadlock >

A typical call trace looks like the following:

[  936.251495]  _raw_spin_lock+0x5c/0x68
[  936.255221]  br_multicast_add_group+0x40/0x170 [bridge]
[  936.260491]  br_multicast_rcv+0x7ac/0xe30 [bridge]
[  936.265322]  br_dev_xmit+0x140/0x368 [bridge]
[  936.269689]  dev_hard_start_xmit+0x94/0x158
[  936.273876]  __dev_queue_xmit+0x5ac/0x7f8
[  936.277890]  dev_queue_xmit+0x10/0x18
[  936.281563]  neigh_resolve_output+0xec/0x198
[  936.285845]  ip6_finish_output2+0x240/0x710
[  936.290039]  __ip6_finish_output+0x130/0x170
[  936.294318]  ip6_output+0x6c/0x1c8
[  936.297731]  NF_HOOK.constprop.0+0xd8/0xe8
[  936.301834]  igmp6_send+0x358/0x558
[  936.305326]  igmp6_join_group.part.0+0x30/0xf0
[  936.309774]  igmp6_group_added+0xfc/0x110
[  936.313787]  __ipv6_dev_mc_inc+0x1a4/0x290
[  936.317885]  ipv6_dev_mc_inc+0x10/0x18
[  936.321677]  br_multicast_open+0xbc/0x110 [bridge]
[  936.326506]  br_multicast_toggle+0xec/0x140 [bridge]

Fixes: 4effd28c1245 ("bridge: join all-snoopers multicast address")
Signed-off-by: Joseph Huang <Joseph.Huang@garmin.com>
Acked-by: Nikolay Aleksandrov <nikolay@nvidia.com>
Link: https://lore.kernel.org/r/20201204235628.50653-1-Joseph.Huang@garmin.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
[linus.luessing@c0d3.blue: backported to 4.4]
2021-01-25 03:16:06 +01:00
David Bauer
9df297bdde modules: update OpenWrt
6fc02f2a45 OpenWrt v19.07.6: revert to branch defaults
b12284a14c OpenWrt v19.07.6: adjust config defaults
8055e38794 dnsmasq: Backport some security updates
733e62a8e1 uboot-at91: Add PKG_MIRROR_HASH to fix download
53814dadaf at91bootstrap: Add PKG_MIRROR_HASH to fix download
e30d3ea95f mbedtls: update to 2.16.9
c7b9c85819 kernel: bump 4.14 to 4.14.215
c9388fa986 kernel: bump 4.14 to 4.14.214
e290024717 glibc: update to latest 2.27 commit
2c37993c8a build/prereq: merge ifndef IB block together
79b1fa1702 build, imagebuilder: Do not require compilers
58138df2d5 build, imagebuilder: Do not require libncurses-dev
42e478eb0d build/json: add filesystem information
2021-01-19 16:09:24 +01:00
David Bauer
5c325cc1c9
Merge pull request #2152 from FreifunkVogtland/plasmacloud
ipq40xx: Add support for Plasma Cloud PA1200 and PA2200
2021-01-13 11:51:10 +01:00
Sven Eckelmann
50537e5474 ipq40xx: add support for Plasma Cloud PA2200
This device is a dual 5GHz device. It is recommended to manually change the
radio of the first device to the lower 5GHz channels and the second radio
to the upper 5GHz channels
2021-01-13 08:28:12 +01:00
Sven Eckelmann
17baf0f415 ipq40xx: add support for Plasma Cloud PA1200 2021-01-13 08:28:12 +01:00
David Bauer
db9768310a
Merge pull request #2153 from FreifunkVogtland/pa300
ath79: Add support for Plasma Cloud PA300(E)
2021-01-12 15:22:03 +01:00
David Bauer
f2783bdf2d
Merge pull request #2174 from freifunk-gluon/respondd-fixes
gluon-respondd: fix crash on 64bit archs (+ one unrelated issue)
2021-01-12 15:21:19 +01:00
Matthias Schiffer
17123aa420
gluon-respondd: fix count_stations() arguments
Fixes warnings about implicit pointer-to-int and int-to-pointer casts.

Fixes: 59a4cd63b8 ("gluon-respondd: expose OWE clients in nodeinfo")
2021-01-12 04:32:23 +01:00
Matthias Schiffer
52ee93f160
libgluonutil: add missing gluonutil_get_primary_domain() prototype
Fixes respondd on 64bit archs, as gluonutil_get_primary_domain() was
assumed to return int without the prototype.

Fixes: bcf57467dd ("libgluonutil: implement gluonutil_get_primary_domain()")
2021-01-12 04:29:08 +01:00
Sven Eckelmann
6e2faecb4e ath79: add support for Plasma Cloud PA300E 2021-01-10 09:06:02 +01:00
Sven Eckelmann
a9039229d6 ath79: add support for Plasma Cloud PA300 2021-01-10 09:05:58 +01:00
David Bauer
fd3ecea953
gluon-core: use OpenWrt label-mac as fallback (#2170)
This adds the OpenWrt label-mac device selection as the most preferred
fallback.

While this is only used on OpenWrt 19.07 for backports, we can also use
the label-mac device when backporting device support. This way, we have
to deal with less device-sepcific code downstream.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-01-10 00:51:15 +01:00
David Bauer
7320603a1f
Merge pull request #2169 from mweinelt/ci-reduce-builds
actions: run tasks based on set of modified paths
2021-01-02 22:53:59 +01:00
Martin Weinelt
6e4989faeb
LICENSE: update for 2021 2021-01-02 19:10:18 +01:00
Martin Weinelt
bab05c8515
actions: run tasks based on set of modified paths 2021-01-02 17:25:51 +01:00
Annika Wickert
75f7b7c0b6 actions: use matrix to avoid repeats
Closes #2166
2021-01-02 15:08:41 +01:00
David Bauer
441fbf1283 actions: update generation script to use matrix 2021-01-02 15:06:16 +01:00
Martin Weinelt
7709de6753
Merge pull request #2165 from CodeFetch/pr_syslog
packages: introduce syslog function in gluon.util
2021-01-02 02:13:32 +01:00
CodeFetch
50313697c7 packages: introduce syslog function in gluon.util
This commit introduces a simple function for writing to the syslog and
replaces the custom function used by gluon-hoodselector.
2020-12-29 01:33:29 +01:00
David Bauer
049625bb14 modules: update OpenWrt
b14eeccdfe ath79: image: fix initramfs for safeloader devices
cb58c7fe73 kernel: bump 4.14 to 4.14.212
fb52c40531 wireless-regdb: Update to version 2020.11.20
7711a5906a wireless-regdb: bump to latest release 2020-04-29
c03f018220 openssl: update to 1.1.1i
0a59e2a76e mac80211: Update to version 4.19.161-1
3f5fecfd33 ramips: enable LED VCC for Asus RT-AC51U
2020-12-20 18:20:17 +01:00
Tim Gates
6b9e3ce1df
docs: ci: fix simple typo (#2162) 2020-12-19 20:50:54 +01:00
David Bauer
430c0ecc60 wireless-encryption mesh-wireless-sae: depend on OpenSSL daemons
This switches the used wireless daemons for OWE / SAE to the OpenSSL
flavors. The WolfSSL implementation currently seems to be broken.

THis switch may be reverted at a later point in time when hostapd /
wpa_supplicant implementations for WolfSSL have matured.
2020-12-16 00:52:27 +01:00
Andreas Ziegler
b84c58c0b5
docs: add v2020.2.2 release notes 2020-12-11 04:13:20 +01:00
David Bauer
604087fae3 modules: refresh OpenWrt patches
Fixes commit fb8cd562f6 ("modules: update OpenWrt")
2020-12-07 04:27:11 +01:00
David Bauer
fb8cd562f6 modules: update OpenWrt
d0b8be75ff generic: ipeth: fix iOS 14 tethering
bdc2f19f9d OpenWrt v19.07.5: revert to branch defaults
c37eb9a9f9 OpenWrt v19.07.5: adjust config defaults
5090152ae3 tools: always create $STAGING_DIR/usr/{include,lib}
2020-12-07 04:22:58 +01:00
Andreas Ziegler
8be025fedc
modules: update OpenWrt
d830403133 toolchain: kernel-headers: kernel Git tree mirror hash
8c2bb1d9b6 toolchain: kernel-headers: fix check target for kernel Git tree
a47caacaf3 download.pl: properly cleanup intermediate .hash file
605adb1023 download: handle possibly invalid local tarballs
5abe989475 cmake.mk,rules.mk: fix host builds using CMake and ccache
77734ce82a cmake.mk: set C/CXX compiler for host builds as well
ebe8cc2b2a mvebu: fixup Turris Omnia U-Boot environment
f10332c292 mvebu: base-files: Update Turris Omnia U-Boot environment
ca1ee39854 mvebu: Add turris-omnia.bootscript
f61e053e72 uboot-envtools: mvebu: update uci defaults for Turris Omnia
f1525e785e kernel: backport GD25Q256 support from 4.15
c72b7a4f0d kernel: bump 4.14 to 4.14.209
c420f77678 wireguard-tools: fix category/description in menuconfig
2020-12-06 04:27:16 +01:00
David Bauer
6d95ec64de
Merge pull request #2157 from blocktrron/xtables-addons
openwrt: fix xtables-addons build
2020-12-06 04:05:06 +01:00
David Bauer
5ee379bbb8 Revert "openwrt: revert kernel: add netfilter-actual-sk patch"
This reverts commit 94736703ae.

Bumping the packages feed fixes the xtables-addons build.
2020-12-06 01:08:33 +01:00
David Bauer
f52139f9fb modules: bump OpenWrt packages
2974079d3 nano: update to 5.4
e82884caf miniupnpd: Pass ipv6 addr to ipv6_listening_ip
33bd6b6af Merge pull request #14115 from mwarning/zt
ace81238c zerotier: update to 1.6.2
808a67b35 net/miniupnpd: ext_ip_reserved_ignore support
1adf9d979 miniupnpd: Added chain rule to filter table so udp stun incoming connections rules works
4ed18c40e miniupnpd: update to 2.2.0
16cceb118 net/miniupnpd: check by /etc/init.d/miniupnpd running
93d44081c miniupnpd: default to IGDv1
49fb6862d adblock: reporting fixes/tweaks
613d4e19c Merge pull request #14029 from aaronjg/xtables-addons-fix
12b0f8c1a xtables-addons: patch for 4.14 route_me_harder fix
a453361e7 Merge pull request #13943 from jjm2473/openwrt-19.07-fix-libtirpc-clang
fb9077a72 Merge pull request #13983 from rs/nextdns-1.9.4-openwrt-19.07
591601446 nextdns: Update to version 1.9.4
889c46a79 Merge pull request #13981 from rs/nextdns-1.9.3-openwrt-19.07
c65dc2c45 nextdns: Update to version 1.9.3
446bec699 Merge pull request #13937 from jjm2473/openwrt-19.07-fix-vim-clang
fb7630209 travelmate: refine scan interface determination
c68be0b84 libs/libtirpc: fix host compile with clang 12.0.0
1f5670bdf vim: fix host compile with clang 12.0.0
2020-12-06 01:08:20 +01:00
Martin Weinelt
94736703ae
openwrt: revert kernel: add netfilter-actual-sk patch
During the update of openwrt-19.07 in 435c5196 a breaking change was
introduced. Let's revert it for now so the master branch builds again.
2020-12-06 00:22:07 +01:00
David Bauer
435c519658 modules: update OpenWrt
0ce0d687de ipq40xx: disable double-tagging for PSGMII devices
6703abb7ca tcpdump: patch CVE-2020-8037
b4698d87c8 kernel: mtd: parser: cmdline: Fix parsing of part-names with colons
193adc94d1 ar71xx,ath79: refresh 910-unaligned_access_hacks.patch
733a482733 musl: handle wcsnrtombs destination buffer overflow (CVE-2020-28928)
c9c7b4b394 kernel: add netfilter-actual-sk patch
a448ad7490 uhttpd: update to 19.07 Git HEAD
2020-12-01 11:13:12 +01:00
David Bauer
99e1e52740 modules: update OpenWrt
39c5635714 scripts: download.pl: retry download using filename
2020-11-20 12:06:23 +01:00
Martin Weinelt
b09a124a89 modules: update packages
b77fabe01 Merge pull request #13911 from ja-pa/libexif-sec-19.07
e74565a0b libexif: update to 0.6.22
68eb1943c mwan3: add missing dependency
b038148cc mwan3: Remove fork/exec for head
c5d61945f haproxy: Update HAProxy to v2.0.19
5b3870890 php7: update to 7.2.34
2bd627ec7 Merge pull request #13828 from jgora/jgora
d1d53a3ac xtables-addons: Support IPTV Timeshift
05efc24fd youtube-dl: update to version 2020.11.1.1
5db211c62 youtube-dl: update to version 2020.9.20
7b1ac9283 youtube-dl: update to version 2020.9.14
3a61338ab bind: update to version 9.16.8
2331de4ec libftdi1: disable building documentation
73c7bcb63 libftdi1: Fix pkgconfig paths properly
82208ceca libftdi1: Apply pkgconfig fixes to libftdipp1 as well
58b6d0ee5 libftdi1: Partially add back InstallDev
55e7acc25 libftdi1: Remove faulty change from last patch
45e7e13dc libftdi1: Don't build examples
089699b1e tinyproxy: convert to procd
39ce33461 tinyproxy: update to 1.10.0
b07f752e7 nextdns: Update to version 1.8.8
99e77a716 openconnect: allow specify --protocol from config
37303e1f0 adblock: update 4.0.7-2
5dbbb7ebf adblock: update 4.0.7
0c9206469 zoneinfo: Updated to the latest release
a9162448c zoneinfo: Updated to the latest release
abcbc5e1c zoneinfo: Updated to the latest release.
2020-11-17 01:53:47 +01:00
Martin Weinelt
2537b7430b modules: update OpenWrt
2a8279c161 layerscape: Fix check after kernel update
ac5297340e kernel: bump 4.14 to 4.14.206
589c3cf4e0 ath79: remove wmac mtd-mac-address for UniFi AC family
2a3dbded93 feeds: add freifunk feed
ad3c2b9736 ath79: use correct firmware name for UniFi AP
84ae238324 ramips: fix logic level for DIR-645 buttons
c25e3275ac ath79: fix LED labels for PowerCloud CAP324
78c4c04dd7 uci: Backport security fixes
3af9c5fefd uboot-envtools: mvebu: fix config for mainline u-boot
7fbee0c7b2 mvebu: Add bootscript for espressobin to support mainline firmware
14903d9d8c kernel: bump 4.14 to 4.14.202
03a029745f firmware: intel-microcode: update to 20200616
95d60bf881 firmware: amd64-microcode: update to 20191218
dda5e3db19 firewall: options: fix parsing of boolean attributes
7dd822983b kernel: bump 4.14 to 4.14.201
aee081e62e oxnas: fix qc_prep return in sata driver after kernel 4.14.200
6696fddfd9 mac80211: do not allow bigger VHT MPDUs than the hardware supports
9c718b5478 kernel: bump 4.14 to 4.14.200
b21bea7b1b ath79: ar8216: make switch register access atomic
891022918d scripts: getver.sh: fix version based on stable branch
8076fb59ab openssl: bump to 1.1.1h
f4286d7bc2 ath79: fix rssi-low LED for My Net Range Extender
d82e6a2f10 kernel: Update to version 4.14.199
86b44028e2 comgt: fix hotplug event handling
34a9652904 Revert "ramips: ethernet: fix to interrupt handling"

Build-tested: x86-64, ath79-generic, ipq40xx-generic
2020-11-17 01:53:43 +01:00
Matthias Schiffer
ed9e0b6d9e
Merge pull request #2148 from freifunk-gluon/master-v2020.2-tag
Merge v2020.2 tag into master
2020-11-16 18:51:45 +01:00
Martin Weinelt
094705b269
Merge pull request #2146 from freifunk-gluon/weather-radar-map
docs: reference weather radar map for europe for outdoor_chanlist
2020-11-15 23:03:16 +01:00
Martin Weinelt
97d8295b1c Gluon v2020.2
-----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCAAdFiEE1wQyaXt8TCc4D82jurOXFLSkuHgFAl8UXtgACgkQurOXFLSk
 uHg7pQgAk5RP21P4DUrlRV0Ck3oHDfepKaXveUUQiJA077vWnKgkliiq5xIBxz0C
 n0/A/6GdWOnCZ9vM/D/gxxm0fzujmsUVPY8OsRQ3g9TlkqeA+ff+D7jDmmGk6PbH
 ZkN/wHpZVK8Mxe0GANzPXbqFHYmf/DIZFvnezOmL7K79MLsOLkTQVhARouthVCat
 eNNA4nKo1nNgjJ6Z8NViQ5Kd1Y2IoOLit3ypCxQCwnSzQ6YCDkdNFx+EfjWFv9VC
 gIJRKbadWr86wNDpS2Bbe4rfkOjjG6yNTI63f2Bj1MlNyEYNdkKVCQI7WszQU81M
 ikt5dqZIxfUiSXslbuPUJFtkpJKUJg==
 =fJeO
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCAAdFiEE7tAWAry9GWw4vJofvUqgUo9j8X4FAl+xc4MACgkQvUqgUo9j
 8X45WggAr3nALzMZ6d6KU58kZB1kwY9srj4gtyDL3snusTUyyCIsavJaWBGPQOEC
 VN3oELZpsTn9beR8u+dp03Mv3e6sc0dLRgSu+bTH0CiYAAc0x7DNy+aZ8EE3810V
 YrcGIIdij9a/3rdHzsoyy8rYrAxAGtTdCYtqYywWvktfIJM5ks4btym6+vwlCNBy
 3eD/4cMqbYHV4TxbVM0WYiapHTONdjIrxtBN/7g5LIfyLBxXCsUu3OJKw2op8FZW
 t9G+lqgKqsspax4IAW3AwtweILMNCGiYZJcKhJP7+QisDE1WJgGxtbaTcqYJHL9l
 jkjKKyc2l9HyxDmZoN3Bau6hmJMrtQ==
 =jh5p
 -----END PGP SIGNATURE-----

Merge tag 'v2020.2'

Gluon v2020.2
2020-11-15 19:29:20 +01:00
Martin Weinelt
a4760320d7
docs: reference weather radar map for europe for outdoor_chanlist
The map is generated from EUMETNET data, it's source code can be
found at https://gitlab.com/aaaaalbert/wxr-channel-map.
2020-11-14 18:33:02 +01:00
Martin Weinelt
277718887d
ath79-generic: add support TP-Link Archer C2 v3 (#2145)
CPU: 750 MHz QCA9563
Flash: 8 MB
RAM: 64 MB
Radio 1: Qualcomm Atheros QCA9563 (b/g/n)
Radio 2: Qualcomm Atheros QCA9887 (a/n/ac)
2020-11-11 22:44:11 +01:00
David Bauer
1f115adf17
ramips-mt7620: use manifest alias for EX3700/EX3800 (#2144)
Use a manifest alias for the autoupdater image string of the Netgear
EX3700 / EX3800. This way, no unnecessary symlink is created and the
autoupdater functionality is preserved.
2020-11-06 11:12:42 +01:00
Andreas Ziegler
2e8febfd04
docs: add v2019.1.3 release notes 2020-11-05 02:03:05 +01:00
Martin Weinelt
c273f1a2c9
modules: update routing
02b4dbf (HEAD -> openwrt-19.07, origin/openwrt-19.07) Merge pull request #620 from ecsv/batadv-for-19.07
59e8d5f batctl: Merge bugfixes from 2020.4
6859689 batman-adv: Merge bugfixes from 2020.4

Compile-tested: x86-64
Run-tested: x86-64 (QEMU)
2020-10-27 17:31:32 +01:00
dzzinstant
4134514986
lantiq-xrx200: add support for AVM Fritz!Box 3370 (#2056) 2020-10-26 13:00:15 +01:00
Martin Weinelt
163427649c
Merge pull request #2140 from blocktrron/patch-check
github: add workflow for checking patch status
2020-10-20 21:56:24 +02:00
David Bauer
ac4d6625dd github: add workflow for checking patch status
Add a workflow to verify all patches to OpenWrt and the packages feeds
are refreshed. If they are not, the workflow fails.
2020-10-20 20:03:17 +02:00
Matthias Schiffer
53f5b8098c
fastd: reorganize patches for easier backporting
Gluon v2020.2.x uses fastd v19, so we keep that in a separate patch. The
fastd memory leak fix from v18 is not removed in this patch anymore, as
the fix is needed for v19 as well.

The v20 and v21 patches are squashed into one, as they aren't backports
anymore after the rebase onto current openwrt-19.07.
2020-10-19 23:13:50 +02:00
Matthias Schiffer
10ae06abc2
Merge pull request #2139 from blocktrron/20200119-bump
fastd: update to v21
2020-10-19 23:01:48 +02:00
David Bauer
d97c518da9 packages: fastd: update to v21 2020-10-19 22:53:58 +02:00
David Bauer
65e5aeed2c modules: bump OpenWrt packages
a2673dc53 fastd: fix buffer leak when receiving invalid packets
51bf00834 logrotate: update to version 3.17.0
8715cef64 logrotate: update to 3.16.0
acb77d5be python3: Update to 3.7.9, refresh/remove backported patches
4af889f20 travelmate: bugfix single radio mode
cb3bab180 netdata: update to version 1.26.0
70bb0b4c8 bind: update to version 9.16.7
d05698fae freeradius3: move "release_" from PKG_VERSION
93360e625 freeradius3: add meta-package for default modules
2f7338b62 python-urllib3: update to version 1.25.10 (security fix)
50a67ed74 nextdns: Update to version 1.8.6
b48575ef4 chrony: update to 3.5.1
35e6986a0 nextdns: mark /etc/config/nextdns as configuration file
418e3b294 simple-adblock: config update file fix
9ac587ca8 libuv: update to 1.40.0
613d21085 nano: update to 5.3
992746571 btrfs-progs: update to version 5.7
cedba1ca2 btrfs-progs: update to version 5.6
25b2751f8 python-pytz: update to 2019.03
f3b424139 adblock: refresh blocklist sources
ec628b10d syslog-ng: bump version in config file
d0a74afad syslog-ng: tweak shell code of network_localhost little bit
f705a5a93 python-sentry-sdk: Update to version 0.12.3
2976a5a0e haproxy: Update HAProxy to v2.0.18
eec7bd646 tor: update to version 0.4.4.5
91af4cf72 mariadb: Update to the latest version from 10.2 branch
9461ae47a Werkzeug: Update to version 0.16.0
f9d9ae8c8 Flask: update to version 1.1.2
4a833e3a8 Flask: Update to version 1.1.1
a4534f160 gstreamer1: enable build options necessary for most applications
8a71cdd6a python-ifaddr: update to version 0.1.7
05ea7dfc6 nextdns: Update to version 1.8.5
9069ad925 ipmitool: fix CVE-2020-5208
826fc8921 nextdns: Update to version 1.8.4
ac7f78285 openconnect: updated to 8.10 to address CVE-2020-12823
3f0e26637 python-zeroconf: update to version 0.28.0
fe7ceaa65 python-zeroconf: update to version 0.24.4
49459505e mwan3: fix typo in mwan3_set_sticky_iptables
cae961784 ocserv: include ocserv-worker
2af61c9a4 vpnbypass: README update, code cleanup
b00feac4b ocserv: updated to 1.1.1
c614914da miniupnpd: add miniupnpd ipv6_disable option, #11971 close
70e57317b simple-adblock: add config auto-update feature
94866d76a collectd: update to 5.12.0
b60fa2de9 collectd: update PKG_RELEASE
aeefbbe34 collectd: remove quotation on interval this is an number
b0ad32a3e collectd: move include line
fbe7abcd5 collectd: update PKG_RELEASE
f53b79ced collectd: fix ubi data source type
67a403bfe collectd: add ubi uci and plugin info
37335cf65 collectd: enable ubi plugin
2020-10-19 22:51:56 +02:00
David Bauer
88ec9cbedf
mt76: mt7603: add additional EEPROM chip ID (#2133)
Some newer MT7628 based routers (notably the TP-Link Archer C50 v4) are
shipped with a chip-id of 0x7600 in the on-flash EEPROM. Add this as a
possible valid ID.

This fixes unstable WiFi on some units of the TP-Link Archer C50 v4.
2020-10-17 13:58:45 +02:00
David Bauer
b6096523c9
Merge pull request #2131 from blocktrron/refresh-patches
build: improve refreshing patches
2020-10-16 17:14:00 +02:00
David Bauer
84b0a381dc scripts: display commit title when updating patches 2020-10-11 01:59:55 +02:00
David Bauer
7c0408d96d build: add refresh-patches step 2020-10-11 01:40:45 +02:00
Matthias Schiffer
463c1f49c8
fastd: update to v20 2020-10-10 19:14:12 +02:00
Martin Weinelt
bdadb77a3c
Merge pull request #2076 from T-X/bridge-mcast-wakeupcall
kernel: bridge: Implement MLD Querier wake-up calls / Android bug workaround
2020-10-08 23:57:20 +02:00
Linus Lüssing
b2add48d2a kernel: bridge: Implement MLD Querier wake-up calls / Android bug workaround
Implement a configurable MLD Querier wake-up calls "feature" which
works around a widely spread Android bug in connection with IGMP/MLD
snooping.

Currently there are mobile devices (e.g. Android) which are not able
to receive and respond to MLD Queries reliably because the Wifi driver
filters a lot of ICMPv6 when the device is asleep - including
MLD. This in turn breaks IPv6 communication when MLD Snooping is
enabled. However there is one ICMPv6 type which is allowed to pass and
which can be used to wake up the mobile device: ICMPv6 Echo Requests.

If this bridge is the selected MLD Querier then setting
"multicast_wakeupcall" to a number n greater than 0 will send n
ICMPv6 Echo Requests to each host behind this port to wake
them up with each MLD Query. Upon receiving a matching ICMPv6 Echo
Reply an MLD Query with a unicast ethernet destination will be sent
to the specific host(s).

Link: https://issuetracker.google.com/issues/149630944
Link: https://github.com/freifunk-gluon/gluon/issues/1832

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2020-10-08 20:06:24 +02:00
David Bauer
e5b89b5511
ipq40xx-generic: add support for AVM FRITZBox 7530 (#2125) 2020-10-06 23:37:41 +02:00
David Bauer
177ff68ccf
ar71xx-generic: only create manifest alias for Rocket M5 (#2127)
* ar71xx-generic: only create manifest alias for Rocket M5

This follow up the discussion done in #2070 by not  creating a symlink
for the Rocket M5. Images for the Rocket M2 can still be flashed on a
Rocket M5.

This change will prevent the Rocket M5 from appearing in Firmware
selectors. Existing devices will still receive updates, as the device
name is still referenced for the device name expected by the M5.

Closes #2070

* docs: remove Rocket M5 from supported devices
2020-10-06 19:16:56 +02:00
Steffen Förster
9d83d2396f
docs: Add Netgear EX3700 and EX3800 (#2126)
Fixes #2113
2020-10-06 15:35:43 +02:00
Steffen Förster
954f31a761 ramips-mt7620: add support for Netgear EX3700/EX3800
Specifications:
* SoC: MT7620A
* RAM: 64 MB DDR
* Flash: 8MB NOR SPI flash
* WiFi: MT7612E (5Ghz) and builtin MT7620A (2.4GHz)
* LAN: 1x100M

The -factory images can be flashed from the device's web
interface or via nmrpflash.

Both devices differ by a additional power outlet for the EX3800.
This patch has been tested on a EX3800 device.
2020-10-06 00:04:22 +02:00
David Bauer
73640292e5
modules: bump packages feed (#2121)
03425a0d2 zmq: fix compilation when libbsd is present
8bb1d13a9 pigeonhole: update to 0.5.11
86da3bbeb zmq: update to version 4.3.3 (security fix)
e72b47469 zmq: fix the installed files
48339ba10 zmq: fix pkgconfig file
ef30f8bf8 zmq: update to 4.3.2
a7d129fc2 zmq: switch to building with CMake
a4cbd04df libxml2: patch security issues
207660987 net/u2pnpd: convert init to procd
2d410422c freeradius3: fix hostname invocation in radtest
066ac0392 freeradius3: enable radtest utility
338fa663c samba4: update to 4.11.12
399e1a0bf youtube-dl: update to version 2020.9.6
7825df65f msmtp: update to version 1.8.12
eb8130508 dovecot: disable zstd
538647a26 syslog-ng: update to version 3.29.1
473ca554f php7: update to 7.2.33
62171036b nextdns: Update to version 1.8.3
953de3ca8 gnutls: update to version 3.6.15 (security fix)
d515d9c35 dovecot: update to version 2.3.11.3 (security fix)
a2634c264 nextdns: Update to version 1.8.2
1cf41a88c python-rsa: downgrade to version 4.5 for python2
54847cc7c unbound: improve odhcpd rapid update robustness
d17720f04 htop: update to 3.0.1-1
d953d80bf htop: update to 3.0.0-1
af4cd94a2 htop: fix compilation with GCC10
7af8eaad1 python-rsa: update to version 4.6 (security fix)
8b0457c55 knot: update to version 2.9.6
f2edf8c53 git: update to version 2.26.2 (security fix)
99d0878d0 python,python3: Use locked for host pip
791e0bc76 nano: update to 5.2
3c6b45ab3 clamav: update to version 0.102.4 (security fix)
0202fdc27 clamav: update to version 0.102.3 (security fix)
c5c0e2e33 clamav: update to 0.102.2
9700cea70 bind: New upstream version 9.16.6
256a631d9 bind: update to 9.16.4
ac79fde24 simple-adblock: bugfix: update config; use command -v
4e1bfa748 nspr: update to version 4.27
120ff2c63 nspr: nspr add -flto to compile
847ed6e0f nspr: fix compilation with newer musl
2f58b610d nspr: update to 4.25
fab10b8df nss: update to version 3.55 (security fix)
7c3b05d33 nss: update to 3.53
46d315d31 nss: fix build for mips64 disable arm32_neon on unsupported target
638b1642e nss: revert -flto change it seems that it can lead to segfault in libfreebl3.so
be95fcb78 nss: add -flto and makefile cleanup
f0e6ceff3 nss: update to 3.52
e5d732722 nss: update to 3.51.1
e713f74b7 nss: update to 3.51
d2efcd926 nss: update to 3.50
6a3d05272 nss: update to 3.49.2
5e371c2d5 libffi: fix build failure on powerpc platforms
0413252f3 libffi: update to 3.3
70faa62f3 libffi: do not build in a special directory
9ec9bea25 net/mosquitto: Update to 1.6.12
2f7867074 python3: fix rebasing error
769d51fa9 python: fix host compilation with clang
37857a3f2 python3: fix host compilation with clang
b28c614d3 lvm2: fix CE in mac
2020-09-18 13:50:25 +02:00
David Bauer
0b1ee0cf69
github: remove GitHub actions cache (#2120)
The performance benefit the cache brought was due to a broken sources
CDN mirror handling in OpenWrt.

The cache brings no measurable performance benefit. Disable it to slim
down the pipeline steps.
2020-09-18 13:50:02 +02:00
Andreas Ziegler
ab2f82ca73
clean up old cleanup code lines (#2119)
* gluon-core: remove obsolete file 100-core-reset-sysctl

* gluon-core: remove obsolete cleanup line

* gluon-client-bridge: remove obsolete cleanup line
2020-09-17 18:19:59 +02:00
David Bauer
5b068d7c47
treewide: rename local_client zone (#2115)
This renames the local_client zone to loc_client, as local_clint exceeds
the maximum zone length allowed for firewall3, which is 11 bytes.

This worked previously due to firewall3 using unsafe string operations.
Now creation of the chain fails (latest OpenWrt master).
2020-09-13 05:24:33 +02:00
David Bauer
21d1870ac5 modules: update OpenWrt
29b4104d69 OpenWrt v19.07.4: revert to branch defaults
d5810aa613 OpenWrt v19.07.4: adjust config defaults
ce6496d796 ath10k-ct-firmware: update firmware images
b72077150d ath10k-ct-firmware: update firmware images
ddc2af4505 ath10k-firmware: move CT firmwares to new package
a43a39f531 ath10k-firmware: update ath10k-ct firmware images
4b8a5bdc83 ath10k-firmware: update ath10k-ct firmware
e4b47e12cb ath10k-firmware: update Candela Tech firmware images
7ac454014a ramips: ethernet: fix to interrupt handling
f5afa593e7 hostapd: Fix compile errors after wolfssl update
403039c562 wolfssl: Update to version 4.5.0
dc61110adc wolfssl: use -fomit-frame-pointer to fix asm error
ad38a2ae61 wolfssl: update to 4.4.0-stable
0d35fcbff0 mbedtls: update to 2.16.8
2020-09-10 16:55:51 +02:00
Andreas Ziegler
f139cbf0b1
docs, README: Gluon v2020.2.1 2020-09-03 00:33:37 +02:00
Andreas Ziegler
1ac36fcff7 docs: add v2020.2.1 release notes 2020-09-03 00:31:52 +02:00
Andreas Ziegler
6f511a9442
docs: add v2020.1.4 release notes 2020-09-01 02:48:02 +02:00
David Bauer
b5c88e4134 modules: update OpenWrt
2d7ea69dd3 mac80211: Fix potential endless loop
5a1e4a7fdb oxnas: reduce size of ATA DMA descriptor space
19b8696dd7 mbedtls: update to 2.16.7
a2a75c21bd kernel: Update kernel 4.14 to version 4.14.195
8b0278a17e ath79: add support for TP-Link TL-WR710N v2.1
33973a90dc tools/tplink-safeloader: use soft_ver 1.9.1 for archer c6 v2
fce5101469 tplink-safeloader: update soft_ver for TP-Link Archer C6 v2 (EU)
350883bb90 Revert "scripts/download: add sources CDN as first mirror"
d8ecaef409 generic: platform/mikrotik: fix incorrect test
008db6b970 ath79: enable gpio on ar933x by default
3df63fba70 ath79: fix syntax error in ar7240_tplink_tl-wa.dtsi
be09fdbf36 ath79: ar724x: make sure builtin-switch is enabled in DT
5d3e5d6ccc ath79: WNR612v2: improve device support
fba9a88821 ath79: add LAN LEDs control bits for AR724x GPIO function pinmux
2020-08-31 22:42:37 +02:00
Andreas Ziegler
37a40cbca2
Merge pull request #2111 from freifunk-gluon/features-fix
Fix two feature handling bugs
2020-08-30 17:20:51 +02:00
T-X
9215d28972
ar71xx-generic: Add support for GL-iNet Microuter (GL-USB150) (#2112)
Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2020-08-30 00:48:37 +02:00
Linus Lüssing
90b4863b2c modules: update OpenWrt routing
This adds an important bugfix for BATMAN V users
("batman-adv: Fix own OGM check in aggregated OGMs").

b77498bd56 Merge pull request #603 from ecsv/batadv-for-19.07
6dea537c07 batman-adv: Merge bugfixes from 2020.3
0e5c75f536 Merge pull request #601 from bluewavenet/openwrt-19.07
ad8f02a4aa opennds: Backport v5.2.0
017d89d569 batctl: Enable build of mcast_flags subcommand

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2020-08-29 21:34:27 +02:00
T-X
d73c6b2bcf
gluon-ebtables-filter-multicast: allow respondd queries (#2103)
This allows running a respondd querier and map server behind a Gluon
node.

For instance at Freifunk Lübeck we now moved the map server
behind a Gluon VM and removed batman-adv and fastd from the
map server VM to reduce the maintenance work.

Increased multicast overhead should be minimal / non existent, as it is
unlikely to accidentally have respondd queriers running behind a Gluon
node.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2020-08-29 09:52:55 +02:00
Andreas Ziegler
53a6720af2
docs: fixes for v2020.2 release notes (#2108) 2020-08-29 00:14:31 +02:00
Matthias Schiffer
a9c2db939a features: handle all feature files in a single pass of feature_lib.get_packages()
All defined features need to be known at the same time, otherwise handling
a feed-provided feature definition file would add gluon-web-advanced etc.
to the package list when the corresponding feature flags appear in
GLUON_FEATURES.

Fixes: ee5ec5afe5 ("build: rewrite features.sh in Lua")
2020-08-28 22:27:38 +02:00
Matthias Schiffer
13b743d51e features: fix handling of logical expressions
The rewrite of the feature handling introduced multiple major bugs. One
of them was caused by the way Lua's logical operators work:

An expression of the form

    _'autoupdater' and _'web-advanced'

would return 'web-advanced' rather than the boolean true when _ returned
both strings unchanged (because the features are enabled).

As entries with more than a single feature name in their expressions did
not set no_default, Gluon would then attempt to add gluon-web-advanced to
the package selection, as web-advanced is a "pure" feature.

To fix this, and get rid of the annoying nodefault, separate handling of
"pure" feature and handling of logical expressions into two separate
functions, called feature() and when(). To simplify the feature
definitions, the package list is now passed directly to these functions
rather than in a table with a single field 'packages'.

Fixes: ee5ec5afe5 ("build: rewrite features.sh in Lua")
2020-08-28 22:27:38 +02:00
Matthias Schiffer
097efa9d2d
scripts: feature_lib.lua: improve error handling for invalid feature files
Print a proper error message, rather than just

    openwrt/staging_dir/hostpkg/bin/lua: scripts/feature_lib.lua:48: bad
    argument #1 to 'setfenv' (integer expected, got nil)
2020-08-28 20:41:54 +02:00
Martin Weinelt
b1294472c6
Merge pull request #2065 from freifunk-gluon/early-reconfigure
Domain switch during reboot/gluon-reload
2020-08-22 19:50:55 +02:00
Martin Weinelt
e9462b5b82
Merge pull request #2101 from 2tata/tata_200-wireless
gluon-core: 200-wireless simplify if conditions
2020-08-22 19:42:45 +02:00
Jan-Tarek Butt
94f5bd23b9 gluon-core: 200-wireless simplify if conditions
Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>
2020-08-19 17:16:22 +02:00
David Bauer
04b87dc1ca
Merge pull request #2100 from freifunk-gluon/lint-action
actions: add linter actions for lua and shell script
2020-08-16 15:08:32 +02:00
Martin Weinelt
7ca9d331e4
editorconfig: indent yaml with two spaces 2020-08-16 13:23:58 +02:00
Martin Weinelt
fabc9c1c0f
actions: add linter actions for lua and shell script 2020-08-16 13:23:58 +02:00
Martin Weinelt
78f4d0a348
Merge pull request #2099 from mweinelt/sae-wolfssl
gluon-mesh-wireless-sae: switch to wpa-supplicant-mesh-wolfssl
2020-08-16 01:50:58 +02:00
Martin Weinelt
e9e22f60e7
Merge pull request #2042 from blocktrron/wpa3-wolfssl
gluon-wireless-encryption-wpa3: switch to hostapd-wolfssl
2020-08-16 01:50:44 +02:00
Martin Weinelt
882595cc21
gluon-mesh-wireless-sae: switch to wpa-supplicant-mesh-wolfssl 2020-08-16 01:14:22 +02:00
Andreas Ziegler
a9e9d4050f
Merge pull request #2096 from freifunk-gluon/cpe210-versions
New CPE210/... v3 versions strings
2020-08-15 23:04:55 +02:00
Matthias Schiffer
ea2b811a37
build: check for unsynced feeds before build (#2092)
Forgetting to `make update` or leaving uncommitted changes in the
repositories managed by Gluon is a recurring cause of confusion, even
for experienced developers. Let's print an obvious warning message in
this case.
2020-08-15 22:39:17 +02:00
Martin Weinelt
71046d4a9b
Merge pull request #2071 from freifunk-gluon/gluon-branch
Replace GLUON_BRANCH with GLUON_AUTOUPDATER_BRANCH and GLUON_AUTOUPDATER_ENABLED
2020-08-15 16:41:53 +02:00
Matthias Schiffer
b12acc5b03
docs: update autoupdater documentation 2020-08-15 16:37:45 +02:00
Matthias Schiffer
e6d3d1584c
build: deprecate GLUON_BRANCH Make variable
GLUON_AUTOUPDATER_BRANCH and GLUON_AUTOUPDATER_ENABLED should be set
separately now.
2020-08-15 16:36:27 +02:00
Matthias Schiffer
d82ffb4f81
gluon-autoupdater: make site.conf branch setting optional
Default to the alphabetically smallest branch if none is set in
site.conf.

Also prevent enabling the autoupdater when no branches exist.
2020-08-15 16:36:27 +02:00
Matthias Schiffer
ee53357580
gluon-autoupdater: split CONFIG_GLUON_BRANCH into two separate options
The new options are CONFIG_GLUON_AUTOUPDATER_BRANCH and
CONFIG_GLUON_AUTOUPDATER_ENABLED and allow to control the default branch
and default enable status separately.

The `or ''` fallback in targets/generic is removed, as GLUON_ENV will
set all variables in GLUON_VARS, making previously non-existing
variables exist with an empty value.
2020-08-15 16:36:27 +02:00
Matthias Schiffer
26f02a4eb3
gluon-site: print better error message for domain code conflicts (#2098)
We already have a proper message when the creation of an alias fails
because of a name conflict. Also add a message when the primary filename
of a domain config is already occupied by another domain's alias.

Also add an 'Error:' prefix to the existing message to easier to see.
2020-08-15 16:11:49 +02:00
Matthias Schiffer
49e8d95bb4
ar71xx-generic: add manifest_aliases for new CPE210 v3 minor revisions 2020-08-15 15:40:18 +02:00
Matthias Schiffer
bcc8eb5232
ar71xx-generic: move CPE/WBS 210/220/510/520 minor versions to manifest_aliases
Only include the major version in the base image name or aliases.
2020-08-15 15:25:23 +02:00
Matthias Schiffer
bd0133ad37
scripts/target_lib.lua: print a meaningful error message for missing site_code (#2094)
site_code is evaluated early during config generation, so a site.conf
without site_code would hit this assertion that just printed 'Assertion
failed'. Add a proper error message to tell users what went wrong.

The inner assert() is removed, as it should never be hit (as site.conf
syntax will have already been validated when this script runs), and it
doesn't add anything (even without the assert, the attempt to index a
nil value would throw an error).
2020-08-15 13:59:54 +02:00
Matthias Schiffer
b66dcd0477
Merge pull request #2093 from freifunk-gluon/master-bump
modules: bump OpenWrt and packages
2020-08-15 10:50:47 +02:00
Andreas Ziegler
57cb28e815 modules: update OpenWrt
5af8da3787 ramips: fix Xiaomi MiWiFi Mini switch definition
e754e0a143 busybox: delete redundant patch
72878e3244 mac80211: Fix build on mpc85xx target
cdd9f19819 x86: Add CONFIG_EFI_CUSTOM_SSDT_OVERLAYS
b3b7665e62 ar71xx: fix ZyXEL NBG6616 wifi switch
4af7873412 tools/cmake: fix typo in parallel make patch
d6b158b869 mac80211: Update to 4.19.137-1
148d59c67e kernel: update kernel 4.14 to version 4.14.193
7db09853a8 scripts: Add Buildbot dump-target-info.pl script
e52f7cfc1d uboot-envtools: ar71xx: add ZyXEL NBG6616 uboot env support
8ad674e90b ar71xx: change u-boot-env to read-write for ZyXEL NBG6616
dedf089bb7 hostapd: add wpad-basic-wolfssl variant
2788db3d38 hostapd: reorganize config selection hierarchy for WPA3
d40ce8b32d ramips: correct WizFi630S pin mappings
d1985a1be6 ramips: enable flashing WizFi630S via OEM firmware
4212b6a01e ramips: remove doublet entry in WizFi630S dts file
a81c459d99 ramips: disable unused phy ports of WizFi630S
9d2dea8302 mvebu: fix LAN/WAN port assignment on ClearFog Base/Pro
de1693e56f ar71xx: restore support for boot console with arbitrary baud rates
1b3aca9142 ath79: restore support for boot console with arbitrary baud rates
f6acabcbdc ar71xx: enable ethernet LED of Arduino Yun
f17174e843 ar71xx: fix sysupgrade for Arduino Yun
f3c0eab9c7 Revert "ar71xx: fix Arduino Yun enabling of level shifters outputs"
2f756b39ed ramips: add kmod-usb-dwc2 to ZyXEL Keenetic image
06c6a3dd70 ramips: remove patches for USB-dwc2
2020-08-15 04:50:25 +02:00
Andreas Ziegler
695e4ea2cd modules: update OpenWrt packages
59d39c09d openvswitch: backport patch to fix build against kernel 4.14.193
03e8f0e0c adblock: refresh blocklist sources
bef08d8f7 rtl_433: update to 20.02
c34df4543 nano: update to 5.1
4a2d5aed7 nano: update to 5.0
490dfa34a irqbalance: update to 1.7.0
58e39c4b2 mosquitto: update to 1.6.11
2666e3b77 Merge pull request #13092 from jefferyto/golang-1.13.15-openwrt-19.07
6970bc743 golang: Update to 1.13.15
f91521f75 nlbwmon: add hotplug script to reload after interface ifup
b6185d402 nlbwmon: add conffiles
e6cad65f0 Merge pull request #13054 from micmac1/apa2446-19.07
92aff96a2 Merge pull request #13056 from odmdas/odmdas-freeradius3-Makefile-19.07
3fb559e8b freeradius3: add missing conffiles to Makefile
f5a57e42c apache: security bump to 2.4.46
61f3bd507 apache/apr/apr-util: remove maintainer
234fe24e4 apache: revisit suEXEC setup
d5096a76f apache: create log directory o=
30e81c3db Merge pull request #13046 from EricLuehrsen/unbound_20200806_1907
47288133f unbound: update to 1.11.0
d00237135 unbound: improve startup and dhcp script robustness
f73ed87a1 unbound: add dns assistants on local host
d4be5de1c tor-hs: add new package
c856721aa libzdb: fix headers path
650da029b libs: libzdb: bump to version 3.2.1
43db5293c libzdb: update to 3.2
7c5fe897f v4l-utils: bring back getsubopt patch
e9a4d689f libv4l: update to 1.20.0
59f45c6cc libv4l: update to 1.16.8
01ae3c69b libv4l: fix compilation under kernel 4.14
896359e4c libv4l: fix compilation with newer musl
e0deb2c5f libv4l: Update to 1.16.6. Fix missing includes patch
d9e221d6c libv4l: Add missing INTL dependency
cd2de9dc5 net/pagekitec: Update to v0.91.200718
2020-08-15 04:46:24 +02:00
Matthias Schiffer
de5ebfa44c
gluon-core: run firewall upgrade script after basic network setup (#2091)
Reorder scripts so that the mesh_lan interface is accounted for.

Two other firewall upgrade scripts (mesh-babel and l3roamd) are
reordered as well. While there seems to be no hard dependency at the
moment, it makes sense to run the basic setup first, also to avoid
problems with future changes.

Closes: #2090
Fixes: ed094bc68c ("gluon-core: firewall: Allow custom gluon_wired interfaces (#2041)")
2020-08-14 21:02:55 +02:00
bobcanthelpyou
2ad473bcd4
docs: fix small typos and use common used notation (#2088) 2020-08-13 13:25:45 +02:00
David Bauer
43b95cfcaa
lantiq-xrx200: remove modem packages from image (#2087)
The packages necessary to get the DSL modem working increase the
squashfs size by around 1MB.

Remove them from Gluon, as this functionality is not supported.
2020-08-11 17:30:49 +02:00
Matthias Schiffer
e06081c3fc
Merge pull request #2069 from freifunk-gluon/web-theme-cleanup
gluon-config-mode-theme: cleanup and select box theming
2020-08-10 21:33:40 +02:00
Andreas Ziegler
6346d20b2d
Merge pull request #2058 from freifunk-gluon/board-json-ifnames
Use LAN/WAN interfaces from board.json, add lantiq special case
2020-08-09 00:37:40 +02:00
Andreas Ziegler
892405b9e0
Merge pull request #2043 from freifunk-gluon/iface-type
Fix tunnel interface detection in respondd nodeinfo
2020-08-09 00:36:14 +02:00
David Bauer
64f4095c1c
gluon-status-page: add wireless client count (#2085)
This adds the wireless client count for 2.4GHz and 5 GHz radios to the
status page. Previously, only the total client count advertised by
the mesh protocol was visible.
2020-08-09 00:34:23 +02:00
Matthias Schiffer
96f1547d0f
docs: add a number of CSS fixes (#2078)
Fix a number of issues related to the vertical alignment and margins of
list elements.
2020-08-08 17:20:05 +02:00
Martin Weinelt
23c7003ed4
modules: update routing
4c05fe9 batman-adv: Merge bugfixes from 2020.2
822b55f batctl: Merge bugfixes from 2020.2
3f85711 nodogsplash: update to 4.0.3
2020-08-05 21:22:05 +02:00
Martin Weinelt
4cb7dbb926
modules: update OpenWrt packages
cd2de9dc5 net/pagekitec: Update to v0.91.200718
d7b38d736 simple-adblock: README and config update
0d8f39a36 tor: fix init scripts
a21ffc8eb tor: update init script
30f5119a4 netatalk: fix compile error in mac os
8658203e6 gerbera: fix conffiles
83e58b67d youtube-dl: update to version 2020.7.28
98480822e youtube-dl: update to version 2020.6.16.1
f384d8d78 youtube-dl: update to version 2020.6.6
65d98a79f youtube-dl: update to version 2020.5.29
010b5e6fb youtube-dl: update to version 2020.5.8
b32500958 mwan3: update version to 2.8.12
5f934c667 mwan3: unify variable check
138d02cfc mwan3: remove lock file entirely
520eeb080 mwan3: revert: also cleanup lock on mwan3 stop
294e7503b mwan3: fix race condition on mwan3 restart
e8e290e0f gerbera: enable matroska and ffmpeg
f73b1da1a libmatroska: update to 1.6.0
16d65196a libmatroska: add
18b9aeb4c libebml: update to 1.4.0
39abfa8d7 libebml: add
5bfc1c9cf mwan3: update version to 2.8.11
e02cac815 mwan3: add online and uptime to detail output
538d2fd7c mwan3: add workaround for procd change
b340df682 mwan3: also cleanup lock on mwan3 stop
b5ed0033c mwan3: fix rtmon routing table function generation
2c89e14c3 mwan3: fix IPv6 routing add handling
447d51edb mwan3: fix idx calculation
37e2f8820 mwan3: version bump
b9e346125 mwan3: cleanup duplicate ipv4 and ipv6 logic
db46d3ab0 mwan3: don't send iptable setup failures to /dev/null
383555d07 mwan3: add default rule for ipv6 in example config
dc25b38f1 mwan3: don't try to use ipv6 if not installed
ec45ff805 mwan3: be more efficient with sleep after killing trackers
d6b051b8c mwan3: don't add single ipv4 to connected list if already covered by a cidr
f834ba0fc mwan3: update version to 2.8.9
2f2044ecb mwan3: cleanup function mwan3_create_iface_route
db3c8326f mwan3: fix shellcheck warning SC2086
7d0f2cdb6 mwan3: fix shellcheck warning SC2166
c0b111fea mwan3: remove unused variable complained by shellcheck
3443eb3c7 mwan3: fix shellcheck warning SC2039
be8f287aa mwan3: move redirect error output to trash
08111b9c7 nextdns: Update to version 1.7.1
3272114cc mc: update to 4.8.25
a2b02f67d netdata: update to version 1.23.2
80a38c595 admin/netdata: Update to 1.22.1
76b143e00 netdata: update to version 1.20.0
f29fdc7c2 liblz4: fix previous patch
b40a139fb meson: allow compilation in a subdirectory
9d03a1ea5 liblz4: add patch removing distutils requirement
5f22b6c38 liblz4: convert to meson
345cb18d4 tor: update to version 0.4.2.8 (security fix)
da4a05296 mocp: disable ffmpeg
9b0e858c0 mpd: update to 0.21.25
7b269ec49 dovecot: remove incorrect PKG_BUILD_DEPENDS
14c248274 faad2: update to 2.9.2
f593c37cd xz: update to 5.2.5
97842ae44 zstd: fix compilation without host distutils
00f29de5f zstd: update to 1.4.5
1dc0c3b79 zstd: remove lto and as-needed flags
01abd5d37 zstd: convert to meson
6ae076fd1 aria2: Build with MIPS16
2cdf132b9 aria2: Update to 1.35.0
5200d6449 libvorbis: update to 1.3.7
e798f539c msmtp: update to version 1.8.11
780c45377 msmtp: update to version 1.8.10
0821c5001 squid: update to version 4.12
5658fd93f squid: fix 'localhet' typo in squid.conf
3b285bfaa quasselc: fix compilation with newer glib2
2c6155c9c gkrellmd: update to 2.3.11
fa49751a8 sumo: Update to 1.3.1
ddb0af406 python3: Backport security fixes
1a527963c golang: Update to 1.13.14
54b76dfd7 haveged: update to 1.9.13
984a32fff libvorbisidec: update to version 20180319
fb687b542 dnscrypt-proxy2: update to version 2.0.44
5ed85c038 openvswitch: bump to version 2.11.3
6a0eeda77 getdns: fix compilation without deprecated OpenSSL APIs
805c1344e getdns: properly remove libbsd support
cc0eb59f4 ntpd: update to version 4.2.8p15 (security fix)
fe32da084 python3-maxminddb: Fix build when using newer setuptools
4b0c1f871 python3: Use default _PYTHON_HOST_PLATFORM
86d2bfe02 mwan3: Fix mwan3 start not doing anything Due to a missing config load function call, mwan3 start runs ifup for an empty list of interfaces, thus not calling ifup at all.
b74d5e9c1 mwan3: update version to 2.8.7
4f394c259 mwan3: set status to unknown in rpcd if status file not found
f7749c663 mwan3: switch to procd init script
0498a2b35 mwan3: address reviewer comments on 5147dfc7
cc1bb3e8b mwan3: Use /128 for ipv6 if no other source address was found
74b6f1084 mwan3: Allow user to specify rules based on source interface
c14e74a5a mwan3: Do not mangle outgoing ipv6 pings
465baa46c mwan3: version bump to 2.8.6
19bebd3d8 mwan3: force busybox ping
ffce45e36 mwan3: don't add ipv6 link local address to routing tables
a3c399d01 mwan3: reduce calls to `ip route list'
4af28cc68 mwan3: Update Makefile
0693f0c9e mwan3: Don't use /128 address for ping source
7434c91c5 stubby: add build dependency on check package
140e2ea19 stubby: update to version 0.3.0
048a39258 getdns: update to version 1.6.0
0c03b71b8 samba4: update to 4.11.11
28b5a2b04 mc: fix mouse handling
9b3ce06b9 travis: improve build config
2461e7978 travis: Use Ubuntu 20.04 LTS - Focal Fossa
d7bec1b0f travis: Use Ubuntu (Bionic Beaver) 18.04 LTS
a80754337 travis: use mpc85xx-p2020 sdk instead of ar71xx
2a9998771 travis: Download SDK from OpenWrt instead of LEDE
b80db2c80 bind: add nslookup alternative to busybox nslookup
3c3a1f761 bind: update to version 9.16.3
177623c5f bind: update to version (security fix)
b73f479ea bind9: update to 9.16.1
d78bdbd8a python3: Update to 3.7.8, refresh/rework patches
c7495a200 syslog-ng: detect disabled IPv6 on loopback and fallback to IPv4
cd080dded miniupnpd: added libcap dependency
b418029e4 miniupnpd: update to 2.1.20200510
231e47185 miniupnpd: suppress grep and uci errors
5cb388497 miniupnpd: improve hotplug & interface handling
f49c2c71c stubby: fix handling of tls_port config option
f51ec94f8 acme: Bump release version
f7e03d127 acme: Handle ecc cert correctly
0e5b27324 acme: Handle log message correctly
4344723f8 https-dns-proxy: re-add conffiles and add description to Makefile
2c4644bf9 https-dns-proxy: bugfix: remove eDNS support
8044a7014 nextdns: Update to version 1.7.0
e1b8d033e irqbalance: fix socket directory and create it
4a129a996 treewide: add conffiles
ca6751a7d irqbalance: fix compilation for USE_GLIBC and BUILD_NLS cases
9bdd0f113 haveged: update to 1.9.12
45e78b34a Revert "ksmbd: update to 3.2.0, ksmbd-tools: update to 3.2.6"
1b1c2c598 haproxy: Update HAProxy to v2.0.15
fd3648a7b transmission: add access to web interface files to procd jail
054b87df4 transmission: add a disabled notification
8cb936731 transmission: update to 3.0
de86c989a upmpdcli: update to 0.4.6
9e108dcc7 upmpdcli: Update to 1.4.2
c82f63114 haveged: update to 1.9.11
445c3d8f8 perl: fix build failure in GCC10
456fc88c4 libtirpc: update to 1.2.6
b61848fd0 wsdd2: update to git 2020-05-06
de09918ac simple-adblock: racially-neutral names
5fcf2cb09 unbound: make option interface_auto default on
950646f6c unbound: bump PKG_RELEASE
ba19244b8 unbound: suggest matched domain option for dnsmasq link
72b0ea4b5 samba4: update to 4.11.9
d88405ba8 ksmbd: update to 3.2.0, ksmbd-tools: update to 3.2.6
1a0db6a21 softethervpn5: update to 5.01.9674
91be27471 rpcsvc-proto: update to 1.4.1
c0dce1d3a adblock: update 4.0.6
0ff5cb54e mpd: update to 0.21.24
982e7e2fa adblock: update 4.0.5-5
e2bd118b3 less: update ALTERNATIVES
53fc73b57 simple-adblock: remove obsolete dshield.org links from config
a93ea48b2 golang: Update to 1.13.12
49685b6be collectd: sqm_collect: tidy interval string handling
9a38e786f collectd: sqm_collectd: improve error handling
f89580290 collectd: Improve sqm_collectd error reporting
8dcc144b9 collectd: sqm_collectd improve interface name filter
18128f79d collectd: bump PKG_RELEASE
7ceb83acf collectd: SQM collect data from some qdiscs
9f20fbba5 collectd: add syslog json plugin
fdf5d41b5 rrdtool1: modify logarithmic scale labelling
e667100a9 knot: update to version 2.9.5
aef8cb50f knot: disable libcap-ng
550fa7c28 knot: update to version 2.9.3
1fe19e712 linuxptp: fix build failure
267b49087 sslh: use tls option instead of deprecated ssl
37f5ae61b gnutls: updated to 3.6.14
3efdcd808 mpd: enable id3tag for all builds
f0fd4c151 nextdns: Update to version 1.6.4
18efcda21 simple-adblock: bugfix: proper error reporting on failed downloads; lists update script
2020-08-05 21:20:12 +02:00
David Bauer
923299b834 openwrt: refresh patches
Fixes commit bf36c5b2d3 ("modules: bump OpenWrt")
2020-08-02 00:32:10 +02:00
David Bauer
bf36c5b2d3 modules: bump OpenWrt
86727bd158 hostapd: improve TITLE for packages
bf58bfb90e mediatek: mt7623: fix sysupgrade from vendor OpenWrt on UniElec U7623
2147c33e40 mediatek: mt7623: add explicit console= to U7623 kernel
8fbe450e40 curl: patch CVE-2020-8169
7d6e504dbe make_ext4fs: Update to version 2020-01-05
a225164bb5 make-ext4fs: update to HEAD of 2017-05-29 - eebda1
afaa978b74 firewall: backport patch for mss clamping in both directions
a2c9fc9ff0 ath79: correctly define WiFi switch for TL-WR841ND v8
7022f1eb13 bcm47xx: fix switch setup for Linksys WRT610N v2
fba22d89a9 tplink-safeloader: expand support list for TP-Link CPE210 v3
a785aed70e lantiq/xrx200: make WLAN button responsive on Fritzbox 7360 & 7362
4a9d6320af lantiq/xrx200: fix WLAN button actions for Fritzbox 3370
284cd7d18e lantiq/xrx200: make WLAN button responsive on Fritzbox 3370
2ca5a386ee vxlan: bump and change to PKG_RELEASE
e894e1b2f0 vxlan: fix udp checksum control
8c19171255 ipq40xx: fix ethernet vlan double tagging
b9a89bf7b5 build,json: fix compatibility with Python 3.5
9c0ad7f1d5 build: fix compatibility with python 3.6
78f57fbce6 build,json: fix build failure in case no data is found
270711b8ed build,json: store arch_packages in profiles.json
e3618eb2cc build: store default/device packages in JSON
3dbd74d032 imagebuilder: Remove json_info_files/ before build
8ea6be1510 kirkwood: support for button in Pogoplug V4
de75d6ecfa lantiq: dts: Move the &usb_vbus nodes out of &gpio
2d14da2c7d ar71xx: Fix mikrotik NAND compile problem
673e7944bb ar71xx: Fix mikrotik NAND compile problem
73e0ea1ea9 armvirt,x86: fix build breakage of crypto ccp module
d46650de7c nghttp2: bump to 1.41.0
9cad70044f kernel: fix nand_release() usage.
820f4654c6 wireguard: bump to 1.0.20200611
f4985a22ca kernel: Update kernel 4.14 to version 4.14.187
73fecd36bf mac80211: fix use of local variable
938839a565 scripts: JSON merge don't crash if no JSON found
3572711e3c build: refactor JSON info files to `profiles.json`
b7bac0737e build: image: fix build breakage of some images
8a0362c699 build: create JSON files containing image info
8293c8ed46 ath79: do not build TP-Link tiny images by default
670eeb7888 mediatek: fix IPv4-only corner case and commit in 99-net-ps
9c58f5d4ff bcm63xx: DGND3700v1: fix port order
ebefdf61ed ramips: increase SPI frequency for ELECOM WRC-GST devices
6b042217d7 mvebu: fix default EU regdomain for Linksys WRT AC devices
a2c556aa8f libnetfilter-queue: fix package title and description
8adbe26f6e base-files: remove urandom-seed definition
b40e6bc55f ath79: drop and consolidate redundant chosen/bootargs
153392e209 ath79: add support for TP-Link TL-WA801ND v3/v4
6520659870 uclient: update to 19.07 Git HEAD
b547542297 Revert "uclient: Update to version 2020-06-17"
0c910d8459 uclient: Update to version 2020-06-17
18cf2383b6 bcm63xx: a226m-fwb: fix linux partition offset
2020-08-02 00:25:55 +02:00
David Bauer
a3a55d6461
openwrt: backport DFS fixes (#2077)
This backports two fixes related to operation on DFS-required
channels.

When a DFS-required channel was selected as the regular
(non-outdoor-mode) 5 GHz channel, hostapd would switch to a non-DFS
channel as OpenWrt did not pass a chanlist of allowed ACS channels.

When hostapd is given a single channel for the chanlist or there's no
available channel left (all allowed channels are in the no-occupancy
period), hostapd prints "no DFS channels left, waiting for NOP to
finish" to the syslog but never stopped transmitting on this channel,
still sending out beacon frames and allowing client data transfer.
2020-07-29 15:45:17 +02:00
David Bauer
de9d3a917e
actions: cache OpenWrt DL folder (#2084)
This adds the ability to cache OpenWrt dependencies on a per-target
base. Artifacts over 10MB are excluded, as GitHub imposes a limit of 5G
of available space per repository cache. This affects mostly
linux(-firmware) and gcc / gdb.

The goal is to reduce the total amount of requests necessary to fetch
dependencies.
2020-07-25 00:42:55 +02:00
David Bauer
44bb65af0a docs, README: Gluon v2020.2
(cherry picked from commit bf8c3babae)
2020-07-19 17:01:11 +02:00
David Bauer
7ea55addc7 docs: add v2020.2 release notes
Closes #1979
Closes #2062

(cherry picked from commit 582d2d6954)
2020-07-19 17:01:11 +02:00
David Bauer
bf8c3babae
docs, README: Gluon v2020.2 2020-07-19 16:53:08 +02:00
David Bauer
582d2d6954 docs: add v2020.2 release notes
Closes #1979
Closes #2062
2020-07-19 16:49:08 +02:00
David Bauer
ec582b7742 gluon-web: don't display outdoor mode on preserve_channels (#2074)
This will hide the outdoor mode setting on compatible devices in case
the defined channels should be preserved.

Otherwise a user might be under the impression their device is compliant
with outdoor operation when in reality it still uses prohibited
channels.

(cherry picked from commit 73b830eb32)
2020-07-13 23:19:09 +02:00
Matthias Schiffer
d3613ac5df gluon-radv-filterd: add string.h and guard to mac.h
- #pragma once include guard
- include string.h to get memset and memcmp prototypes to fix respondd
  provider build warning

(cherry picked from commit e32fa5bc64)
2020-07-13 23:18:56 +02:00
Matthias Schiffer
ce6caa1ac7 gluon-radv-filterd: downgrade frequent messages to DEBUG_MSG
When the network connectivity is bad, routers may not appear in the
translation tables, or there may be no originator with TQ >0. Such
conditions to not warrant spamming the log with error messages.

(cherry picked from commit fcd07de676)
2020-07-13 23:18:49 +02:00
Matthias Schiffer
bc066b88e6 gluon-radv-filterd: remove unneeded memset
(cherry picked from commit e384f899b7)
2020-07-13 23:18:44 +02:00
David Bauer
12f90e3a57 docs: wlan-configuration: document outdoor mode behavior (#2075)
Document the behavior of the Outdoor mode when preserve_channels is
enabled.
2020-07-07 03:09:15 +02:00
David Bauer
2e37ffff56
docs: wlan-configuration: document outdoor mode behavior (#2075)
Document the behavior of the Outdoor mode when preserve_channels is
enabled.
2020-07-06 20:06:52 +02:00
David Bauer
73b830eb32
gluon-web: don't display outdoor mode on preserve_channels (#2074)
This will hide the outdoor mode setting on compatible devices in case
the defined channels should be preserved.

Otherwise a user might be under the impression their device is compliant
with outdoor operation when in reality it still uses prohibited
channels.
2020-07-05 19:05:27 +02:00
Matthias Schiffer
1fc71a73b3
gluon-config-mode-geo-location-osm, gluon-web-osm: add support for custom tile layers (#2072)
Allow replacing the default OSM layer with a custom XYZ layer in
site.conf.
2020-07-05 17:06:59 +02:00
Matthias Schiffer
9b3ee477fa
Rewrite features.sh in Lua (#2045)
* build: target_config_lib: introduce concat_list helper

* build: rewrite features.sh in Lua

The `features` file is converted to a Lua-based DSL.

A helper function `_` is used in the DSL; this will return the original
string for enabled features, and nil for disabled features. This allows
to use boolean operations on features without making the code too
verbose.

Besides having more readable and robust code, this also fixes the bug
that all files `packages/*/features` were evaluated instead of only
using the feature definitions of currently active feeds.

* build: add luacheck support for package/features
2020-07-04 22:07:55 +02:00
Matthias Schiffer
2bfc39f3f7
scripts: generate_manifest: remove obsolete manifest lines (#2067)
The current manifest format was introduced with the new autoupdater in
Gluon v2018.1. Reduce the manifest size by 70% by removing the additional
manifest lines added for backwards compatiblity.
2020-07-04 22:07:25 +02:00
David Bauer
b099b3ceba
Merge pull request #2068 from freifunk-gluon/radv-filterd
gluon-radv-filterd: minor cleanup
2020-07-04 21:02:40 +02:00
Matthias Schiffer
813f89a60b
docs: features/multidomain: update docs to mention gluon-switch-domain 2020-07-04 10:50:33 +02:00
Matthias Schiffer
f75f40d29a
gluon-config-mode-theme: add cross-browser styling for <select> elements
Replace the ugly arrow shown in Firefox with a custom SVG arrow. Tested
and working in Firefox, Chrome and Edge. The arrow doesn't show in IE, but
the gluon-web-model JavaScript is already severely broken in IE, so we
don't care.
2020-07-03 21:53:51 +02:00
Matthias Schiffer
5263583b74
gluon-config-mode-theme: clean up SCSS
Remove unused and obsolete code.
2020-07-02 23:45:34 +02:00
Matthias Schiffer
7360e97a9c
gluon-web-*: remove non-existing CSS classes 2020-07-02 23:43:23 +02:00
Matthias Schiffer
c2f9c28e0e
gluon-config-mode-theme: indent scss using tabs 2020-07-02 22:57:13 +02:00
Matthias Schiffer
02c8650bae gluon-scheduled-domain-switch: use gluon-switch-domain 2020-07-02 22:35:05 +02:00
Matthias Schiffer
6ab9d3415d gluon-hoodselector: use gluon-switch-domain 2020-07-02 22:35:05 +02:00
Matthias Schiffer
6750aef017 gluon-core: add gluon-switch-domain utility 2020-07-02 22:35:05 +02:00
Matthias Schiffer
e32fa5bc64
gluon-radv-filterd: add string.h and guard to mac.h
- #pragma once include guard
- include string.h to get memset and memcmp prototypes to fix respondd
  provider build warning
2020-07-02 00:17:50 +02:00
Matthias Schiffer
fcd07de676
gluon-radv-filterd: downgrade frequent messages to DEBUG_MSG
When the network connectivity is bad, routers may not appear in the
translation tables, or there may be no originator with TQ >0. Such
conditions to not warrant spamming the log with error messages.
2020-07-02 00:10:45 +02:00
Matthias Schiffer
e384f899b7
gluon-radv-filterd: remove unneeded memset 2020-07-02 00:10:29 +02:00
Matthias Schiffer
97f1515284 build: add luacheck support for package/features 2020-07-01 20:35:22 +02:00
Matthias Schiffer
ee5ec5afe5 build: rewrite features.sh in Lua
The `features` file is converted to a Lua-based DSL.

A helper function `_` is used in the DSL; this will return the original
string for enabled features, and nil for disabled features. This allows
to use boolean operations on features without making the code too
verbose.

Besides having more readable and robust code, this also fixes the bug
that all files `packages/*/features` were evaluated instead of only
using the feature definitions of currently active feeds.
2020-07-01 20:35:22 +02:00
Matthias Schiffer
0fd5905fc2
build: target_config_lib: introduce concat_list helper 2020-07-01 20:10:40 +02:00
Matthias Schiffer
8a79d0249f
gluon-scheduled-domain-switch: move gluon-switch-domain to /lib/gluon/scheduled-domain-switch
This script is an implementation detail - let's not clutter the global
$PATH namespace with a script with such a generic name.
2020-06-30 23:49:01 +02:00
Matthias Schiffer
60351a1f19
gluon-core: allow to switch domains during reconfiguration
When gluon.core.switch_domain is set, it replaces the old domain.

This also replaces an unnecessary uci:commit() with uci:save().
2020-06-30 23:49:01 +02:00
Matthias Schiffer
62e71fbc40
gluon-core: run gluon-reconfigure on boot when gluon.core.need_reconfigure is set 2020-06-30 23:49:00 +02:00
Matthias Schiffer
cf0dc24463
gluon-setup-mode: create symlinks in install script
The package rebuild logic of OpenWrt only checks regular files. Avoid
symlinks in the files directory to make rebuilds more robust.
2020-06-30 23:48:55 +02:00
David Bauer
9be7a5cad7
gluon-wan-dnsmasq: read interfaces to update from flag-files (#2060)
This commit changes the behavior for the wan-dnsmasq to read the
interfaces to update the DNS servers on from flag-files.

This way, external custom packages which add a custom VPN WAN interface
can update the DNS server gluon is using for WAN resolving.
2020-06-30 16:37:09 +02:00
Matthias Schiffer
fa0e2d06b6
gluon-core: lantiq: use WAN interface from switch0 configuration
On lantiq, the default WAN ifname is 'dsl0' even on devices that have a
separate WAN port. At least on devices using swconfig we can override
this with the switch port labelled as 'wan'.
2020-06-21 17:47:45 +02:00
David Bauer
5696be7240 mt76: mt76x0: disable GTK offloading
When the GTK is offloaded, MT7610 won't transmit any multicast frames.
This is most likely due to a bug in the offloading datapath. MT7612 is
not affected.

Disable GTK offloading for now. It can be re-enabled once the bug in the
offloading path is fixed.

Signed-off-by: David Bauer <mail@david-bauer.net>
2020-06-14 17:11:17 +02:00
David Bauer
efb6b9d555 gluon-core: allow WPA3 features on ramips-mt7620
Backporting the MFP patch allows us to utilize WPA3 features on this
target.

Tested on TP-Link Archer C20i
2020-06-14 17:11:04 +02:00
David Bauer
f9008851d5 mac80211: rt2800: enable MFP support unconditionally
This gives us WPA3 support out of the box without having to manually disable
hardware crypto. The driver will fall back to software crypto if the connection
requires management frame protection.

THis allows us to use WPA3 features (Private-WiFi SAE & OWE) on
ramips-mt7620.
2020-06-14 17:10:55 +02:00
David Bauer
2be6fe32e6 modules: update OpenWrt
b515edb775 ipq40xx: essedma: Disable TCP segmentation offload for IPv6
f7f15f8033 ath79: wndr3700 series: fix wifi range & throughput
1f5cbd6be7 ca-certificates: update to version 20200601
fa72f2646a oxnas: build with 8021Q VLAN support
e752fc1ff9 ath79: add support for TP-Link TL-WR802N V1 and V2
6488d2f7cc ath79: update WA/XC devices UBNT_VERSION to 8.5.3
fb79e5d9fe ipq806x: EA8500 fix boot partition detection
e36bdd5dc5 ath79: fix LEDs for GL.inet GL-AR150
21454a772b ar71xx: fix reset key for TP-Link TL-WR802N V1/V2
a32b0ec4cf generic: fix flow table hw offload

Closes #2055
2020-06-14 15:49:17 +02:00
Matthias Schiffer
5e44f7cdde
gluon-core: get LAN and WAN interfaces from board.json
Instead of looking at the initial UCI config, we can read this
information from board.json.
2020-06-14 12:38:53 +02:00
David Bauer
2891454f16 mt76: mt76x0: disable GTK offloading
When the GTK is offloaded, MT7610 won't transmit any multicast frames.
This is most likely due to a bug in the offloading datapath. MT7612 is
not affected.

Disable GTK offloading for now. It can be re-enabled once the bug in the
offloading path is fixed.

Signed-off-by: David Bauer <mail@david-bauer.net>
2020-06-13 23:07:05 +02:00
David Bauer
baa53b4d8b
Merge pull request #2052 from blocktrron/rt2x00-80211w
mac80211: rt2800: enable MFP support unconditionally
2020-06-13 19:07:52 +02:00
Matthias Schiffer
3926717998
gluon-mesh-batman-adv: do not delete bat0 during hardif teardown (#2057)
With very bad timing, it is possible that the teardown script of a
gluon_mesh interface runs when bat0 was just created, but primary0 is not
yet added to it. Although there is no hardif to remove in this case,
bat0 will still be deleted, because there is no hardif in bat0.

Disable the interface removal logic by passing `-M` to `batctl interface`.

(cherry picked from commit 92647cd47a)
2020-06-13 18:45:13 +02:00
Matthias Schiffer
92647cd47a
gluon-mesh-batman-adv: do not delete bat0 during hardif teardown (#2057)
With very bad timing, it is possible that the teardown script of a
gluon_mesh interface runs when bat0 was just created, but primary0 is not
yet added to it. Although there is no hardif to remove in this case,
bat0 will still be deleted, because there is no hardif in bat0.

Disable the interface removal logic by passing `-M` to `batctl interface`.
2020-06-13 18:44:46 +02:00
Matthias Schiffer
6cb5a2ac7a
docs: update version number to v2020.2+
v2020.2.x has been branched, so the current master is v2020.2+.
2020-06-13 13:21:47 +02:00
Matthias Schiffer
ee473ce2a4
gluon-config-mode-outdoor: enable 5GHz mesh interfaces when disabling outdoor mode
There is no setting to explicitly enable mesh interfaces in the config
wizard, so we need to enable mesh interfaces by default when the outdoor
mode is disabled (unless site.conf dictates otherwise).

The simplest way to achieve this is to delete the 5GHz mesh interface
sections when outdoor mode is disabled: 200-wireless would delete and
recreate them a moment later anyways, but by deleting them earlier we
ensure that the disabled status is initialized from site.conf again.

(cherry picked from commit 17bc622892)
2020-06-12 22:12:01 +02:00
Matthias Schiffer
b466d00d3f
gluon-web-wifi-config: default to enabled 5GHz mesh interfaces when disabling outdoor mode
When disabling outdoor mode, 5GHz mesh interfaces should be enabled by
default again (unless disabled in site.conf).

(cherry picked from commit d2052431dd)
2020-06-12 22:12:01 +02:00
Matthias Schiffer
86b0a60d8d
gluon-core: fix handling of 'disabled' site.conf attributes for mesh interfaces
Because is_disabled() was always returning true or false, the
first_non_nil() would never actually check the default setting from
site.conf. This was broken since v2017.1.

Fixes: 6cf03bab37 ("treewide: replace normal uses of luci.model.uci with simple-uci to reduce LuCI dependencies")
(cherry picked from commit 3c2593b684)
2020-06-12 22:12:01 +02:00
Matthias Schiffer
41d13742f6
build: target_config_lib: do not build unused packages for targets without opkg (#2051)
Normally, we build all nonshared packages (which includes all kernel
modules) to generate an opkg feed for later package installations by
users. On targets without opkg, this just wastes time - disable it.

(cherry picked from commit b3edfd292a)
2020-06-12 22:12:01 +02:00
Matthias Schiffer
a426312cb8
Merge pull request #2054 from freifunk-gluon/outdoor-mesh-enable
Enable 5GHz mesh interfaces when disabling outdoor mode, fix default status from site.conf
2020-06-12 22:10:42 +02:00
Matthias Schiffer
17bc622892
gluon-config-mode-outdoor: enable 5GHz mesh interfaces when disabling outdoor mode
There is no setting to explicitly enable mesh interfaces in the config
wizard, so we need to enable mesh interfaces by default when the outdoor
mode is disabled (unless site.conf dictates otherwise).

The simplest way to achieve this is to delete the 5GHz mesh interface
sections when outdoor mode is disabled: 200-wireless would delete and
recreate them a moment later anyways, but by deleting them earlier we
ensure that the disabled status is initialized from site.conf again.
2020-06-12 19:27:01 +02:00
Matthias Schiffer
d2052431dd
gluon-web-wifi-config: default to enabled 5GHz mesh interfaces when disabling outdoor mode
When disabling outdoor mode, 5GHz mesh interfaces should be enabled by
default again (unless disabled in site.conf).
2020-06-12 19:13:20 +02:00
Matthias Schiffer
3c2593b684
gluon-core: fix handling of 'disabled' site.conf attributes for mesh interfaces
Because is_disabled() was always returning true or false, the
first_non_nil() would never actually check the default setting from
site.conf. This was broken since v2017.1.

Fixes: 6cf03bab37 ("treewide: replace normal uses of luci.model.uci with simple-uci to reduce LuCI dependencies")
2020-06-11 23:52:22 +02:00
Matthias Schiffer
b3edfd292a
build: target_config_lib: do not build unused packages for targets without opkg (#2051)
Normally, we build all nonshared packages (which includes all kernel
modules) to generate an opkg feed for later package installations by
users. On targets without opkg, this just wastes time - disable it.
2020-06-11 02:16:49 +02:00
David Bauer
2611e86438 gluon-core: allow WPA3 features on ramips-mt7620
Backporting the MFP patch allows us to utilize WPA3 features on this
target.

Tested on TP-Link Archer C20i
2020-06-10 22:45:01 +02:00
David Bauer
e8cc866db2 mac80211: rt2800: enable MFP support unconditionally
This gives us WPA3 support out of the box without having to manually disable
hardware crypto. The driver will fall back to software crypto if the connection
requires management frame protection.

THis allows us to use WPA3 features (Private-WiFi SAE & OWE) on
ramips-mt7620.
2020-06-10 22:41:01 +02:00
Matthias Schiffer
e6491287ba
gluon-core: create disabled mesh interface sections in outdoor mode
The interfaces should always exist and just be disabled when outdoor
mode is enabled. Not creating them at all leads to an issue in the
advanced wifi settings where an additional reload of the page is
necessary after enabling or disabling the ourdoor mode to make the mesh
VIF options appear or disappear.

(cherry picked from commit b15b008e69)
2020-06-07 10:56:40 +02:00
Matthias Schiffer
3d091912af
gluon-web-wifi-config: make mesh VIF options depend on outdoor=false
Instead of relying on the existence of interface sections only (which is
still used for the case of interface types that are not configured at
all in the site config), add a proper dependency.

This fixes section visiblity with enabled outdoor mode after the following
fix, and gives the user immediate feedback (allowing to disable outdoor
mode and enable meshing in a single step).

(cherry picked from commit d012d7d32f)
2020-06-07 10:56:39 +02:00
Matthias Schiffer
63ca8f8bfa
gluon-web-wifi-config: rename and simplify filter_active_interfaces()
- Return early
- Rename to has_active_interfaces(), as it returns a boolean

(cherry picked from commit 53c33acaf9)
2020-06-07 10:56:39 +02:00
Matthias Schiffer
8ecc5d89cc
gluon-config-mode-outdoor, gluon-web-wifi-config: commit network config
200-wireless will add or remove the mesh network sections of
/etc/config/network. Commit this file, so the modified setting doesn't
get lost on reboot.

Fixes: #2048
(cherry picked from commit 600ab99f80)
2020-06-07 10:56:39 +02:00
Matthias Schiffer
11beb822a5
build: target_config_check: make check more lenient
Always allow options set to builtin (=y) when modular setting (=m) is
expected. This can happen when a package is added explicitly (in a
target defintion or site.mk) that is also pulled in as a dependency of
another builtin package.

Fixes: 9e23534ec3 ("build: rework config generation")
Fixes: #2046
(cherry picked from commit 8b64517f1b)
2020-06-07 10:55:01 +02:00
David Bauer
60d7288255
Merge pull request #2047 from freifunk-gluon/fix-config-check
build: target_config_check: make check more lenient
2020-06-07 03:10:24 +02:00
David Bauer
5d51b7dc2a
Merge pull request #2049 from freifunk-gluon/outdoor-mode-commit
Fix /etc/config/network commit for outdoor mode change, and related fixes
2020-06-07 03:09:00 +02:00
Matthias Schiffer
e8c65ef75f
gluon-web-model: fix conflicting table fields "reset"
With 11a3b56617 ("gluon-web-model: add dependency support for
sections"), a "reset" function was added to all model nodes. This
conflicts with the "reset" field of the Form object, making reset
buttons show labels like "function: 0xbb8d50" and possibly breaking form
processing when packages override the reset field.
2020-06-06 17:23:21 +02:00
Matthias Schiffer
b15b008e69
gluon-core: create disabled mesh interface sections in outdoor mode
The interfaces should always exist and just be disabled when outdoor
mode is enabled. Not creating them at all leads to an issue in the
advanced wifi settings where an additional reload of the page is
necessary after enabling or disabling the ourdoor mode to make the mesh
VIF options appear or disappear.
2020-06-06 17:12:13 +02:00
Matthias Schiffer
d012d7d32f
gluon-web-wifi-config: make mesh VIF options depend on outdoor=false
Instead of relying on the existence of interface sections only (which is
still used for the case of interface types that are not configured at
all in the site config), add a proper dependency.

This fixes section visiblity with enabled outdoor mode after the following
fix, and gives the user immediate feedback (allowing to disable outdoor
mode and enable meshing in a single step).
2020-06-06 17:12:13 +02:00
Matthias Schiffer
53c33acaf9
gluon-web-wifi-config: rename and simplify filter_active_interfaces()
- Return early
- Rename to has_active_interfaces(), as it returns a boolean
2020-06-06 17:12:12 +02:00
Matthias Schiffer
600ab99f80
gluon-config-mode-outdoor, gluon-web-wifi-config: commit network config
200-wireless will add or remove the mesh network sections of
/etc/config/network. Commit this file, so the modified setting doesn't
get lost on reboot.

Fixes: #2048
2020-06-06 16:47:35 +02:00
Matthias Schiffer
8b64517f1b
build: target_config_check: make check more lenient
Always allow options set to builtin (=y) when modular setting (=m) is
expected. This can happen when a package is added explicitly (in a
target defintion or site.mk) that is also pulled in as a dependency of
another builtin package.

Fixes: 9e23534ec3 ("build: rework config generation")
Fixes: #2046
2020-06-05 22:27:10 +02:00
Matthias Schiffer
45b518df11 gluon-web-model: remove unused field error message code
Validation errors are mostly handled in the frontend (by displaying
invalid fields with a red background). There was some code left in the
backend for handling different kinds of errors, and returning custom
error messages from validate(), but the resulting value was not used
anywhere.
2020-06-05 21:46:30 +02:00
Matthias Schiffer
5adbaf2907 gluon-web-model: remove dead code for section errors 2020-06-05 21:46:30 +02:00
Matthias Schiffer
e6859ca031 gluon-web-model: remove unused tag_invalid and tag_missing fields 2020-06-05 21:46:30 +02:00
Matthias Schiffer
11a3b56617 gluon-web-model: add dependency support for sections
- Add a dependency array to section template
- Lift dependency handling from AbstractValue to Node
- Split resolve_depends() into a function handling dependencies of a
  node itself (resolve_node_depends()), which now is used for all nodes,
  and the existing recursive descent through the node tree
- When any node's dependencies are not satisfied, all descendents are
  reset recursively, meaning that an option in a section that is hidden
  will always be ignored, as if the option's own dependencies were
  unsatisfied

Fixes: #1349
2020-06-04 22:54:28 +02:00
Matthias Schiffer
35950b44b7 gluon-web-model: fix passing additional variables from form template to sections
This is currently unused in our packages.
2020-06-04 22:54:28 +02:00
Matthias Schiffer
3951607e53 gluon-web-model: fix deplist() argument list
Fixes dependency tracking for individual <option> elements (currently
unused).
2020-06-04 22:54:28 +02:00
Matthias Schiffer
50adb097fa
build: make GluonSrcDiet simpler and more robust (#2033)
- If luasrcdiet fails for a Lua script, this is a bug that should be
  noticed rather than including the unminified script
- Use .tmp suffix for temporary file rather than .o
- Replace chmod + stat + mv with simpler cp + rm to overwrite file while
  preserving file mode
2020-06-04 22:53:14 +02:00
Chrissi^ (Chris Fiege)
1956696da5
openwrt: Store Kernel Debug-Info (#1971)
This change stores a Kernel with Debug-Symbols for the current
architecture in a new output directory '<outputdir>/debug'.
This allows a developer or operator of a network to store the kernel
along with the actual images. In case of a kernel oops the debug
information can be used with the script
'scripts/decode_stacktrace.sh' in the kernel source tree to get the
names to the symbols of the stack trace.

OpenWRT already provides the CONFIG_COLLECT_KERNEL_DEBUG -option that
creates a kernel with debug-symbols in the OpenWRT output directory.
This change enables this option and copies the generated kernel to the
gluon output directory.

Signed-off-by: Chrissi^ <chris@tinyhost.de>
2020-06-04 22:35:58 +02:00
David Bauer
cfce3ee91e ar71xx-generic: set tiny class-flag for D-Link DIR-825 B1
The D-Link DIR-825 has only 6M of usable firmware space.
2020-06-04 18:02:32 +02:00
Matthias Schiffer
84525c5a5b
docs: releases: remove "v" prefix from page titles
None of the other release pages have a "v" before the version number.
2020-06-03 21:45:48 +02:00
David Bauer
cc75a7681d
docs, README: Gluon v2020.1.3
Signed-off-by: David Bauer <mail@david-bauer.net>
2020-06-03 21:45:48 +02:00
David Bauer
ea12efd127 modules: bump OpenWrt packages
e76090945 unbound: expose interface-auto to UCI
0d9483608 Merge pull request #12382 from neheb/gst-p
1d9283083 gst1-plugins-bad: don't add webp support
3f922137d Merge pull request #12383 from neheb/pige
92778390b gst1-libav: update to 1.16.2
216f42ee8 gst1-plugins-ugly: update to 1.16.2
c20a65698 gst1-plugins-bad: update to 1.16.2
eeb2c01d9 gst1-plugins-good: update to 1.16.2
83df5f091 gst1-plugins-base: update to 1.16.2
eee7ce2b4 gstreamer1: update to 1.16.2
3025f6c32 pigeonhole: Update to 0.5.9
114823c7c pigeonhole: reflect license of LGPL-2.1-or-later
59ca87226 pigeonhole: update to 0.5.8
41cb01203 gst1-libav: update to 1.16.1
c187321ac gst1-plugins-ugly: update to 1.16.1
16b7bb066 gst1-plugins-bad: Make HLS crypto explicit
c83524006 gst1-plugins-bad: update to 1.16.1
a0bf86150 gst1-plugins-good: update to 1.16.1
990a21184 gst1-plugins-base: update to 1.16.1
ca4a06a25 gstreamer1: update to 1.16.1
235891593 net/mosquitto: bump to 1.6.10
620838fc9 ola: fix compilation with GCC4
142fd306e dovecot: update to version 2.3.10.1 (security fix)
c09244b01 adblock: update 4.0.5-4
45313e42f adblock: update 4.0.5-3
6e27e5196 Merge pull request #12348 from adrianschmutzler/fixmake
a9b5867e2 Merge pull request #12294 from neheb/keab
d85c355aa treewide: use relative include paths for python Makefiles
07d541c14 Merge pull request #12339 from ja-pa/transmission-fix-19.07
615d909a2 transmission: init script check syscall list for seccomp
d5062122e Merge pull request #12292 from neheb/spoof
4ceab639b Merge pull request #12269 from neheb/gerb56
9aa0d8cf7 Merge pull request #12330 from rs/nextdns-1.6.3-openwrt-19.07
6e6e5fa2a nextdns: Update to version 1.6.3
b43a7d4b1 Merge pull request #12326 from rs/nextdns-1.6.0-openwrt-19.07
474296dcb nextdns: Update to version 1.6.0
5507a02e2 Merge pull request #12313 from aleksander0m/aleksander/mm-mtu-19.07
ede1a8221 modemmanager: set interface MTU based on bearer settings
c6eea20bc giflib: remove host build
b4cf130cb libtasn1: fix host build under old GCC
5a1699aeb kea: do not build static host binaries
bb42a250b kea: Update kea to the latest stable verion (1.6.2).
1d30a273e kea: Remove openssl host dependency
f22e122e6 kea: update package to 1.6.0 Update kea to the latest stable verion (1.6.0).
6f19b894d kea: remove dependency and reduce file size Remove boost-python3 dependency and reduce file size of the compiled kea-libs
87f4d6ba2 kea: fix kea-admin dependency Fix kea-admin dependency where if procps-ng-ps wasn't available busybox would output an error casuse it does't support showing a processe's PID
1360d1f88 kea: fix and improve makefile Fix an issue where the Makefile wouldn't allow kea to show up in the menuconfig Also added some description to the packages
07538f535 kea: remove python3 dependency of kea-admin
efde7c454 kea: Fix compilation without deprecated OpenSSL APIs
09ea6f032 kea: Don't install to STAGING_DIR_HOST
fb58e3b8c spoofer: remove host build + cleanups
deccad892 spoofer: Update to 1.4.5
15257f5b6 adblock: limit domain name length
246fc735b nano: update to 4.9.3
673e76b1c Merge pull request #12275 from micmac1/mar19run
39db22ec9 mariadb: use default umask for rundir
8362f46fe gerbera: backport init and config changes from master
225eeb9a6 gerbera: add taglib support
074444794 libupnp: enable reuseaddr
51efb1723 taglib: update to 1.12-beta-1
778f14f51 taglib: fix taglib-config paths
e74a456c0 taglib: add
c8d2ed2cb adblock: release 4.0.5
a41e068db sslh: update to 1.20
23251b93a Merge pull request #12247 from jefferyto/python-setuptools-site-patch-openwrt-19.07
32fb2ba0d python-setuptools: Fix error when installing from source
6dac29693 python3-setuptools: Fix error when installing from source
49ac1e8b7 bind: update to version 9.14.12
99998e218 syslog-ng: update to version 3.27.1
64ebad3fd syslog-ng: restore service "reload" to actually working
0e80f0486 syslog-ng: including user settings after system settings
98d4126c4 qemu: ignore configure option --disable-ipv6
50148ea08 openvswitch: fix file generation in /etc/modules.d
676e6ddd6 Merge pull request #12216 from BKPepe/19.07-unbound
149a08477 Merge pull request #12231 from jefferyto/python-openssl-ca-certs-openwrt-19.07
c06212082 python-openssl: Add dependency on ca-certs
c32e08f30 python3-openssl: Add dependency on ca-certs
828ba37e0 unbound: update to version 1.10.1
2ccdae9a4 Merge pull request #12206 from micmac1/mar-1907-10413
115f7eeb0 mariadb: install config files readable for all
4f0d10835 mariadb: move mysql_upgrade to the client package
9dda3cc87 mariadb: bump to 10.2.32
5e9f5cd76 Merge pull request #12187 from jefferyto/golang-1.13.11-default-platform-options-openwrt-19.07
d3762591d golang: Set/reset default platform options for target Go compiler
f52fbe1d4 golang: Update to 1.13.11
2e6bd4cb8 php7: update to version 7.2.31
191aac174 Merge pull request #12171 from rs/nextdns-1.5.8-openwrt-19.07
07164dec7 nextdns: Update to version 1.5.8
504a5f1b8 Merge pull request #12169 from jefferyto/arm-aarch64-vfp-neon-openwrt-19.07
a12555cc0 treewide: Enable VFP/NEON optimizations for aarch64
595342148 treewide: Update ARM NEON/VFP detection
5f5d63e79 Merge pull request #12158 from Robby-/openwrt-19.07-eaptlstmpdir
0feb9ad31 freeradius3: Fix to init script.
d8b9b0c92 Merge pull request #12141 from EricLuehrsen/unbound_1907_1100
8668e83d5 unbound: update to 1.10.0
2e01dd838 miniupnpd: make hotplug work again
468f6fa13 Merge pull request #12127 from aleksander0m/aleksander/mm-qmi-19.07
1c8e2e0c2 modemmanager: release 1.12.10
cea4fbe30 modemmanager: fix compilation under uClibc-ng
86fedfd52 libqmi: update version to 1.24.12
2020-06-03 21:44:45 +02:00
David Bauer
d9a488371d docs: add v2020.1.3 release notes
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 5a7ac058eb)
2020-06-03 21:43:41 +02:00
Martin Weinelt
c052a4bf16
docs: specify build dependencies in requirements.txt 2020-06-03 02:17:39 +02:00
David Bauer
29313c0944 actions: build documentation
This adds a new workflow for building the Gluon documentation.

In contrast to the existing build workflow, the documentation
is built for every branch, as it only takes around two minutes
to render the HTML documentation.
2020-06-02 22:03:43 +02:00
Matthias Schiffer
d3107790dc
Merge pull request #2037 from freifunk-gluon/config-gen
Config generation fixes
2020-06-02 21:24:45 +02:00
Matthias Schiffer
3fda210f85
gluon-mesh-{batman-adv,babel}: respondd: use libgluonutil to determine interface type
Also make babel match batman-adv and only emit the wireless/tunnel/other
fields when they are non-empty.

Fixes: #1783
2020-06-01 21:45:33 +02:00
Matthias Schiffer
41b3c91284
libgluonutil: introduce gluonutil_get_interface_lower() and gluonutil_get_interface_type()
gluonutil_get_interface_lower() recursively determines the lower of an
interface until the base interface is found.

gluonutil_get_interface_type() tries do distinguish wired, wireless and
tunnel interfaces. For tunnel interfaces, TUN/TAP, L2TPETH and Wireguard
are supported at the moment.
2020-06-01 21:15:47 +02:00
Matthias Schiffer
6b3b5e706e jenkins-community-slave: use requests library to download slave.jar
Do not mix two different HTTP libraries in one script. This fixes a
warning:

/var/lib/jenkins/slave.py:82: DeprecationWarning: URLopener style of invoking requests is deprecated. Use newer urlopen functions/methods

This simple implementation has the disadvantage that it stores the whole
file in RAM, but this isn't an issue for the 1.5MB slave.jar.
2020-06-01 20:18:24 +02:00
Matthias Schiffer
5232428b19 jenkins-community-slave: verify HTTPS certificate in head() request
Fixes a warning:

/usr/local/lib/python3.7/dist-packages/urllib3/connectionpool.py:1004: InsecureRequestWarning: Unverified HTTPS request is being made to host 'build.ffh.zone'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
2020-06-01 20:18:24 +02:00
Martin Weinelt
7fdffcaa1c
Jenkinsfile: require gluon-vmx label for qemu testing
This allows us to make use of builders that can't run virtual machines.

Drop the TMUX environemnt variable, it's not needed anymore.
2020-06-01 19:54:22 +02:00
Matthias Schiffer
72c71d35ac
gluon-mesh-babel: clean up link-local address handling
- Rename obtain_if_addr() to get_linklocal_address()
- Pass buffer of size INET6_ADDRSTRLEN instead of the oversized NI_MAXHOST
- Check if an address is link-local before converting to a string
- Replace an incorrect use of strncmp() with strcmp()
- Return status to caller
- Streamline control flow

While we're at it, the function handle_neighbour(), which is one of the
callers of get_linklocal_address() is slightly cleaned up as well.
2020-06-01 14:50:40 +02:00
David Bauer
6a15c704cd gluon-wireless-encryption-wpa3: switch to hostapd-wolfssl
This switches hostapd variant used for SAE and OWE from hostapd-openssl
to hostapd-wolfssl.

The bug shich one broke the wolfssl implementation was resolved upstream
with commit 631c437a91c2 ("hostapd: backport wolfssl bignum fixes").
This particular commit also got backported to OpenWrt 19.07.
2020-06-01 11:24:24 +02:00
Sven Roederer
5e35fa1ac4
docs/build: add a short summary for some scripts
This summaries giving an overview of a scripts function and a short summary
how it's doing this. Only the scripts are covered, that are used by the
Freifunk-Berlin firmwarebuiler too.

[Matthias Schiffer: slightly reworded some descriptions]
2020-05-31 23:44:34 +02:00
David Bauer
54dcf935d5 modules: update OpenWrt
9cafcbe0bd ar71xx: correct button type for TL-MR3020 mode slider
2bd1cf92e9 ar71xx: fix splitting firmware partition for TL-WR902AC v1
c963e4267b qos-scripts: fix interface resolving
31de4a40e7 broadcom-wl: don't inherit lock descriptor in nas process
2020-05-31 15:57:51 +02:00
Matthias Schiffer
e5456bdf14
build: backport kernel debuginfo ZSTD compression 2020-05-31 11:12:41 +02:00
Jan-Jonas Sämann
ed094bc68c
gluon-core: firewall: Allow custom gluon_wired interfaces (#2041)
This allows for multiple mesh legs out of one box. Useful for offloaders
and networks using vlan for separate mesh transport.
Custom mesh interfaces in a VXLAN domain are otherwise firewalled.

This fixes #1479
2020-05-31 10:57:58 +02:00
Matthias Schiffer
7279c4017e
build: target_lib: allow to specify multiple factory_ext values
By passing a table instead of a single string, multiple different
extensions can be specified, each refering to a separate image file
generated by OpenWrt.

This is not supported for sysupgrade (as there can only be a single
image in the format expected by OpenWrt).
2020-05-31 02:20:58 +02:00
Matthias Schiffer
8c386719eb
build: target_lib: do not pass manifest_aliases when defining factory and extra images
manifest_aliases only make sense for sysupgrade images.
2020-05-31 02:20:58 +02:00
Matthias Schiffer
3ce43329f5
build: remove now-unneeded function from target_config_lib.lua
target_config.lua and target_config_check.lua don't pass a table of
callbacks anymore, so target_config_lib.lua can by simplified by moving
all the code that was in the returned function to the toplevel.
2020-05-31 02:20:58 +02:00
Matthias Schiffer
9e23534ec3
build: rework config generation
So far, we were using a sort operation on the generated .config to
implement precedence of =y packages over =m, and =m over unset.
Unfortunately, this sort not only used for packages, but for all config
lines. This made it impossible to override settings from targets/generic
in a target config when the new setting was sorted before the generic
setting.

To fix this, track configurations by their keys, so we can properly
override config keys that were set before. Value-based precedence is
only preserved for package configuration.

The config() and try_config() calls always take key and value as
separate arguments now. Strings are quoted automatically; the values
true, nil and false map to y, m and unset for tristate options. config()
can take an optional third argument to override the error message to
display when the setting fails to apply.

All existing target configs generate the same .config with the old and the
new code. The new code is also a bit faster on targets with many devices.
2020-05-31 02:20:58 +02:00
Martin Weinelt
97e5434b32
docs: clarify beacon_interval documentation
A microsecond is commonly abbreviated as µs. This prevents confusions
between micro- (µs) and milliseconds (ms).
2020-05-30 22:20:41 +02:00
Ruben Barkow-Kuder
de1b214c55 docs: enhance OWE documentation 2020-05-30 19:06:48 +02:00
David Bauer
e951ff6e21 gluon-core: add support for configuring the beacon interval
This adds support for the beacon interval to be set on a per-band base.
This has the potential to reduce the amount of airtime used up for
sending beacon frames.
2020-05-30 00:47:33 +02:00
Jan-Tarek Butt
22847e4986
gluon-reload: add missing service restarts on domain switching
[Matthias Schiffer: fix up start/stop order and file permissions]
2020-05-28 23:30:25 +02:00
Matthias Schiffer
20c7fd9881
Merge pull request #2011 from freifunk-gluon/board-json-addresses
Look up primary MAC address through board.json for LAN/WAN
2020-05-28 22:30:14 +02:00
David Bauer
b1de28bab1 gluon-core: move wireless-related utils to wireless module
Separate wireless-related helper methods from the util module to a
new wireless module. This keeps them separated, as the amount of
wireless helpers increased in the past, justifying a separate module.
2020-05-28 21:46:23 +02:00
Matthias Schiffer
fcc6877c8b gluon-core: build in xt_CT with GLUON_SPECIALIZE_KERNEL
xt_CT was added to kmod-ipt-conntrack a while back. Update our
GLUON_SPECIALIZE_KERNEL rules accordingly.

When building xt_CT into the kernel, one of the symbols IP_NF_RAW and
IP6_NF_RAW must be enabled as well, even though there is no runtime
dependency when building as modules. The kernel grows by less than 1KB
even when both IP_NF_RAW and NETFILTER_XT_TARGET_CT are enabled, making
this change a (very slight) net win in both flash and RAM usage.
2020-05-28 19:40:29 +02:00
Matthias Schiffer
7e8af99cf5 generic: reduce squashfs block size to 256KiB
In OpenWrt 19.07, the block size was increased to 1024KiB for "tiny"
devices by default to save flash. Unfortunately, this also significantly
increases the cache memory required by squashfs.

In my test, the increased block size reduced the image size by ~64KiB,
but increased the RAM usage by ~2.6MiB. As most tiny devices have only
32MiB of RAM, this is not a reasonable tradeoff.

The ar71xx-generic target already defines an even lower block size of
64KiB.
2020-05-28 19:40:29 +02:00
Matthias Schiffer
1cb97ad63e generic: remove kmod-ipt-offload
This is unused by Gluon.
2020-05-28 19:40:29 +02:00
David Bauer
c3be82f6c8 modules: update OpenWrt
83b714a27f musl: fix locking synchronization bug
f99b1d1d92 rpcd: update to latest openwrt-19.07 Git HEAD
92bd395b04 Revert "rpcd: update to latest Git HEAD"
adf5d753ef rpcd: update to latest Git HEAD
9b48375c7e libubox: update to the latest version
a4e8eca03e libubox: update to the latest master
498f1f4f5d ramips: gsw_mt7621: disable PORT 5 MAC RX/TX flow control by default
d8d1956a80 hostapd: backport wolfssl bignum fixes
ab7e9754df ucert: update to latest git HEAD
bc0c2db2a3 brcm47xx: disable Netgear WNR2000 v2 by default
059db419d7 squashfs: Fix compile with GCC 10
97b522a1f9 usign: update to latest git HEAD
942262f9c8 usign: update to latest Git HEAD
6a89098935 ath79: add support for TP-Link TL-WA901ND v4 and v5
a6f70f2e97 ath79: add support for TP-Link TL-WA701ND/730RE/801ND/901ND v1
8c6c488e9e ath79: add support for TP-Link TL-WR940N v6
36d4140517 ath79: add support for TP-Link TL-WA830RE v1
7187826b8b ath79: reorganize DTSI for ar7240 TP-Link devices
d4092eac1f ath79: migrate TP-Link TL-MR3420v2 to ath79
24cfd961d9 ath79: add support for TP9343-based TP-Link TL-WR94x devices
7de43d66ff generic: platform/mikrotik: disambiguate SPDX-License-Identifier
84154574c8 ramips: drop non-existant ralink,port-map for Ravpower WD03
af667c73c5 bcm63xx: mask interrupts on init
d1ce73677c bcm63xx: periph_intc: report effective affinity
1d40c8a9f2 bcm63xx: ext_intc: fix warning
65f2fae911 bcm63xx: periph_intc: fix warning
b2c9f82eb4 bcm63xx: redboot: fix warning
a2a3ac9f51 bcm63xx: bcm6362: fix pinctrl bug
6c96ecf3b4 bcm63xx: refresh kernel config
c3e3802a8e OpenWrt v19.07.3: revert to branch defaults
f3f38f40da OpenWrt v19.07.3: adjust config defaults
85e04e9f46 generic: platform/mikrotik: fix LZOR support
4cd9ae41c5 libjson-c: backport security fixes
6ffd4d8a4d ar71xx: remove hard-coded folder name from Mikrotik RB upgrade
d2ee15ef76 fstools: blockd: fix segfault triggered by non-autofs mounts
4cd44e5dc7 ar71xx: mikrotik: mach-rbspi.c remove wlan id
3fecb06fb1 ar71xx: mikrotik: bypass id check in __rb_get_wlan_data()
b36aa168d8 ar71xx: mikrotik: ath10k: use new sysfs driver
fa2369e59b generic: platform/mikrotik: support LZOR encoding
612b64e6c4 ar71xx: enable mikrotik platform driver
511859de9b generic: mikrotik platform build bits
ddae86cc69 generic: routerboot sysfs platform driver
2efcfb1d1a kernel: bump 4.14 to 4.14.180
ecea10f2b9 ath79: dts: add missing 'serial0' alias for TP-Link TL-MR3040v2
2020-05-27 02:12:44 +02:00
Ruben Barkow-Kuder
891bfc77ac
gluon-client-bridge: simplify boolean expressions (#2031) 2020-05-25 01:13:30 +02:00
Matthias Schiffer
14ab51876e
scripts: update-patches: fix shellcheck 0.7.1 lint 2020-05-25 01:10:18 +02:00
Matthias Schiffer
653e547b82
fastd: update to v19 2020-05-22 21:18:29 +02:00
lemoer
14481851f6
gluon-status-page: show primary_domain 2020-05-21 18:09:08 +02:00
lemoer
b9c1a026b1
gluon-respondd: emit "primary_domain_code" in nodeinfo
Closes #1974

Situation:
==========

$ ls -l /lib/gluon/domains/lindennord.json
lrwxrwxrwx    1 root     root            10 Jan  6 03:42 /lib/gluon/domains/lindennord.json -> dom17.json

Before:
=======

$ gluon-neighbour-info -d ::1 -p 1001 -r nodeinfo -c 1
{
   "node_id": "525400123456",
   "system": {
     "domain_code": "lindennord",
     "site_code": "ffh"
   },
...
}

After:
======

$ gluon-neighbour-info -d ::1 -p 1001 -r nodeinfo -c 1
{
   "node_id": "525400123456",
   "system": {
     "primary_domain_code": "dom17",
     "domain_code": "lindennord",
     "site_code": "ffh"
   },
...
}
2020-05-21 18:09:05 +02:00
lemoer
bcf57467dd libgluonutil: implement gluonutil_get_primary_domain()
Implemented using readlink() and basename() to the selected domain in
/lib/gluon/domains/${DOMAIN}.json.
2020-05-21 18:08:36 +02:00
lemoer
0c2a52c19f
libgluonutil: fix double free of domain_code when domain is not existing 2020-05-21 18:03:58 +02:00
Matthias Schiffer
121609b3f8
Merge pull request #2010 from txt-file/x86-legacy
Add x86-legacy subtarget
2020-05-17 09:22:18 +02:00
Vieno Hakkerinen
d353ad35fe actions: add x86-legacy build workflow 2020-05-17 00:06:03 +02:00
Vieno Hakkerinen
87aecd5ab5 targets: add x86-legacy subtarget
As x86-generic is compiled to pentium4 (and newer) there is a need for
a subtarget for older devices. The x86-legacy subtarget is set to
compile to pentium (and newer) and should support even very old devics.

x86-legacy includes the packages from x86.inc to only maintain one
package list. The three excludes are because the packages do not exist
for x86-legacy.
2020-05-16 23:58:46 +02:00
Matthias Schiffer
55c51f2a73 actions: script improvements
- Rely on shebang instead of setting shell in workflow
- Run whole install-dependencies.sh in sudo
- Use /bin/sh instead of bash
- set -e
2020-05-13 15:48:06 +02:00
Matthias Schiffer
2889904e5f actions: set BUILD_LOG=1 and store logs as artifacts
The new step is added with `if: ${{ !cancelled() }}`, so the logs are
stored even when the build fails.
2020-05-13 15:48:06 +02:00
Matthias Schiffer
ab6596115a build: introduce GLUON_AUTOREMOVE flag 2020-05-13 15:48:06 +02:00
lemoer
57516fe4e7
Add GLUON_MINIFY flag to allow skipping the minification process (#1916) 2020-05-13 00:45:06 +02:00
Matthias Schiffer
992457b203
Merge pull request #2024 from SvenRoederer/patch-1
build: ignore deactivated feeds
2020-05-12 20:40:48 +02:00
Matthias Schiffer
3daacfb92e
Merge pull request #2013 from freifunk-gluon/outdoor-setup-ifname
Reuse outdoor device logic for setup mode interface selection, plus some cleanup
2020-05-12 20:39:30 +02:00
Sven Roederer
184dab8fc1 build: ignore deactivated feeds
The OpenWrt feeds.conf.defaults contains some feeds that are commented out
and not active. Such feeds will be returned by the default_feeds.sh script
anyway and causing pseudo feeds. Limit the script to only return active
feeds, by filtering out lines starting with '#'.
This usually only applies to the OpenWrt master branch.

Signed-off-by: Sven Roederer <freifunk@it-solutions.geroedel.de>

change as per NeoRider
2020-05-12 19:46:36 +02:00
Matthias Schiffer
b842ec43ff gluon-mesh-batman-adv: do not override WAN MAC address with VXLAN
As a partial fix to #496, do not touch the MAC address of the WAN
interface when using VXLANs (as only the MAC address of the VXLAN
interface matters to batman-adv).
2020-05-12 17:02:37 +02:00
Matthias Schiffer
a3569da164
Revert "build: use .SILENT instead of adding @ to each recipe"
This reverts commit 2a8943e516.

.SILENT gets passed down to OpenWrt make as -s through MAKEFLAGS. This
hides certain messages from the build log with V=s.
2020-05-12 01:00:57 +02:00
Matthias Schiffer
4540217342
build: target_config_check: dedup error messages
Certain error message (for example invalid package names) were emitted
once for each device.
2020-05-11 00:09:13 +02:00
Matthias Schiffer
9379137373
Merge pull request #2021 from freifunk-gluon/fastd-peer-cleanup
gluon-mesh-vpn-fastd: clean up peers and groups on update
2020-05-10 18:11:48 +02:00
Matthias Schiffer
8807c76a34
gluon-setup-mode: remove obsolete sysconfig.config_ifname migration
config_ifname was renamed to setup_ifname in Gluon v2015.1.
2020-05-10 16:38:42 +02:00
Matthias Schiffer
e9687d7ef1
gluon-setup-mode: use is_outdoor_device() for setup_ifname selection
On PoE-powered devices, we usually want to use WAN for the setup mode.
As all outdoor devices are PoE-powered, we can reuse this function. This
switches the setup mode interface for new installations / after config
reset on a few devices that were missing in this list before.
2020-05-10 16:38:42 +02:00
Matthias Schiffer
0dd9a3e07c
gluon-core: platform: add 2.4GHz-only outdoor devices 2020-05-10 16:38:41 +02:00
Matthias Schiffer
f4fe58cfd7
gluon-core: ignore is_outdoor_device() value on devices without 5GHz radio 2020-05-10 16:38:41 +02:00
Matthias Schiffer
5ec08d841d
gluon-core: platform: clean up device_supports_mfp()
- Use util.find_phy()
- Stop foreach() as soon as the result is known
2020-05-10 16:38:41 +02:00
Matthias Schiffer
3ccf7fdd96
gluon-mesh-vpn-fastd: clean up peers and groups on update
The 'preserve' flag can be used to mark a peer so it is not removed or
modified on upgrades. In addition, groups containing preserved peers are
not removed.

Fixes: #557
2020-05-10 14:30:25 +02:00
Matthias Schiffer
b019c703c9
gluon-mesh-vpn-fastd: reduce complexity of upgrade script 2020-05-10 13:06:00 +02:00
Martin Weinelt
64725858b4 modules: update OpenWrt
a8c92e9eda opkg: Fix PKG_MIRROR_HASH
844b892a74 ath10k-firmware: fix mirror hash
7e9d84ee4a opkg: update to latest Git HEAD
81f3f6540e wireguard: bump to 1.0.20200506
b956f6bd13 wireguard: bump to 20191226
c61fbdd087 odhcpd: fix PKG_SOURCE_DATE
5e8b50da15 odhcpd: fix lan host reachibility due to identical RIO and PIO prefixes (FS#3056)
ac5d5d8d09 ustream-ssl: update to 19.07 Git HEAD
a6caa8fad1 uhttpd: update to 19.07 Git HEAD
3b9e4d6d4c fstools: update to the latest version
2020-05-09 22:13:43 +02:00
Martin Weinelt
77482a27b3 modules: update packages
af5ada457 wifidog-ng: remove incorrect PKG_BUILD_DIR override
b8ce0e959 ddns-scripts: Increment PKG_RELEASE and internal version number
9437c31c8 ddns-scripts: cloudflare.com-v4: Fix grep patterns.
b7958778a ddns-scripts: cloudflare.com-v4: Fix success check for new response format JSON response now has spaces between parameters. Accept this new format and the old one.
98f12a896 ddns-scripts: fix logging bug
a6a2c8d13 ddns-scripts: use HTTP for IPv6 dyndns URL
d040b2471 ddns-scripts: remove HTTPS from dyndns URL
ab7dfd76b ddns-scripts: use new DDNS URL for dyndns.org
c2943b13f ddns-scripts: update ddnss.de response
4d050bac7 ddns-scripts: Use https for domains.google.com
4938c148c nextdns: Update to version 1.5.7
501c782f7 youtube-dl: update to version 2020.5.3
f79cb0907 gerbera: add
2ce218bdc vpn-policy-routing: support phys-dev policies
9eb229c09 vpn-policy-routing: bugfix: remove non-ASCII from log; update README
0ae7e11d7 vpnbypass: bugfix: remove non-ASCII from system log; update README
1d5350fb4 openconnect: updated to 8.09
b10a73c9a ocserv: updated to 1.0.1
04af75b94 youtube-dl: update to version 2020.3.24
e92ac8abe travelmate: fix captive portal detection
c0f906273 bash: Import upstream patches
2020-05-09 22:10:54 +02:00
David Bauer
659b4acbb3 docs: add Linksys EA6350 v3 to supported devices 2020-05-09 04:09:35 +02:00
Matthias Schiffer
e93dca7cb3
gluon-core: primary-mac: replace all eth0/eth1 lookups with lan/wan
The netdev() lookup is confusing to use: whenever a interface does not
exist during boot (for example VLAN) or when the address is overridden
from board.json (which is not obvious at all), it will yield either no
address, or a different address than expected.

To avoid this confusion, using board.json-based interface() is
preferable. This converts all uses of netdev() to the corresponding
lan/wan lookups, except for the final fallback for eth0.
2020-05-08 19:56:36 +02:00
Matthias Schiffer
02e4a13069
gluon-core: primary-mac: add fallback to netdev address to interface()
In most cases, board.json does not contain any MAC addresses; in this
case, the default MAC address of the underlying interface is to be used.
2020-05-08 19:55:41 +02:00
Matthias Schiffer
2250665d18
gluon-core: primary-mac: cleanup
- Replace misnamed, closure-returning sysfs() to a reusable read() function
- Rename eth() to netdev(), pass full interface name
- Rename board() to interface()
- Split reuable get_netdev_addr() out of netdev()
2020-05-08 19:55:40 +02:00
Matthias Schiffer
0c5b5373bb
gluon-core: primary-mac: load board.json only once 2020-05-08 19:55:40 +02:00
Matthias Schiffer
c90b400ce5
Merge pull request #2008 from ctr49/master
add hardware: Linksys EA6350 v3
2020-05-08 19:15:39 +02:00
Matthias Schiffer
c602462600
Merge pull request #2007 from freifunk-gluon/class-package-order
Fix package selection precedence
2020-05-07 22:59:33 +02:00
David Bauer
0d341a76b3 actions: create per-target artifacts 2020-05-07 02:29:11 +02:00
David Bauer
2e3a4a5179 modules: bump OpenWrt
d9244a1b5b generic: ar8216: fix unknown packet flooding for ar8229/ar8236
429e4490c4 libpcap: fix library packaging issues
e678cb1595 kernel: bump 4.14 to 4.14.179
8fa4ed9ef7 fstools: update to the latest version
5c6dfb5bc0 fstools: update to the latest version
607809dcdc mac80211: Update to version 4.19.120
96d280cc37 scripts/download: add sources CDN as first mirror
55ccb04046 upgs: Remove extra _DEFAULT_SOURCE definition
ee480c50c1 dante: Fix compile with glibc
5f0e25d966 perf: build with NO_LIBCAP=1
005adba939 mac80211: ath10k: increase rx buffer size to 2048
0974d59b5f kernel: backport fix for non-regular inodes on f2fs
f40947a8c0 ath79: indicate boot/failsafe/upgrade for NanoBeam/Nanostation AC
65cf72d5d2 ath79: add SUPPORTED_DEVICES based on ar71xx for some devices
f9ef0c5705 kernel: bump 4.14 to 4.14.178
2df0ea042d wpad-wolfssl: fix crypto_bignum_sub()
ec6cb33452 mac80211: backport fix for an no-ack tx status issue
f141cdd200 hostapd: unconditionally enable ap/mesh for wpa-cli
54b6683390 wireless-regdb: backport three upstream fixes
55591e63bc curl: backport fix for CVE-2019-15601
35ea808b97 uboot-kirkwood: fix ethernet and usb

Compile-tested: all targets
2020-05-07 00:39:16 +02:00
ctr49
02a908ee2f get primary_mac from board(wan) 2020-05-06 01:12:26 +02:00
Matthias Schiffer
0e681d5c37
gluon-core: util: avoid unintended second return value from gsub()
gsub() returns the number of matches as its second return value. This
was unintendedly passed through by the util functions trim() and
node_id(). It can be presumed that this had no effect in practice, but
it can lead to surprising output when passing values to print() for
debugging.
2020-05-04 23:38:22 +02:00
ctr49
e8767bc747 define primary mac 2020-05-04 21:44:47 +02:00
ctr49
07d9db9add add hardware: Linksys EA6500 v3 2020-05-03 23:05:39 +02:00
Matthias Schiffer
53690d83be
build: move package list generation to target_config_lib.lua, fix precedence
The precedence of different package lists was broken since #1876,
disallowing removal of GLUON_FEATURES packages via GLUON_SITE_PACKAGES.

Including all package selections, both implicit defaults and explicit
handling in Gluon, the order of precedence is now the following:

1.  OpenWrt defaults (including target-specific defaults)
2.  Device-specific packages from OpenWrt
3.  Generic default packages (from target/generic)
4.  Target default packages (target/$(GLUON_TARGET))
5.  Removal of opkg for tiny targets
6.  Packages derived from GLUON_FEATURES + GLUON_FEATURES_$(class)
7.  GLUON_SITE_PACKAGES
8.  GLUON_SITE_PACKAGES_$(class)
9.  Device-specific packages from target/$(GLUON_TARGET)
10. Device-specific packages from GLUON_$(device)_SITE_PACKAGES

This also contains various pieces of cleanup:

- No hardcoded order of device classes for target_config.lua arguments
  anymore (in fact, the Makefile doesn't know anything about device
  classes now)
- target_conifg_lib.lua only hardcodes the fallback class for x86, no
  other occurences of specific class names
- Feature -> package list mapping is moved from Makefile to the Lua code
  as well (still implemented in Shell though)
2020-05-03 22:05:20 +02:00
Matthias Schiffer
f9062bda0b
build: remove exec prefix from commands with a raw suffix
Allows to append additional commands, for example using `||`.
2020-05-03 18:24:32 +02:00
Matthias Schiffer
89efe55c7c
build: implement image site_packages using a generic site_var function 2020-05-03 18:00:35 +02:00
David Bauer
daf8a6c18c docs: dev: add link to device checklist
Closes #1993
2020-05-02 16:15:31 +02:00
Martin Weinelt
468590a17e docs, README: Gluon v2020.1.2
(cherry picked from commit 7f3a30423b)
2020-05-02 15:44:50 +02:00
Martin Weinelt
0a95c92097 docs: add v2020.1.2 release notes
(cherry picked from commit 4bfcd6ae61)
2020-05-02 15:44:17 +02:00
Martin Weinelt
9b19883d97 add gluon-logging package
Allows reconfigurtion of remote syslog from within site.conf.

Conflicts with the gluon-web-logging package as user made changes
will be overwritten, because this package will reconfigure the syslog
destination on every upgrade.

Resolves #1845
2020-04-30 01:54:35 +02:00
Martin Weinelt
b181803ac4 scripts: check_site: add need_number_range check 2020-04-30 01:54:35 +02:00
Jan Luebbe
6a371d88f0 gluon-setup-mode: start urngd instead of haveged
OpenWRT 19.07 enables urngd by default, so haveged is redundant.
2020-04-30 01:51:42 +02:00
Jan Luebbe
35b4a97cce gluon-autoupdater: start/stop urngd instead of haveged
OpenWRT 19.07 enables urngd by default, so haveged is redundant.
2020-04-30 01:51:42 +02:00
Jan Luebbe
2829c852ef docs: examples: remove haveged from GLUON_SITE_PACKAGES
OpenWRT 19.07 enables urngd by default, so haveged is redundant.
2020-04-30 01:51:42 +02:00
Martin Weinelt
dfaa7c0c88 tests: respondd: update shebang to use the environments python3 version 2020-04-29 22:28:00 +02:00
lemoer
b11f18f5df tests: add batctl tpmeter test case 2020-04-29 22:28:00 +02:00
Martin Weinelt
03f718a071
patches: reorder OpenWrt 2020-04-29 13:40:04 +02:00
Martin Weinelt
2d2cf07e48
modules: update OpenWrt
5feb0df9bb ramips: remove memory node for ZBT MT7621 devices
b80a98ae7f ramips: remove unnecessary DEVICE_PACKAGES for Belkin F7C027
bfe652c5bd oxnas: move service file to correct place
5b4e4a38d8 relayd: bump to version 2020-04-25
4e5a29827f umdns: update to version 2020-04-25
c2efc973d5 dnsmasq: fix dnssec+ntp chicken-and-egg workaround (FS#2574)
6c020577ae libpcap: fix build breakage with very high number of simultaneous jobs
efe837de84 openssl: bump to 1.1.1g
1df49d98e7 relayd: bump to version 2020-04-20
b71c7c261b umdns: update to version 2020-04-20
b6d8119c53 umdns: update to the version 2020-04-05
ef3df27507 umdns: suppress address-of-packed-member warning
55312cc202 binutils: add ALTERNATIVES for strings (FS#3001)
3b6f079d8d mbedtls: update to 2.16.6
67ed408af2 mvebu: cortexa9: correct cpu subtype
dee8fcfe9f tegra: correct cpu subtype
d8e0b015e8 mvebu: backport ClearFog SPI enablement

Compile-tested: ipq40xx, ath79
2020-04-29 13:25:50 +02:00
Martin Weinelt
34626bce67
modules: update packages
f5cb61cee Merge pull request #11992 from Robby-/openwrt-19.07-freeradius3_update_3_0_21
37812cd96 Merge pull request #11994 from jefferyto/python-2.7.18-openwrt-19.07
caecc597f expat: Update to version 2.2.9
e34d0baee python: Update to 2.7.18, refresh patches
28faf9676 freeradius3: Update to 3.0.21
cb10971c1 freeradius3: Updated patches/004-fix-target-python-header-detection.patch to remove the rlm_python3 specific changes as it is no longer needed to compile and updated the Makefile to reflect this due to the following change/commit in freeradius: 307678b268
4c9d29093 freeradius3: Refreshed patches/002-disable-session-cache-CVE-2017-9148.patch in preparation for the 3.0.21 update.
fe6f04346 freeradius3: Fix the ordering in the Makefile.
0d795d202 mwan3: fix whitespace issue
b7959a8d3 mwan3: Ping IPv6 hosts using address not interface
2ac0a05d6 mwan3: change license to SPDX compatible identifier
928ac2a20 mwan3: update version to 2.8.2
1ea75a8fa mwan3: add httping_ssl option
c2cd3f099 mwan3: fix variable naming
5bf733c2d Merge pull request #11986 from jefferyto/python-target-build-tools-openwrt-19.07
c1394a6a7 python: Fix host build tool names recorded in target files
3d2dc6920 python3: Fix host build tool names recorded in target files
99abc1bd8 Merge pull request #11976 from br101/pingcheck-update
aa353e13d pingcheck: Update and add script directories
411633e52 mpd: update to 0.21.23
63a7426cd Merge branch 'BKPepe-19.07-php7' into openwrt-19.07 (fixes #11923)
d2a02ee24 Merge branch '19.07-php7' of https://github.com/BKPepe/packages into a local branch for conflict resolving.
f2143f6eb php7: fix dependencies for mysqlnd (fixes #11113)
6d9bfa5a8 Merge pull request #11948 from dvtirol/rlm_rest-19.07
742944560 freeradius3: Support building freeradius3-mod-rest
f3bf2e9dd Merge pull request #11946 from jefferyto/python-pip-pep517-pyc-fix-openwrt-19.07
cbb850712 python-pip: Fix error when installing packages that require compilation
5b6607557 python3-pip: Fix error when installing packages that require compilation
ad75f6901 travelmate: refine logical interface selection
eccacec55 less: add ALTERNATIVES
3ab2a1c51 Merge pull request #11938 from aleksander0m/aleksander/modem-updates-19.07
8b46bb9df modemmanager: release 1.12.8
9c337b7ba modemmanager: release 1.12.6
2c1fbf5ec libqmi: update version to 1.24.10
a6f66a078 libqmi: update to version 1.24.8
920c43946 libqmi: bump libqmi version
1b0b8ffa7 Merge pull request #11928 from jefferyto/golang-1.13.10-openwrt-19.07
a15e7212d travelmate: release 1.5.4
f6bb9f3c2 golang: Update to 1.13.10
6e5ca4ddf Merge pull request #11925 from stangri/19.07-simple-adblock
c725bb1b4 simple-adblock: bugfix: start downloads on cold boot
09738290a php7: update to version 7.2.30
059e949ee Merge pull request #11882 from yousong/wget1907
fb64ef9d3 acme: depends on wget-ssl
ba4c4e681 wget: make the ssl variant provides wget-ssl
406b052f7 wget: do not provide itself
ea5c497c2 adblock: filter spurious line endings in sources
b7e94479a git: update to version 2.26.1
5b38ccf0d git: update to version 2.25.1
cc818e580 git: update to version 2.25.0
04d228f9e libupnp: remove patch that should not be there
3f931a4fd minidlna: fix patches from last backport
4dc6dfa77 libxslt: update to 1.1.34
3385d1fd9 libyaml-cpp: Update to 0.63
20d95578e wavemon: update to 0.9.1
83ff6c38f miniupnpd: fix sh syntax error
1fe1c80d6 miniupnpd: convert to procd
c02c42849 miniupnpd: update to 2.1.20191006
66363912d minidlna: update to latest master
a3480774a liblz4: Update to 1.9.2
2caba1671 liblz4: Remove deprecated utime function
a38f59d39 measurement-kit: update to version 0.10.11
856124364 websocketpp: Fix compile with Boost 1.70+
7bfe30462 faad2: update to 2.9.1
f91af9d77 mpc: update to 0.33
c80bc7765 mpc: update to v0.32 and build with meson
a39c4e8e0 libupnpp: link against libm under glibc
b3a09f039 libupnpp: update to 0.17.2
fc2203bb7 libupnpp: Update to 0.17.1
175b26d8b u2pnpd: update to 0.5
caf43f42a libupnp: update to 1.8.7
696d9bdf2 adblock: fix gawk incompatibility
b32a40afe Merge pull request #11843 from neheb/py3
45ca5d87d ruby: update to 2.6.6
84f6fab44 mac-telnet: fix mirror hash
2633415b2 mac-telnet: install uci as config file
4418e49a4 mac-telnet: mark uci as conffile
d12b47361 transmission: add init file STOP directive
54372522f transmission: add syscalls to seccomp filter
10b93cd53 transmission: add service triggers and bump PKG_RELEASE
0ba4820b8 transmission: update config options
125f6ff9e meson: use python3
803c5ef05 libid3tag: add pkg-config file
e91c9b8b1 adblock: fix another reporting bug
67be4858c meson: update to version 0.54.0
7a2b9425d ninja: updated to 1.10.0
66f418654 libmpdclient: update to 2.18
ccd2d7754 libmpdclient: build with meson
2a5a89bcc mpd: update to 0.21.22
5f7f5a205 mpd: allow AAC decoding with mini variant
eda73f927 mpd: link against libpthread under glibc
10ddb2178 mpd: update to 0.21.20
debe4d4d9 mpd: fix ffmpeg AIFF and AMR support
ab7ae0a65 mpd: replace mpg123 with libmad
8346ace9a mpd: fix compilation with uClibc-ng
b061fc6be mpd: update to 0.21.19
82ae5f3bc mpd: update to v0.21.16 and build with meson
fc2a591b5 treewide: Use default PKG_BUILD_DIR when possible
3c59551d8 nsd: Update to 4.2.1
048937c40 xmlrpc-c: Update to 1.51.03
59d23790e libuwsc: update to 3.3.2
2ec415e68 monit: update to the latest release
9eca2ae77 monit: enable / fix IPv6 detection during build
4e3d6eca2 nlbwmon: update to latest Git HEAD
31412a2b4 adblock: update 4.0.4
2944d7142 Merge pull request #11820 from stangri/19.07-https-dns-proxy
210b760d3 https-dns-proxy: bugfix: memory leak
4542b5219 nlbwmon: update to latest Git HEAD
559ff1828 nlbwmon: bump to latest git
45bb9056a nlbwmon: add procd reload trigger for nlbwmon config
2020-04-29 13:22:35 +02:00
Martin Weinelt
a070e68849
modules: update routing
9b42e24 Merge pull request #563 from ecsv/batadv-for-19.07
5dd2f44 batman-adv: Merge bugfixes from 2020.1
8b25c90 batctl: Merge bugfixes from 2020.1
094e9b0 batctl: Fix upstream reference in backported patch
20b98f0 Merge pull request #560 from fblaese/babeld
bd25cae babeld: Update to version 1.9.2
9f21b21 Merge pull request #558 from BKPepe/bird2-19.07-bump
dc81e50 bird2: fix service restart and reload (#546)
6e51cca bird2: Update to v2.0.7 (#516)
3a80085 bird2: Update to version 2.0.6
38f2ed9 bird2: Bump to v2.0.5
2020-04-29 13:20:27 +02:00
Matthias Schiffer
35e8b53385 kernel: backport slub prefetch fix from v4.19
This patch fixes a regression introduced in kernel v4.14. While the
commit message only mentions a performance penalty, the issue is
suspected to be the cause of spurious data bus errors on MIPS CPUs
(ar71xx target).

Fixes: #1982
2020-04-29 13:05:25 +02:00
Jan Alexander
079275ebf2 docs: add Aruba AP-303 and Instant On AP11 to supported devices list 2020-04-27 17:02:15 +02:00
André Fiedler
954b7af72b ath79-generic: add support for TP-Link CPE220 v3 2020-04-27 16:42:10 +02:00
Martin Weinelt
dd7d37b8e4 Jenkinsfile: add timeout to build and test steps
This will hopefully make CI runs more robust and recover stale workers.
2020-04-26 23:26:09 +02:00
David Bauer
5231fb0178 lantiq-xway: remove support for AVM FRITZ!Box 7320 7330 7330SL
This device has broken Ethernet on both ports.

Remove support for those devices. for now, as there was no feedback from
the original author.

Closes #1943
2020-04-26 18:02:46 +02:00
Matthias Schiffer
696b4316da gluon-web-autoupdater: use human-readable names as branch labels, sort by label
Use the value of the `name` site.conf field as label (it was
accidentally unused before).

Our site.conf currently doesn't define a specific order for the branch
entries. To avoid changing branch orders, sort entries by this label.

Fixes: #1961
2020-04-26 15:31:59 +02:00
Martin Weinelt
42650393b6
contrib/ci: document kvm permissions configuration 2020-04-26 00:25:11 +02:00
Matthias Schiffer
aefb0b8c35 scripts/copy_output.lua: delete images from OpenWrt dir after copying them
We don't move the images directly, as multiple images of the same device
may have the same source image (on x86), but only delete them after a
whole device has been handled (multiple devices using the same images
must be handled using aliases or manifest aliases instead).
2020-04-25 21:35:44 +02:00
Matthias Schiffer
e993f22233 scripts/target_lib.lua: reorganize images into per-device lists 2020-04-25 21:35:44 +02:00
Sven Eckelmann
8bc602b021 mac80211: ath10k: increase rx buffer size to 2048
Before, only frames with a maximum size of 1528 bytes could be
transmitted between two 802.11s nodes.

For batman-adv for instance, which adds its own header to each frame,
we typically need an MTU of at least 1532 bytes to be able to transmit
without fragmentation.

This patch now increases the maxmimum frame size from 1528 to 1656
bytes.

Tested with two ath10k devices in 802.11s mode, as well as with
batman-adv on top of 802.11s with forwarding disabled.

Fix originally found and developed by Ben Greear.
2020-04-25 21:33:41 +02:00
aiyion.prime
0f3f4bc897 ramips-mt76x8: add support for Cudy WR1000
v2 is available on the market, but apparently has no upstream support, yet:
https://forum.openwrt.org/t/v2-of-cudy-wr1000/56965
2020-04-25 17:25:32 +02:00
Jan Alexander
48df206a4a docs: normalize hardware revision references 2020-04-24 21:58:00 +02:00
David Bauer
3e3d6d5c78 openwrt: refresh patches 2020-04-24 21:21:26 +02:00
Matthias Schiffer
778bf90561
gluon-mesh-batman-adv: add UCI setting for hop penalty
Add a UCI setting gluon.mesh_batman_adv.hop_penalty

Example UCI commands:

    uci set gluon.mesh_batman_adv=mesh_batman_adv
    uci set gluon.mesh_batman_adv.hop_penalty=20
    uci commit

`/etc/config/gluon` config section:

    config mesh_batman_adv 'mesh_batman_adv'
    	option hop_penalty '20'

Fixes: #1942
2020-04-20 23:35:07 +02:00
Martin Weinelt
5c8c479d21 Jenkinsfile: fix glob for test scripts 2020-04-17 20:00:57 +02:00
David Bauer
6042f5256a modules: update OpenWrt
0232f57e1a kernel: bump 4.14 to 4.14.176
286c407c3d ath79: add SUPPORTED_DEVICES for TP-Link TL-WA901ND v2
02c6deab8c mbedtls: update to version 2.16.5
01b624e28e Revert "ramips: disable ZyXel Keenetic by default"
14c8ea0245 ramips: use full 8MB flash on ZyXEL Keenetic
2020-04-16 21:37:15 +02:00
Martin Weinelt
777416a175
Jenkinsfile: require gluon-docker-v2 for build stage
This is required to build the next branch which requires rsync to be
available.
2020-04-15 23:05:57 +02:00
Martin Weinelt
358be325b2
contrib/ci: install rsync on jenkins-community-slaves
Rsync is a requirement for OpenWrt master and therefore our next
branch. Currently builds on x86-64 error out due to missing rsync:

/bin/sh: 1: rsync: not found
2020-04-15 17:56:38 +02:00
Martin Weinelt
ac65a4174c .editorconfig: add python 2020-04-15 15:20:45 +02:00
lemoer
56dbfefd14 tests: add gluon-reconfigure testcase 2020-04-15 15:20:45 +02:00
Martin Weinelt
d9ea281436 ci: identify runner in each stage 2020-04-15 15:20:45 +02:00
lemoer
4cd26d860a tests: add respondd test case 2020-04-15 15:20:45 +02:00
Martin Weinelt
772db95244 contrib/ci: add test stage 2020-04-15 15:20:45 +02:00
David Bauer
c5f43add3d gluon-core: add OWE MAC-assignment
Fixes commit 6692095f9d
2020-04-11 15:14:05 +02:00
David Bauer
c4d70f29e6 docs: dev: add OWE MAC-assignment
Fixes commit 6692095f9d
2020-04-11 15:13:57 +02:00
Martin Weinelt
46cd214bb8
modules update packages
619961596 mosh: use mips16 and remove configure patch
376d0b76f mosh: Fix compilation with libcxx
913f95a4b mosh: Add protobuf host build dependency
d0bf13630 mosh: add package
9e581d578 Merge pull request #11800 from dibdot/adblock-19.07
5e69c9961 adblock: release 4.0.3
f207f2bf3 Merge pull request #11802 from stangri/19.07-simple-adblock
af1e0a533 simple-adblock: bugfixes: remove escape chars from log, restore from cache on boot
b7f2b61da nano: update to 4.9.2
c5a7fba5c graphicsmagic: update to version 1.3.35 (security fix)
574a5af56 Merge pull request #11772 from micmac1/19.07-apache-2443
fa572d135 meson: update to 0.53.2
75c1baa9f meson: update to 0.53.1
c7e1a3453 meson: fix building host binaries with ccache
eeeadde02 python-requests: update to version 2.23.0
ca555a054 dnscrypt-proxy2: update to version 2.0.42
8a4d0b206 apache: security bump to 2.4.43
626bda56d nano: update to 4.9.1
a10dd9369 Merge pull request #11755 from gladiac1337/haproxy-2.0.14-openwrt-19.07
7e48c36cc haproxy: Update HAProxy to v2.0.14
c8eb843fb Merge pull request #11729 from stangri/19.07-vpn-policy-routing
153892633 vpn-policy-routing: separation between auto/all proto; compatibility with mwan3; README update
92a4c6933 gnutls: updated to 3.6.13
0d9a89370 Merge pull request #11699 from stangri/19.07-simple-adblock
9923323db simple-adblock: support multiple dnsmasq instances; rework communication between principal package and luci app
7fba38e3f avahi: update to 0.8
0da04e56d avahi: convert to procd
97a0abf46 avahi: Fix pkgconfig files to be cross compile friendly
ca7da040e flac: Update to 1.33
4bd47a5eb msmtp: remove myself as maintainer
7ccf6f235 msmtp: Update to 1.8.7
efab88dc3 msmtp: Update to 1.8.6
97fcfe955 mpg123: Update to 1.25.13
2dbdb7de3 screen: update to 4.8.0
c133dc75d screen: Update to 4.7.0
a677166dd zstd: Fix compilation with uClibc-ng
6c5b9424e zstd: Update to 1.4.4
18efffaf9 nano: update to 4.9
c983b0844 tor: update to version 0.4.2.7 (security fix)
fb0996711 collectd: disable onewire plugin, BROKEN since 2009
afccb8069 collectd: disable dpdk_telemetry module
45dfd3b51 collectd: update to 5.11.0
9ba7b1799 acme: Backport two bug fixes from master
40c5dd0ba openvswitch: depend on IPV6 for intree kmods
ec0a9d4d0 openvswitch: rework skipping intree kmod build for unsupported kernels
d8c836f6a fish: update to 3.1.0
aae54e90c fish: Fix compilation with libcxx
2ea76a676 fish: Convert to CMake
33eda8575 syncthing: configuration cleanup & hardening
e4c685e5b syncthing: bump to 1.4.0
b8dafa475 syncthing: fixup version detection
f7308a55f strongswan: add conffiles for swanctl util
ba76d4274 strongswan: quote 'comment' parameter in Config.in
1cd3f5fdc net/pagekitec: support status reporting json file
1688807f1 net/pagekitec: Update to newest version
407438796 Merge pull request #11647 from jefferyto/byobu-5.133-openwrt-19.07
97e68c1cb Merge pull request #11646 from jefferyto/python-pyasn1-modules-0.2.8-openwrt-19.07
3c6d37bfa Merge pull request #11645 from jefferyto/python-idna-2.9-openwrt-19.07
72ccf6726 Merge pull request #11644 from jefferyto/python-pycparser-2.20-openwrt-19.07
2c8681870 Merge pull request #11643 from jefferyto/python-enum34-1.1.10-openwrt-19.07
897b76d32 Merge pull request #11641 from jefferyto/python-zope-interface-4.7.2-openwrt-19.07
72731c08c Merge pull request #11639 from jefferyto/python-twisted-security-fix-openwrt-19.07
7fa240521 Merge pull request #11636 from jefferyto/golang-1.13.9-openwrt-19.07
34a77ee37 byobu: Update to 5.133
db63e1208 python-pyasn1-modules: Update to 0.2.8
4da9026f2 python-idna: Update to 2.9
a6b32c675 python-pycparser: Update to 2.20
364c24dd2 python-enum34: Update to 1.1.10, refresh patch
da05e0829 python-enum34: Update to 1.1.9, refresh patch
4e5642de1 python-zope-interface: Update to 4.7.2, refresh patch
261d6cbaa python-twisted: Fix several request smuggling attacks
0b654d52e golang: Update to 1.13.9
8677a0e3e libredblack: pass CFLAGS properly
ad782ffff Merge pull request #11615 from stangri/19.07-https-dns-proxy
fc16e964c Merge pull request #11617 from nxhack/19_07_icu_66_1
6abb6bb2a https-dns-proxy: support for dnsmasq noresolv option
2509b0e89 icu: update to 66.1
df7e27dfe youtube-dl: update to version 2020.3.8
0b8102940 haveged: move init script from 13 to 01
2085b990f libarchive: update to 3.4.2
8bd2d5e53 Merge pull request #11566 from BKPepe/python3-update-19.07
f043afe46 openvswitch: fix PIE build against 4.14 kernel
5827a1ed2 x264: add CONFIGURE_VARS and MAKE_FLAGS when NASM is not selected
5746e4a2b nfs-kernel-server: Fix compile with uClibc-ng
17924b128 xtables-addons: disable ASLR PIE
fd4da9667 python3: update to version 3.7.7
3b9648db3 django: bump to version 1.11.29
55176058f Merge pull request #11540 from neheb/softee
dc524aa2a softethervpn: disable PIC
381153d59 softethervpn: Fix openssl header patch
aba0dd872 softethervpn: Add missing OpenSSL header
f09028fcd softethervpn: Update to rtm version 4.29-9680
b546ff127 stubby: fix init script
c5219c8af stubby: makefile and init script cleanup
9b64ae0ba btrfs-progs: fix check for btrfs in btrfs scan
2f5fce820 syslog-ng: update to version 3.26.1
79186664e Merge pull request #11526 from wvdakker/openwrt-19.07
43c5aba9e Merge pull request #11524 from micmac1/1907arc_aio2
62d9ba9a0 Shorewall6: Bump to 5.2.3.7.
e14ee2480 Shorewall: Bump to 5.2.3.7.
84cca11fa Shorewall6-lite: Bump to 5.2.3.7.
803ab2f44 Shorewall-lite: Bump to 5.2.3.7.
7b67a0b91 Shorewall-core: Bump to 5.2.3.7.
c84786237 mariadb: add dependency on libaio for arc as well
b2f00d8b7 youtube-dl: update to version 2020.3.6
c4795d941 youtube-dl: update to version 2020.3.1
c81415a80 Merge pull request #11501 from Bloup1net/phantap19.07
408f666e6 libuv: update to 1.34.2
b97f33e02 cgi-io: fix compilation against uClibc
68aa303ef cgi-io: use O_TMPFILE for uploads and attempt to directly link target file
7f00eebab cgi-io: use dynamic memory for post decoding, support proc files
ce9229d2e Merge pull request #11500 from fantom-x/irqbalance-backport
bbc1b3025 irqbalance: support reload_config & start later
cdd892c9b irqbalance: add support of interval and banirq
cceb2c3ad irqbalance: upgrade to 1.6.0
801a908a1 phantap: add to 19.07
ca93667c8 Merge pull request #11482 from BKPepe/libaio_update
61b732e62 libaio: Update to 0.3.112
abdbeb350 mosquitto: bump to 1.6.9
a7d3b91ce syncthing: enable via config, lower priority, cleanup
0b9578a1d Merge pull request #11472 from fantom-x/syncthing-19.07
653014528 syncthing: bump to 1.3.4
56af7bcf1 syncthing: add package
2020-04-10 20:25:56 +02:00
Martin Weinelt
d333bffb67
modules: update OpenWrt
5b9b833f8c bcm53xx: add support for Luxul FullMAC WiFi devices
ab3549a870 bcm53xx: refactor board.d code in 02_network
35413b047c bcm53xx: sysupgrade: optimize building UBI image
55c29c398c busybox: enable truncate on bcm53xx target
a89731ad7a bcm53xx: fix ASUS firmwares to use vendor format
36373c5ddb openssl: bump to 1.1.1f
470f7c046c ath79: add support for TP-Link TL-WDR4310 v1
96ee7c8bfd libpcap: Update shared-lib patch from Debian to fix linking problems
96092a8eea mkrasimage: fix segmentation fault
bf5ea2a8dc rpcd: fix respawn settings
83381ce95d readline: needs host depend on ncurses to build
45b586c4a6 tools: squashfskit4: fix build with GCC10
79b60d878d squashfskit4/Makefile: introduce PKG_RELEASE=1
a08394b3c6 build: prereq: tidy gcc version checks
66cbfeeaae build: add GCC 10 version detection
eea3a9625c openssl: revert EOF detection change in 1.1.1
c6c3f6bb0a mac80211: Update to version 4.19.112
794fd4c6cf procd: turn error into debug message for missing ujail binary
f5b3cd1539 ar71xx: Fix gigabit switch support for Mikrotik RB951G-2HnD
bdbda30384 ath79: add support for TP-Link TL-WA860RE v1
2e6bfab8c5 ath79: add support for TP-Link TL-WA850RE v1
dba6f418fa mac80211: fix brcmfmac monitor interface crash
27e77922a1 ar71xx: use status led for GL.iNet GL-AR750S
2020-04-10 20:24:33 +02:00
David Bauer
d3f5adcfa4 github: actions: only build certain branches
This enables build-testing only on master as well as next and release
branches.
2020-04-10 03:50:31 +02:00
Matthias Schiffer
7b7cde7256
Merge pull request #1970 from Kasalehlia/fix-form-reset
gluon-web-model: update inputs on form reset
2020-04-09 23:17:39 +02:00
Jan Alexander
17b49e20ee ath79-generic: add support for GL.iNet GL-AR750S 2020-04-09 20:29:24 +02:00
Matthias Schiffer
2a8943e516 build: use .SILENT instead of adding @ to each recipe 2020-04-09 14:30:44 +02:00
Matthias Schiffer
4e02d9ba9f docs: start doc page on the build system 2020-04-09 14:30:44 +02:00
Matthias Schiffer
584d215f56 build: allow overriding the base feed list 2020-04-09 14:30:44 +02:00
Matthias Schiffer
6155bf82c8 build: reduce build environment pollution
Instead of exporting various variables (unintendedly making them
available to the OpenWrt build, possibly bypassing .config), pass the
environment only to commands that need it.
2020-04-09 14:30:44 +02:00
Matthias Schiffer
a180bb8689 build: use .ONESHELL
By using .ONESHELL and adding -e to .SHELLFLAGS, we can simplify complex
shell commands (like manifest generation) and gain a simple way to pass
multi-line environment variables into shell commands.

The @ and + flags for recipe commands are moved to the top of each
recipe.
2020-04-09 14:30:44 +02:00
Matthias Schiffer
47f1509e75 build: indent non-recipe Makefile lines with two spaces 2020-04-09 14:30:44 +02:00
Jan Alexander
016b323a17 gluon-status-page: set fixed layout and responsive view for data tables 2020-04-07 22:34:23 +02:00
Martin Weinelt
8aa30b7099 ci: add chown step to resolve permissions on openwrt dl cache 2020-04-07 19:26:26 +02:00
David Bauer
95b133d4fd x86-geode: add target class
x86-geode does not include the common x86 target-settings. Thus we need
to specify the device class in order to build images with all necessary
packages included.
2020-04-06 21:36:28 +02:00
David Bauer
1b0288d539 contrib: actions: remove surplus package sources 2020-04-05 19:49:44 +02:00
David Bauer
366ba8ab99 contrib: actions: add custom sources.list 2020-04-05 19:43:57 +02:00
David Bauer
83b2c41cee contrib: actions: enable verbose output 2020-04-05 19:19:58 +02:00
David Bauer
bb905b3351 actions: move dependencies to dedicated step 2020-04-05 19:08:15 +02:00
Ruben Barkow-Kuder
24dd731019 docs: compress PNG for mtu diagram 2020-04-05 16:35:11 +02:00
Kasalehlia
bf090a8a83 gluon-web-model: update inputs on form reset
Register to 'reset' event on form element and make call to 'update' function
delayed in 'data-update' handler to allow the form values to update beforehand.

When using a form's 'reset' button, form field visibility was not updated.
This could lead to situations where a checkbox had to be toggled again
twice to display the detail text inputs. (Example taken from private
wifi package)
2020-04-05 12:47:49 +02:00
Martin Weinelt
3fb4cdad13 gluon-respondd: allow queries from extra_prefix6
Fixes #1959
2020-04-04 22:13:10 +02:00
David Bauer
c21d95bf34 github: add build workflow 2020-04-04 18:04:31 +02:00
David Bauer
b427a3b1ad modules: use GitHub mirror
Then using GitHub actions, the OpenWrt Git service occasinally returns a
504 leading to a failed build.
2020-04-04 18:04:31 +02:00
David Bauer
ebac7e4459 contrib: add build-script for GitHub actions 2020-04-04 18:04:31 +02:00
David Bauer
a37098da6b contrib: add generation script for GitHub actions 2020-04-04 18:04:31 +02:00
David Bauer
59a4cd63b8 gluon-respondd: expose OWE clients in nodeinfo
Provide the number of OWE stations in addition to the number of all
connected wireless clients.
2020-04-01 01:15:38 +02:00
David Bauer
b7ac32efbc docs: include OWE documentation 2020-04-01 01:15:38 +02:00
David Bauer
9720be5112 gluon-web-wifi-config: set state of OWE VAP 2020-04-01 01:15:38 +02:00
David Bauer
6692095f9d gluob-client-bridge: add support for OWE encryption 2020-04-01 01:15:38 +02:00
David Bauer
c9f90c3ef8 build: add class-packages for targets without devices
When adding device classes, targets without devices such as x86 were not
handled. As site and feature packages are included on such a per-device
decision, x86 images ended up without most packages.

Include a class setting for a target and include the class-packages
target-wide when this setting is configured.

Fixes 9c52365077 ("build: introduce device classes")
2020-03-27 23:35:24 +01:00
David Bauer
17db337d95 modules: update OpenWrt
81264ebb51 brcm2708: fix build failure

Compile-tested: brcm2708
2020-03-26 01:40:29 +01:00
Martin Weinelt
9fb4be6104 modules: update OpenWrt
39405644d5 dnsmasq: add 'scriptarp' option
d5b1f4430f openssl: update to 1.1.1e
798ff37aaa openssl: add configuration example for afalg-sync
168acbb36d oxnas: yet another irqchip related patch
cf4520d15e oxnas: backport another fix for irqchip
456e1c60d6 ath79: add support for TP-Link WDR3500 v1
e7fae8fc97 ath79: add support for TP-Link Archer C60 v3
2bd9d2e08b oxnas: backport patch fixing hang after reboot
74a8e36975 layerscape: add kmod-i2c-mux to DEVICE_PACKAGES for traverse-ls1043
7ae345ecb7 ath79: add support for TP-Link TL-WR740N v5
76c1c1daea ar71xx: fix port order on TP-Link Archer C60 v1/v2
f1a3a6b79c ath79: fix port order on TP-Link Archer C60 v1/v2
e4107e30a7 ar71xx: remove wrong MAC address adjustment for Archer C60 v2
83f1015a6c ar71xx: fix swapped LAN/WAN MAC address for Archer C60 v1/v2
9f024d3587 ath79: fix swapped LAN/WAN MAC address for Archer C60 v1/v2
b32129d30b rssileds: add dependencies based on LDFLAGS
9da31d0fb4 mt76: update to the latest version
68351990dc ar71xx/ath79: ew-dorin, fix the trigger level for WPS button
6e4453aecc kernel: backport out-of-memory fix for non-Ethernet devices
06f5a8d3e9 kernel: bump 4.14 to 4.14.172
e7f1313bbb rpcd: add respawn param
f6f0cd54a2 rpcd: update to latest Git HEAD

Compile-tested: ipq40xx-generic, ramips-mt7621
2020-03-25 02:21:24 +01:00
David Bauer
051b275055 build: add class specific GLUON_SITE_PACKAGES
This allows to define a list of packages, which are only installed
for a specific device-class.
2020-03-25 02:05:18 +01:00
David Bauer
a9c5b83cad docs: private-wlan: add WPA3 documentation 2020-03-25 02:05:18 +01:00
David Bauer
c7fa1927aa gluon-web-private-wifi: enable WPA3 configuration
This allows a user to enable WPA3-Personal and WPA2-WPA3-MM for the
private WiFi in case it is supported by the platform.
2020-03-25 02:05:18 +01:00
David Bauer
86b5104790 gluon-core: add WPA3 platorm helper
This adds a helper method, which determines if the current platform
supports WPA3 or not.

WPA3 is supported if
 - the device is not in the featureset category "tiny"
 - the WiFi driver supports 802.11w management frame protection
2020-03-25 02:05:18 +01:00
David Bauer
88bed04679 build: remove hostapd from default packages 2020-03-25 02:05:18 +01:00
David Bauer
00e029500e features: add hostapd-mini by default
If WPA3 is not selected as a feature, autmatically include
hostapd-mini.
2020-03-25 02:05:18 +01:00
David Bauer
b057015455 gluon-wireless-encryption: add package
The gluon-wireless-encryption package selects a WPA3 supporting
hostapd package as a dependency and stores the information, which
encryption method is supported to the device.
2020-03-25 02:05:18 +01:00
David Bauer
1df243d1b3 build: add class specific GLUON_FEATURES 2020-03-25 02:05:18 +01:00
David Bauer
7903d9eb64 docs: add device-classes 2020-03-25 02:05:18 +01:00
David Bauer
7fd7116e2a targets: add device-class flags
This commit assigns class-flags to devices. The following scheme is
used:

 - ath9k & ath10k: tiny if RAM <128M
 - ath10k & ath10k: tiny if RAM <256M
 - all: tiny if RAM <64M
 - all: tiny if flash <8M

All other devices automatically have the default device-class selected.
2020-03-25 02:05:18 +01:00
David Bauer
9c52365077 build: introduce device classes
This commit allows to define a device-class flag in the target
definitions. This way, it is possible to distinguish between groups
of devices in the build-process in terms of package or feature
selection.
2020-03-25 02:05:18 +01:00
David Bauer
3d5a693026
x86: add common wireless packages (#1947) 2020-03-23 19:00:28 +01:00
Martin Weinelt
461d904086 Add gluon-mesh-wireless-sae package
This package adds support for SAE on 802.11s mesh connections.

Enabling this package will require all 802.11s mesh connections
to be encrypted using the SAE key agreement scheme. The security
of SAE relies upon the authentication through a shared secret.

In the context of public mesh networks a shared secret is an
obvious oxymoron. Still this functionality provides an improvement
over unencrypted mesh connections in that it protects against a
passive attacker who did not observe the key agreement. In addition
Management Frame Protection (802.11w) gets automatically enabled on
mesh interfaces to prevent protocol-level deauthentication attacks.

If `wifi.mesh.sae` is enabled a shared secret will automatically be
derived from the `prefix6` variable. This is as secure as it gets
for a public mesh network.

For *private* mesh networks `wifi.mesh.sae_passphrase` should be
set to your shared secret.

Fixes #1636
2020-03-23 17:06:43 +01:00
Martin Weinelt
bf04107048 docs: v2020.1: add Edgerouter X NAND driver problem to known issues
Resolves #1937
2020-03-19 20:39:36 +01:00
Matthias Schiffer
d7e724ada9
target_lib: replace envtrue with more intuitive istrue helper
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2020-03-14 16:51:43 +01:00
Matthias Schiffer
c9f3017ac5
Merge pull request #1955 from freifunk-gluon/dgn3500b
lantiq-xway: add support for NETGEAR DGN3500B
2020-03-14 16:32:34 +01:00
Matthias Schiffer
3bd67ab25f gluon-core: retrieve primary MAC address from board.json for Netgear DGN3500B 2020-03-14 16:26:08 +01:00
Andreas Ziegler
d8b944ea95 lantiq-xway: add support for NETGEAR DGN3500B 2020-03-14 16:25:51 +01:00
Matthias Schiffer
cd09c95e60
Merge pull request #1956 from freifunk-gluon/primary-mac-cleanup
Primary MAC logic refactoring
2020-03-14 16:13:14 +01:00
Matthias Schiffer
2e265e03c1
gluon-core: refactor primary MAC logic
Remove a lot of redundant code by switching to a match table listing
the targets and boards for each candidate for the primary MAC interface.

In addition, we add some flexiblity by allow to switch out the sysfs file
data source for the MAC address.
2020-03-12 18:52:23 +01:00
Matthias Schiffer
59d182fe54
gluon-core: gluon.platform: allow omitting target and subtarget
Allow wildcard matches on all subtargets of a target, or a full wildcard
always returning true when no arguments are passed.
2020-03-12 00:27:05 +01:00
Martin Weinelt
75684ecf37
modules: update routing
b8fd8c8 Merge pull request #554 from ecsv/batadv-for-19.07
18a724e batman-adv: Merge bugfixes from 2020.0
2020-03-10 17:15:15 +01:00
Andreas Ziegler
43995c4624
codestyle: replace leading spaces with tabs in target files (#1954) 2020-03-09 22:19:07 +01:00
Martin Weinelt
694b6e493d
lantiq-xrx200: disable factory image for tl-w{8970,8980}
There is no factory image, they are flashed using the sysupgrade image.
2020-03-09 15:32:00 +01:00
Martin Weinelt
2c6631a294
docs: supported_devices: flag td-8970 v1 with lan_as_wan note 2020-03-09 08:38:33 +01:00
Martin Weinelt
72e368acb7
.gitignore: add files created when mounting repo in docker 2020-03-09 08:30:33 +01:00
David Lutz
7ffc59d152
lantiq-xrx200: add support for TP-Link TD-W8970, TD-W8980, TD-W9980 (#1867) 2020-03-09 04:15:21 +01:00
Jan Alexander
5591d3e745 ipq40xx-generic: add support for EnGenius ENS620EXT 2020-03-09 02:15:50 +01:00
Martin Weinelt
1c2dc51b76
add .editorconfig (#1951)
Resolves #1929
2020-03-08 19:18:17 +01:00
Ralf Jung
68d970e91b
gluon-mesh-vpn-tunneldigger: only search for exactly the tunneldigger binary in watchdog (#1953) 2020-03-08 13:42:25 +01:00
David Bauer
a77d01bb46 docs, README: Gluon v2020.1.1
(cherry picked from commit 447595f0bb)
2020-03-07 19:57:00 +01:00
David Bauer
0319206862 docs: add v2020.1.1 release notes
(cherry picked from commit 1566324fd3)
2020-03-07 19:56:52 +01:00
Martin Weinelt
9e4eb18290
docs: v2020.1: append missing known issues 2020-03-07 19:22:53 +01:00
David Bauer
add560b18f modules: bump OpenWrt
1713707673 ar71xx: add missing LED migration for Archer C7 (#1941)
2020-03-01 23:49:18 +01:00
David Bauer
5af0080c24 modules: bump OpenWrt
ef391799e3 ar71xx: correct AVM FRITZ Repeater 450E WPS button flag (#1940)
2020-03-01 18:44:19 +01:00
Martin Weinelt
1c4f1feb36
modules: update routing
efa6e54 luci-app-bmx6: bugfix querying bmx6-info (p2)
f1b0476 luci-app-bmx6: bugfix format to query bmx6-info
839ea37 quagga: update to version 1.1.1 (#541)
c82ce8d Merge pull request #536 from ecsv/batadv-for-19.07
242185e batman-adv: Merge bugfixes from 2019.5

Build-tested: x86-64, ipq40xx
2020-03-01 13:15:37 +01:00
Martin Weinelt
027aa49d91
modules: update packages
99efce0cd pagekite: add simple websockets and update syntax
42c7a7adb pagekite: avoid redundant information in syslog
13e8c6ffe pagekite: bump to v0.91.200218
c3ff03a34 ocserv: updated to 0.12.6
8b1101bbd gnutls: updated to 3.6.12
95c72d8ab php7: update to 7.2.28
61970ece5 xl2tpd: fix building failure caused by pfc
7fe207375 xl2tpd: bump to version 1.3.15
e9ea875a1 zip: remove package
11b2c1ea1 nnn: update to version 3.0
47dc62ba2 nnn: update to version 2.9
201ec1470 youtube-dl: update to version 2020.2.16
7153a1f7f youtube-dl: update to version 2020.1.24
3a4d88f5d youtube-dl: update to version 2020.1.15
2c0a307ee acme: update to 2.8.5
e29cc586f Merge pull request #11381 from wvdakker/openwrt-19.07
1c7b7cfdf Shorewall6: Bump to version 5.2.3.6
481e63feb Shorewall: Bump to version 5.2.3.6
4f0e5c49d Shorewall6-lite: Bump to version 5.2.3.6
7c8f5fd70 Shorewall-lite: Bump to version 5.2.3.6
1fbf3e179 Shorewall-core: Bump to version 5.2.3.6
3cf36f145 Merge pull request #11375 from jefferyto/golang-1.13.8-openwrt-19.07
12b84e6ac golang: Update to 1.13.8
156dd4ad0 Merge pull request #11360 from gladiac1337/haproxy-2.0.13-openwrt-19.07
2f5b20987 haproxy: Update HAProxy to v2.0.13
bd24f9bb3 ffmpeg: disable x86 asm for old CPU types
dbef69927 ffmpeg: update to 3.4.7
c53055aa1 ffmpeg: Fix fdkaac patches
9d6855be1 ffmpeg: Fix pkgconfig files to be more cross compile friendly
1e97faf11 zabbix: remove configure patch
2058e86fa zabbix: Fix compilation with uClibc-ng
403c98169 Merge pull request #11356 from neheb/boostkkk
2b15682da sshpass: add new package
76947a8be boost: reintroduce uClibc-ng patch
78d7c8aef knot: Do not try to build under ARC
b4febf32c liburcu: Don't build under ARC, not even InstallDev
fc5935729 perl: define $sysroot for extensions
5c856ff55 perl: Don't build InstallDev under ARC
c7e1106d1 nss: Fix compilation with uClibc-ng
bdca0e7bf measurement-kit: Fix compilation with uClibc-ng
8e746461f measurement-kit: update to version 0.10.9
659b1b807 boost: Fix embarassing ARC typo
8640d243e Merge pull request #11296 from Andy2244/samba4-update-4.11.6-(19.07)
a0c00a213 Merge pull request #11297 from Andy2244/ksmbd-update-3.1.3-(19.07)
f5be481a4 ksmbd: update to 3.1.3, ksmbd-tools: update to 3.2.1, add smb1 support, add avahi support package
1a503986f samba4: update to 4.11.6, add new UCI option
490685093 dnsdist: fix compilation on PIE ARM64
f815a7416 Merge pull request #11281 from micmac1/apache-19.07-up
9be5706a7 Merge pull request #11245 from Robby-/openwrt-19.07-rlmpython_and_fixproxycfgconflict
9e551f1b3 apache: add postinstall script
019b8fd05 subversion: fix build failure
8b238c840 subversion: add libsqlite3 depend
623ae4614 apache: bump to 2.4.41 & sync with master
4cba41ac1 apr-util: sync with master
391f5f087 apr: bump to 1.7.0 & sync with master
04da60f17 nano: update to 4.8
3cf0c61f2 php7: update to 7.2.27
c417bddda freeradius3: Enable the rlm_python and rlm_python3 modules.
4d16e3ae3 freeradius3: Fix proxy.conf file conflict.
da2071507 syslog-ng: listen not globally but just locally
268ea7a78 python-importlib-metadata: add new package
90e596693 shadow: update to 4.8.1
433264290 Merge pull request #11213 from adde88/openwrt-19.07
f8999d963 Merge pull request #11229 from jefferyto/golang-env-fixes-openwrt-19.07
1d7cda2ed golang: Improve build isolation from user environment
6ac743909 Merge pull request #11226 from micmac1/sqlite3-19.07
0263d2273 sqlite3: update to version 3.31.1
f828174de hcxtools: update to 5.3.0 + changes to Makefile to include latest binaries being compiled
afb4bb4c2 dnscrypt-proxy2: update to version 2.0.39
ba9262f04 dnscrypt-proxy2: update to version 2.0.36
3c95786ac Merge pull request #11219 from jefferyto/golang-1.13.7-openwrt-19.07
9a792f41c golang: Update to 1.13.7, add PKG_CPE_ID to Makefile
98499ee44 Merge pull request #11214 from Andy2244/wsdd2-fix_typos-(19.07)
24c1ebc2b Merge pull request #11216 from dibdot/19.07-2
8dffab34b adblock: update 3.8.15
00a1294d0 wsdd2: fix typos
da3df8f6c hcxdumptool: update to 6.0.1
e73b2a0a0 Merge pull request #11203 from micmac1/19.07-xml2
0eb7b3e4e libxml2: install xml2-config with host triplet
6e5977094 libxml2/host: revert xml2-config prefix fix
752070f84 nextdns: Update to version 1.4.23
266917ae5 Merge pull request #11197 from Ansuel/backport
2c4e6a539 uwsgi: backport master changes to 19.07
8b5c2901c nginx: backport master changes to 19.07
f7b3d0062 Merge pull request #11184 from micmac1/19.07-maria-10.2.31
cff7a04a6 Merge pull request #11176 from jefferyto/python-fix-float-byte-order-openwrt-19.07
265e444d3 mariadb: security bump to 10.2.31
36a1c0c5a python-certify: bump to 2019.11.28
ad50eb7c0 python3: Fix float byte order detection
a76dd0635 python: Fix float byte order detection
30d0c2ee0 python: Replace utime with utimes
1ec76dd7c libxslt/host: depend on libxml2/host
4689c0998 libxslt: patch security issues
db7c84f67 libxslt: add host build
4d2cbcadc Merge pull request #11149 from nickberry17/add_mm_to_19
cac10393e modemmanager: add ModemManager to packages
c9cf3c277 libqmi: add libqmi to packages
5f27a4701 libmbim: add libmbim to packages
cd81e4f06 Merge pull request #11143 from Andy2244/smbd-rename_ksmbd-update-3.1.1-(19.07)
f5f35a72a Merge pull request #11144 from Andy2244/wsdd2-rename_ksmbd-(19.07)
e6c686454 glib2: fix mips16 build, add size reducing static link, fpic CFLAGS
ef940752d glib2: Disable Werror
fd5a51ac0 wsdd2: update for renamed smbd->ksmbd
82b463b19 smbd: update to 3.1.1, rename to "ksmbd", "ksmbd-tools"
1e43dc8f8 Merge pull request #11123 from stangri/19.07-https-dns-proxy
045e54e6b Merge pull request #11129 from Robby-/openwrt-19.07-freeradius3_update_3_0_20
885c9ed6c Merge pull request #11126 from micmac1/19.07-tiff
b3c1a67ff freeradius3: Update to 3.0.20
eee4d0830 tiff: update version to 4.1.0
a9fd019a3 https-dns-proxy: fix deleting server items, configurable dnsmasq settings change
eab36f8a6 avrdude: Fix GPIO path building
9cb0c7f4a Merge pull request #10990 from BKPepe/django-19.07
5afe3fd1d Merge pull request #11078 from ddast/radicale_add_urllib_dep
ea93089af radicale-py3: Add python3-urllib dependency
72af40f2b nut: fix other/otherflag custom variables in nut-server.init
e1aa905ab nut: update OpenSSL 1.1.0 patch
154da8aa0 nut: fix CGI setup
7b07ac9e3 Merge pull request #11063 from EricLuehrsen/openwrt-19.07-unbound
bc4f3c11c unbound: improve dependencies for okpg
895200940 Merge pull request #11061 from cotequeiroz/afalg_1.1.0-19.07
1410d6b73 afalg_engine: bump to v1.1.0
162974f80 btrfs-progs: update to version 5.4.1
072fcb5ce libseccomp: add seccomp-syscalls.h to InstallDev
3ab34b50d Merge pull request #11051 from wvdakker/openwrt-19.07
5022caf86 Shorewall6-lite: Bump to 5.2.3.5
0b890cf4b Shorewall6: Bump to 5.2.3.5
1201cdcd5 Shorewall: Bump to 5.2.3.5
4cb0ff831 Shorewall-lite: Bump to 5.2.3.5
c2a5aa1a5 Shorewall-core: Bump to 5.2.3.5
8ba3c7b19 afalg_engine: fix ENGINES location, zero-copy
776216a65 afalg_engine: add new package
995226d95 strongswan: bump to 5.8.2
243673b2d strongswan: allow to specify per-connection reqid with UCI
3880d65a0 strongswan: bump to 5.8.1
ba43556ae libarchive: update to version 3.4.1 (security fix)
ff87e8dbf oniguruma: bump to version 6.9.4
3030d0fc1 vpn-policy-routing: bugfix: remove conflict with vpnbypass
d0bdd3252 Merge pull request #11021 from jefferyto/golang-updates-openwrt-19.07
2dbc88762 golang: Update to 1.13.6
fdd202bd1 golang: Fix selection of GOARM value
6a64b7aff libseccomp: update to version 2.4.2
a50eeb01f django: update to version 1.11.27
8f3dcbcee unbound: fix TLS forwards with optional suffix
ffdbf4e7c measurement-kit: update to version 0.10.8
8f037084b measurement-kit: update package
8f2eb8f2d measurement-kit: update to version 0.10.6
3dfabe79f smbd: Update to 3.0.2
670f336d7 transmission: Sync with master
e847333d1 python,python3: split python[3]-pkg-resources from setuptools
1f293771c openvswitch: bump PKG_RELEASE
dc097661c openvswitch: backport patch to fix compilation
74e160df2 openvswitch: fix building failure caused by dst_ops api change
a4a54d0f3 openvswitch: bump to version 2.11.1
d974cd367 Merge pull request #10920 from Rixerx/openwrt-19.07
26c23f3b9 Merge pull request #10881 from mstorchak/stubby-19.07
9adadfd8e sqlite3: bump to version 3.30.1
3bfc11ea2 sqlite3: bump to 3.29.0
e2bca1026 nginx: update to 1.16.1
74e9ca74f tor: add respawn to init script
b85cbaf7e tor: update to version 0.4.2.5
2da2cf43b youtube-dl: update to version 2020.1.1
9ec865253 Merge pull request #10940 from Andy2244/samba-4.11.4-(19.07)
7472cc742 Merge pull request #10938 from Andy2244/smbd-rename-3.0.1-(19.07)
396c5fc9b Merge pull request #10939 from Andy2244/wsdd2-init-update-(19.07)
bff320497 Merge pull request #10937 from Andy2244/libtirpc-1.2.5-(19.07)
85066d81d samba4: update to 4.11.4 (python3 version), add rpcsvc-proto, add libasn1 host build
28e84aacf wsdd2: update to git (2019-12-15), bind to 'lan' only, update init for smbd
8bc58d175 smbd: rename from cifsd, update to 3.0.1
71d639a45 libtirpc: update to 1.2.5
3a82973ae zabbix: update to 4.0.16
34938d03f Merge pull request #10903 from stangri/19.07-vpn-policy-routing
a015cc1bd youtube-dl: update to version 2019.12.25
86b48645f vpn-policy-routing: initial release
d22c35e58 nano: update to 4.7
10a7a8763 Merge pull request #10897 from jefferyto/golang-format-ldflags-openwrt-19.07
fc313e772 golang: Format TARGET_LDFLAGS for gcc
8df00a88e Merge pull request #10892 from cshoredaniel/pr-19.07-radicale2-doc-passlib-bcrypt
3b5c73f85 Merge pull request #10893 from cshoredaniel/pr-19.07-update-passlib-1-7-2
64d4fc6e6 radicale2: Document suggested use of passlib and bcrypt
9f39817c7 Merge pull request #10888 from mwarning/zerotier
479b45b8a zerotier: update to 1.4.6
f0c5a95a4 zerotier: make sure the /var/lib exists
38a3ed1c7 zerotier: change license to BSL 1.1
e42648f3c zerotier: update to release 1.4.4
70f4c1d19 zerotier: udpate to 1.4.2
61291196d zerotier: fix linking to libnatpmp and build with uclibc
1961985f8 zerotier: update to zerotier 1.4.0
7b5cc70fa zerotier: keep configuration file on update
bcdb9d00a passlib: Update passlib to 1.7.2
ed6e1024b stubby: switch to ca-bundle in 19.07
73a965aea Merge pull request #10875 from jefferyto/golang-ldflags-fix-openwrt-19.07
db9a8a1e7 golang: Fix ldflags when GO_PKG_LDFLAGS is set
a25849997 Merge pull request #10865 from nxhack/libuv_1_32_0
a23285c00 libuv: update to 1.32.0
b710855ef Merge pull request #10762 from leonghui/wiki-link-update-19.07
07cda0edc Merge pull request #10862 from gladiac1337/haproxy-2.0.12-openwrt-19.07
02985327b haproxy: Update HAProxy to v2.0.12
ef82bba48 unbound: update to 1.9.6
c9cb6a0b1 dnscrypt-proxy2: Update to version 2.0.34
b8bd94ef8 mtr: update to 0.93
5fe674a86 knot: update to version 2.9.2
20d3d99a5 meson: Update to version 0.52.1
c1b410d7a lmdb: use toolchain AR for compilation
38c0db06b shadow: change default encryption method from DES to SHA512
4a8f7d124 netdata: Update to version 1.19.0
39dce33ac syslog-ng: Update to version 3.25.1
cbb329ac7 btrfs-progs: Update to version 5.4
94c4f61b5 Merge pull request #10856 from BKPepe/python3-19.07
198d01f78 Merge pull request #10852 from gekmihesg/19.07-restic-rest-server
0f18984d4 Merge pull request #10853 from gekmihesg/19.07-restic
c5d6ffaf1 python3: Updated to version 3.7.6
34b31493e restic: add package
a018b5149 restic-rest-server: add package
9fffb2b68 icu: Backport C++11 math patch
fff198e7f Merge pull request #10753 from stangri/19.07-https-dns-proxy
e3de8dd08 Merge pull request #10822 from cshoredaniel/pr-19.07-remove-msmtp-scripts
90ef9c18c git: update to version 2.24.1 (security fix)
dc2c25ccf git: Update to version 2.24.0
96c667a12 nspr: update to 4.24
ad246b363 nspr: update to 4.23
8f48dc334 nspr: update to 4.22
78e241c54 nss: update to 3.48
7e51bdee0 nss: update to 3.47.1 and fix xscale
da51495aa nss: update to 3.47
5b1beec9d nss: update to 3.46.1
d4d798baa nss: update to 3.46
0b2a73d15 nss: Replace usleep with nanosleep
666cce12c nss: update to 3.45
01b9bf1a1 nss: update to 3.44.1
ceeac3b37 vpnc-script: bumped release version
13de8da3b php7: update to 7.2.26
b46f4ecd3 vpnc-script: enable reconnect
f57ca519a cgi-io: close pipe descriptors early
9e434da4e cgi-io: implement exec action
59ca5bda3 msmtp-scripts: Remove as abandoning upstream; msmtp-queue works
a84d8ddce https-dns-proxy: switch to https-dns-proxy package name
80c42c968 Merge pull request #10809 from etactica/mb-1907
7ebd7011c libmodbus: update to 3.1.6
a70432b78 tor: update to 0.4.1.6
9147f9d72 tor: update to version 0.4.1.5
2c434727b Merge pull request #10801 from gladiac1337/haproxy-2.0.11-openwrt-19.07
90180becf haproxy: Update HAProxy to v2.0.11
18e9050e3 treewide: update wiki links
10d2e63dd Merge pull request #10776 from rs/nextdns-1.3.1_19.07
d40052862 nextdns: update to version 1.3.1
b4f3e5085 collectd: add vmem uci config
3a65e659d adblock: bugfix 3.8.14
111e84674 net/pagekitec: Update to 20191211 version
a82cbd584 adblock: bugfix 3.8.13
c61579b56 meson: add new package
fd5ef39e8 ninja: add new package
c1dd9499b golang: Update to 1.13.5
e67c39546 transmission: bump PKG_RELEASE
8acf58bf6 geth: Update to 1.9.9
54cbc535d geth: Update to 1.9.6
710c325be nnn: Update to version 2.8.1
b88b43dd1 python-more-itertools: add new package
bc30298f5 motion: fix streaming
77d230b52 motion: add basic procd init script
b1b53e61c motion: Update to 4.2.2
350716771 Merge pull request #10682 from hnyman/collectd-backport
2591e8220 mosquitto: bump to version 1.6.8
12be725fa Merge pull request #10697 from jefferyto/byobu-1.130-openwrt-19.07
1781209be gnutls: fixed pkg-hash to the right one
1c28d8cc2 openconnect: updated to 8.05
b551c5329 gnutls: updated to 3.6.11
6aebfb2df byobu: Update to 5.130
879a1e25b byobu: Update to 5.129
0116633d0 nano: update to 4.6
3dd9ef2f1 banip: update 0.3.11
a9b5f0657 collectd: update to 5.10.0
e33b3f8ca collectd: adjust reaction to ntp time at boot time
a681b766e collectd: update to 5.9.2
bbf35c736 collectd: bump PKG_PACKAGE version
e7ed36702 collectd: add reload and service trigger
ac29330c5 collectd: add logfile plugin definitions
5dd077e95 collectd: add iptables uci config
6884430d4 collectd: add network uci config
df7d418c9 collectd: add curl uci config
53e546854 collectd: add apcups uci config
eb6798351 collectd: add new memory config values
0f9ae62e2 collectd: add new cpu config values
4d54186f1 collectd: use uname to get default Hostname
2bd0a56f0 collectd: log stderr output
c4083af7b collectd: enable threshold plugin
1920eb60f collectd: move jshn.sh include to remove warning
00803ffc9 collectd: enable cpufreq module for ipq40xx and brcm2708_bcm2709
e6ced2769 Merge pull request #10676 from gladiac1337/haproxy-2.0.10-openwrt-19.07
5dd5b3365 haproxy: Update HAProxy to v2.0.10
a79d6df67 transmission: sync with master branch
7c1c00735 Merge pull request #10646 from Andy2244/softethervpn5-9672_19.07
a881ab43c softethervpn5: update to 5.01.9672

Build-tested: x86-64, ipq40xx
2020-03-01 13:14:26 +01:00
Martin Weinelt
1191fda363
modules: update OpenWrt
c56ed72d2b OpenWrt v19.07.2: revert to branch defaults
33732f4a9c OpenWrt v19.07.2: adjust config defaults
65030d81f3 libubox: update to latest Git HEAD
b33cfb7eb2 ath79: add missing reset-gpios for NanoStation Loco M (XW)
4edadfb997 ath79: add support for Ubiquiti NanoStation Loco M (XW)
cf118077cd ppp: backport security fixes
0e9e5b1553 Revert "ppp: backport security fixes"
9e2a1af62f uhttpd: update to latest Git HEAD
af79c3bccc kernel: bump 4.14 to 4.14.171
bc0ca20ca9 ipq806x: fix bug in L2 cache scaling
191822b59f ipq806x: add missing core1 voltage tolerance
d0c8875faf ath79: ar934x: use reset for usb-phy-analog
c9b6bb43ce ath79: phy-ar7200-usb: adapt old behavior of arch/mips/ath79/dev-usb.c
b2660e67f0 Revert "ath79: add support for Ubiquiti NanoStation Loco M (XW)"
21bf718b8c ath79: add support for Ubiquiti NanoStation Loco M (XW)
2d3a93335a ramips: append tail to WF2881 initramfs image
8fa6107aee ath79: add support for Ubiquiti Picostation M (XM)
6a950afde1 ath79: add support for Ubiquiti Nanostation Loco M (XM)
7cbd39421e ath79: add gpio4 pinmux on TL-WR841N/ND v8, WR842N v2, MR3420 v2
085f38351f ath79: enable forceless sysupgrade from ar71xx on fritz300e
6b7eeb74db ppp: backport security fixes
95d5cbdec3 ath79: add wmac migration for all ar93xx/qca95xx SoCs
2d21357b65 ath79: ar93xx/qca95xx: move gmac/wmac/pcie node out of apb bus
b6c01fec92 hostapd: remove erroneous $(space) redefinition
5000fc53a1 ath79: fix DTS node names for Ubiquiti XW partitions
a0ca72d9ab uboot-envtools: ath79: add Netgear WNDR3700v2
53cd2299ee ath79: WNDR3700 v1/v2: make u-boot env partition writable
cff3795450 bcm53xx: build images for Luxul ABR-4500 and XBR-4500 routers
cf2b042855 firmware-utils: add lxlfw tool for generating Luxul firmwares
887eb669f9 mac80211: brcm: backport remaining 5.6 kernel patches
d91b52b1a2 kernel: add missing symbol
2a844349fa kernel: add support for GD25D05 SPI NOR
eca8a2ee0d kernel: bump 4.14 to 4.14.169
3d1c84d424 ramips: reenable image creation for the D-Link DIR-645

Build-tested: x86-64, ipq40xx
Fixes: CVE-2020-8597
2020-03-01 13:12:40 +01:00
Andreas Ziegler
ed91ec97c8 docs: minor grammar fix
fixes #1935
found by @lrnzo
2020-02-20 02:03:37 +01:00
Martin Weinelt
f83d676442 docs, README: Gluon v2020.1 2020-02-15 00:12:21 +01:00
Martin Weinelt
d6c9ab1a81 docs: add v2020.1 release notes 2020-02-15 00:12:21 +01:00
Martin Weinelt
a8134ecb40
Revert "docs: features/multidomain.rst: use gluon-reload instead of reboot (#1888)"
This reverts commit 4e070312f9.

The recommendation is not sufficient at this time, so revert it.

See #1898 for further discussion.
2020-02-10 15:43:43 +01:00
Matthias Schiffer
0af45b70f9
brcm2708: update image names and manifest aliases for new libplatforminfo 2020-02-04 23:59:16 +01:00
Matthias Schiffer
f0e5c5c3c5
Merge branch 'patch-1' of https://github.com/Dark4MD/gluon 2020-02-04 23:54:08 +01:00
Matthias Schiffer
df0e3526dc
modules: update Gluon packages
12e41d0ff07e libplatforminfo: brcm2708: use board_name instead of model for image name
033401c18ecb mmfd: bump version
7cdfb66ece7b l3roamd: bump version
85af24315855 autoupdater: Fixed segfault on wrong long option
2020-02-04 23:25:38 +01:00
David Bauer
78e5ece527 docs readme: Gluon v2019.1.2
(cherry picked from commit 63ebeb25c0)
2020-02-04 21:42:33 +01:00
David Bauer
2f3714e355 docs: add v2019.1.2 release notes
(cherry picked from commit f1f188f804)
2020-02-04 21:42:23 +01:00
Matthias Schiffer
af21f912b2
generic: fix GLUON_DEBUG on targets without configurable rootfs size
Fixes: c3435607e1 ("generic: increase RootFS size when GLUON_DEBUG is enabled")
2020-02-04 02:04:36 +01:00
Ralf Jung
ba276dcfbd docs: add a note that hopglass-server needs an update to work with the new
respondd address
2020-02-03 20:49:03 +01:00
Manu.WTF
40ec997641 brcm2708-bcm2710: add manifest_alias for raspberry-pi-3-model-b-rev-1.2 2020-02-03 00:14:22 +01:00
Andreas Ziegler
9a75e2c05b docs: GL.iNet 64xx: remove vendor and version
- vendor name should not be part of model name
- there's no other version, hence mentioning the version is superfluous
2020-02-02 01:12:46 +01:00
Andreas Ziegler
390884819c docs: rename vendor to GL.iNet for uniformity 2020-02-02 01:12:46 +01:00
Andreas Ziegler
0e832c175c ath79-generic: add support for GL.iNet GL-AR300M-Lite 2020-02-02 01:12:46 +01:00
David Bauer
255c0045e7 docs supported-devices: fix alphabetical order 2020-01-31 22:53:59 +01:00
Jan Alexander
9741fb316d ramips-mt76x8: add support for TP-Link TL-MR3020 v3 2020-01-31 22:52:32 +01:00
Jan Alexander
7ee910e1b5 modules: bump OpenWrt
aed6632d31 ramips: use tpt DTS trigger for TP-Link TL-MR3020 v3 and TL-WA801ND v5

Compile-tested: ramips-mt76x8
Runtime-tested: ramips-mt76x8
2020-01-31 22:52:32 +01:00
David Bauer
8315a279bd modules: bump OpenWrt
a229907150 ramips: remove duplicate DEVICE_PACKAGES for TP-Link Archer C20i
4668ae3bed OpenWrt v19.07.1: revert to branch defaults
901bbe2ab9 OpenWrt v19.07.1: adjust config defaults
c155900f66 opkg: update to latest Git HEAD
8ab2b42fac kernel: fix dst reference leak in flow offload
47935940d6 ath79: fix SUPPORTED_DEVICES not matching ar71xx board names
da5b5ae9b9 ath79: remove SUPPORTED_DEVICES for TP-Link Archer D50 v1
f84981f6f8 mac80211: Update to version 4.19.98
3212290a3b lantiq: ltq-ptm: vr9: fix skb handling in ptm_hard_start_xmit()
6ee0138a6c mbedtls: update to 2.16.4
1c5ac590c4 kernel: bump 4.14 to 4.14.167
8038846b62 procd: update to version 2020-01-24
4e91c4e156 ramips: mt7621: ubnt-erx: allow sysupgrade from master
4a58a871c4 hostapd: fix faulty WMM IE parameters with ETSI regulatory domains
abaf329dad tools: tplink-safeloader: update soft_ver for TP-Link Archer C6 v2 (EU)
177c9ed4b0 uboot-envtools: ath79: add support for glinet,gl-ar150
a1502b0443 uboot-envtools: ar71xx: add support for gl-ar150/-domino/-mifi
b6675c2b2e ar71xx: change u-boot-env to read-write for gl-ar150/-domino/mifi
eed8f30b98 urngd: update to version 2020-01-21
1636e99e80 urngd: update to latest Git head
1b4b4e3fae ar71xx: ubnt-rocket-m-ti: fix RSSI LED definitions
c1245ebc96 brcm47xx: fix switch port order for Netgear WN2500RP V1
f638ef4325 kirkwood: fix HDD LED labels for Zyxel NSA325 in 01_leds
d3c2547cf1 brcm47xx: fix switch port order for Netgear WNR3500 V2
f6ab1f1566 ramips: rt305x: remove unnecessary mediatek,portmap
1d56a7b75d ramips: mt76x8: fix bogus mediatek,portmap
49b240cde8 ramips: fix portmap for TP-Link Archer C50 v4
d3eabe44d0 ramips: mt7620/mt7621: remove invalid mediatek,portmap
67595ce380 ramips: add factory image for Netgear R6350
9c6913ccad ramips: add mt7615e support to Netgear R6350
f8902d1ae6 libubox: update to version 2020-01-20
5ca066a5c2 fstools: backport fix from version 2020-01-18
ae953449f2 kernel: bump 4.14 to 4.14.166
945db9fb01 kernel: bump 4.14 to 4.14.165
9298c443df kernel: bump 4.14 to 4.14.164
d46b00cf0f ramips: fix HiWiFi HC5962 status LED
03c35bda03 ramips: fix HiWiFi HC5962 switch configuration
a885f7d3d0 ramips: add kmod-mt7615e to Xiaomi Mi Router 3 Pro images
67c8e586c8 ar71xx/mikrotik: use ath10k-ct-smallbuffers for 64 MiB devices

Compile-tested: ramips-mt76x8
Runtime-tested: ramips-mt76x8
2020-01-29 22:36:23 +01:00
Andreas Ziegler
a0926f64bb docs: supported devices: clarify version numbers of Netgear EX61x0 2020-01-28 01:04:18 +01:00
Nudelsalat
b01327b5d6 ramips-mt7621: add support for Netgear EX6150 2020-01-26 22:54:34 +01:00
Steffen Förster
79ca7a7baa ramips-mt7620: add support for tp-link archer c20 v1 (#1866)
Specification:
- MediaTek MT7620A (580 Mhz)
- 64 MB of RAM
- 8 MB of FLASH
- 2T2R 2.4 GHz and 1T1R 5 GHz
- 5x 10/100 Mbps Ethernet
- 2x external, non-detachable antennas
- UART (J1) header on PCB (115200 8n1)
- 8x LED (GPIO-controlled*), 2x button, power input switch
- 1 x USB 2.0 port
2020-01-20 23:26:04 +01:00
Martin Weinelt
055a2337aa
contrib/ci: fix commenting in Jenkinsfile (#1919) 2020-01-18 19:52:50 +01:00
lemoer
b25a05eec4 contrib/ci: add build dependency versioning (#1915) 2020-01-18 19:32:00 +01:00
Jan Alexander
c30a022e94 ramips-mt76x8: add support for TP-Link TL-WA801ND v5 2020-01-18 11:15:17 +01:00
David Bauer
0b6b2be4fe modules: bump OpenWrt
e18c87ef45 ramips: fix wps leds/btn for TP-Link TL-WA801ND v5
455ba76bf9 hostapd: cleanup IBSS-RSN
dd4d49dcc1 cryptodev-linux: remove DEFAULT redefinition
44b37774f9 mac80211: fix a page refcounting issue leading to leaks/crashes in rx A-MSDU decap
a3b6ffe01b mac80211: fix sta TID stats leak on a few nl80211 calls
25e1afb9e1 ucert: update to version 2019-12-19
fe197b8b09 ramips: mt7621: disable images for gehua_ghl-r-001
08d9828b76 ramips: fix leds for TP-Link Archer C20 v4
fd28ef59db ath79: add SUPPORTED_DEVICES for TP-Link TL-WR841N/ND v9 to v12
7a0d9b2eea ath79: add support for TP-Link TL-WR841N/ND v12
bd3eb071fd ath79: add support for TP-Link TL-WR841N/ND v10
19ff3f5105 ath79: add support for the TP-LINK CPE220 V3
44c827215d ethtool: fix PKG_CONFIG_DEPENDS
eb15634541 OpenWrt v19.07.0: revert to branch defaults
aca39acedf OpenWrt v19.07.0: adjust config defaults
a3ffeb413b ramips: Fix sysupgrade for Xiaomi mir3g
f58705b77e dnsmasq: Fix potential dnsmasq crash with TCP
54711e528d x86: fix missing led variable warning during boot
abb0665bec ca-certificates: provide ca-certs by both ca-certificates and ca-bundle
e9929ebeea ramips: Fix sysupgrade for Xiaomi mir3g
dc399c4e12 ramips: remove duplicate dts nodes of MediaTek LinkIt Smart 7688
a5653ec87e package: remove accidentally added symlink
6395ac4126 fstools: update to latest Git HEAD
f3439c4019 procd: update to version 2020-01-04
64c45d95d6 ubus: update to version 2019-12-27
04fd5e22b2 libubox: update to version 2019-12-28
bf99f79200 base-files: sysupgrade: exit if the firmware download failed
3140d38042 base-files: upgrade: add case to export_bootdevice
3c11032039 sunxi: Turn on CONFIG_PINCTRL_SUN4I_A10 for A20
3fc47dd443 wolfssl: bump to 4.3.0-stable
330046922b kernel: bump 4.14 to 4.14.162
084dfb8ebd kernel: bump 4.14 to 4.14.161

Compile-tested: ath79-generic
Run-tested: ath79-generic
2020-01-17 22:25:13 +01:00
Matthias Schiffer
d3d2204e1a
Merge pull request #1879 from freifunk-gluon/respondd-cleanup
gluon-mesh-* respondd cleanup (part 1?)
2020-01-17 21:50:32 +01:00
Ruben Barkow-Kuder
7220c59661 docs: gluon-radv-filterd: enhance documentation with example (#1900) 2020-01-12 17:36:02 +01:00
Dark4MD
fbb59cfd60 ramips-mt7620: add support for TP-Link Archer C20i 2020-01-10 02:37:54 +01:00
Steffen Förster
c1ed710964 ramips-mt76x8: add support for TP-Link TL-WR902AC v3
TP-Link TL-WR902AC v3 is a pocket-size dual-band (AC750) router
based on MediaTek MT7628N + MT7650E.

Specification:
- MediaTek MT7628N/N (580 Mhz)
- 64 MB of RAM
- 8 MB of FLASH
- 2T2R 2.4 GHz and 1T1R 5 GHz
- 1x 10/100 Mbps Ethernet
2020-01-10 02:37:33 +01:00
lemoer
74bdf79be0 gluon-neighbour-info: use default port 1001 and default dest ::1 2020-01-10 00:13:37 +01:00
Dark4MD
19e0f7959e ramips-mt7620: add support for TP-Link Archer C50 v1 2020-01-09 00:53:21 +01:00
Dark4MD
13f16ed737 ramips-mt7620: add support for TP-Link Archer C2 v1 2020-01-08 19:12:34 +01:00
Manu.WTF
bc5707340d docs: supported_devices: fix small typo
Just saw a small typo i made in the Xiaomi Mi Wifi Mini PR. This PR Corrects this.
2020-01-07 00:05:16 +01:00
Andreas Ziegler
726ac5b876 docs, README: Gluon v2019.1.1
(cherry picked from commit 239c379d06)
2020-01-06 23:41:45 +01:00
Andreas Ziegler
351f46a7db docs: add v2019.1.1 release notes
(cherry picked from commit c612dfbabb)
2020-01-06 23:39:52 +01:00
Dark4MD
0e1cc743d7 ramips-mt7620: remove broken flag for Xiaomi MiWifi Mini
WiFi driver is stable now.
2020-01-06 00:03:16 +01:00
David Bauer
c3435607e1 generic: increase RootFS size when GLUON_DEBUG is enabled
This increases the size of the root filesystem when GLUON_DEBUG is
enabled. Otherwise, the filesystem is too small.

Closes #1907
2020-01-05 19:14:09 +01:00
David Bauer
72e99aa2ba ipq40xx-generic: add alias for Aruba Instant On AP11
The Aruba Instant On AP11 is the Aruba AP-303 with a stripped-down
firmware. Add an alias for the device to remove confusion about the
different naming.
2020-01-05 15:50:11 +01:00
David Bauer
b6ec44d6af targets: remove ath10k-ct-smallbuffers
Remove the ath10k-ct-smallbuffers variant from the default
package-seleciton as it clashes with the QCA ath10k driver.
2020-01-05 00:21:29 +01:00
David Bauer
b82686322d modules: bump OpenWrt
f8543adb14 mt76: update to the latest openwrt-19.07 version
bce5342fb6 mt76: fix incorrect firmware path
2020-01-04 22:48:22 +01:00
David Bauer
8df207c103 ipq40xx-generic: add support for Aruba AP-303 2020-01-04 01:43:10 +01:00
David Bauer
e9dc28241e modules: bump OpenWrt
594f731e04 ramips: fix Archer C20i wireless MAC address
037a151c56 ramips: fix Archer C2 v1 5GHz MAC address
3e8b66e0da ramips: add system LED indicators for TP-Link C20i
80e0b97d07 ramips: convert TP-Link MT7620 boards to tpt trigger
a2e2c40b5e mt76: update to the latest openwrt-19.07 version
1f927bd2f0 ramips: fix inverted reset button for Ravpower WD03

Compile-tested: ramips-mt7621
Run-tested: ramips-mt7621
2020-01-03 20:50:59 +01:00
Andreas Ziegler
8d8634b78e docs: add v2018.2.4 release notes
(cherry picked from commit 1e66cd9057)
2020-01-03 00:52:01 +01:00
David Bauer
ef95448702 modules: bump OpenWrt
7ab5dc77b2 ramips: add LED trigger for TL-WR902AC v3 WAN LED
ad4b939bd0 rt2x00: add throughput LED trigger
91dde4291c mac80211: fix build without CONFIG_PCI
30301dfcf0 mac80211: add patch to include local BSS rx time in survey information
da7dde8993 mac80211: add pcie apsm backport changes
62d5ece70b ramips: remove bogus ralink,mtd-eeprom with offset 0x4
94153971bb ipq40xx: use ath10k-ct-smallbuffers for 128 MiB devices
d13c6d078e kernel: bump 4.14 to 4.14.160
f80272dd9c kernel: bump 4.14 to 4.14.159
3030abfa7e ath79: use ath10k-ct-smallbuffers for 64 MiB devices
36057763fa ath10k-firmware: Add kmod-ath10k-ct-smallbuffers to depends
450b306e54 kernel: ath10k-ct: provide a build variant for small RAM devices
e50d44d985 fstools: update to latest git HEAD
6a151d6558 fstools: update to latest git HEAD
43c5927312 fstools: bump to version 2019-11-03
f7779d64ba fstools: update to latest Git HEAD
ab7386bd67 libubox: bump to version 2019-10-29
c34499a6e4 libubox: update to latest git HEAD
7203a58d7b kernel: remove LINUX_4_9 dependency of kmod-dax
0c07224b5a scripts/dowload.pl: add archive.apache.org to apache mirror list
4fba5dc103 kernel: fix *-gpio-custom module unloading
df45ef5436 cmake: Install host packages to lib instead of lib64
6351205d73 adb: fix for SuperSpeed devices
d2e87c7800 toolchain/gcc: Backport patch to fix unconditional MULTIARCH_DIRNAME
a7d880e830 toolchain/gcc: correct the check expr for newer clang
3a863da268 lantiq: fix phys led
18107f4481 uhttpd: reset PKG_RELEASE
414ea30927 uhttpd: update to latest Git HEAD
27eea24921 ar71xx: fix MAC address setup for TL-WDR4300 board
9bdd3d39ad ath79: fix MAC address setup for TP-Link TL-WDR3600/TL-WDR4300
08c850f046 ramips: fix USB LED for Belkin F9K1109v1
2c16044ccf mac80211: brcm: add support for BCM4359 SDIO chipset
c0f2905fa9 mac80211: brcm: backport 5.5 and 5.6 kernel patches

Compile-tested: ramips-mt7621
Run-tested: ramips-mt7621
2020-01-02 03:59:13 +01:00
Matthias Schiffer
7302fbf5ab Jenkinsfile: fix parallel step declaration 2019-12-30 02:36:08 +01:00
Matthias Schiffer
4de6f3ff36 Jenkinsfile: fix indentation 2019-12-30 02:36:08 +01:00
Martin Weinelt
2c071657ac
contrib: Dockerfile: add shellcheck 2019-12-29 15:54:27 +01:00
Jan-Tarek Butt
600e67350a
CI Jenkinsfile: add parallel task for shellcheck lint 2019-12-29 15:19:05 +01:00
Jan-Tarek Butt
6024c7a22f
CI Jenkinsfile: use taps and fix fileformat 2019-12-29 15:19:05 +01:00
Jan-Tarek Butt
a2ced263ab
build: add make targets lint, lint-sh, lint-lua
[Matthias Schiffer: minor script improvements]
2019-12-29 15:18:50 +01:00
David Bauer
25a4f3b816 docs: add mt76 to supported chipsets (#1870)
The docs previously only listed ath9k and ath10k based chipsets as fully
supported by Gluon, however we also support mt76.
2019-12-28 18:40:33 +01:00
nrbffs
920aa1a21d
patches/openwrt: add set TARGET_ROOTFS_PARTSIZE to make combined image fit in 128MB 2019-12-28 18:06:43 +01:00
Matthias Schiffer
8446772d07
gluon-site: add missing build depends on gluon-web/host 2019-12-23 12:02:37 +01:00
David Bauer
d428e53457 mpc85xx-p1020: add support for Enterasys WS-AP3710i 2019-12-23 01:54:23 +01:00
Dark4MD
fb191ab8e4 lantiq-xway: add support for AVM FRITZ!Box 7320, 7330 and 7330 SL 2019-12-19 22:45:06 +01:00
David Bauer
24a98428d4 modules: bump OpenWrt
3243523c46 ath79: migrate LED paths of TL-WDR4300 board
d0a71a89e1 malta: remove CONFIG_LEGACY_PTY from kernel config
9e6fb4463b sunxi: remove CONFIG_LEGACY_PTY from kernel config
4aebbaeac1 layerscape: remove CONFIG_LEGACY_PTY from kernel config
a2ac5b3a97 kirkwood: remove CONFIG_LEGACY_PTY from kernel config
a467f39e55 at91: disable legacy PTYs and virtual terminals
a77d4bc3a5 mpc85xx: remove CONFIG_LEGACY_PTY from kernel config
40a7e761a0 uml: remove CONFIG_LEGACY_PTY from kernel config
852ec97e1c oxnas: disable legacy PTYs and virtual terminals
1f1867dd9b odhcpd: optimize syslog priority values
03c93679b4 lantiq: remove redundant WiFi LED on FRITZ!Box 7320
795df80917 mpc85xx: add support for Enterasys WS-AP3710i
3959f11005 glibc: update to latest 2.27 commit (BZ #2503, BZ #2504)
a50c2190d3 glibc: backport fix for regexec buffer read overrun
929c6d733a glibc: update to latest 2.27 commit (BZ#23637)
e8e09c5893 glibc: update to latest 2.27 commit (BZ #24228, BZ #24744, BZ #24699)
6e24df296c ath79: add support for TP-Link TL-WDR4300 v1 (IL)
52c9f95178 ramips: allow JCG_MAXSIZE in kiB in Build/jcg-header
e33a123140 brcm47xx: add switch configuration for WNR3500L
d1d84da1c3 ramips: fix number of LAN Ports for Mikrotik RBM33G
fa700ed714 ramips: fix switch port order for TP-Link Archer C20i
0bb4733e67 ath10k-firmware: update Candela Tech firmware images
c3cc419cc6 kernel: bump 4.14 to 4.14.158

compile-tested: ath79-generic
run-tested: ath79-generic
2019-12-18 00:13:04 +01:00
Jan-Tarek Butt
dd76e0898d
treewide: solve shellcheck warnings 2019-12-14 18:35:11 +01:00
Tata
4e070312f9 docs: features/multidomain.rst: use gluon-reload instead of reboot (#1888) 2019-12-12 13:08:27 +01:00
Dark4MD
40ef70534d lantiq-xrx200: add support for AVM FRITZ!Box 7360 (v1, v2) and 7360 SL 2019-12-12 12:47:41 +01:00
Dark4MD
510bcd4ab4 lantiq-xrx200: add support for AVM FRITZ!Box 7362 SL
Flash instructions in the OpenWRT Commit: https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=eae6cac6a30b95bef04d033ed8a303b7e35a078b
2019-12-11 19:42:44 +01:00
Matthias Schiffer
ed2479bd40
docs: add revision number to TP-Link RE450 support list entry
We only support v1, not v2 or v3.
2019-12-07 21:40:01 +01:00
David Bauer
ea34bc757c docs: clarify WAN port on LAN-only devices
At the December 2019 review day, the behavior for LAN only devices was
defined. Such devices will use each LAN port as WAN.
2019-12-06 18:29:19 +01:00
lemoer
82082d8c62 gluon-status-page: add gateway_nexthop to statistics 2019-12-05 17:00:59 +01:00
Malte Möller
aa679bc6e9 ar71xx-generic: add alias for wndr3800chmychart
a regular Netgear WNDR3800
but identifies itself as wndr3800chmychart.
2019-12-04 11:52:15 +01:00
Simon Terzenbach
bb2744f0d8 ath79-generic: add support for devolo WiFi pro 1200e 2019-12-03 19:47:58 +01:00
Simon Terzenbach
bdfa4b71ff ath79-generic: add support for devolo WiFi pro 1750e 2019-12-03 19:47:39 +01:00
Martin Weinelt
580b7357d5 Revert gluon-status-page gateway_nexthop changes
This reverts commits
- caf2dd037b.
- 07ebac6a49
- 55eff45f96

I accidentally pushed these commits as I had them lying around on a
dirty checkout I did testing on.
2019-12-01 16:22:34 +01:00
Martin Weinelt
e7d9a2749b modules: update OpenWrt
d2d12346e8 mac80211: unify setup of iw htmode for mesh and adhoc
06bf1a9b67 ucert: update to latest git HEAD
d74526c1c5 OpenWrt v19.07.0-rc2: revert to branch defaults
628e996928 OpenWrt v19.07.0-rc2: adjust config defaults
db8345d8e4 generic ar8xxx: increase VLAN table for AR83x7
cde70954ef busybox: add glibc dependency for vi regex option
a4d798e8dd usign: Activate LTO compile option
1fc05c3115 swconfig: Activate LTO compile option
5cb845ebfe mtd: Activate LTO compile option
c38074de92 ramips: disable ZyXel Keenetic by default
432a349761 ramips: disable WR512-3GN 4MB variant by default
67aca5f0ae ramips: disable A5-V11 by default
eb836ea8e9 ar71xx: disable TP-Link TL-WA855RE by default
59ef47ae2c brcm47xx: disable Linksys E1000 v1 by default
7232d9247e ramips: disable TP-Link TL-WA750RE by default
531ab59804 ar71xx: disable TP-Link TL-WA850RE by default
634db7930a ramips: disable TP-Link TL-WR840N v5 by default
6a124efb99 ramips: disable Sitecom WL-351 by default
2607c02ed5 ramips: disable D-Link DIR-645 by default
02fc43b4b4 ramips: disable D-Link DIR-300 B5/B6/B7 by default
0686418338 ar71xx: disable Netgear WNR2000v4 by default
6af348f6a1 ar71xx: disable On Networks N150R by default
c65f09b641 ar71xx: disable TP-Link TL-WA850RE v2 by default
1793baee46 ar71xx: disable Netgear WNR612 v2 by default
4b759caf51 ramips: disable ASUS RT-N10+ B1 by default
953d9c384f kernel: bump 4.14 to 4.14.156
7581a7bebc config: kernel: fix typo in HFSPLUG_FS_POSIX_ACL

Compile-tested: mpc85xx-generic, ipq40xx-generic
Runtime-tested: ipq40xx-generic (GL-B1300)
2019-12-01 16:17:30 +01:00
Martin Weinelt
a8beae5189 Merge remote-tracking branch 'lemoer/pr_status_page_gateway_nexthop' 2019-11-27 12:37:50 +01:00
Matthias Schiffer
06476c2496
modules: update OpenWrt and Gluon packages
OpenWrt:

03b412db2e3f luasrcdiet: add package (moved from luci-base package)
b98dcdc34273 cifsd-tools: update to git (2019-11-25)
a45dd8850244 adblock: update 3.8.12
88c37cb6fe2d transmission: Disable webseeding
e8438eb67ab8 transmission: Fix tracker issue with some firewalls
4a821376132a php7: Update to version 7.2.25
36358e7e382c php7: mark /etc/config/php7-fastcgi as conffile
3be4577ee916 php7-mod-xmlreader: add conditional dependency to php7-mod-dom (fixes #10201)
7aadc713003a php7: bump to 7.2.23
fc337287241f python-pyopenssl: Update to 19.1.0

Gluon:

208d9ccd14ba Revert "luasrcdiet: add package (moved from luci-base package)" and following
2019-11-26 20:01:42 +01:00
Matthias Schiffer
f276bd3bb4
modules: update OpenWrt base
1859391e9ed2 uboot-envtools: ath79: add support for YunCore XD4200 and A782
45c9923edfeb ath79: add support for YunCore XD4200 and A782
83a18aefbdea ath79: add support for YunCore TFTP image generation
449433d13104 ath79: Add support for TP-Link Archer C60 v2
70233e3afe40 ath79: Add support for TP-Link Archer C60 v1
a2d9de21b841 base-files: config_generate: split macaddr with multiple ifaces
3a5e28bd266b ar71xx: ubnt-(xm,xw): add rssileds package
1cb763c559b8 ath79: add PoE passthrough switch for Ubiquiti Nanostation (XM/XW)
a0897f8a4663 uboot-envtools: ramips: add support for ALFA Network Quad-E4G
71469caa0ab4 ramips: add support for ALFA Network Quad-E4G
939dfe61ed8a uboot-envtools: ramips: add support for ALFA Network R36M-E4G
c515cd7c348c ramips: add support for ALFA Network R36M-E4G
7a62e909b286 ramips: support dual image feature on ALFA Network boards
ee71837e3857 ramips: refresh all subtargets kernel configs
3806899a5015 ramips: use upstream RAW_APPENDED_DTB instead of our OWRTDTB
2019-11-26 19:57:52 +01:00
Simon Terzenbach
04421f60ac ath79-generic: add support for devolo WiFi pro 1750x 2019-11-26 11:57:31 +01:00
Matthias Schiffer
ba42412527
Merge pull request #1877 from christf/respondd
gluon-mesh-babel: Fix packets leaving wrong interface
2019-11-24 13:16:19 +01:00
Christof Schulze
d5b08fe6c9 gluon-mesh-babel: depend on gluon-mmfd 2019-11-24 12:31:04 +01:00
Christof Schulze
2389679380 gluon-mesh-babel: use babel 1.9.0 feature to set pref-src on installed routes 2019-11-24 12:31:04 +01:00
Matthias Schiffer
ecc29e0b09
gluon-mesh-batman-adv: further cleanup of respondd provider
- Split into multiple files
- Avoid alloca()
2019-11-24 12:04:58 +01:00
Matthias Schiffer
0f1fa243f7
Move common code from gluon-mesh-babel and -batman-adv respondd providers to gluon-respondd
In addition this PR contains:
- split of gluon-respondd provider into multiple source files
- minor additional cleanups in gluon-mesh-babel respondd provider
  (untested, as the babel respondd provider already doesn't compile prior
  to these changes...)
2019-11-24 12:04:58 +01:00
Matthias Schiffer
f34b302b22
gluon-mesh-babel: remove explicit ubus socket specification, convert timeout to expected units 2019-11-24 12:04:58 +01:00
lemoer
55eff45f96 gluon-status-page: prettify nextnode when node is offline 2019-11-24 02:38:55 +01:00
lemoer
07ebac6a49 gluon-status-page: show gateway_nexthop and gateway in one table row 2019-11-24 02:12:47 +01:00
lemoer
caf2dd037b gluon-status-page: add gateway_nexthop to status page statistics 2019-11-24 01:19:17 +01:00
Matthias Schiffer
b4101e54e0
gluon-mesh-batman-adv: remove remaining deprecated sysfs usage
While we're at it, also slightly optimize proto_gluon_bat0_renew.
2019-11-24 01:10:59 +01:00
Matthias Schiffer
f715a58fdb
gluon-mesh-batman-adv: remove obsolete no_rebroadcast setting 2019-11-24 00:53:54 +01:00
Matthias Schiffer
abf46c5f42
gluon-mesh-babel: fix compilation of respondd provider
Adjust for changed libbabelhelper API.
2019-11-23 23:36:33 +01:00
Matthias Schiffer
00b46f0662
modules: update OpenWrt base
f97d2351e2c1 ath79: remove ath10k drivers from Archer C7 v1 profile
7c321e00dd19 kernel: nf_conntrack_rtcache: fix WARNING on rmmod
2a2f9ffe81ce kernel: nf_conntrack_rtcache: fix WARNING on forward path
2019-11-23 22:44:39 +01:00
Matthias Schiffer
4ee5f3590b
gluon-respondd: fix format string type mismatches 2019-11-23 18:56:44 +01:00
Matthias Schiffer
b69b9043f4
modules: remove LuCI feed 2019-11-23 17:28:18 +01:00
Matthias Schiffer
43b1368b70
gluon.mk: depend on luasrcdiet/host instead of luci-base/host
We don't use anything else from luci-base anymore.
2019-11-23 17:28:17 +01:00
Matthias Schiffer
23fd9cd0f9
gluon-web: import po2lmo tool from luci-base
The code is slightly cleaned up to fix compiler warnings.
2019-11-23 17:28:17 +01:00
Matthias Schiffer
911ed5263d
Refresh OpenWrt package patches 2019-11-23 17:28:17 +01:00
Matthias Schiffer
b97e355e14
modules: update Gluon packages
83dbdbcb7b6f luasrcdiet: update Makefile to openwrt/packages version
0371952ab0fa luasrcdiet: add package (moved from luci-base package)
dced4023f5a2 micrond: move to openwrt packages feed
2019-11-23 17:28:17 +01:00
Matthias Schiffer
2864799c37
modules: update OpenWrt packages
5b2010ce80af samba4: add UCI option 'disable_async_io'
e6564936ecac cifsd: update to git (2019-11-22)
fd254a04c857 bind: update to version 9.14.8 (security fix)
db06f7ee2a9d nextdns: Update version 1.1.5 + add per host config option
d1bab6ef8aa2 nnn: Add a new package
52515c819e75 unbound: Update to version 1.9.5
ff0e3bf71980 cifsd: add package cifsd [backport]
ffbe240f0fa5 knot: update to version 2.9.1
6106619bdef2 travelmate: update 1.5.3
2969a1842d10 django: bump to version 1.11.26
58dd5a94ba6f adblock: update 3.8.11
f28dfa39ea8d haproxy: Update HAProxy to v2.0.9
a907174c3ab2 prometheus-node-exporter-lua: bump version
928915f4a62b prometheus-node-exporter-lua: an unavaliable wifi interface may have stopped the scraper from functioning
0e69b1473372 prometheus-node-exporter-lua: respawn the process
56e0861f7766 prometheus-node-exporter-lua: add a config reload trigger
ee353e6036c7 prometheus-node-exporter-lua: switch config to openwrt interface names
6c42cc8f6df7 nextdns: update to 1.1.3
87e9963eba9f dcwapd: Update init script to use procd
1f417d7ed01f python-zope-interface: Update to 4.7.1, refresh patch
87ccd3ddbd1f python-twisted: Update to 19.10.0, refresh patches
7504b410a677 python-pyasn1: Update to 0.4.8
1feef55c9423 acme: Add dependency on luci-compat for luci-app-acme
a25797e58d95 acme: Update to upstream 2.8.3
bbaed850a3ce acme: Log acme.sh command invocation
d71c1fbe0d7c acme: depends on gnu-wget
b151af8f45ca acme: Update to 2.8.1
71e06448ede2 wget: provides gnu-wget
0031c874683a ttyd: update to 1.5.2 and add init script
56a8ebb769a3 ttyd: update to 1.5.1
f00d0a018525 boost: Fix fiber compilation for mips
6371fc55d98d boost: Remove several host libraries
6002ef66b5fe boost: Remove thread dependency from context
35a9ef61ea06 nextdns: add DNS over HTTPS with NextDNS integration
c1575ecf5cf8 banip: update 0.3.10
0f67fc96d855 mwan3: sync PKG_RELEASE number and PKG_VERSION with master
62c9688adcd3 mwan3: Add missing IPs to wanb
aa5a583869e7 mwan3: update version to 2.8.0
e842ea394197 mwan3: add netifd up info to mwan3 ubus status output
f20b96e4a5c4 mwan3: add enabled info to mwan3 ubus status
0c25f7a51c1b mwan3: add interface uptime netifd value to ubus mwan3 status output
3371703487ac mwan3: rename downtime to offline
aa05eb448b76 mwan3: rename uptime to online
2a64b3a44090 collectd: remove the patch scaling ping_droprate from 0-1 to 0-100
84756e7f60ac mwan3: Fix json_load fails with some data
168c2928f96f io: Add TARGET_LDFLAGS to fix PIE
0441927b246b io: Fix printing 4 bytes memory on 64 bit systems
1f082d84dd7a io: Open /dev/mem with O_SYNC for uncached access
39001de7b042 pcre: remove unnecessary dependency on C++ lib
e91e3fd6ad87 ntpd: Fix libevent dependencies
daebf4aba9bb python-six: Update to 1.13.0
aa4c5e7de6cf Revert "Revert "perl-www-curl: curl 7.66.0 compatibility""
c75917c8a927 banip: update 0.3.9
49e57eadb3d6 banIP: update 0.3.8
1fc8c2c4eaed adblock: update 3.8.10
e0ca91a2fe48 knot: update to version 2.9.0
734a005187dd knot: update to version 2.8.4
145bd2d19eaf dovecot: update to 2.3.8
f7cc8ad37b82 libedit: update to 20191025-3.1
50dfcd79f543 dnscrypt-proxy2: Update to version 2.0.29
a6f026ff5b87 python-zipp: fix python-more-itertools dependency
0faf7bfcc23e python-zipp: add new package
e9748d34f5ab bind: Update to version 9.14.7
91da56a94211 perl: fixed host compilation of static perl on MacOS
bb00671ad423 libmaxminddb: update to version 1.4.2
d60dbbed2c18 clamav: Update to version 0.101.4
c58d563120d1 haproxy: Rework hotplug script for HAProxy
98a4cd0fd83f haproxy: Update patches for HAProxy v2.0.8
ec6cd9b9c395 Revert "perl-www-curl: curl 7.66.0 compatibility"
522aea0cadf5 Revert "haproxy: Update patches for HAProxy v2.0.8"
22bcd9e78467 Revert "haproxy: Rework hotplug script for HAProxy"
7a1f32f704e8 banip: update 0.3.7
848589d758f0 banip: update 0.3.6
7401166ea88b banip: update 0.3.5
be9e82b01710 travelmate: update 1.5.2
fff155b2bf7f adblock: update 3.8.9
bc89112c27bb adblock: update 3.8.8
32a8209c55c7 samba4: update to 4.9.15
349d73b2c39d sqm-scripts: Add required new depends for luci-app-sqm
5c51d658cf52 sqm-scripts: Bump to v1.4.0
94c4c1304a58 libarchive: update to version 3.4.0
6d5e468f2d12 circleci: skip compiling packages not enabled
ef4de15df800 build: only install changed packages
3f3c613ac5bb btrfs-progs: Update to version 5.3.1
bfcdf4e202d3 syslog-ng: Update to version 3.24.1
6f6c5d17c0f9 youtube-dl: Update to version 2019.10.29
af20f836e000 youtube-dl: Update to version 2019.10.22
e31921f2af1c net: seahub: remove inexistent deps
e1d9652edc9d python-cffi: Update to 1.13.2
07835fc26e2b golang: Update to 1.13.4
3d4c934584df sispmctl: Reduce ipk size
248c3d01faed sispmctl: Update to 4.2
c7bd76919fb4 libgphoto2: libgphoto2_port.pc needed by dev
22ab1fcefe47 telldus-core: Doxygen in-file was not found.
42c85958fdc9 treewide: Replace MD5SUM with HASH
5bc62e00aa8f vim/host: fix build failures
c9ee50d19009 haproxy: Rework hotplug script for HAProxy
76a2da3fd413 haproxy: Update patches for HAProxy v2.0.8
58ed21040c1f python,python3: Add PYPI_SOURCE_NAME to pypi.mk
c8113fcd05d4 google-authenticator-libpam: fix install section
866b42c60ea6 python,python3: Add pypi makefile
4900b2cb2d7a adblock: update 3.8.7
0d146c23175f https-dns-proxy: implement dnsmasq integration
807c557cf9b7 django: bump to version 1.11.25
4574e8fcb98a python-cffi: bump to version 1.13.1
2019-11-23 17:28:17 +01:00
Matthias Schiffer
154567dfdd
openwrt: Revert "kernel: nf_conntrack_rtcache: fix cleanup on netns delete and rmmod" 2019-11-23 17:28:17 +01:00
Matthias Schiffer
51a36abc6f
modules: update OpenWrt base
15ce616c2de7 build: add PKG_SOURCE_URL_FILE support
436dbf12aa73 kernel: nf_conntrack_rtcache: fix cleanup on netns delete and rmmod
b177b180bbdb mac80211: add default value for noscan
e68d589e7b8c e2fsprogs: Fix CVE-2019-5094 in libsupport
2019-11-23 14:34:31 +01:00
Matthias Schiffer
c3e764d1df
modules: update OpenWrt base
6160f773fef2 ipq40xx: add support for AVM FRITZ!Repeater 1200
63b1e8f8d226 ipq-wifi: add AVM FRITZ!Repeater 1200 bdf
496489ea95af uboot-fritz4040: update to latest HEAD
e30ca0d90a98 mac80211: update to version 4.19.85
b1ef0e443720 layerscape: Fix kernel patch
ad0463c2e875 kernel: Add missing configuration option
b0adf79c9e7c firewall: update to latest Git HEAD
b41619592792 firewall: update to latest git HEAD
3685f86cefac cns3xxx: use proper macros for defining partition regions
db345220b485 kernel: bump 4.14 to 4.14.155
538ca42ddad8 wireless-regdb: fix build when python2 from package feeds exists
2751c5c75219 wireless-regdb: fix patch fuzz
d6ecadb05c2b wireless-regdb: fix Makefile indentation
0a4071b550eb wireless-regdb: set PKGARCH:=all
e8d528af7e91 wireless-regdb: prefer python provided by make variable
53d8de0207e8 wireless-regdb: Make it build with python2
f2ef9b4feafe wireless-regdb: update to 2019.06.03
8fac0b398c34 ar71xx: fix buttons for TP-Link TL-WDR4900 v2
3c65c47ce6fd ar71xx: fix LED setup for TL-WDR4900 v2
b6c80f85cb7b ramips: set uImage name of WeVO 11AC NAS and W2914NS v2
e945c43142ab ar71xx: fix MAC address setup for TL-WDR4900 v2
8a21bc36229d ar71xx: fix MAC addresses for Archer C5 v1, C7 v1/v2, WDR4900 v2
2019-11-22 22:45:19 +01:00
David Bauer
4e3f1053da ath79-generic: add support for devolo WiFi pro 1750c (#1875) 2019-11-22 01:45:00 +01:00
Simon Terzenbach
ee917a7ea9 ath79-generic: add support for devolo WiFi pro 1750i 2019-11-20 23:17:21 +01:00
David Bauer
e30b0092bb ath79-generic: add missing ath10k packages
The devolo WiFi pro 1200i lost it's ath10k package definitions while
rebasing, thus selecting the wrong package set.

Fix it by adding the correct firmware and driver.
2019-11-20 16:21:28 +01:00
Martin Weinelt
9b4d59c5e0 modules: update OpenWrt
ca3339c0fc ipq40xx: fix build error
75d11f665c mac80211: backport upstream fixes
dd284c6c57 toolchain/gcc: bump to 7.5.0
3c5c49af8b kernel: bump 4.14 to 4.14.154
17d8e47d35 mac80211: Adapt to changes to skb_get_hash_perturb()
67957cd807 mac80211: brcmfmac: fix PCIe reset crash and WARNING

compile-tested: ipq40xx-generic, ath79-generic
2019-11-20 14:18:19 +01:00
David Bauer
3ca6abe7b1 ath79-generic: add support for OCEDO Raccoon (#1869) 2019-11-20 13:46:18 +01:00
David Bauer
fe41ba7121 ath79-generic: add support for devolo WiFi pro 1200i (#1871) 2019-11-20 13:39:22 +01:00
Matthias Schiffer
02cbe0b794
kernel: refresh patches 2019-11-19 23:43:37 +01:00
Matthias Schiffer
0374526a8e
kernel: remove obsolete kernel 4.9 patch files 2019-11-19 23:36:20 +01:00
Manu.WTF
62bd916b76 lantiq-xrx200: add support for AVM FRITZ!Box 7412 (#1859) 2019-11-18 22:54:50 +01:00
David Bauer
fd3fa7728a ipq40xx: add support for AVM FritzRepeater 1200 2019-11-18 22:23:16 +01:00
Martin Weinelt
7b3cb465de modules: update OpenWrt
a8b293598f ath79: fix sysupgrade from ar71xx for WNDR3700 V2 and WNDR3800(CH)
fe82c71964 ath79: include rssileds package for ubnt devices with LEDs
960de44fa9 ramips: assign correct key-code to wps buttons
b50177d151 ath79: remap D-Link DIR-859 A1 WPS button to WPS
1bd280b1ef ramips: disable D-Link DIR-300 B1 by default
a1ff175dbf ramips: rt3833: fix build breakage
60f41c6c9e ramips: add usb-ledtrig-usbport to DEVICE_PACKAGES of CY-SWR1100
079b202749 ramips: fix MAC address setup for Samsung CY-SWR1100
2117f632e3 kernel: fix typo in fb-sys-fops autoload
a6e7f68c7f hostapd: add IEEE 802.11k support
f6111dbeed hostapd: Add mesh support for wpad full
0e85b638f7 hostapd: use getrandom syscall
81908622a9 hostapd: Remove unneeded patch
90a0daf4fe hostapd: use config option CONFIG_NO_LINUX_PACKET_SOCKET_WAR
5e8d1b52da hostapd: Update to version 2.9 (2019-08-08)
80b58a9db6 hostapd: Update to version 2.8 (2019-04-21)
e1854815aa hostapd: mirror ieee80211w ap mode defaults in station mode
3e9b3d0ba9 hostapd: fix OWE settings in client mode
eba68342f9 hostapd: declare struct wpa_bss early
0fcf02d0a5 hostapd: revert signature change in patch
047329273b hostapd: adjust removed wolfssl options
d5f509861e base-files: add /usr/share/libubox/jshn.sh to sysupgrade stage2
d1fbaa3fbc ath79: update uboot-envtools for Netgear WNR routers
ab29ffbb10 ath79: fix SUPPORTED_DEVICES for TP-Link TL-WR1043ND v3
3d840ee798 ar71xx: fix tl-wdr3320-v2 upgrade
c9e5979dbe ar71xx: update uboot-envtools for Netgear WNR routers
6ac1aa1957 kernel: bump 4.14 to 4.14.152
5e1864da33 firmware: intel-microcode: bump to 20190918
8cd24d3256 firmware: intel-microcode: bump to 20190618
a6b30f962c firmware: intel-microcode: bump to 20190514
cc598c91c1 ath79: fix identifier for Nanostation M in ath9k caldata extraction
42aa51a898 rpcd: update to latest Git HEAD
6cabbe9646 wolfssl: update to v4.2.0-stable
9be3501dc3 wolfssl: allow building with hw-crytpo and AES-CCM
58db9bee0f ustream-ssl: update to latest Git HEAD
2a09f43ae6 ustream-ssl: Update to latest git HEAD
d3e11e8ad8 mac80211: Fix dependencies of kmod-rsi91x-usb
69dcd89dcd strace: Fix build on PowerPC
0803b62fc6 uboot-envtools: Add TARGET_LDFLAGS to fix PIE and RELRO
963cee15e8 xfsprogs: Fix compilation with newer musl

compile-tested: ramips-rt7621, mpc85xx-generic
runtime-tested: ramips-rt7621 (D-Link DIR-860L B1)
                mpc85xx-generic (TP-Link WDR4900v1)
2019-11-18 17:32:37 +01:00
David Bauer
8df38311fa ramips-mt7621: add support for Netgear R6220 2019-11-10 17:11:57 +01:00
David Bauer
e9da57665c modules: bump OpenWrt
5d30ff1bc6 ramips: correct R6220 button flag
9834c3dae0 kernel: fix LED netdev trigger on interface rename
799de7c641 build: cleanup possibly dangling Python 3 host symlink
785d4f3efd build: fixup python SetupHostCommand to use python2
502c4a81d3 expat: Update to version 2.2.9
9943506816 tools/e2fsprogs: Update to version 1.45.4
569bec190c curl: bump to 7.66.0
5fc63ec8a4 ath79: disable building future NAND images for GL-AR300M/GL-AR750S
2b4d9b6850 mac80211 ath9k: force QCA953x clock to 25MHz
b3514e3569 ar71xx: improve support for TP-Link CPE510 v2
0c9be4f76b gitignore: ignore patches in OpenWrt root directory
112df2ac56 OpenWrt v19.07.0-rc1: revert to branch defaults
88bff692a5 OpenWrt v19.07.0-rc1: adjust config defaults
c4fdb377a2 Revert "ipq806x: fix EA8500 switch control"
d7ea380363 ath10k-firmware: update Candela Tech firmware images
c5d5cdb759 ustream-ssl: backport fix for CVE-2019-5101, CVE-2019-5102
439ac8104b mac80211: rt2x00: backport upstream patches
2019-11-10 17:11:57 +01:00
David Bauer
b8defb1c08 ath79-generic: limit line length
This limits the line-length for the ATH10K package
definitions.

Fixes f49813b5
2019-11-09 12:13:22 +01:00
David Bauer
f49813b52f ath79-generic: remove unused package definitions
This removes the unused package definitions, as otherwise the Lua linter
will complain.
2019-11-09 11:30:22 +01:00
Steffen Förster
50db7654fc ath79-generic: add support for TP-Link Archer C6v2
Hardware specification:
- SOC: Qualcomm QCA9563 @ 775MHz
- Flash: GigaDevice GD25Q64CSIG (8MiB)
- RAM: Zentel A3R1GE40JBF (128 MiB DDR2)
- Ethernet: Qualcomm QCA8337N: 4x 1Gbps LAN + 1x 1Gbps WAN
- Wireless:
  - 2.4GHz (bgn) QCA9563 integrated (3x3)
  - 5GHz (ac) Qualcomm QCA9886 (2x2)
- Button: 1x power, 1x reset, 1x wps
- LED: 6x LEDs: power, wlan2g, wlan5g, lan, wan, wps
- UART: There's no UART header on the board
2019-11-09 11:15:34 +01:00
bobcanthelpyou
4b962f24d1 treewide: update i18n files via i18n-scan.pl and msgmerge (#1784) 2019-11-09 01:25:33 +01:00
Matthias Schiffer
0ff396b213
ath10k-ct: drop memory reduction patch
With the removal of IBSS support, Gluon doesn't use ath10k-ct anymore, so
we can drop this patch.
2019-11-08 21:10:11 +01:00
David Bauer
18dd76471c ar71xx-generic: add dedicated UniFi AC LR image
As upstream now has model detection for the Ubiquiti UniFi AC LR, we
need to provide an autoupdater image matching the expected filename.

Closes #1834
2019-11-08 18:47:07 +01:00
Matthias Schiffer
f700fb26d8
Merge pull request #1858 from freifunk-gluon/drop-ibss
Drop IBSS support
2019-11-08 15:26:39 +01:00
Matthias Schiffer
ee0756a70b x86: switch to non-CT ath10k module
It seems the CT variant was used for 11s meshing on x86 by accient. Switch
to non-CT to match the other targets.
2019-11-07 19:48:16 +01:00
Matthias Schiffer
ed8cd9c0f7 docs: update for reflect dropped IBSS support 2019-11-07 19:48:16 +01:00
Matthias Schiffer
335fae1025 build: drop GLUON_WLAN_MESH variable 2019-11-07 19:48:16 +01:00
Matthias Schiffer
02c7503f74 gluon-mesh-batman-adv: remove MTU workaround for VLAN-on-WLAN
We don't support VLANs on 11s interfaces, so the workaround can be dropped
with the IBSS support.
2019-11-07 19:48:16 +01:00
Matthias Schiffer
066158a27b gluon-core: drop IBSS support 2019-11-07 19:48:16 +01:00
Matthias Schiffer
2fdb3080ce
gluon-web-wifi-config: drop IBSS enable setting 2019-11-06 22:03:51 +01:00
Matthias Schiffer
2a009a8328
hostapd: drop obsolete channel selection patch
As of OpenWrt commit b3d8b3ab8e6f ("mac80211: set noscan=1 if sta/adhoc/
mesh interfaces are present"), the issue workarounded by this patch cannot
occur anymore.
2019-11-06 22:02:04 +01:00
Misanthropos
b4c75a9879 lantiq-xway: add support for AVM FRITZ!Box 7312 2019-11-06 18:58:45 +01:00
Misanthropos
b359ed1887 gluon-setup-mode: add DECT button to enter setup mode
many AVM devices do not have RESET/WPS buttons. So use the otherwise unused DECT/PHONE button to boot the device into setup mode.

This patch allows to enter the setup-mode by pressing the phone button
(often labeled as DECT) in addition to WPS and reset button.

This patch is necessary to allow supporting boards without a WPS and reset
button (e.g. AVM FRITZ!Box 7312).
2019-11-06 14:59:23 +01:00
David Bauer
7f858b1c6d ipq806x-generic: remove BROKEN flag for target and NETGEAR R7800
This commit removes the broken flag for the ipq806x-generic target,
as the first device (NETGEAR R7800) now has full support in Gluon
2019-11-05 20:24:05 +01:00
David Bauer
4cb2bc481d modules: bump OpenWrt
d6d9f58290 ipq806x: use switch trigger for WAN LED on NETGEAR boards
bee28adf6e hostapd: enable PMKSA and OK caching for WPA3-Personal
5d6308ecae scripts/dl_github_archive.py: fix python3 str, bytes confusion
2019-11-05 20:24:05 +01:00
Matthias Schiffer
a3a8d962fc
gluon-web-node-role: fix node role list
Fixes: 4249d65af7 ("treewide: fix luacheck warnings")
Closes: #1851
2019-11-05 20:05:16 +01:00
David Bauer
e3bdfeefa1 ipq806x: rename target to ipq806x-generic
This commit accounts for the target renaming which was done in upstream
commit 7407e723991 ("ipqx0xx: add Generic subtarget")
2019-11-04 17:22:46 +01:00
David Bauer
88e6bc5278 ipq40xx: rename target to ipq40xx-generic
This commit accounts for the target renaming which was done in upstream
commit 7407e723991 ("ipqx0xx: add Generic subtarget")
2019-11-04 17:22:46 +01:00
David Bauer
b9bdcc7b69 modules: update OpenWrt
22c443c20c uboot-fritz4040: build with ipq40xx "generic" subtarget
7407e72399 ipqx0xx: add Generic subtarget
9b2a147cfe ramips: enable external amplifier for D-Link DIR-810L
e539dc2daa ath79: Clean up GL-AR300M DTS/DTSI inclusions
8f0deedc11 ramips: fix WiFi MAC addresses for D-Link DIR-810L
f051a967b8 libevent2: Update to 2.1.11
466d499d03 rpcd: update to latest Git HEAD
7f29dc0fda kernel: bump 4.14 to 4.14.151
2436e521b4 kernel: mark kmod-usb-serial-wwan as hidden
79e6391600 kernel: bump 4.14 to 4.14.150
c51a39d4a5 mac80211: add an improved moving average algorithm to minstrel
2019-11-04 17:22:46 +01:00
David Bauer
ab2efef7f9 mpc85xx-p1020: add support for OCEDO Panda (#1847) 2019-11-03 18:59:00 +01:00
Andreas Ziegler
baab4d3614 docs: feature/roles: fix uci set command 2019-11-03 18:49:42 +01:00
David Bauer
9dba2ca580 ramips-mt76x8: add support for GL.iNet VIXMINI 2019-10-30 14:38:48 +01:00
David Bauer
ac971f88e8 mvebu-cortexa9: rename Linksys WRT1200AC 2019-10-30 00:06:14 +01:00
David Bauer
825577f6df ramips-mt7621: fix sysupgrade extension for ER-X 2019-10-30 00:06:14 +01:00
Martin Weinelt
ba3415059c ar71xx-generic: drop ALFA N2, N5, Tube2H and Hornet-UB
Their kernel partition is too small, the OpenWrt build system
is unable to create an image.
2019-10-30 00:06:14 +01:00
David Bauer
82cdd5f808 targets: adapt ath10k selection to OpenWrt 19.07
This changes the ath10k firmware and driver selection, as
ath10k-ct is now the default in upstream OpenWrt.

However, for 802.11s operation we need the QCA firmware and driver.
2019-10-30 00:06:14 +01:00
David Bauer
dc8d5d3ca9 gluon-setup-mode: get status-led from device-tree
With this commit, the status-led is set to be the "led-running"
device-tree alias for targets which do not implement the get_status_led
method in /etc/diag.sh.
2019-10-30 00:06:14 +01:00
David Bauer
09780191cb targets: remove wpad-basic by default
This is necessary, as wpad-basic conflicts with hostapd-mini.
2019-10-30 00:06:14 +01:00
Matthias Schiffer
b262b72563 gluon-mesh-batman-adv: adjust to removal of batman-adv UCI config 2019-10-30 00:06:14 +01:00
David Bauer
75fa7e73db gluon-setup-mode: fix dropbear hostkey generation
Upstream commit 5eb7864a changed the method name for host-key
generation.
2019-10-30 00:06:14 +01:00
David Bauer
966f398782 modules: switch to OpenWrt 19.07 2019-10-30 00:06:14 +01:00
David Bauer
3522197ff9 ar71xx-generic: add missing ath10k packages (#1844)
This adds previously absent ath10k packages definitions. This way,
devices correctly select CandelaTech firmware correctly, when
GLUON_WLAN_MESH is set to IBSS.

This is also necessary for all devices, when OpenWrt is switched to
19.07.
2019-10-22 02:15:35 +02:00
Ruben Barkow
e990342f85 docs: replace alfred with respondd (#1842) 2019-10-16 23:59:17 +02:00
Marssl78
b823b80356 ar71xx-generic: add support for TP-Link Archer C60 v2 (#1840) 2019-10-06 22:11:02 +02:00
Andreas Ziegler
94ca071e12 ar71xx-generic: fix device alias for Ubiquiti UniFi AC LR
fixes #1834
fixes #1332
2019-10-03 21:22:12 +02:00
David Bauer
ea24298f2d ar71xx-generic: add ath10k packages to OCEDO Koala (#1838)
The OCEDO Koala was missing the correct package definition. Because of
this, firmware is potentially built with the wrong ath10k firmware /
driver.
2019-10-03 01:44:20 +02:00
lemoer
21397ce678 gluon-status-page: add domain and site (#1820) 2019-09-30 02:00:17 +02:00
Christof Schulze
6d64057536 gluon-mesh-babel: neighbours-babel: adjust to libbabelhelper interface
specify command 'dump' for now until babeld supports filtering
2019-09-29 22:44:39 +02:00
Christof Schulze
33fb58bbf9 gluon-mesh-babel: getnumber() allocate sufficient memory including \0 byte
increase size of path by 1 to be able to fit the full path including trailing \0 byte into array
2019-09-29 22:44:39 +02:00
lemoer
f90b673f14 contrib: fix inheritance of jenkins-community-slave dockerfile (#1831) 2019-09-28 00:56:53 +02:00
Martin Weinelt
a394054d81
modules: update Gluon packages
de7b228 batman-adv-legacy: remove the package
85c8044 l3roamd: update to fix build
295f055 l3roamd: bump version: instant claiming, FIX removing routes
2019-09-27 10:05:13 +02:00
lemoer
174dd3146f contrib: Set up continuous integration through Jenkins 2019-09-26 16:12:09 +02:00
bobcanthelpyou
8553254867 docs: fix typos 2019-09-26 13:04:19 +02:00
Matthias Schiffer
5b97d36c7e gluon-mesh-batman-adv: remove gluon-mesh-batman-adv-14 2019-09-25 21:57:52 +02:00
Matthias Schiffer
7837bc1059 Gluon v2019.1
-----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCAAdFiEE7tAWAry9GWw4vJofvUqgUo9j8X4FAl2HqPMACgkQvUqgUo9j
 8X4XGQgAss8qY9mDtSBCEvIOXZVlopDYH/JxY/24EUOpJQSNgeJuLdlf/p5uS5c7
 5fIsAjRbnX+QVzWVX74KmOlZ9Dl8FSiUhu9IOveRTqGUIzLEKzTSyLABdtloFBni
 rFCcLN5805XGksqgUnfC3+sz2ogKrBTtKe4jR8HyzI1xQn1W7s1TWKdL+muBWqrJ
 Hi+5r+FiT9VWpKQDHM2EtSNBZuych5lN0YmuSBgdsLU5u+rBJtTg79FAVqY0XRaq
 9FbSPii/c68OI7DkK5lkbVRcCHn5E8QqsYJnUgV4rvwxXhLS0A0QHqiqwRx3wvK6
 2uXMQl+E5e+F8T3oSJcUt2gKin+xtg==
 =pRPr
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEZmTnvaa2aYgexS51Fu8/ZMsgHZwFAl2KmiMACgkQFu8/ZMsg
 HZzdahAAoQr3dREwQatJtJnJVfm9q24Yz9ukbWM/8AAEJHJb2YY43d5nrNo+Z/OQ
 rbp1NA6pYWryReq93lUR44IGzPX6MtYf+nZ8mAJlUtHOigo5JsAlSSljJckJevU1
 okLh5lkiS6tBgTNK4ziXFfCD6d2AOwL7LEX+ULGKPWShmpm9JI42oOH+yE+eDids
 oFI0uvCw0rBHoX8Ye0GDEljwVhWewENTV/mPf+kGUVh64AcSVXECJQv0fA6uWxC6
 3I+Q6coriOO5wLXjW4NeCKmJNcrhZ7pGQiEWusw294pVz7/f3VawGDr2CsW6kkzR
 ggjhrsGzs3li3IeCttNrfwIx86UsICw1g12bw7AUNrn589AA4OM31uZQQk2s918h
 c1fie6z5y0V0RKilG6+z56WCdKZnKSecdaaYx0vKWL0DMgACvxOTIOoaWbODKjdx
 cY4nLcD2aiGQ/d+pw6LKDQuTiE1ORaa+MkDyN0/ZnMI2FLWJq646kO1V33JgBF0r
 tQ6n7dUwDB9rkZ/UUqqwmneeXs2vxNpnHQg/YiiFEDrdNsBC2irmWuP2Ui6JD9Rj
 Kik6NTve1f7Jp0w8ssgjyTC7mhL6fES4VFkaQP+vrmTI8qSl0QudZXT3bIOfc+sa
 hve8DPfu2yof5fdDrY47PqlNXkKE2IvulIzm+h7OSLXL+hrsDQE=
 =vgC5
 -----END PGP SIGNATURE-----

Merge tag 'v2019.1'

Merge tag to fix 'git describe'
2019-09-25 00:34:29 +02:00
Tata
6742584e12 gluon-config-mode-geo-location: allow to set location independently from sharing it (#1537)
also properly delete location data when a user disables
the location option after re-entering config-mode.
2019-09-24 09:56:40 +02:00
Christof Schulze
6aee8e95e8 gluon-mmfd: add package (#1802) 2019-09-23 21:34:53 +02:00
Martin Weinelt
dcfbbea090
docs: Gluon v2019.1+ 2019-09-23 13:57:33 +02:00
Andreas Ziegler
07fe28c855
ar71xx-generic: add zram-swap to boards with 8M flash but only 32M memory (#1819) 2019-09-23 09:54:54 +02:00
Martin Weinelt
bf5b026a87 docs: Add v2019.1 release notes 2019-09-22 19:11:28 +02:00
Martin Weinelt
ca3631723f
docs: Add v2019.1 release notes 2019-09-22 18:58:33 +02:00
Linus Lüssing
ff050a2916 docs: gluon-mesh-batman-adv: note regarding IGMP/MLD snooping switches
This adds a warning that entprise switches with an IGMP/MLD snooping
feature are not supported yet with IGMP/MLD filtering enabled.

For this to work, firstly the Linux bridge on the Gluon node needs to
support Multicast Router Discovery (RFC4286). But this feature was only
added to the Linux kernel recently, in 5.1.

Secondly, a Gluon node would need to periodically send "Multicast Router
Advertisment" (RFC4286) messages, to "announce" the multicast router
port setting on bridge port bat0.

Thirdly, the IGMP/MLD snooping switches would need to implement
RFC4286.
2019-09-21 23:45:44 +02:00
Linus Lüssing
302a795189 Revert "gluon-mesh-batman-adv: reenable batman-adv multicast optimizations"
This reverts commit 9b1eb40fe7.

With the batman-adv v2019.2 upgrade reverted (c1a7733956), the batman-adv
multicast-to-multi-unicast feature is not available yet. Without that it is
going to be very unlikely of the batman-adv multicast optimizations to
take effect. E.g. some outdated nodes would disable it.

To avoid confusion and diversion with a few communities having it enabled
and most implicitly deactivated, just deactivate it for all for now
until batman-adv is updated to v2019.2 or greater again.
2019-09-21 23:28:12 +02:00
Martin Weinelt
be965e7e4a ar71xx-generic: deprecate ALFA AP121, Hornet-UB, Tube2H, N2/N5
The kernel partition on these devices is too small for the
OpenWrt 19.07 kernel. It is also located after the rootfs, so
we cannot grow it further.

Therefore mark these devices as deprecated now.
2019-09-20 17:02:41 +02:00
Martin Weinelt
cdb334aae9 docs: mark ar71xx-tiny and ramips-rt305x as deprecated 2019-09-20 17:02:41 +02:00
Martin Weinelt
798236b3cf
docs: gluon-hoodselector: add openstreetmap copyright
Fixes #1821
2019-09-17 13:21:42 +02:00
bobcanthelpyou
2792309cd4 docs: remove Netgear WNDR3700 v5 (#1817) 2019-09-15 14:28:23 +02:00
bobcanthelpyou
5ed145c6a6 docs: mention ff05::2:1001 on the node monitoring page (#1818) 2019-09-15 14:25:18 +02:00
Tata
69fd7b5d81 docs: gluon-hoodselector: fix arrow with 0->0.05 to let it visible on svg's (#1816) 2019-09-14 15:34:26 +02:00
Matthias Schiffer
78054cddbf
scripts: target_config_lib: fix inclusion of device-specific packages from site.mk
Fixes: 071cf7b20f ("Switch to Lua for target definitions")
2019-09-14 13:46:56 +02:00
Andreas Ziegler
b113e0f517
ramips-rt305x: remove opkg and USB packages from 4M flash boards (#1807)
reduce size by removing dispensable packages,
to fix builds of this target in most cases.
2019-09-14 13:24:37 +02:00
Christof Schulze
a3fd203e13 gluon-mesh-babel: add dependency: gluon-l3roamd
gluon-mesh-babel conigures babeld and thus the mesh. This mesh is only usable
with routes to the clients which are discovered by l3roamd.
2019-09-14 00:32:55 +02:00
Christof Schulze
d5a4f4fd8c gluon-mesh-babel: distribute routes to 2000::/3 2019-09-14 00:32:55 +02:00
Christof Schulze
59b7625e54 gluon-l3roamd: utilize node_client_prefix6 from site, add checks
* add check_site.lua to validate required field from site
* make use of node_client_prefix6 if defined in site
2019-09-14 00:32:55 +02:00
Andreas Ziegler
a96f996e1b
docs: add v2018.2.3 release notes 2019-09-13 00:10:18 +02:00
T-X
bce76bcaf0 docs: Add documentation for gluon-mesh-batman-adv (#1810)
This adds documentation for the gluon-mesh-batman-adv package and
elaborates on its build and configuration options, as well as
the implemented multicast architecture.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2019-09-10 23:55:06 +02:00
Matthias Schiffer
b2f5f71c43
gluon-web-wifi-config: fix incorrect UCI call
Fixes #1809

Fixes: bf55249159 ("gluon-core: add outdoor support for 5 ghz radios")
2019-09-06 20:37:37 +02:00
Matthias Schiffer
fdf552e55e
uboot-fritz4040: add fixes for bootloader image generation
This seems to unbreak bootloader image generation with certain shells /
build setups.

Fixes #1766
2019-09-04 21:03:08 +02:00
Matthias Schiffer
45183296c3
modules: update Gluon packages
e130b6f54d0f simple-tc: increment PKG_VERSION
89260206971f libbabelhelper: bump version to allow specifying the command for readbabeldata()
0447a6960caf bump mmfd: Bugfix Crash  and firends
2019-09-04 20:57:37 +02:00
Christof Schulze
bd543db86b gluon-core: enhance mac_to_ip() beyond RFC 4291 (#1798)
mac_to_ip() calculates an ipv6 address from a mac address according to
RFC 4291. For wireguard we have to use specially crafted addresses that
must be unique. This allows calculating such unique mac-based addresses
by allowing to optionally specifying the bytes to be inserted into the
address.
2019-08-23 20:42:23 +02:00
Matthias Schiffer
087f14be80
docs: whitespace fixes 2019-08-22 23:07:23 +02:00
Matthias Schiffer
79933d7e83
docs: document new mesh.batman_adv.routing_algo settings for coexistence 2019-08-22 23:05:32 +02:00
Linus Lüssing
cb899874dc
gluon-mesh-batman-adv: allow installing mesh-batman-adv-14 and -15 at the same time
The new routing_algo site.conf value BATMAN_IV_LEGACY is introduced. With
these changes, the routing_algo setting becomes mandatory.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2019-08-22 20:09:10 +02:00
Linus Lüssing
f9e68be4e0
gluon-mesh-batman-adv: respondd: determine compat version from release version
We cannot add the same file (here: /lib/gluon/mesh-batman-adv/compat) to
two, installed packages. Therefore, instead of determining the compat
version number from this file, infer it from the batman-adv release
version number instead.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2019-08-22 20:09:10 +02:00
Linus Lüssing
011187e9f5
batman-adv: remove module autoload
Instead of unconditionally loading this module on boot the gluon_bat0
netifd protocol script will later take care of loading either the
batman-adv or batman-adv-legacy module, depending on the configured routing
algorithm in UCI.
2019-08-22 20:09:10 +02:00
Matthias Schiffer
f3ce3e4d3e
modules: update Gluon packages
19ef88a7191f batman-adv-legacy: update maintainers
c04321b96386 batman-adv-legacy: rename title from "B.A.T.M.A.N. Adv" to "... Legacy"
a382d21c6a21 batman-adv-legacy: move binaries, scripts and config to avoid conflicts
3e3db36a2eff batman-adv-legacy: remove module autoload
2019-08-22 20:09:10 +02:00
Christof Schulze
afa3e89890 scripts/update.sh: add verbose error message when commit cannot be found (#1794)
This displays the branch, repo and commitID that was attempted to update to but
failed. Users then can compare this output to the configuration they meant to
activate in modules and hopefully better find their typos.
2019-08-21 23:48:06 +02:00
Julian
01e03aa2ea docs: move supported devices to own page (#1797) 2019-08-21 23:46:08 +02:00
Matthias Schiffer
dcb18e6efe
features: include gluon-radvd by default
Fixes #1775
2019-08-21 19:34:12 +02:00
Chrissi^
dc8149abc4
gluon-mesh-vpn-core: Add dependency for KERNEL_NET_ACT_POLICE
This is a fix for the broken ingress traffic-shaping in gluon v2018.2.2
and possibly earlier.

For ingress traffic shaping the kernel option NET_ACT_POLICE is needed.
Before this patch there was no dependency to this. Neither in
gluon_core, gluon-mesh-vpn-core nor in the package.

This patch adds this dependency.

[Matthias Schiffer: move dependency from GLUON_CORE to gluon-mesh-vpn-core]

Fixes #1790
2019-08-21 18:37:53 +02:00
Matthias Schiffer
1b02bbf3a2
modules: update Gluon packages
7c31643f5cb0 simple-tc: depend on KERNEL_NET_ACT_POLICE or kmod-sched
2019-08-21 18:19:07 +02:00
Martin Weinelt
61bd88309e Revert "ar71xx-generic: unmark archer-c25-v1 as broken"
This reverts commit fb08e10494.

Devices featuring ath10k radios should at least 128 MB of memory
as their driver is quite memory hungry.

Devices with a configuration (1x ath10k, 64M memory) like this have
often been seen as running out of memory.
2019-08-18 19:32:43 +02:00
David Bauer
fc46d4470f docs: add RT-AC57U to supported devices 2019-08-15 15:53:04 +02:00
David Bauer
35bde952e1 ramips-mt7621: add missing broken flg for ASUS RT-AC57U 2019-08-15 15:53:04 +02:00
Martin Weinelt
eeb745d717 gluon-web-network: fix variable shadowing
package/gluon-web-network/luasrc/lib/gluon/config-mode/model/admin/network.lua:122:16: (W431) shadowing upvalue f on line 19

Fixes: bab4af01e ("gluon-web-network: improve PoE GPIO name translation
handling")
2019-08-13 17:49:02 +02:00
Martin Weinelt
8974d32672 modules: update OpenWrt
89808e211c kernel: bump 4.14 to 4.14.137
349714a491 kernel: bump 4.9 to 4.9.188
0a4a82a431 config: introduce separate CONFIG_SIGNATURE_CHECK option
8a83892662 packages: apply usign padding workarounds to package indexes if needed
0bce1d0db9 usign: update to latest Git HEAD
958411aa61 kernel: bump 4.14 to 4.14.136
2807f84b62 kernel: bump 4.9 to 4.9.187
7e4ce0c655 ar71xx: wpj531: fix SIG1/RSS1 LED GPIO

Compile-tested: ar71xx, mpc85xx
2019-08-13 16:43:51 +02:00
Simon Terzenbach
bb7b04c0ed docs: add Aerohive HiveAP 121 and HiveAP 330 to Supported Devices List 2019-08-13 13:25:20 +02:00
Simon Terzenbach
c124f6f410 mcp85xx-p1020: add support for Aerohive HiveAP 330 2019-08-13 13:25:20 +02:00
Vincent Wiemann
0a22218304 ar71xx-generic: Fix packages for GL.iNet AR750 (#1792)
The profile for GL.iNet AR750 currently selects ATH10K_PACKAGES, but this device actually has a QCA9887 which needs another driver.
This commit fixes the issue by setting ATH10K_PACKAGES_QCA9887 instead.
2019-08-10 10:17:29 +02:00
Simon Terzenbach
c37644e004
ar71xx-nand: add support for Aerohive HiveAP 121 2019-08-02 00:37:26 +02:00
Martin Weinelt
72af472331
modules: update OpenWrt
b7e7d220e7 ar71xx: fix HiveAP 121 PLL for 1000M
2019-08-02 00:33:41 +02:00
Martin Weinelt
44675db7c1
modules: update Gluon packages
fb15946 Merge pull request #233 from jluebbe/simple-tc
17e2535 simple-tc: fix confusing program names in error messages
63e6e0d mmfd: split package into mmfd and gluon-mmfd, bump mmfd version
9c0ac53 bump mmfd: remove babel dependency
aae659d bump l3roamd version
32c9f65 lua-simple-uci: luacheck fixes
cf0619a lua-simple-uci: do not use module(), do not rely on UCI internals
9d26ec1 pretty-hostname: do not use module()
fccb564 l3roamd: bump version for Allow to run l3roamd without mesh interfaces
fbcd1b3 l3roamd: bump version for FIX when roaming within the first 4.5 seconds
71d0566 autoupdater: clarify usage of -n in help
2019-07-31 23:01:12 +02:00
Martin Weinelt
a749a6d151
modules: update packages
1eeea30fd softethervpn: Fix compilation under 64-bit targets
276b7d9b0 Merge pull request #9542 from jefferyto/python-musl-find_library-openwrt-18.06
e1cb7f98d opendkim: Fix compilation with uClibc-ng
bc8fc4fb7 tvheadend: Fix compilation on GCC8
4c1252e9d tvheadend: Fix compilation without deprecated OpenSSL 1.0.2 APIs
bd96e95e3 tvheadend: Fix compilation without OpenSSL deprecated APIs
59f7eb5e1 libartnet: Fix compilation with GCC8
e00521bc7 poco: Do not build on ARC
0662e833e flent-tools: Fix compilation with uClibc-ng
131c9436c oath-toolkit: Fix compilation with uClibc-ng
0524f21ed flashrom: Add ARC support
8923eecd3 elektra: Fix compilation with uClibc-ng
24ad87702 elektra: Fix compilation without deprecated OpenSSL APIs
f30898d3e hfsprogs: Fix compilation with uClibc-ng
02d64a922 dosfsutils: Properly fix iconv linking
f273581e1 dosfstools: Fix compilation with full NLS
4870eab08 loudmouth: Fix compilation with uClibc-ng
b1adbbe5b loudmouth: Disable debug and fix no deprecated API compilation
30ddc8a15 transmission: Fix compilation under uClibc-ng
0cac0b3eb transmission: add PKGARCH:=all for transmission-web
c2860ce2c transmission: Add LTO support to shave off 35KB off of the ipk
b5957aed6 transmission: Allow user to configure web ui home directory
cdc001736 open2300: Switch to GitHub fork
dddcd5d90 softethervpn: Add openssl to host build deps
0a4f88e56 softethervpn: Really fix iconv support
e05f50c12 softethervpn: add package name to build dir
8358aa690 softethervpn: cleanup host/build, pass HOST_*FLAGS
5cb4c348a python,python3: Fix ctypes.util.find_library()
d16a931db python: add patch for CVE-2018-20852
2402c223d python: bump to version 2.7.16
ae21f4990 python3: update to version 3.6.9
12c96eaad diffutils: provide diff, cmp as alternatives
04c9e6708 Merge pull request #9463 from ps790/patch-4
4265311c1 Merge pull request #9461 from ps790/patch-2
93e7b0982 coreutils: add alternatives support
ef44ef698 bridge-utils: fix conflict with busybox brctl
4e93f455a softethervpn: Update to rtm version 4.29-9680
4682d1741 softethervpn: Pass FLAGS to CC for hamcorebuilder
f424f7dfa wifidog: fix getting ip from interface, cleanup
bba8e2c44 irssi: update to version 1.2.1 (security fix)
d10ac7c29 Merge pull request #9396 from stangri/openwrt-18.06-simple-adblock
78b0da469 simple-adblock: options to filter non-ASCII domains, local compressed storage
1e398bbcb ocserv: updated to 0.12.4
43bfa6fe4 Merge pull request #9292 from BKPepe/18.06-youtube
68461c4c5 php7: update to 7.2.19
f9b20e9dd php7: update to 7.2.18
5779614d2 znc: backport fix for CVE-2019-12816
63c532a71 youtube-dl: update to version 2019.06.21
7879bbdb4 Revert "php7: Fix compilation without deprecated OpenSSL APIs"
115f72fc4 Revert "php7: update to 7.2.18"
70e4af441 Revert "php7: update to 7.2.19"
d90a035c1 libxml2: update to 2.9.9
5aa670ed3 libxml2: Fix CVE-2018-14404
8abaf8a30 php7: update to 7.2.19
8e9429f3e php7: update to 7.2.18
a176ffa0a php7: Fix compilation without deprecated OpenSSL APIs
53742f130 php7: update to 7.2.17
81a8e5904 nano: update to 4.3
dd927adce Merge pull request #9272 from gladiac1337/openwrt-18.06
28007a8bd Merge pull request #9268 from EricLuehrsen/unbound_192_1806
1784615d3 haproxy: Update HAProxy to v1.8.20
88a7f98bd unbound: update to 1.9.2 with package bug fixes
7290c123d Merge pull request #9232 from neheb/13
356bb1162 haproxy: Remove unnecessary OpenSSL depends All of these are either not needed or not valid.
3afd61982 lm-sensors: install libsensors using CP instead of INSTALL_DATA
d8ecf9cb7 boost: Release update with minor fix
efa0b885a znc: update my email address
45e1b91ae Merge pull request #9193 from ryzhovau/getdns_lib-18.06
55e357b66 getdns: fix library double packing
810f22da8 nlbwmon: update to latest Git HEAD
2019-07-31 23:00:03 +02:00
Martin Weinelt
6b9dd169f4
modules: update OpenWrt
df53824f46 kernel: bump 4.14 to 4.14.134
76d1e8a0c2 kernel: bump 4.9 to 4.9.186
ef9c13fb5d imx6: bump SDMA firmware to 3.5
41e3f12e00 imx6: bump sdma firmware to 3.4
f51e2d031e mac80211: brcm: improve brcmfmac debugging of firmware crashes
95745e26b3 mac80211: brcm: update brcmfmac 5.4 patches
65a405382b omcproxy: fix compilation on little-endian CPUs
a68be42f99 scripts: ipkg-make-index.sh: dereference symbolic links
8231f67218 mac80211: brcmfmac: backport fixes from kernel 5.4
627bb0b8dc busybox: strip off ALTERNATIVES spec
e6af9c017b opkg: bump to version 2019-06-14
33e7beeb31 base-files: Fix path check in get_mac_binary
687977bfc9 kernel: bump 4.14 to 4.14.132
6ee6c97ded base-files: Really check path in get_mac_binary
aced9de9a4 wireguard: bump to 0.0.20190601
3bbd16da46 ramips: fix mt7620 pinmux for second SPI
b84f761d91 OpenWrt v18.06.4: revert to branch defaults
f6429577c5 OpenWrt v18.06.4: adjust config defaults

Compile-tested: ar71xx-generic, ipq40xx, mpc85xx-generic, ramips-mt7621
Runtime-tested: mpc85xx-generic (WDR4900v1), ramips-mt761 (DIR-860L-B1)
2019-07-31 22:58:48 +02:00
Matthias Schiffer
bab4af01eb
gluon-web-network: improve PoE GPIO name translation handling
- Replace string concat for i18n key with an explicit list to make the code
  compatible with i18n-scan.pl
- Improve fallback string
2019-07-20 20:56:58 +02:00
Matthias Schiffer
df5bf20b6c
docs: improve note on targets without IBSS support (#1788)
Fixes #1718
2019-07-20 16:44:55 +02:00
Matthias Schiffer
93db2f3703
docs: remove executable mode from index.rst
It seems this was changed by accident.
2019-07-20 14:02:14 +02:00
Matthias Schiffer
6867cc98a5
Refresh patches 2019-07-20 13:19:57 +02:00
bobcanthelpyou
bde40fb931 CONTRIBUTING.md: fix link to list of rejected features (#1785) 2019-07-13 14:32:41 +02:00
David Bauer
9abce01e87 ramips: add support for ASUS RT-AC57U (#1786) 2019-07-13 14:32:22 +02:00
Andreas Ziegler
350fe73fe5 ramips-mt76x8: add support for TP-Link TL-MR3420 v5 2019-07-08 14:29:00 +02:00
Sven Eckelmann
2eb15bac0e gluon-authorized-keys: Force installation of gluon-lock-password
The gluon-authorized-keys is usually installed to use SSH keys to
authenticate a user against the device. To make this useful, it is also
required to disable passwordless SSH access to the device.

This new dependency is only required when the user doesn't have
gluon-setup-mode enabled already.

Fixes: #1777
Reported-by: yanosz <github@yanosz.net>
Fixes: a753fa79e3 ("gluon-authorized-keys: add keys from site.conf")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-07-02 12:34:55 +02:00
Chrissi^ (Chris Fiege)
9dfaed000c doc/dev/package: Fix path to gluon.mk (#1774)
$(TOPDIR) does not contain a trailing slash.
Thus the 'gluon.mk'-include must include
the trailing slash. (Just like the link to
$(INCLUDE_DIR)/package.mk does.)

Signed-off-by: Chris Fiege <chris@tinyhost.de>
2019-06-29 23:41:07 +02:00
Adrian Schmutzler
851dfc6a93 ar71xx-generic: Add support for TP-Link CPE210 V3 (#1696)
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-06-29 14:49:54 +02:00
Jan-Tarek Butt
f9a47f027b gluon-hoodselector docs: add package documentation
Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

gluon-hoodselector docs: replace 'Router have' with 'Router has'

gluon-hoodselector: docs: fix spelling/grammar

docs: gluon-hoodselector.rst, chnage 'VPN-mode' to VPN mode and 'trigon polygon' to triangle

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

docs/package/gluon-hoodselector: update .dia and .svg to current code behave

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

docs/package/gluon-hoodselector: replace hood with domain update doc to current code behave

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

docs hoodselector: fix spelling

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

docs/package/gluon-hoodselector: fix spelling second round

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

docs:gluon-hoodselector.rst: fix spelling

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

docs gluon-hoodselector.rst: fix line length

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

docs gluon-hoodselector: rename doc imports to be assoziated with the hoodselector

docs gluon-hoodselector: fix image name and rst inmport

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

docs gluon-hoodselector: information without es (uncountable)

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

docs/package: gluon-hoodselector.rst fix grammer issues

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>
2019-06-29 02:43:01 +02:00
Jan-Tarek Butt
90baebc2b7 add gluon-hoodselector: Integrate geolocation mode
This MR includs only the VPN MODE of the hoodselector whitch simply set
hoods base on their geopositions.

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

check_site.lua: fix language syntax

muss -> must
rage -> range
at lease -> at least
coordiantes -> coordinates
realaise -> realised

gluon-hoodselector: fix language syntax in hoodselector

can not -> can't
routers -> router's
continure -> continue
to next -> to the next
TMP -> temporary
for current -> for the current
continure -> continue
with next -> with the next
thier -> there
provides -> provide
possition -> position
therfore -> therefore

gluon-hoodselector: fix language syntax in util.lua

realaise -> realised

gluon-hoodselector: fix language syntax and use autoupdate lock mechanism.

gluon-hoodselector: fix spelling/grammar

gluon-hoodselector: automatically set SECTION and CATEGORY for Gluon packages

gluon-hoodselector-add-VPN-MODE: add micrond & libjson-c dependency

gluon-hoodselector-add-VPN-MODE: check running hoodselector before loading lua

gluon-hoodselector-add-VPN-MODE: remove nixio dependency from hoodselector util

Revert "gluon-hoodselector-add-VPN-MODE: check running hoodselector before loading lua"

This reverts commit 535b0a1b2fb73e563bf6a44b568a796440bd307f.

add luaposix and luabitop to pakage dependency

sbin/hoodselector: remove nixio requiemend

sbin/hoodselector: load hoods only if necessary

gluon-hoodselector: use VPN abstraction layer. the hoodselectore does
not need to know about all individual VPN protocols.

gluon-hoodselector: Makefile add gluon-mesh-vpn-core as dependency

gluon-hoodselector: apply changes of mesh vpn lib

gluon-hoodselector: remove outdated comments

package/gluon-hoodselector: check_site.lua rm domain seed check thus its already checked by gluon-core

package/gluon-hoodselector: util.lua code cleanup and refactoring

package/gluon-hoodselector: hoodselector code cleanup and refactoring

gluon-hoodselector: util.lua, use taps instead of spaces. Use posix.unistd.access instead of io.open

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

gluon-hoodselector: hoodselector, use taps instead of spaces.

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

gluon-hoodselector: check_site.lua: replace hood with domain

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

gluon-hoodselector: drop VPN mode and rename hood to domain. Furthermore implement geolocator mode as neorayder way

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

package/gluon-hoodselector: rm duplicated print output

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

package/gluon-hoodselector util: fix wrong function signature

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

small typo fixes

small typo fixes

Update util.lua

processes are really restarted now. new (old) problem: nodes will not forget their former ipv6-addresses. watchdog could here with that.

gluon-hoodselector util.lua: replace i iterator with _

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

Update util.lua

now polygons with holes are recognized correctly. also a mix of nested polygons and boxes should be possible as shapes[]

package/gluon-hoodselector: hoodselector use gluon-reload for daemon restarts/reloads

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

package/gluon-hoodselector: util.lua use math-polygon lib and rm restart_services function. Rectengles will be converted into polygons now

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

package/gluon-hoodselector: Makefile rewrite description update depends list

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

package/gluon-hoodselector: check_site.lua reduce complexity

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

package/gluon-hoodselector: use : for gluon_version Val

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

package/gluon-hoodselector: fix if equal syntax

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

luasrc/usr/lib/lua/hoodselector/util.lua: check_site.lua simplify checksite script and fix if logic

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

package/gluon-hoodselector: set space after comma, rm unnecessary error handling

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

package/gluon-hoodselector: use only brackes on require function no mixup

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

package/gluon-hoodselector: check_site.lua rm unuse variables and fix non std global function

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

package/gluon-hoodselector: util.lua rm unuse include

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

package/gluon-hoodselector: rm comment return nil in function get_geolocation()

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>

package/gluon-hoodselector: Makefile refactor pkg description

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>
2019-06-29 02:43:01 +02:00
Martin Weinelt
6ebb721ebc
modules: update OpenWrt
ef686b7292 uqmi: bump to latest git HEAD
3dc740257b uqmi: inherit firewall zone membership to virtual sub interfaces
a2c22b8776 uqmi: fix PIN_STATUS_FAILED error with MC7455 WCDMA/LTE modem
d5ff0897cb kernel: bump 4.14 to 4.14.131
18266fc6c0 kernel: bump 4.9 to 4.9.184

Compile-tested: mpc85xx-generic, ramips-mt7621
Runtime-tested: mpc85xx-generic (TP-Link WDR4900 v1), ramips-mt7621 (D-Link DIR-860L B1)
2019-06-29 02:39:49 +02:00
Martin Weinelt
fb08e10494
ar71xx-generic: unmark archer-c25-v1 as broken
memory usage seems to behave more reasonable for a while now
2019-06-28 01:58:35 +02:00
Martin Weinelt
10d05d268c
gluon-core: fix primary mac selection on tp-link archer c25 v1
Fixes #1771
2019-06-27 13:35:35 +02:00
Martin Weinelt
5cf2f017dc
modules: update OpenWrt
5e771160b8 kernel: bump 4.14 to 4.14.130
9c6fb1d67a kernel: bump 4.14 to 4.14.129
6c1bef833d kernel: bump 4.9 to 4.9.183
467adaf6c5 OpenWrt v18.06.3: revert to branch defaults
4382d4ce19 OpenWrt v18.06.3: adjust config defaults
97ae9e0ccb fstools: block-mount: fix restart of fstab service
25fc20db8b fstools: update to the latest master branch
fc39d5fc45 fstools: media change detection (eg:sdcard) using kernel polling
b463a13881 hostapd: fix multiple security problems

Compile-tested: ramips-mt7621
Runtime-tested: ramips-mt7621 (D-Link DIR-860L B1)
2019-06-27 03:05:33 +02:00
rubo77
2541d0a0e2 docs: Add information how to automatically check your code with luacheck 2019-06-26 23:30:17 +02:00
rubo77
a8e5a82215 docs: fix troubleshooting link from markdown to RST 2019-06-24 19:42:32 +02:00
Martin Weinelt
8118e7315f
docs: Add v2018.2.2 release notes 2019-06-24 14:29:24 +02:00
lrnzo
d42705f36a docs: update upgrade.rst
small grammatical fix
2019-06-24 13:37:06 +02:00
Martin Weinelt
7d386a66f3
docs: fix reference to #noibss in v2018.2.1 release notes
Uncovered by sphinx-build:
docs/releases/v2018.2.1.rst:19: WARNING: Too many autonumbered footnote references: only 0 corresponding footnotes available.
docs/releases/v2018.2.1.rst:19: WARNING: Unknown target name: "noibss".
docs/releases/v2018.2.1.rst:26: WARNING: Unknown target name: "noibss".
docs/releases/v2018.2.1.rst:30: WARNING: Unknown target name: "noibss".
docs/releases/v2018.2.1.rst:34: WARNING: Unknown target name: "noibss".
docs/releases/v2018.2.1.rst:35: WARNING: Unknown target name: "noibss".
2019-06-21 00:44:10 +02:00
Martin Weinelt
8a2da00d0d
docs: fix codeblock in getting_started.rst
Issue was uncovered by sphinx-build:
docs/user/getting_started.rst💯 WARNING: Definition list ends without a blank line; unexpected unindent.
2019-06-21 00:42:29 +02:00
Matthias Schiffer
99f344bac3
modules: update OpenWrt
fc1dae5be797 brcm2708: Revert "staging: vc04_services: prevent integer overflow in create_pagelist()"
84aba5796ea2 gemini: 4.14: Fix up DNS-313 compatible string
9656f49ea009 base-files: fix uci led oneshot/timer trigger
bd0c3988e742 kernel: bump 4.14 to 4.14.128
2019-06-21 00:20:03 +02:00
Matthias Schiffer
c1a7733956
Revert "batman-adv: update to current openwrt-routing / batman-adv v2019.2"
This reverts commit 8dd13cbbca.

Fixes #1756
2019-06-20 20:53:29 +02:00
Matthias Schiffer
b41ee49aac
Revert "batctl: upgrade package to latest release 2019.2"
This reverts commit 3d3617ed2c.
2019-06-20 20:48:31 +02:00
rubo77
721adc4c6b docs: Add example how to build all targets 2019-06-20 14:33:47 +02:00
rubo77
a552575131 docs: link to Wiki Troubleshooting page in Getting Started 2019-06-20 14:33:47 +02:00
Martin Weinelt
0c22f3c629 docs: treat sphinx warnings as errors 2019-06-20 13:38:09 +02:00
Martin Weinelt
372d9c372e Add minimal docker environment
This will be a useful precursor for continuous integration.
2019-06-20 01:19:28 +02:00
Ruben Barkow
2bda2ea028 gluon-web-mesh-vpn-fastd: update comment after luacheck fixes (#1751)
Fixes: 4249d65af7 ("treewide: fix luacheck warnings")
2019-06-19 22:40:05 +02:00
Matthias Schiffer
a6a25c9431
Merge pull request #1724 from freifunk-gluon/pr/tc-mbits
gluon-config-mode-mesh-vpn: display tc limits in Mbit/s
2019-06-19 19:35:59 +02:00
Matthias Schiffer
a2ba3efe8b
Merge pull request #1743 from freifunk-gluon/mesh-vpn-fix-limits
gluon-mesh-vpn-core: move common VPN config to gluon UCI package
2019-06-19 19:34:28 +02:00
bobcanthelpyou
025e9c71c3 Add luacheck config (#1741) 2019-06-18 22:27:41 +02:00
Matthias Schiffer
ecc8ebc8ed
treewide: move ebtables filter definitions from files to luasrc 2019-06-18 19:52:33 +02:00
Martin Weinelt
1b06a15bbd modules: update OpenWrt
2999c342aa kernel: bump 4.14 to 4.14.127
9de2f4d4ce kernel: bump 4.9 to 4.9.182
5fe809d718 Revert "ipq806x: fix EA8500 switch control"
e493230e84 kernel: bump 4.14 to 4.14.126
c449130bb2 mvebu: fixes commit f63a1caf22cb
6fa6f74e37 kernel: backport 4.18 patch adding DMI_PRODUCT_SKU
2cd234d96b mac80211: brcmfmac: backport important fixes from kernel 5.2
85eda6f61e kernel: mt29f_spinand: fix memory leak during page program
a0543d8e70 uboot-fritz4040: update PKG_MIRROR_HASH
f63a1caf22 kernel: bump 4.14 to 4.14.125
40b1e899ba kernel: bump 4.9 to 4.9.181
5dbac47426 kernel: re-add bridge allow reception on disabled port
5d27e87de7 rpcd: fix init script reload action
1867f10807 kernel: bump 4.14 to 4.14.123
7fe1b4a4b2 kernel: bump 4.9 to 4.9.180
6563e494a0 kernel: bump 4.14 to 4.14.122
e3408d09b0 kernel: bump 4.9 to 4.9.179
b2b1265a1d apm821xx: backport accepted linux-crypto patches

Fixes: CVE-2019-11477, CVE-2019-11478, CVE-2019-11479

Compile-tested: x86_64
Runtime-tested: x86_64
2019-06-18 15:58:04 +02:00
Linus Lüssing
3d3617ed2c batctl: upgrade package to latest release 2019.2 2019-06-18 03:45:50 +02:00
Matthias Schiffer
09a09d634a
scripts: avoid global variables in target handler scripts 2019-06-18 01:34:45 +02:00
Matthias Schiffer
c9f1fdf6ee
scripts: check_site: use setfenv to keep global environment clean
This is now much nicer to luacheck.
2019-06-17 20:36:35 +02:00
Matthias Schiffer
95e7d41563
gluon-ebtables-source-filter: another luacheck fix 2019-06-17 20:12:47 +02:00
Martin Weinelt
cd9f1a0f0c gluon-core: fix and complete list of outdoor board names 2019-06-17 16:27:19 +02:00
Martin Weinelt
3d4fb37351
gluon-mesh-vpn-tunneldigger: move watchdog script into luasrc directory
This allows the script to be minified as well as being checked by
luacheck.
2019-06-17 00:48:08 +02:00
bobcanthelpyou
266e0aed38 gluon-mesh-vpn-tunneldigger: fix luacheck warnings 2019-06-17 00:41:20 +02:00
Matthias Schiffer
f67522bef3
Merge pull request #1748 from bobcanthelpyou/luacheck_warnings
treewide: fix luacheck warnings
2019-06-16 23:17:43 +02:00
bobcanthelpyou
f2305faea8 gluon-web-model: fix return value of resolve_depends() 2019-06-16 22:51:53 +02:00
bobcanthelpyou
4249d65af7 treewide: fix luacheck warnings 2019-06-16 22:51:53 +02:00
Matthias P. Walther
8e176354f8
gluon-mesh-vpn-tunneldigger add watchdog script
The logic is based on the previously used shell script implementation.

Co-Authored-By: Robin Weiligmann <admin@robwei.me>
2019-06-16 20:56:35 +02:00
Martin Weinelt
ada723a0df
gluon-config-mode-mesh-vpn: display tc limits in Mbit/s 2019-06-16 19:32:57 +02:00
Matthias Schiffer
fc7c8cb086
gluon-mesh-vpn-core: remove obsolete migration code
/etc/config/gluon-simple-tc was removed with Gluon 2016.1.
2019-06-16 18:40:10 +02:00
Matthias Schiffer
818c31afdd
gluon-mesh-vpn-core: move common VPN config to gluon UCI package
We now keep the VPN enable state, bandwidth limit enable and actual limits
in the core config to avoid having to recover "user intent" from different
config files when the used VPN packages change.

Fixes #1736
2019-06-16 18:40:10 +02:00
Matthias Schiffer
f6df3b0541
gluon-mesh-vpn-core: don't consider tunneldigger when fastd is installed
None of our scripts can handle fastd and tunneldigger running at the same
time. When both are installed, ignore tunneldigger.
2019-06-16 17:56:18 +02:00
Matthias Schiffer
80b6e7f18f
Merge pull request #1742 from bobcanthelpyou/luacheck_gluon-mesh-vpn-core
gluon-mesh-vpn-core: fix luacheck warnings
2019-06-16 17:39:24 +02:00
bobcanthelpyou
9f4c393295 gluon-mesh-vpn-core: fix luacheck warnings
./gluon-wan:25:1: (W122) setting read-only field ? of global arg
./gluon-wan:29:1: (W311) value assigned to variable ok is unused
2019-06-16 17:31:53 +02:00
Matthias Schiffer
da45bd5987
treewide: do not use Lua module() 2019-06-16 15:51:43 +02:00
Matthias Schiffer
3ec108aacc
gluon-web: fix Http:getcookie()
None of our code uses cookies, so this issue went unnoticed.
2019-06-16 14:55:23 +02:00
Matthias Schiffer
8e00149f11
targets: add deprecated flags as appropriate 2019-06-15 23:34:07 +02:00
Matthias Schiffer
912490c026
Add GLUON_DEPRECATED flag
This new build flag is mandatory for now (it may default to 0 in a future
Gluon version). It may be set to the following values:

* 0 - Do not build any images for deprecated devices.
* upgrade - Only build sysupgrade images for deprecated devices.
* full - Build both sysupgrade and factory images for deprecated devices.

"Other" images are handled like factory images, as they are also used for
the initial installation of Gluon on a device.
2019-06-15 23:34:07 +02:00
Matthias Schiffer
071cf7b20f
Switch to Lua for target definitions
The old bash-based parsing code was way too complex. Replace it with Lua.
2019-06-15 23:34:07 +02:00
Matthias Schiffer
a44a5dce02
ar71xx: Onion Omega is BROKEN
This device doesn't have an Ethernet port, and even with the Ethernet
shield, eth0 is not configured.
2019-06-15 23:30:23 +02:00
Matthias Schiffer
0970dd3e01
targets: unset executable mode for target files
For some reason, some of the target files were executable.
2019-06-12 14:15:25 +02:00
Martin Weinelt
709c1b1b91 gluon-config-mode-outdoor: fix reference mess for real this time 2019-06-10 11:20:53 +02:00
Martin Weinelt
718696e11d gluon-config-mode-outdoor: fix default value readout 2019-06-09 21:54:52 +02:00
Matthias Schiffer
7be7064432
gluon-ebtables-filter-multicast: fix comment char in Lua code
It seems this mistake didn't cause an error because of Lua's support for
shebang lines.
2019-06-09 15:27:08 +02:00
Linus Lüssing
9b1eb40fe7 gluon-mesh-batman-adv: reenable batman-adv multicast optimizations
Several fixes and enhancements related to multicast were added upstream
in batman-adv. So let's give the batman-adv multicast optimizations
another go.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2019-06-07 15:16:40 +02:00
Linus Lüssing
8dd13cbbca batman-adv: update to current openwrt-routing / batman-adv v2019.2
This updates the batman-adv OpenWrt package to the current version
provided in the master branch of the openwrt-routing packages
repository:

* e26096a batman-adv: Fix duplicated OGMs on NETDEV_UP
* 1ff00ee batman-adv: upgrade package to latest release 2019.2

Small difference to the original:

* Compat code for batadv_genl_dump_check_consistent()
* Compat code for cfg80211_sinfo_release_content()
* 0001-batman-adv-add-compat-hacks.patch kept
* batctl dependency kept removed
* config related files unchanged

The new config format was not backported yet to keep this patch small
and less invasive.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2019-06-07 15:16:40 +02:00
Martin Weinelt
9e00ecd8e4
modules: update routing
c07326c batman-adv: Fix duplicated OGMs on NETDEV_UP

fixes #1446
2019-06-03 00:12:19 +02:00
Martin Weinelt
832de8615a
modules: update routing
cad1fba Merge pull request #469 from ecsv/batadv-for-18.06
145ba7f batman-adv: Merge bugfixes from 2019.2
40b7519 batman-adv: Reorder patches
2019-06-02 02:51:43 +02:00
Martin Weinelt
bbd52db511
modules: update packages
5d3cb594e Merge pull request #9058 from micmac1/sqlite3-arm-endian-owrt18
d13f831ba sqlite3: fix arm endian issue
48687a581 Merge pull request #8966 from BKPepe/18.06-ytdl
5387239ad youtube-dl: update to version 2019.05.11
76ebe2be0 Merge pull request #8765 from BKPepe/1806-urllib3
ec5e894ce Merge pull request #8954 from jonathanunderwood/openwrt-18.06-getdns-stubby-from-master
54928eb69 nfs-kernel-server: use portmap, drop rpcbind
09e18eef7 stubby: set PKG_SOURCE_VERSION using PKG_VERSION
f8c8b96e7 stubby: remove PKG_SOURCE from Makefile
28c328d66 stubby: add support for TLS configuration options
eec23a91b stubby: add support for tls_port resolver config option (#8889)
5415cc7b2 stubby: update to 0.2.6
b1cc26adf getdns: update to version 1.5.2
813d49c69 stubby: Update PKG_RELEASE
3b498844a stubby: fix handling of pkis in config (#8888)
95daecd81 stubby: fixed duplicate IPv6 address in stubby.yml; fixed typo in README.md
eca82ce3d Merge pull request #8938 from lucize/doveup18
2c87aeba1 dovecot: update to 2.2.36.1
8459433eb python-urllib3: update to 1.24.3
014106741 Merge pull request #8781 from neheb/pros
41c85f8ef Merge pull request #8767 from neheb/cr2
9e4966bd3 Merge pull request #8816 from neheb/lo
55b505f82 Merge pull request #8815 from neheb/gr
1663a0186 Merge pull request #8881 from micmac1/maria_10.1.39
78328ebe3 libxslt: add PKG_CPE_ID for proper CVE tracking
816c7aed6 Merge pull request #8882 from micmac1/xslt-cve-18
2eb2a94da mariadb: bump to 10.1.39
d03db02bc libxslt: backport patch for CVE-2019-11068
d3c324d8b Merge pull request #8871 from neheb/ad
fb9238b61 addrwatch: Add -std=gnu89 to fix compilation
5fae371ab Merge pull request #8779 from neheb/libsec
3ca88ff6d Merge pull request #8780 from neheb/apc
1d44e408f Merge pull request #8770 from neheb/es
759e83674 Merge pull request #8772 from neheb/oa
ea1429f69 Merge pull request #8778 from neheb/liba
46d30c221 Merge pull request #8850 from EricLuehrsen/unbound_dhcp_1806
7f7fda67b add rpcbind
80429e0a5 unbound: fix local dns synthesis corner cases
1f77a0582 Merge pull request #8777 from neheb/sendm
071a926dd Merge pull request #8817 from neheb/bonnnnn
ddc48c3d5 bonnie++: Remove wrongly added patch during cherry-pick
21de3c1ac loudmouth: Disable debug and fix compilation
79e69bf41 grilo: Remove build dependency on perl-xml-parser
c3f6660b8 nfs-kernel-server: fix missing libbsd dependency
d2f254a72 nfs-kernel-server: update to 2.3.3
dac119d49 nfs-kernel-server: Switch to xz tarball
f1ab32ab6 nfs-kernel-server: switch to libtirpc, enable ipv6
5ab569a06 nfs-kernel-server: fix missing host symbol res_querydomain/missing-include-dir
20809ba6a nfs-kernel-server: add -Wno-error=format-security to TARGET_CFLAGS to a fix compily error
2c137a7a5 nfs-kernel-server: update to 2.3.2
765ae2798 libtirpc: enable host build
9b3414fd1 znc: Clean up Makefile and fix compilation on PPC
a8316a5c6 nano: update to 4.2
f69a00efb Merge pull request #8764 from BKPepe/1806-youtubedl
024543fb1 Merge pull request #8766 from neheb/qu
c69c1aea4 Merge pull request #8768 from neheb/cmd
d018e0946 Merge pull request #8776 from neheb/luas
9f74ef0f8 luasec: cleanup Makefile
bbfd71a59 luasec: use gcc to link instead of ld
7059f9476 luasec: Replace -fPIC with $(FPIC)
a3d99ad90 youtube-dl: update to version 2019.04.24
9e532f225 Merge pull request #8773 from neheb/cla
bcf889b36 intltool: Add patch to fix regular expressions and avoid warnings in perl 5.22 and later.
2653eabd4 prosody: Change linker from LD to CC
c15b779b8 prosody: Update prosody to 0.11.2 Update Fixes CVE-2018-10847
9104a1f14 apcupsd: preset shutdown binary
e484057d0 libseccomp: Update to 2.3.3
f61ee11d0 libartnet: Fix compile with GCC7
9d2bf88ec sendmail: link with gcc instead of ld
dd2c1e03e Merge pull request #8769 from neheb/da
3a478756f Merge pull request #8774 from neheb/psq
cf4537574 psqlodbc: Update to 11.00.0000
8ca29a4f3 psqlodbc: bump to 10.03.0000, fix --with-unixodbc
81a6687a6 Merge pull request #8771 from neheb/pia
fa060f40e clamsmtp: Really fix compilation
850126c0d oath-toolkit: Add patch from Fedora to fix compilation
fd52a3df0 pianod: Update to 174.09 release (removes BSD dependencies)
a0ca3e308 espeak: Fix build issues. Cleanup patches
d02a17b35 darkstat: Remove libbsd dependency
0a4f26f3c cmdpad: Fix compile
27af84f57 crtmpserver: Update to official git repo
1a7d79d98 quassel-irc: Update to latest version
873762ce2 quasselc: Update to latest commit
c8c8c1a4a Merge pull request #8759 from neheb/bon2
76132b044 bonnie++: Update to 1.98
df7f21bcd Merge pull request #8718 from neheb/lcd
588f971f0 Merge pull request #8716 from neheb/wifi
4e0a836c5 Merge pull request #8717 from neheb/setser
403d40d91 Merge pull request #8720 from neheb/iio
03a4afe5f Merge pull request #8719 from neheb/unix
d42547cd3 Merge pull request #8733 from jefferyto/openwrt-18.06-python-cve-2019-9636
fbcac2d53 python,python3: Fix CVE-2019-9636 - urlsplit missing NFKC normalization
01f90caa1 Merge pull request #8706 from nxhack/18_06_icu_support_reiwa
e0bee26f4 libiio: add missing dependency to zlib
7220dab75 unixodbc: save unixodbc_conf.h for host build
01a2f4353 unixodbc: fix clean-build compilation
bd380a3c7 unixodbc: Fix LIB_PREFIX in host build
9b5b23f44 lcd4linux: Update to 1204
c26a03a1d setserial: Don't build docs to remove nroff dependency
2a85006ab wifidog: Change to use TLS above 1.0
94b07876e icu: [openwrt-18.06] support for new Japanese era Reiwa
c9aedd9a5 nano: update to 4.1
49e759b28 Merge pull request #8638 from mwarning/zerotier
890993d40 Merge pull request #8477 from BKPepe/openwrt-18.06_perl
d6ed5c22b net/mosquitto: correct config file option name
05e16dd22 zerotier: fix multiple instance handling and port setting
59c6457ec zerotier: update to version 1.2.12
4db102755 Merge pull request #8595 from EricLuehrsen/openwrt-18.06
43c1d6c2a unbound: correct forward of root domain
b8970833b perlmod: fix ability to build module out-of-feed
2019-06-02 02:50:21 +02:00
Martin Weinelt
f8bbdd96f0
modules: update OpenWrt
6761961919 openssl: update to 1.0.2s
9591155737 kernel: Fix arc kernel 4.14 build
dc1b578a4c curl: Fix multiple security problems
40ed8389ef mbedtls: update to version 2.16.1
7e07320dc4 kernel: bump 4.14 to 4.14.121
054aecdf0b kernel: bump 4.9 to 4.9.178
e9a7344550 uci: fix heap use after free (FS#2288)
4b633affff brcm63xx: drop linux,part-probe usage where possible
cfb72eed69 brcm63xx: drop own implementation of DT partitions in favour of upstream
68a5e662c2 kernel: bump 4.14 to 4.14.120
85294fc5e7 kernel: bump 4.9 to 4.9.177
152755c9a2 kernel: bump 4.14 to 4.14.119
82e4b4250d kernel: bump 4.9 to 4.9.176
cf2aa873ea ar71xx: Fix network setup for TP-Link Archer C25 v1
e6928e6b29 kernel: Fix arc kernel build
3239f56136 uboot-fritz4040: Add host flags for host compiler
b5ce5217e2 ramips: rt305x: Reduce size of a5-v11 image
d3053b1bdc kernel: bump 4.14 to 4.14.118
f053a8ce41 kernel: bump 4.9 to 4.9.175
412d80cdb7 kernel: bump 4.14 to 4.14.115
f105a9c35c kernel: bump 4.9 to 4.9.172
4685bf1d2f kernel: bump 4.14 to 4.14.114
2faceb1a39 kernel: bump 4.9 to 4.9.171
e0505cc018 Revert "uhttpd: disable concurrent requests by default"
24aefaec62 tools/pkg-config: Handle variable substitution of 'bindir' to redirect to STAGING_DIR/bin
aaa34526c4 tools/pkg-config: pass arguments at the end
3103bd54c5 kernel: bump 4.14 to 4.14.113
a5c62c933b kernel: bump 4.9 to 4.9.170
ac3b5f00e1 kernel: bump 4.14 to 4.14.112
15a70d085d kernel: bump 4.9 to 4.9.169
e6e5435c5b ar71xx: GL.iNet AR300M family: correct LED definitions
ecfe0f1cc4 ca-certificates: update to version 20190110
2d2e615dee mac80211: brcmfmac: really add early fw crash recovery
02aed76968 mac80211: brcmfmac: early work on FullMAC firmware crash recovery
1a6d7a651f lantiq: tdw89x0: Fix WLAN LED on TP-Link W8970 v1.2 (FS#2232)
6ac061f319 ar71xx: Fix IMAGE_SIZE for TP-Link Archer C7 v5
7268ebb1e4 ar71xx: Correct MAC address for WAN interface of Archer C7 v5
c7eb679047 ar71xx: Add "info" partition for TP-Link Archer C7 v5
9c4fa1bb5b ar71xx: Remove ath10k packages from archer-c7-v1 (fixes FS#1743)
6c81f5fac6 kernel: bump 4.14 to 4.14.111
aa0e6fc489 kernel: bump 4.9 to 4.9.168
dad220a00c kernel: bump 4.14 to 4.14.110
07bd5b7a81 kernel: bump 4.9 to 4.9.167
4b4de23dfb openssl: update to 1.0.2r

Build-tested: x86-64
2019-06-02 02:49:10 +02:00
Christof Schulze
08a8815815 gluon-l3roamd: add missing uc dependency
uc is used in the initscript. It must be set as dependency
2019-05-25 15:43:25 +02:00
David Bauer
5f19706756 gluon-core: fix mesh radios not being created
This commit fixes a bug where on first setup, mesh interfaces won't be
created for 2.4GHz radios.
2019-05-21 13:42:22 +02:00
David Bauer
1aa4ffc514 gluon-config-mode gluon-core: fix incorrect gluon.platform reference
The is_outdoor function is placed inside the gluon.platform module, not
the platform_info module. Currently, the outdoor-mode wizard component
and the upgrade script fail due to nil-value calls.
2019-05-21 13:42:22 +02:00
David Bauer
dca50d2f26 ramips: fix R6120 factory image
The factory firmware omits the JFFS2 end-marker while flashing via
web-interface. Add a 64k padding after the marker fixes this problem.

When the end-marker is not present, OpenWRT won't save the overlayfs
after initial flash.
2019-05-10 11:25:24 +02:00
Matthias Schiffer
7f0299b53d
modules: update Gluon packages
9a364fb8d0a4 respondd: fix crash caused by division by zero
67177de99afc libs/lua-math-polygon: add add math lib for gauss jordan Ponit in Polygon algorithm

Fixes #1717
2019-05-01 16:19:28 +02:00
Martin Weinelt
ad1a1906ab
gluon-core: fix reference to outdoors config site variable 2019-04-29 16:08:10 +02:00
Matthias Schiffer
16a78b4e9e
scripts/check_site.lua: use new format() function to simplify var_error() 2019-04-28 19:17:47 +02:00
Matthias Schiffer
5abddd2976
scripts/check_site.lua: fix array_to_string with non-string/number array elements
Fixes need_one_of() with boolean elements.
2019-04-28 19:16:28 +02:00
Matthias Schiffer
ddb11ddd69
Merge pull request #1329 from mweinelt/outdoor_mode
gluon-core: add outdoor channel support for 5 ghz radios
2019-04-28 18:52:10 +02:00
Martin Weinelt
501c3b38bb add gluon-config-mode-outdoor package
adds a section to the wizard for outdoor capable devices
that informs the user of of the regulatory situation and
allows a quick toggle of the outdoor mode.
2019-04-28 18:19:43 +02:00
Martin Weinelt
e20d5b0a3e gluon-core: allow presetting the outdoor mode for new installations 2019-04-28 18:19:43 +02:00
Martin Weinelt
423aafbd29 gluon-core: improve channel and add chanlist validation 2019-04-28 18:17:40 +02:00
Martin Weinelt
bf55249159 gluon-core: add outdoor support for 5 ghz radios
Add the `wifi5.outdoor_chanlist` site configuration that
allows specifying an outdoor channel range that can be
switched to for regulatory compliance.

Upon enabling the outdoor option the device will
 - configure the `outdoor_chanlist` on all 5 GHz radios
 - which may enable DFS/TPC, based on the regulatory domain
 - disable ibss/mesh on the 5 GHz radio, as DFS *will*
   break mesh connections
 - allow for htmode reconfiguration on 5 GHz radios

The outdoor option can be toggled from
 - Advanced Settings
   - W-LAN
     - Outdoor Installation

The `preserve_channel` flag overrules the outdoor channel
selection.
2019-04-28 18:17:11 +02:00
Martin Weinelt
4f60f6dbc6 gluon-core: disable legacy_rates by default, drop support for supported and basic rates (#1716) 2019-04-28 16:47:29 +02:00
Matthias Schiffer
09916f6e35
gluon-mesh-batman-adv: drop packets from mesh with next-node source or destination address (#1714)
Fixes #1659
2019-04-28 14:56:09 +02:00
bobcanthelpyou
fe521db441 build: add site check for obsolete settings (#1702) 2019-04-28 14:38:08 +02:00
Tata
e81d1a390f Add mechanism to reload domain related services (#1710) 2019-04-23 17:34:49 +02:00
Petr Štetiar
9dc1ac7f58
build: replace hardcoded paths with overridable variables
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-22 22:00:45 +02:00
Matthias Schiffer
1c1ccc3c2f
modules: update Gluon packages
ac0f8ac4b588 batman-adv-legacy: update to latest git

Fixes build for targets using kernel 4.9.
2019-04-22 00:17:27 +02:00
Matthias Schiffer
6412177a45
Refresh openwrt patches 2019-04-21 19:39:27 +02:00
Matthias Schiffer
59a44274cb
gluon-respondd: do not join link-local multicast group on br-client
Fixes #1701
2019-04-21 19:31:32 +02:00
Matthias Schiffer
befc439a61
modules: update Gluon packages
cf3e8d1a080f respondd: exit on unknown command line parameters
0f57108e3d65 respondd: make all internal functions static
593b2c626690 respondd: fix incorrect use of strncpy
31eb441db163 respondd: make delays specific for group and interface
2d89e972d9dd respondd: fix inet_pton() error message
a906d2447fbd respondd: miniz: fix -Wmisleading-indentation warning
42da0795e2dd batman-adv-legacy: update package version number
3dd552288959 batman-adv-legacy: restore Build/Prepare step
df0dd9cd6b49 batman-adv-legacy: update to latest git
2019-04-21 19:30:44 +02:00
Matthias Schiffer
a5614a5019
gluon-neighbour-info: fix outgoing interface for non-link-local multicast addresses 2019-04-21 19:19:02 +02:00
Matthias Schiffer
e9e1e2d18a
gluon-neighbour-info: exit on unknown parameters 2019-04-21 19:19:02 +02:00
Matthias Schiffer
7dec8ebf87
gluon-neighbour-info: fix mixed tab/space indentation 2019-04-21 19:19:02 +02:00
Matthias Schiffer
fc5f93604e
gluon-neighbour-info: fix inet_pton() error message
inet_pton() doesn't set errno on regular parse errors, so using perror()
doesn't make sense (and we avoid a confusing "Success" message).
2019-04-21 19:19:02 +02:00
bobcanthelpyou
aeebcf272c docs: add GLUON_DEBUG 2019-04-21 16:05:57 +02:00
Tata
12b87b2441 ipq40xx: add jalapeno from 8devices (#1706)
Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>
2019-04-19 15:15:00 +02:00
Matthias Schiffer
134a6460a7
build: move hostapd-mini package from generic target to Makefile
By passing the package name through merge_packages, it becomes possible to
override the package choice in GLUON_SITE_PACKAGES again, for example:

	GLUON_SITE_PACKAGES += -hostapd-mini hostapd
2019-04-19 13:53:09 +02:00
Linus Lüssing
8e04679be6 gluon-mesh-batman-adv: add batctl dependency to gluon-mesh-batman-adv-14
The batctl v2013.4 build was removed from the batman-adv-legacy package
as the current, upstream batctl releases work with batman-adv-legacy,
too.

As a replacement we need to add the upstream batctl dependency to
gluon-mesh-batman-adv-14 to have a batctl available again here.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2019-04-16 12:03:20 +02:00
Linus Lüssing
a2bbc125b3 batctl: remove kmod-batman-adv dependency
This always pulls in the batman-adv compat 15 kernel module. However,
batctl works just as well with batman-adv-legacy (compat 14).

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2019-04-16 12:03:20 +02:00
Linus Lüssing
01fd25de42 modules: update Gluon packages
972e67f batman-adv-legacy: remove batctl v2013.4 (#213)
524ae77 tunneldigger: update to newest upstream commit (#216)
2019-04-16 12:03:20 +02:00
bobcanthelpyou
149b55526f gluon.mk: fix reference to LuaSrcDiet binary 2019-04-14 11:21:31 +02:00
bobcanthelpyou
2ce07ae2fe ar71xx: add support for TP-Link TL-WR840N v2 (#1697) 2019-04-12 01:32:11 +02:00
bobcanthelpyou
2c4f022994 build: rename DEVICES to GLUON_DEVICES (#1686) 2019-04-12 01:05:04 +02:00
bobcanthelpyou
078184a59c docs: add notice for opkg repo change (#1693) 2019-04-11 08:54:52 +02:00
Tata
d4c066a0f8 gluon-config-mode-mesh-vpn: 0300-mesh-vpn.lua fix limit_ingress default value (#1682)
in case of default disabled simple-tc for tunneldigger

Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>
2019-04-11 08:50:48 +02:00
Sven Eckelmann
e13a614420 gluon-status-page-mesh-batman-adv: Save if metrics chose neighbor as own best nexthop
The commit a080049735 ("gluon-status-page-mesh-batman-adv: Retrieve TQ of
neighbors with non-best direct link") removed the check whether a neighbor
has the BATADV_ATTR_FLAG_BEST set. But consumers may still want to filter
out or mark neighbors which don't have this flag set. To assist with such a
feature, enhance the neighbor object with an extra boolean "best" attribute
which stores whether the BATADV_ATTR_FLAG_BEST was found or not.

Reported-by: Vincent Wiemann <webmaster@codefetch.de>
2019-04-09 01:31:51 +02:00
Sven Eckelmann
cef21e584a gluon-mesh-batman-adv: Save if metrics chose neighbor as own best nexthop
The commit ee63ed42fe ("gluon-mesh-batman-adv: List neighbors with
non-best direct link") removed the check whether a neighbor has the
BATADV_ATTR_FLAG_BEST set. But consumers may still want to filter out or
mark neighbors which don't have this flag set. To assist with such a
feature, enhance the neighbor object with an extra boolean "best" attribute
which stores whether the BATADV_ATTR_FLAG_BEST was found or not.

Reported-by: Vincent Wiemann <webmaster@codefetch.de>
2019-04-09 01:31:51 +02:00
Sven Eckelmann
d0df47d943 gluon-status-page-mesh-batman-adv: Retrieve TQ of neighbors with non-best direct link
Links between two direct neighbors are not always the best route between
these devices. The flag BATADV_ATTR_FLAG_BEST would not be set for these
originator entries and the respondd module would just ignore this entry.

If these neighbors are not accepted and returned to the status page then
some of the neighbor entries will show a name, (acceptable) signal strength
and mac address but no TQ value.

Fixes: 28668c8c52 ("gluon-status-page: API")
2019-04-09 01:31:51 +02:00
Sven Eckelmann
ec72d30b8f gluon-mesh-batman-adv: List neighbors with non-best direct link
Links between two direct neighbors are not always the best route between
these devices. The flag BATADV_ATTR_FLAG_BEST would not be set for these
originator entries and the respondd module would just ignore this entry.

This causes missing links in meshviewer and similar tools. And when the
link quality is nearly equal and but fluctuates slightly, these links will
from time to time appear and disappear on the map.

Fixes: 2e0e24a992 ("announce neighbours using alfred/gluon-announce")
2019-04-09 01:31:51 +02:00
Vincent Wiemann
deb020d3ef docs: faq: add note for supported hardware (#1665)
A table with hardware supported by Gluon can be found on the OpenWrt Wiki. This commit adds a corresponding FAQ entry.
2019-04-09 00:10:34 +02:00
Martin Weinelt
c919f5fd29
modules: update luci
b99e77d5c remove artifacts from de3be2388393ed28e44d2714c25eee9b9886e820
5248d3719 freifunk profile_berlin: add default section for 802.11s
de3be2388 freifunk-common: add default configuration for 802.11s interfaces
071e540e3 luci-app-attendedsysupgrade: refactor and format
76cf6533d luci-app-attendedsysupgrade: update to new api
30d9bc02b luci-app-nlbwmon: Fixed incorrect period parameter/display
23029f516 treewide: avoid double-escaping CBI section labels
28e852f4e luci-base: dispatcher: support raw values in attr() and ifattr()
a0ae6c97f Merge pull request #2504 from aparcar/openwrt-18.06
ac90b1bc3 luci-app-attendedsysupgrade: fixup error_box
449d5ad6d Merge pull request #2494 from aparcar/18.06-unify
98ae788eb luci-app-attendedsysupgrade: new api, unify status
4c45a5259 luci-mod-rpc: drop "secret" value from rpc session objects
43959e3ab luci-app-lxc: add aarch64 to target map
3ff3b9e86 luci-app-lxc: add i686 to target map Add i686 to target map so i386 container templates are usable.
6f6641d97 luci-base: fix UCI changelog markup mistake
a11f4ac2e treewide: rework uci change display
f1a5b179d luci-base: fix cbi dropdown quirks with MS Edge
1f423b114 Merge pull request #2451 from pmelange/backport/PR2450-luci_mod-freifunk_basics
8fe6f04d6 Merge pull request #2449 from pmelange/backport/PR2448-luci_mod-freifunk_get_all
14456d30f luci-mod-freifunk: fix the list of community profiles
fb9721244 luci-mod-freifunk: replace calls to get_all() with separate get() calls
04d60f214 timezone data: update to 2018i
3dea6b5bc Merge pull request #2355 from pmelange/freifunk_backport_18.06
12534ad03 luci-app-olsr: reenable the "auto refresh" feature
a3bfc596b luci-app-olsr change ccs style to use class "left" instead of "style=text-align: left"
94a1673fc luci-app-olsr: make cosmetic changes.
68fb3b279 community-profiles: change subnet of mesh_network option for Berlin
02bd34be1 get rid of library version numbers in luci olsrd code
e98580b05 community-profiles: create profile for Fürstenwalde
f7e420150 luci-app-olsr: convert olsr.lua and smartgw.htm to new json plugin
bfad30246 luci-app-olsr: convert mid.htm to new json plugin
34d13c0c6 luci-app-olsr: convert interfaces.htm to new json plugin
2dd31c4ff luci-app-olsr: convert olsr.lua and overview.htm to new json plugin
12b0b31bb luci-base: network.lua add ipv6-prefix-assignment support to get_status_by_address
bcfd7cf05 luci-app-olsr: cbi remove library version numbers in library search results
63a72b3bf freifunk profiles: add nameserver 80.67.169.40 from www.fdn.fr/actions/dns
60dfc7348 luci-app-olsr-services: Don't use the nameservice with a specific version.
5e8708345 luci-mod-network: adapt to current 802.11r defaults
3787301e3 applications: drop luci-app-asterisk
44f91bb26 Merge pull request #2278 from sotux/openwrt-18.06
3dc653cd8 i18n: luci-app-uhttpd: add initial Simplified Chinese translation
d6925de33 i18n: luci-base: update Simplified Chinese translation
1fe70f3b4 i18n: luci-app-firewall: update Simplified Chinese translation
8e1579c55 luci-app-adblock: sync translations
59383800e luci-app-travelmate: sync translations
0cfd99cb0 i18n: sync translations
9f94fe3a7 i18n: luci-app-firewall: cleanup multiple definitions in uk/firewall.po
197827ffe i18n: luci-app-addblock: cleanup multiple definitions in zh-cn/adblock.po
01fe78349 i18n: fix german base.po
b3d4b84aa timezone data: update to 2018g
463fb0411  timezone data: update to 2018f
55ebe88f4 luci-app-openvpn: remove obsolete config options
b3cbe89b2 luci-app-openvpn: fix template based config creation
69325c11b timezone data: update to 2018e
9541751f7 luci-app-adblock: sync with adblock 3.5.5
650375611 Merge pull request #2109 from kagurazakakotori/openwrt-18.06
4f4b28b78 luci-app-adblock: fix chinese translation
f64b15234 luci-app-firewall: allow "open ports" when no wan zone exists
f4da0b8cf luci-mod-admin-full: applyreboot doesn't reload page
e0599d506 luci-mod-admin-full: fix broken applyreboot page
f9121fd86 luci-theme-material: fix theme for applyreboot page changes
199eac416 luci-base: mark password template dummy field as hidden
a49e4e4d5 Correct grammar in apply_widget.htm
8bb487332 luci-base: update Chinese translation
8407d90aa luci-base: update Polish translation
5d1d6915c luci-base: update Polish translation
3d5d9dc57 luci-mod-admin-full: Fix DSL Stats display of dB statistics
7d69fa6a5 Merge pull request #2018 from chris5560/18.06-ddns
2da3f93fe Merge pull request #2016 from chris5560/openwrt-18.06
5ec72617e luci-theme-bootstrap: fix CSS regression in kernel/system log pages
9beff0720 luci-app-adblock: "final" fixes
cc4310817 luci-app-travelmate: "final" fixes
e290fe917 fix compilation failure when luasrcdiet is being copied to non existing directory
1983dc615 Merge pull request #2014 from dibdot/travelmate-18.06
d844d5132 Merge pull request #2013 from dibdot/adblock-18.06
7f5b296e3 luci-app-ddns[18.06]: remove myself as PKG_MAINTAINER
b0dce7a68 luci-app-radicale[18.06]: remove myself as PKG_MAINTAINER
56266d070 luci-app-travelmate: backport 1.2.1 to 18.06 branch
bf5dd5837 luci-app-adblock: backport 3.5.4 to 18.06 branch
6df9a57ef luci-theme-openwrt: style tweaks for DSL status display
c26709a85 luci-theme-bootstrap: style tweak for DSL status display
db5bde618 luci-mod-admin-full: rework DSL Status display
d05f442ad luci-mod-admin-full: fix style glitch on packages page
ea0951309 luci-base: fix luasrcdiet
680a6d2ad luci-proto-relay: propagate up state, do not forward netifd errors
520afa4c3 luci-base: fix footer template
7e5331f15 treewide: rework rollback/apply workflow
64e3fe9f6 luci-base: xhr.js: decode JSON for POST requests as well
186228e36 luci-base: utils: support multiple return values in util.ubus()
58bd130a8 luci-mod-admin-full: abbreviate "MAC-Address" as "MAC" to align with rest
198474f69 luci-mod-admin-full: fix wifi overview display when no networks are defined
667f73a42 ff_olsrd_watchdog: delete existing tunnels
df614ffd4 luci-base: strip superfluous space in additional field markup
867fcff8b luci-theme-openwrt: fix button placement quirk
97b3e5773 luci-base: cbi.js: fade to-be-deleted section when hovering delete button
6cf7d11e1 luci-base: cbi.js: use adjacent button dynlist add/remove buttons
d7d15f6c5 luci-base: rework reveal/hide CBI password template button
97e647bb2 luci-theme-bootstrap: add styling for input-adjacent buttons
b8a0b617a luci-theme-openwrt: add styling for input-adjacent buttons
516ce4af7 luci-mod-admin-full: unify "Alias interface" and "Alias Interface" strings
bcb8d8969 luci: do not depend on uhttpd-mod-ubus
024fa3cf3 luci-theme-openwrt: support rendering tblsection cell descriptions
81682971d luci-base: add description annotations to tblsection cells
03b6d77ee luci-base: update Polish translation
ffed0206b luci-proto-ncm: remove unrelated options
a6b2b29dc luci-proto-ncm: add pdptype option
cd72e1d97 Merge pull request #1992 from sotux/openwrt-18.06_zh_CN
7501bf6f5 Merge pull request #1996 from EricLuehrsen/unbound_1806_doc
d6f8ac1a7 luci-base: zh_CN: Update Simplified Chinese translation
ad0d3f503 luci-app-unbound: point documentation to 18.06 branch
14c73faf3 collections: drop nginx support for 18.06
1d32ea9b0 luci-mod-admin-full: fix check for traceroute6
9724d7661 luci-base: fix Russian translation
4c87b8345 luci-app-upnp: update Russian translation
ed4f4644e Update Russian translation
4b267cecf luci-app-simple-adblock: remove extra controller file
968f9dc0a luci-base: update Ukrainian translation
11e9a5503 luci-app-upnp: update Ukrainian translation
18c8e1fe5 luci-app-wol: update Ukrainian translation
c81359898 luci-base: fix bad CSS class names in table section template
39401a761 luci-app-ocserv: remove unneeded br element from template
5b34fbaab luci-app-ocserv: update user status template
5bbf669c8 luci-base: update Japanese translation
da600939f i18n: sync translations
beb9ab2da luci-proto-ncm: add modem default mode
16837a5d0 luci-admin-full: add further wifi options
758c66b9d luci-admin-full: add dnsmasq allservers option
69a4c258f luci-app-simple-adblock: change style of button to important
b9166ca96 luci-app-advanced-reboot: change style of buttons to important
5fc6bc7d9 luci-app-ddns: update and improve Russian translation
d3bfc5d03 luci-base: fix a typo in Russian translation
91238dccc luci-theme-bootstrap: allow pointer events on readonly textareas and dropdowns
5d4c365f1 luci-theme-openwrt: fix another instance of misplaced page action button
8d88802b8 luci-mod-admin-full: use incremental background scanning for wireless join
5ea795a4b luci-theme-openwrt: fixes for page action button placement
fbc02d33a luci-theme-bootstrap: various fixes
0b44d33dd luci-mod-admin-full: properly reset internal device form field
d7c868a05 luci-base: rework CBI footer template
bea5187f3 luci-base: rework tblsection template
24b924bfe luci-base: rework simpleform template
392fd0238 luci-base: cbi.js: add cbi_submit() helper
c0612e820 luci-mod-admin-full: offer "Cancel" button in iface add dialog
94b6aa2a8 luci-base: remove unused icons
53686fd49 luci-base: update and improve Russian translation
0b00ceef0 luci-base: fix Russian translation
984a1afcf luci-app-simple-adblock: new start/stop button, better integration with simple-adblock
a7e1edf93 luci-app-upnp: update Ukrainian translation
8d882e559 luci-base: update Ukrainian translation
b49c62b2e base.po: Update chinese translations.
bf2c25e44 luci-base: fix Russian translation
edbcdef15 luci-base: Avoid block umount on fstab apply
efff0139b luci-base: resync translations
b8b87182f luco-proto-ipv6: allow multiple prefixes for 6in4 and dhcpv6
4da137e89 luci-base: fix field section add button/input field names
911219898 luci-mod-admin-full: fix changing alias interface ifnames
9cc24e6c6 luci-base: fix handling alias interfaces in ifacelist widget
cd8fc0013 luci-base: luci.model.network: recognize alias interfaces
d03537c2d luci-mod-admin-full: improve interface overview display
8a7cd70d4 luci-theme-bootstrap: small style fix for link buttons
98adc98f7 luci-mod-admin-full: fix wifi add and scan actions
f974cfe09 luci-base: update german translation
16aa088ca luci-base: update Polish translation
fb817df83 openwrt-18.06: merge master
b38306dce luci-base: xhr: increase poll request timeout
053682c4c luci-theme-bootstrap: margin fix for multiple wifs on status overview
98f4c3cf5 Merge pull request #1933 from Ansuel/hostname_upnp
524ce90c4 luci-base: resync base translations
aef1c2fca luci-mod-admin-full: differentiate between disabled and not associated wireless
4115f8cc5 luci-app-advanced-reboot: fix translation string
4381a27ef luci-theme-material: table and button style fixes
58cee7986 luci-theme-openwrt: cleanup CSS
887d0a685 luci-theme-bootstrap: cleanup CSS
4f0dfb6ab luci-mod-admin-full: tweak interface and wireless overview markup
572210500 luci-app-upnp: tweak table markup
22e4a2420 luci-base: tweak tblsection markup
777ffa948 luci-mod-admin-full: small wifi overview markup fix
a0e5e8a9d luci-theme-bootstrap: compress color names, fix table striping
b7bf164fe luci-mod-admin-full: produce valid JSON in status/realtime/connections_status
401898a43 luci-proto-qmi: register further network error codes
5f2aa8d47 luci-proto-ncm: register further network error codes
80ed1af63 luci-proto-ipv6: register further network error codes
85bc16605 luci-base: add icons for alias interfaces
c4dca3679 luci-mod-admin-full: rework interface overview page
54c9a77bd luci-mod-admin-full: expose errors, description and up state in net status
94be4881a luci-base: add error reporting and basic support for dynamic interfaces
be2b83c9f luci-mod-admin-full: reimplement wireless overview page as cbi model
d4e52ca03 luci-base: apply_widget: various fixes
674b090d3 luci-base: xhr.js: use JSON.parse() and pass request duration to callbacks
0d96655f8 luci-theme-openwrt: consolidate font sizes and button styles
6f773999a luci-mod-admin-full: improve text contrast in realtime graphs
6d5d1473c Merge pull request #1945 from stangri/luci-app-advanced-reboot
3c332e456 luci-app-advanced-reboot: support for Linksys WRT32X
36b6d9874 Merge pull request #1937 from LuKePicci/luci-proto-ppp_pppoe_host-uniq
265b0ebbd luci-proto-ppp: expose pppoe host_uniq tag setting
4a083f6d2 luci-base: fix placement of CBI strings
9651be295 luci-theme-material: table layout fixes and minor CSS corrections
994531ea2 luci-app-adblock: align blocklist markup with recent changes
8e1011884 luci-mod-admin-full: rework connection status table handling
6cda8e6da luci-base: cbi.js: avoid setting empty cell title attributes
690f3f13a luci-theme-bootstrap: add CSS fixes for IE 11
bf084f7f9 luci-theme-openwrt: add CSS fixes for IE 11
260d2cc44 luci-base: cbi.js: add NodeList.forEach() polyfill for IE 11
c0de036b3 treewide: always include cbi.js
069c0c93e luci-mod-admin-full: use sans-serif fonts for realtime graph legends
7c404d72e luci-mod-admin-full: small markup fixes for placeholder texts
ecedfe5dc luci-mod-admin-full: style and script fixes for realtime bandwidth graph
bce7543d8 Merge pull request #1944 from rwalli/patch-1
140f41b40 Add description
d35be37b8 Merge pull request #1871 from felixonmars/patch-1
e617902c9 Merge pull request #1942 from Rixerx/master
4b8e0f834 luci-base: update Polish translation
711d1036c Merge pull request #1941 from musashino205/l10n/base-upd-ja
057c71a67 luci-base: update Japanese translation
885f99359 Merge pull request #1939 from Ansuel/luci-nginx
639bbc182 luci-nginx: fix nginx dependency
26d90f0c1 luci-base: update Ukrainian translation
84f86ad7b base.po: Update chinese translations.
e8a9a6695 luci-theme-bootstrap: minor style fixes
04bec5695 luci-base: resync translations
e489a82ac luci-mod-admin-full: rework flashops page markup
afd14fb9c luci-app-upnp: add hostname info
50b88a435 luci-mod-admin-full: fix flashops url generation for config tab
65ba4b8b8 luci-mod-admin-full: check backup.tar.gz on apply
ddbde3caa luci-mod-admin-full: improve reboot page
cde13dc24 Revert "luci-lib-json: depend on luci-base"
8ca29efec luci-lib-json: depend on luci-base
7b43e6721 luci-mod-admin-full: improve Y-axis scaling in bandwidth graph
9f2672f2c Merge pull request #1929 from pleasantone/mwan3_interface_aliases
b0486ab5d luci-app-mwan3: fix aliased interfaces (@wan6)
1510111fa Merge pull request #1925 from YuriPet/master
4097a6333 luci-mod-admin-full: fix uci revert success message
04e483d16 luci-theme-openwrt: minor mobile style fixes
2ee1873ac luci-theme-openwrt: add further style tweaks
30eaba02f luci-mod-admin-full: cleanup markup on flashops page
b693baaa6 luci-mod-admin-full: rework wireless network status indicator
3aba61502 luci-base: rework "in request" flagging logic for menu nodes
d0298e4cd luci-base: update Ukrainian translation
1455ab657 luci-app-firewall: update Ukrainian translation
2e2dab3e5 Merge pull request #1924 from dibdot/lxc_fix
1f2d40b50 luci-app-lxc: add backingstore support
3699509ed Merge pull request #1921 from musashino205/l10n/fw-upd-ja
1fd3a1663 Merge pull request #1920 from dibdot/lxc_fix
b198de11b luci-app-lxc: small fixes & cosmetics
ad08b5657 luci-app-firewall: update Japanese translation
ca0a086a2 i18n: sync translations
1a36f0307 Merge pull request #1902 from panda-mute/patch-1
532846c3d luci-theme-bootstrap: fix input width in table cells
485e5c930 luci-app-upnp: cleanup UPnP lease status markup
c405b23ab luci-mod-admin-full: unify DHCP lease status code
c61c5deac luci-base: luci.tools.status: add host_hints to DHCPv6 leases
ccbb17d26 Merge pull request #1915 from Ansuel/upgrade
b5d5e5bf1 luci-base: update luasrcdiet
167d37130 luci-theme-material: fix switch status display
8d7869f67 luci-mod-admin-full: properly remap ports in switch status display
60c5d15e9 luci-mod-admin-full: fix possible switch status layout bug
2efcc53f2 luci-theme-openwrt: add some compatibility styles
62f5c22f8 Merge pull request #1912 from Ansuel/fixassoci
c32097d7d luci-theme-freifunk-generic: fix & modernize
5818a90df luci-mod-admin-full: fix missing wifi_assoclist
0d9a64b3b Merge pull request #1881 from TDT-AG/pr/20180614-luci-mod-admin-full-fix-ssh-key-textarea
6ff7f34ee luci-mod-admin-full: report SNR unit as dB, not dBm
1b0165645 Merge pull request #1906 from ldir-EDB0/typofix
002c4d1d5 luci-base: add "Name" label to autogenerated title column
211d8bc55 luci-theme-bootstrap: render tblsection row titles
18d92aca5 luci-base: annotate tblsection description row as well
e3d02b1a4 luci-theme-bootstrap: remove unused styles
b79982e5d luci-mod-admin-full: fix average traffic calculation in realtime bandwidth
ff55e7f6b luci-mod-admin-full: fix initializing realtime graphs
e5ba594d7 luci-base, luci-mod-admin-full: unify wifi assoclist code
86c6c60a0 luci-mod-admin-full: replace status page legend tags with h3 (#1907)
483c9d35b Merge pull request #1895 from jow-/master
7cf8f9718 luci-app-rp-pppoe: Fix typo
c7ee1ffcf luci-app-shadowsocks-libev: cleanup section add markup
b4d78d204 luci-mod-admin-full: packages: display available packages by default
db4139b14 luci-app-travelmate: consolidate markup
ce8101ae7 luci-app-upnp: rework lease status indicator
e097d3f73 luci-app-firewall: cleanup template markup
bbf096c79 luci-mod-admin-full: cleanup markup
c4e25bebf luci-theme-material: align CSS with markup changes
b453624dc luci-theme-bootstrap: align CSS with markup changes
f714f684f luci-theme-openwrt: rework and polish OpenWrt theme
d0b91bcca luci-base: globally cleanup markup
a65d55ebc Merge pull request #1905 from ldir-EDB0/bcp38
65cfbd8f7 luci-app-bcp38: improve interface selection dropdown
c4bd6fb7b luci-base: cbi.js: add tooltip handling and responsive table helper code
5142e40f9 luci-app-firewall: update cbi models
69782ccbc luci-base: xhr.js: defer starting poll queue
d024d73da Update 40_luci-transmission
e380cf51f Merge pull request #1894 from YuriPet/patch-2
1dcf85b78 luci-app-firewall: update Ukrainian translation
6cc547fdc Merge pull request #1891 from YuriPet/master
a72c19751 Merge pull request #1892 from musashino205/l10n/fw-upd-ja
88f03a614 luci-app-firewall: update Japanese translation
7001e8f3b luci-app-firewall: sync translations
fef02b31e luci-base: update Ukrainian translation
83dc5e075 luci-app-firewall: update Ukrainian translation
de62263f7 luci-app-upnp: update Ukrainian translation
86ed5ab65 luci.mk: Correcting native name Ukrainian language.
52de52e3e Merge pull request #1889 from Ansuel/lucnginx
0a6ad23f2 luci-nginx: add nginx support file
24fb85205 Merge pull request #1886 from musashino205/l10n/fix-syntax-uk
fe591dd1c i18n: fix syntax errors in Ukrainian po
0251603f0 luci-mod-admin-full: fix empty SSH-Keys issue
b5a43cf87 Merge pull request #1862 from Ansuel/lucidep
8798bb22b Merge pull request #1879 from sotux/master_zh_CN
934e954a7 luci-app-firewall: zh_CN: change better translation for offloading
90bf08af8 luci-nginx: add nginx metapackages
9abf409a3 Merge pull request #1877 from Ansuel/ddnsipkg
5d1605ecc Merge pull request #1876 from ldir-EDB0/wgurl
492d4d91b luci-app-ddns: use standard pkg info function
8f6701971 wireguard: update wireguard url
d3aa12b8e luci-app-firewall: Fix typo in forwards redirect
8363d0ad6 Merge pull request #1875 from YuriPet/master
658d11e75 luci-app-firewall: disable port fields when protocol is not TCP or UDP
cebe38dcf luci-app-firewall: update Ukrainian translation
0c410c848 luci-base: update Ukrainian translation
8a4c3a01b Merge pull request #1874 from Rixerx/master
ad5f768c4 luci-base: update Polish translation
fad02ac8d Merge pull request #1868 from sotux/master-zh_CN
966e86cd0 luci-app-adblock: update Simplified Chinese translation
bfcf2189f luci-app-mwan3: update Simplified Chinese translation
434d8baff Fix a typo in vizdata.sh
2eb4015e1 luci-app-firewall: recognize egress rules in rule overview
e7866c7dc luci-mod-admin-full: add suggested italian translations
588c8618b luci-mod-admin-full: fix translation interpolation in JS confirm() calls
0e0ee2fed luci-mod-admin-full: git rid of embedded newlines in translation strings
2e7fa89e1 luci-base: update Simplified Chinese translation
81c66069c Merge pull request #1867 from dibdot/adblock
45c2059c1 luci-app-adblock: partly revert last commit
74be6f397 treewide: switch firewall zone, network and iface lists to dropdown code
9d4849072 luci-base: add markup, JS and CSS for new dropdown
4cca96ef0 luci-base: support option aliases in luci.cbi
501f1a900 Merge pull request #1863 from dibdot/adblock
71d296f7c Merge pull request #1864 from Ansuel/master
b46e8c5a6 luci-app-ddns: fix div conversion
53ea80391 Merge pull request #1854 from jollaman999/master
a561d3045 luci-app-adblock: sync with adblock 3.5.3
7be3f0400 luci-base: fix some minor luci.model.uci issues
2d410379c luci-app-ddns: Convert HTML tables to div
4cd08258b Merge pull request #1835 from Ansuel/ddns-optional
09c3a8385 luci-app-ddns: make param opt, optional, add myself as maintainer
1ce88dced Merge pull request #1851 from dibdot/lxc_fix
2b43ebe92 luci-app-lxc: made container creation more reliable
2d352a925 luci-base: cbi: atomically reorder uci sections
660e4f550 Merge pull request #1819 from Ansuel/ddns-performance
299121fc8 luci-app-ddns: improve performance
18b5b068c Merge pull request #1846 from musashino205/l10n/base-upd-ja
c4559052c Merge pull request #1847 from dibdot/lxc_fix
babcc14c7 luci-app-lxc: bugfix
f28784b61 luci-base: update Japanese translation
2d196614f luci-base: sync translations
fed315a5e themes: drop errorbox styles
a64ab077d luci-mod-freifunk: use common alert message markup
29b391d7b luci-base: use common alert message markup
724cc2997 luci-mod-admin-full: use common alert message markup
e3bc12da6 themes: unify no-password / no-javascript alert boxes
298d164dd luci-base: update coxpcall() implementation, fix runtime error reporting
79d793dff themes: adjust CSS for reworked apply widget
542739564 luci-base: add full page overlay during apply
5452cc214 Merge pull request #1845 from dibdot/lxc_fix
7bd1bcaf3 luci-mod-admin-full: fix status page render glitch on Chrome
d8f2f24a5 luci-app-lxc: fix "plain-vanilla" integration, part 3
c3da1fc23 luci-base: cbi.js: remove unused serialize functions
d1df5a6b7 luci-base: cbi.js: fix cbi_row_swap() after recent table markup changes
0d2ae8d65 luci-mod-admin-full: rework network and wifi status displays
879f90d15 luci-theme-material: add new style classes
7875d92c4 luci-theme-bootstrap: add new style classes
f8221b982 luci-theme-openwrt: add new style classes
f0094cc06 luci-mod-admin-full: fix revert page
796d68744 Merge pull request #1839 from EricLuehrsen/unbound_defdoc
d0757f1f4 luci-app-unbound: add root zone file cache option
60ea5dc53 luci-app-unbound: provide transparent defaults with documentation
f6aec9fe2 luci-proto-3g: make it a self-contained package
a013967e6 Merge pull request #1822 from Ansuel/luci-cpuinfo
b8f32b6da luci-admin-full: add architecture info
5e37b724c Merge pull request #1827 from Ansuel/luci-map
067d7dc9f treewide: convert HTML tables to div
79c82237e luci-base: add element creation helper to cbi.js
97a640c83 themes: add forward-compatibility CSS
fb70693b7 Merge pull request #1836 from sotux/master-zh_CN-translation
c69bbd194 luci-app-firewall: zh_CN: update Simplified Chinese translation
402ad57e5 shadowsocks-libev: fix enumerating server and ss_redir sections
6f630b5e6 Merge pull request #1834 from Ansuel/fixpo
c29ffe4df luci-base: fix broken translation
31dfa80d4 Merge pull request #1828 from dibdot/lxc_fix
d9b6c5dd7 luci-app-lxc: fix "plain-vanilla" integration, part 2
247754431 Merge pull request #1833 from ysoyipek/patch-3
2d053d39d Update base.po
c0fc86114 Merge pull request #1832 from musashino205/l10n/fw-upd-ja
a3be23499 luci-app-firewall: update Japanese translation
b4d484e37 luci-app-firewall: sync translations
aadc1f79c Merge pull request #1826 from hnyman/offload
be6dff8f2 Merge pull request #1829 from musashino205/l10n/mwan3-upd-ja
e050337c5 luci-app-mwan3: update Japanese translation
177224c14 luci-app-firewall: expose flow offloading options
2f0c07a2c luci-theme-material: upgrade jquery
9de9a71a9 i18n: one more fix for Polish translation
36654b7f4 i18n: sync, fix and cleanup translations
67ba105de Merge pull request #1821 from TDT-AG/pr/20180521-protocols-remove-aiccu
9e3fb2c58 luci-proto-ipv6: remove outdated aiccu proto support
c181699bf Merge pull request #1481 from TDT-AG/luci-app-openvpn-fixes
59d91d8a7 Merge pull request #1818 from dibdot/lxc_fix
e9fa69df1 luci-app-lxc: remove wrong leftover from last commit
77d957c39 Merge pull request #1817 from dibdot/travelmate
85342e2c0 luci-app-travelmate: fix url ampersand encoding
1b2cd8d1c Merge pull request #1808 from dibdot/lxc_fix
fa4dc6be9 luci-app-lxc: fix "plain-vanilla" integration
7acacf2cf Merge pull request #1814 from Ansuel/lua-interpreter
da1e65529 luci-base: fix dispacher fail
bc8e92863 Merge pull request #1810 from musashino205/l10n/tmate-upd-ja
af19588b9 luci-app-travelmate: update Japanese translation
4b27ad002 Merge pull request #1809 from musashino205/l10n/adblk-upd-ja
d3c1951cb luci-app-adblock: update Japanese translation
ba8e7fd7b Merge pull request #1805 from musashino205/l10n/base-upd-ja
b01471b1f luci-base: update Japanese translation
b1fd056fa i18n: sync translations
37a4a1c07 luci-mod-admin-full: fix crash on wireless when no networks are declared
fdbb417ab luci-mod-admin-full: do not override iface section in wireless cbi map
64da34b13 luci-base: handle potential crash in luci.model.network.interface.get_i18n()
9ed48ef2a luci-base: break circular luci.config <> luci.model.uci dependency
72fe5dd70 Merge pull request #1801 from dibdot/adblock
840f45ecc luci-app-adblock: respect SimpleForm size limit
09de5a74e luci-lib-json: support serializing userdata
364c271a8 luci-mod-rpc: fix unresolved controller reference in rpc_auth()
828202ef5 Merge pull request #1769 from jow-/master
80cb4fef8 luci-base: raise maximum POST value size to 100KB
27b7e4318 lucihttp: update to latest HEAD
521554f4a Merge pull request #1748 from hnyman/wifidata
7b684361c Merge pull request #1793 from TDT-AG/pr/20180514-luci-app-ddns-fix-output
7a9957e72 luci-app-ddns: fix HTML page rendering in globals section
47971d220 Merge pull request #1797 from Rixerx/master
452c161ac Merge pull request #1796 from TDT-AG/pr/20180515-luci-app-mwan3-add-param
3782e74cf luci-base: update Polish translation
9a93359d4 luci-app-mwan3: add quality check options
2c6faaecd luci-app-mwan3: add dependecy to size option
9f796fad3 luci-base: add transitional /etc/init.d/ucitrack
fd1ddcc41 luci-mod-admin-full: rework wifi configuration
8deb94955 treewide: rework uci apply workflow
7cca31395 luci-base: enable uci session isolation
4edc9256f luci-base: show wifi chip identification on overview
e88a95ca2 luci-app-openvpn: run '/etc/init.d/openvpn reload' after commit
7c643558a luci-app-openvpn: fix validity check for new instance input field
bab9c12e2 luci-app-openvpn: use initscript to stop instances
2019-04-05 01:40:52 +02:00
Martin Weinelt
b6c4e06b40
modules: update routing
e5fe4b6 Merge pull request #462 from ecsv/batadv-18.06
ee2d981 batman-adv: Merge bugfixes from 2019.1
4d7a182 nodogsplash: fix invalid pointer bug when clock is turned back (#456)
2ad165c Merge pull request #452 from dangowrt/openwrt-18.06
71f9aae luci-app-bmx7: update to v0.1-alpha
0e3d701 bmx7: update to git snapshot as of 2018-12-29
42af835 batman-adv: Refresh patches
2019-04-05 01:39:37 +02:00
Martin Weinelt
23cc093bd0
modules: update packages
b7bcf24a0 znc: backport CVE fixes to 1.6
f91539e92 Merge pull request #7807 from D-Albers/openwrt-18.06
550de2331 Merge pull request #8449 from micmac1/ssh2-1806-181
16fcd6d38 mosquitto: bump to v1.5.8
1a23db5b2 php7: Add PKG_CPE_ID for proper CVE tracking
7aacf2423 php7: update to 7.2.16
27433fc3e php7: fix cross compiling patch (fixes #8166)
00f6119bd php7: update to 7.2.15
ef57201aa php7: update to 7.2.14
e9271cf27 php7: update to 7.2.13
1308ba92c php7: update to 7.2.12
9e330d6e9 php7: update to 7.2.11
5e25be535 php7: update to 7.2.10
85c616557 php7: adjust load priority for openssl (fixes #6893)
31d279c96 nano: update to 4.0
59aa52ccd libssh2: version bump/CVE fixes
e47fe43ea Jinja2: Update to 2.10
8d7e62d95 ruby: update to 2.5.5
17a0279dd ruby: fix build for uclibc
017b74d35 vpnc: fix IPv6-triggered inoperability
563aafcee postgresql: Revert adding build dependency to zlib/host
3323ebddf Merge pull request #8403 from BKPepe/transmission_openwrt-18.06
c0293cd99 Merge pull request #8402 from BKPepe/netdata_openwrt-18.06
9bb4bcc9b Merge pull request #8395 from EricLuehrsen/unbound_191_1806
d444a910f transmission: update to version 2.94
99c3670bb Netdata: update to version 1.12.2
1e347beb3 libtalloc: Merge 2.1.14 from master (remove libbsd dependency)
a476bf8d0 unbound: update to 1.9.1
060e59a28 Merge pull request #8386 from wvdakker/openwrt-18.06
86efe678a Shorewall6: Bump to 5.2.0.5.
9cdc22eef Shorewall: Bump to 5.2.0.5.
3669215b2 Shorewall6-lite: Bump to 5.2.0.5.
762093fe7 Shorewall-lite: Bump to 5.2.0.5.
1a97a8444 Shorewall-core: Bump to 5.2.0.5.
121072523 postgresql: add HOST_BUILD_DEPENDS:=zlib/host
daef6665b gnurl: update to version 7.64.0
5fff80472 libgabe: add package
cb253649a libpbc: add new package
f03acaa39 Merge pull request #8346 from Cynerd/jinja2-missing-dep-18.06
2324d341e Jinja2: add missing dependency on markupsafe
0ba0e0d1b gnunet: revert accidentally applied libmicrohttpd changes
799c409d3 gnunet-secushare: add package (replacing gnunet-social package)
d70e35ba1 gnunet: GNUnet v0.11.0 release
799f553b2 postgresql: update to version 9.6.12
257dfbb55 libextractor: update to version 1.9
6c2266acf gnurl: update to version 7.63.0
3e6d392e0 openvswitch: bump to version 2.8.5
931070c26 jool: Backport two fixes for newer kernels.
2019-04-05 01:38:30 +02:00
Martin Weinelt
e79fce2c6d
modules: update OpenWrt
ca8b4d684b kernel: bump 4.14 to 4.14.109
1ff4cd1ff1 kernel: bump 4.9 to 4.9.166
22a3e65662 kernel: bump 4.14 to 4.14.108
dac25a5f22 kernel: bump 4.9 to 4.9.165
6c3ca1d1ea kernel: bump 4.14 to 4.14.107
dcdf50956f kernel: bump 4.9 to 4.9.164
4336cfda12 ramips: allow packets with ttl=0
13eb73b278 mt76: update to latest openwrt-18.06 branch
0a637c7f87 kernel: bump 4.14 to 4.14.106
24f32072d2 kernel: bump 4.9 to 4.9.163
dcfca830a8 ipq40xx: copy Fritz4040 UBoot to STAGING_DIR_IMAGE
400601f0e3 tools/libelf: Add mirrors as main site is dead
f87a1874ef mt76: update to latest openwrt-18.06 branch
9f2cbcad6d busybox: add missing install dir
4918fe0291 kernel: bump 4.14 to 4.14.105
2b9d2f6624 kernel: bump 4.9 to 4.9.162

Build-tested: ar71xx-generci, ramips-mt7621
Runtime-tested: ramips-mt7621 (D-Link DIR-860L B1)
2019-04-05 01:35:46 +02:00
bobcanthelpyou
ff7aeafad2 docs: fix typos and small text improvements 2019-04-02 02:32:50 +02:00
Andreas Ziegler
b5b2a2176b ar71xx: remove redundancy from 2 target specifications 2019-03-31 17:45:24 +02:00
Manu.WTF
3b0e5fab71 ramips-mt7620: add support for Xiaomi MiWifi Mini (#1638) 2019-03-29 12:43:05 +01:00
David Bauer
a9a4abb637 ipq806x: add support for NETGEAR R7800 (#1669)
The device is broken until the next release. The LEDs are currently not
working (fixed in current OpenWRT master).

Also give a brief explanation about the BROKEN status being dependent on
the WiFi chip used and not the SoC family in general.
2019-03-28 14:49:17 +01:00
bobcanthelpyou
dca5abaa26 docs: rename target sunxi to sunxi-cortexa7
renamed by 210d97c53e
2019-03-26 00:34:34 +01:00
bobcanthelpyou
7d314821a8 docs: remove target ipq806x
was marked as broken by #1526 cause of #1505
2019-03-26 00:34:34 +01:00
bobcanthelpyou
cae79eb074 docs: add new <%| tag for escaped expressions (#1683)
the tag was added by dd23a805c2
2019-03-23 18:37:49 +01:00
Matthias Schiffer
c208fc4fd9
gluon-site: add better error message for domain name conflicts
When two domains alias the same name (or one aliases another), display a
meaningful error message like:

    Failed to alias domain 'foo' as 'bar', name already taken by
    domain 'baz'.
2019-03-22 20:15:25 +01:00
bobcanthelpyou
3b55cbc1f3 gluon-web: fix typos 2019-03-18 21:49:54 +01:00
Sven Eckelmann
b850fff7e4 gluon-mesh-batman-adv: Only use local TT to count non-wifi clients (#1676)
The amount of local wifi clients is currently counted by two different
ways:

* asking the kernel wifi layer for the number of of clients on 2.4GHz and
  5GHz band
* asking batman-adv for the number of non-timed out entries in the local
  translation table with WiFi flag

The number of wifi24+wifi5 and the number of TT wifi client counts are
reported via respondd to various consumers. The ffrgb meshviewer is
displaying these values as:

* 2,4 GHz: wifi24
* 5 GHz: wifi5
* other: (TT local wifi+non-wifi clients) - (wifi24 + wifi5)

But the local translation table is holding entries much longer than the
wifi layer. It can therefore easily happen that a wifi client disappears in
the kernel wifi layer and batman-adv still has the entry stored in the
local TT.

The ffrgb meshviewer would then show this count in the category "other".
This often results in confusions because "other" is usually for ethernet
clients. And nodes with a frequently disappearing larger group of clients
(near bus stations or larger intersections) often show most clients under
the group "other" even when this devices doesn't have a LAN ethernet port.

It is better for presentation to calculate the number of total wifi clients
by summing up wifi24 + wifi5. And getting the number of total clients (non
wifi + wifi) by adding the result of the previous calculation to the sum of
non-wifi client in the local batman-adv translation table.

Fixes: 89a9d8138c ("gluon-mesh-batman-adv-core: Announce client count by frequency")
Reported-by: Pascal Wettin <p.wettin@gmx.de>
2019-03-16 13:37:49 +01:00
Manu.WTF
917d6af299 ar71xx: add support for D-Link DAP-1330 (#1672) 2019-03-15 23:35:35 +01:00
Martin Weinelt
fe9892d96a
docs: add v2018.2.1 release notes 2019-03-15 22:53:01 +01:00
Martin Weinelt
ce8cf1b900
ramips-mt76x8: fix image name for wr841n v13 2019-03-14 04:58:19 +01:00
bobcanthelpyou
170c494f40 docs: fix typos and common misspellings (#1668) 2019-03-10 20:15:25 +01:00
bobcanthelpyou
e8b37b2d7c docs: remove unavailable devices (#1667)
- A Picostation M5 never existed
- TL-WR710N v1 and v2.1 are part of ar71xx-generic not ar71xx-tiny
2019-03-10 02:52:34 +01:00
Martin Weinelt
6e1a834bbc patches/openwrt: refresh 0006-generic-vxlan-backport-support-for-VXLAN-over-link-local-IPv6-to-4.9.patch (#1663) 2019-03-09 11:06:15 +01:00
Martin Weinelt
2086bed7cc modules: update OpenWrt
8de93ce745 mt76: update to the latest version
85cb473f93 mac80211: add a fix to prevent unsafe queue wake calls during restart
08db9397c9 mac80211: backport tx queue start/stop fix
810ee3b84a kernel: bump 4.14 to 4.14.104
5183df0dbf kernel: bump 4.9 to 4.9.161
eea538204b kernel: fix refcnt leak in LED netdev trigger on interface rename
f1803e3492 oxnas: add SoC restart driver for reboot
1bfe1ce5c4 oxnas: cheery-pick DTS improvements from master
9ee8c8daf4 kernel: bump 4.14 to 4.14.103
e2ba7a4b47 kernel: bump 4.9 to 4.9.160

Compile-tested: ramips-mt7621, ar71xx-generic
2019-03-07 22:40:47 +01:00
Sven Eckelmann
b2f249e995 ath10k/ath10k-ct: fix incorrect multicast/broadcast rate setting
If no mcast_rate is set for the wifi-iface then there is no rate_idx (0)
set for the bss. This breaks for example 5GHz meshpoint interfaces because
0 maps to a CCK rate (11Mbit/s).

It must also be avoided that the ath10k-ct internal state for the rates is
not synced with the mac80211 rates state. Otherwise, the user specified
rate (e.g. a wifi-iface mcast_rate for a meshpoint interface) will only be
set on startup. And a short while after that, ath10k-ct specific code in
ath10k_check_apply_special_rates is missing a valid rate in its own
structures and is then recalculating a new default rate. This default rate
is in most situations not the requested rate.

Fixes: a399b60735 ("ath10k/ath10k-ct: support multicast and management rate control")
2019-02-26 15:16:37 +01:00
bobcanthelpyou
dcf5f192a0 gluon-web-node-role: Update i18n role translation (#1655) 2019-02-25 21:24:08 +01:00
Martin Weinelt
36cdd2723e
modules: update packages
5de163d67 vallumd: bump to 0.1.4
b8c2c2b1b mosquitto: update to 1.5.7
8a2d56684 irssi: update to 1.2.0
d0f5ae180 [18.06] python3: fix [CVE-2018-20406]
dad217d34 shadowsocks-libev: flush ss rules on entry
bbc2e68ed mosquitto: bump to 1.5.6
9ffcfea19 mariadb: bump to 10.1.38
09b794ecc stubby: update to version 0.2.4
41c4f82f8 stubby: Remove iamperson347 from maintainer
2cf2210d8 stubby: add Jonathan Underwood as co-maintainer (#7307)
709a73604 stubby: add reload_config to documentation
aa8380721 stubby: fix loading of config file
6e2451dd0 stubby: add uci support to init file
7a2b9df89 stubby: bump PKG_RELEASE
304596d21 stubby: remove unnecessary core limit
fd8505f76 stubby: add SPKI pin set for Cloudflare cert
b77053d35 stubby: add Cloudflare 1.0.0.1 and ::1001 servers
3f17c54f2 stubby: use EDNS client-subnet privacy by default
935126632 stubby: fix config file definition
d3b090a31 stubby: rearrange Makefile for clarity
a3a73ef7b stubby: add missing dependency on ca-certificates
ccf0c71ac getdns: update to version 1.5.0
07e647645 getdns: Remove iamperson347 from maintainer
ca7555e52 getdns: fix missing libbsd dependency
cc8439566 acme: Fix loading credentials
fb3dd71ef youtube-dl: update to version 2019.01.30.1
4368783e9 python-idna: Add missing dependency on python(3)-codecs
480e4d7e8 python/python3: Fix lib2to3 fixes search
02dd97d14 libsndfile: update to 42132c543358cee9f7c3e9e9b15bb6c1063a608e
34dec8190 python3: backport CVE-2018-14647 patch from upstream [18.06]
3785db429 python: backport CVE-2018-14647 patches from upstream [18.06]
8f41fa7f8 nut: Default to run as root but fix alt runas
f7048b725 libsndfile: update to 8ddc442d539ca775d80cdbc7af17a718634a743f a/ulaw: fix multiple buffer overflows
e3f32b75b python/python3: fix .dist-info missing for setuptools and pip

Compile-tested: ramips-mt7621, ar71xx-generic
2019-02-25 14:47:12 +01:00
Martin Weinelt
9741bdfad6
modules: update OpenWrt
1be6ff6dc0 kernel: bump 4.14 to 4.14.102
e9cb40caa4 kernel: bump 4.9 to 4.9.159
d32bbd7477 mac80211: brcmfmac: backport 5.0 & 5.1 important changes/fixes
ce3a53c4f6 dnsmasq: prefer localuse over resolvfile guesswork
87fb8aea87 dnsmasq: allow using dnsmasq as the sole resolver
405840631c build: Accept BIN_DIR parameter for legacy-images
bc3eb970ab ar71xx: Fix 5 GHz MAC address for Archer C60 v2
20f1b7d3f5 kernel: bump 4.14 4.14.101
d669be4654 kernel: bump 4.9 to 4.9.158

Compile-tested: ramips-mt7621, ar71xx-generic
Runtime-tested: ramips-mt7621 (D-Link DIR860L B1)
2019-02-25 14:44:01 +01:00
David Bauer
f52bd99e71 gluon-mesh-batman-adv: use libnl-tiny to get IPv6 addresses (#1616) 2019-02-17 19:53:24 +01:00
bobcanthelpyou
5cdb6e86c7 package: update urls to https 2019-02-16 19:25:49 +01:00
bobcanthelpyou
8549438063 docs: update links (moved permanently) 2019-02-16 19:25:49 +01:00
bobcanthelpyou
122e9e90cc contrib: update ECDSA utils link 2019-02-16 19:25:49 +01:00
Martin Weinelt
b8ff310631
docs: link gluon-scheduled-domain-switch in nav 2019-02-16 16:50:30 +01:00
David Bauer
5b97b07f6a ramips-mt76x8: add support for Netgear R6120 (#1650) 2019-02-16 14:41:48 +01:00
Martin Weinelt
b8cc35a1b1
modules: update OpenWrt
62feabecd8 kernel: bump 4.14 to 4.14.99
9fb3710a8b kernel: bump 4.9 to 4.9.156
e5ace80759 mt76: update to the latest version
fbb2186fbd kernel: bump 4.14 to 4.14.98
72870cc108 kernel: bump 4.9 to 4.9.155
19a6c4b2b3 mac80211: brcmfmac: fix a possible NULL pointer dereference
d997712c71 ath9k: register GPIO chip for OF targets

Compile-tested: ipq40xx, ramips-mt7621
Runtime-tested: none
2019-02-16 01:38:54 +01:00
David Bauer
c1b9ea2d9c gluon-scheduled-domain-switch: add package (#1555)
This package allows to automatically switch to another domain, either
at a given point in time or after the node was offline long enough.
2019-02-12 11:00:29 +01:00
Martin Weinelt
131548580e Revert "docs: multidomain: add missing uci commit in gluon-reconfigure example"
This reverts commit b92e404437.

Committing in this case is unnecessary as that job is already handled by 998-commit
which is in a superior position to commit, as it is run after all relevant changes to
the configuration have been made.
2019-02-11 23:53:55 +01:00
David Bauer
387a9b4fe4 gluon-core: assert WiFi driver provides 4 MAC-addresses (#1626)
Gluon has multiple ways to obtain unique MAC-addresses. They are either
provided by the WiFi driver or derived from the primary MAC-address.

Quoting the same file:

> It's necessary that the first 45 bits of the MAC address don't
> vary on a single hardware interface, since some chips are using
> a hardware MAC filter. (e.g 'rt305x')

This currently fails in case the rt35xx based chips mac address differs
from the primary MAC. In this case, the MAC address for the client0 radio
(vif 1) comes from the WiFi driver. As there is only a single
MAC-address provided by '/sys/class/ieee80211/phyX/addresses' but the
MAC-address for mesh 0 (vif 2) is derived from the Node-ID, resulting in
different first 45 bits. The WiFi won't come up altogether in this case.

This commit verifies at least 4 MAC-Addresses are provided by the WiFi
driver. If this is not the case, all MAC-addresses are derived from the
primary MAC. This way, affected radios are working correctly.
2019-02-11 21:22:46 +01:00
Julian Labus
b92e404437 docs: multidomain: add missing uci commit in gluon-reconfigure example 2019-02-11 16:06:23 +01:00
Sven Eckelmann
a399b60735 ath10k/ath10k-ct: support multicast and management rate control
Drivers with software rate control can directly use the selected multicast
rate for multicast/broadcast frames and the minimal basic rate for
management frames. But drivers with offloaded rate control algorithms must
be informed about such upper layer decisions to configure the
hardware/firmware.

A new BSS_CHANGED_MCAST_RATE is introduced in mac80211 to automatically
inform all drivers. ath10k can detect this event and forward it via WMI to
the driver. The already existing BSS_CHANGED_BASIC_RATES can be used to
select the management rate.

Without the WMI commands, a low rate (not necessarily one from the basic
rates) is used for bcast/mcast/management frames. This means that the
/etc/config/wireless settings basic_rate and mcast_rate would have no
effect on the rates selected by this driver for the mentioned frames.
2019-02-11 01:22:22 +01:00
Steffen Förster
7b092e1e13 ramips-mt7620: add support for ASUS RT-AC51U (#1642) 2019-02-09 23:31:58 +01:00
David Bauer
1ace3d5bb0 ramips-mt76x8: add support for TP-Link Archer C50 v4 (#1641)
This backports the TP-Link Archer C50 v4.

We are dropping the following upstream commits. They add support for the
TP-Link recovery-flag which enabled the web-recovery. As they are not
needed for the router to work, we drop them for now.

28cd2ca base-files: sysupgrade: support additional mtd options
1e06482 mtd: add logic for TP-Link ramips recovery magic
2019-02-08 02:48:09 +01:00
oszilloskop
b9cf102f46 ar71xx: fix incorrect gl-ar150 and gl-ar300m image names (#1640)
also added manifest aliases for gl-ar150, gl-ar300m, gl-ar750
2019-02-07 01:55:07 +01:00
Martin Weinelt
9f7276cdd6 docs: improve references to the IRC chatroom (#1643) 2019-02-07 01:53:18 +01:00
Martin Weinelt
f9634ca0f6 meta: add template for bug reports (#1637) 2019-02-05 01:22:55 +01:00
txt-file
97485dcecf target x86-*: change from ext4 to squashfs (#1634)
This allows for smaller firmware images and makes it possible to reset a
device via firstboot command.

Signed-off-by: Matthias Fritzsche <matthias@chemnitz.freifunk.net>
2019-02-03 23:57:16 +01:00
Matthias Schiffer
2cbb2808a0
docs: don't highlight code blocks unless requested explicitly 2019-02-03 22:48:01 +01:00
Matthias Schiffer
f33d729253
docs: use sphinx_rtd_theme for HTML output
It makes sense to render using the same theme locally that is used on RTD.
The theme can be installed using:

    pip install sphinx_rtd_theme
2019-02-03 22:45:47 +01:00
Matthias Schiffer
cd355bbbfb
docs: update Makefile and config to Sphinx 1.8.4 defaults 2019-02-03 22:41:55 +01:00
bobcanthelpyou
95acfb5493
docs: update sphinx config to v1.4.9 2019-02-03 22:41:55 +01:00
Martin Weinelt
9342e31d45
brcm2708-bcm2708: add manifest alias for Raspberry Pi Model B Plus Rev 1.2 2019-02-03 21:15:32 +01:00
Martin Weinelt
659eecd974 modules: update OpenWrt
9b14c7d3d1 netifd: handle hotplug event socket errors
e33612484a brcm63xx: HG655b: fix the imagetag at dts
ef17edae3d kernel: bump 4.14 to 4.14.97
21762fe9d6 kernel: bump 4.9 to 4.9.154
ab41836321 mt76: update to the latest version
026f08a610 kernel: bump 4.14 to 4.14.96
1f1f421af6 kernel: bump 4.9 to 4.9.153

Compile-tested: ar71xx-generic, ramips-mt7621, x86-64
2019-02-03 01:29:57 +01:00
Martin Weinelt
96fea449a3
modules: update OpenWrt
13eeee7b2b mt76: update to the latest version
ac1ce25671 OpenWrt v18.06.2: revert to branch defaults
a02809f61b OpenWrt v18.06.2: adjust config defaults
cddd7b4c77 base-files: config_get: prevent filename globbing
e6162b2127 dnsmasq: backport missing braces fix
d4178c8f47 build: fix umask detection bashism
b98b55a64f build: fix STAGING_DIR cleaning for packages
e6c2f3feb1 ar71xx: use correct wan mac address for the TP-Link Archer C7 v4
2c7a1ccaea ar71xx: Add usb drivers in Archer C7 v4/v5 images
39c3b5139f openssl: bump to 1.0.2q
80ed6ebc56 dnsmasq: backport upstream static lease fix
4f2199f528 wireguard: bump to 0.0.20190123
8c105c62e4 wireguard: Update to snapshot 0.0.20181218
1447924c95 mbedtls: update to 2.14.1 for 18.06
e5a0b6cde0 uhttpd: disable concurrent requests by default
11bfb39e39 kernel: bump 4.14 to 4.14.95
dd5fa217dc kernel: bump 4.9 to 4.9.152
91d3b87353 uboot-fritz4040: fix crash caused by interaction with gcc 7.1+

Compile-tested: ar71xx-generic, mpc85xx-generic, ramips-mt7621
Runtime-tested: ramips-mt7621 (D-Link DIR860L)
2019-01-31 02:58:41 +01:00
Matthias Fritzsche
3abadc286f ar71xx-mikrotik: remove kmod-ath5k package
ath5k supports only IEEE 802.11 a/b/g

Signed-off-by: Matthias Fritzsche <matthias@chemnitz.freifunk.net>
2019-01-29 12:54:30 +01:00
Matthias Fritzsche
cecfe03839 ar71xx-mikrotik: add missing OpenWrt image types
Signed-off-by: Matthias Fritzsche <matthias@chemnitz.freifunk.net>
2019-01-29 12:54:01 +01:00
Martin Weinelt
8b9cdd32f6 modules: update routing
ea345d1 Merge pull request #442 from ecsv/batadv-18.06
0231308 batman-adv: Merge bugfixes from 2019.0

Compile-tested: ar71xx-{tiny,generic}, ramips-mt7621, x86-64
Runtime-tested: ar71xx-generic (TP-Link TL-WR1043NDv2)
2019-01-27 17:59:05 +01:00
Martin Weinelt
3ed0ba5a74 modules: update OpenWrt
6e16dd1234 mt76: update to the latest version
76037756d0 kernel: bump 4.14 to 4.14.94
455bfd1065 kernel: bump 4.9 to 4.9.151
fafd7691e6 opkg: update to latest Git head
e789bd2243 opkg: drop argument from check_signature in opkg.conf
3603c2321d ramips: mt7621: fix 5GHz WiFi LED on ZBT WG3526
7f98cd8d50 odhcpd: fix onlink IA check (FS#2060)
abd0f7995e kmod-sched-cake: bump to latest cake

Compile-tested: ar71xx-{tiny,generic}, ramips-mt7621, x86-64
2019-01-26 16:41:47 +01:00
Martin Weinelt
9153b38117 gluon-core: fix unifiac-{lite,pro} primary mac selection
fixes #1629
2019-01-25 01:50:53 +01:00
Martin Weinelt
c4d435c9c7 gluon-core: sort 010-primary-mac by target and board_name 2019-01-25 01:50:53 +01:00
Malte Moeller
692f61ec5a change device identifier to match machine identifier
this matches the output of
lua -e 'print(require(platform_info).get_image_name())'

This way the manifest file is accepted by the autoupdater
2019-01-18 23:33:05 +01:00
Martin Weinelt
86148bdfc3 gluon-status-page: rebuild status-page.js after 02dfc66
The original commit only applied its changes to the source file and did
not rebuild the minified file, therefore the change never went live.
2019-01-17 23:25:31 +01:00
Manu.WTF
04cca280a1 ramips-mt7620: add support for Nexx WT3020 (8M) 2019-01-17 22:42:10 +01:00
Martin Weinelt
de19cd56ba
modules: update OpenWrt
939fa07b04 kernel: bump 4.14 to 4.14.93
cae263227f kernel: bump 4.9 to 4.9.150
f34ad1a8f0 mt76: update to the latest version
d58c6aedb6 tools/firmware-utils: fix sysupgrade typo in mkdapimg2
0cef35f096 tools/firmware-utils: fix sysupgrade typo in mkdapimg
0d6eaa0ba5 octeon: fix typo in platform.sh
069fda746e fstools: update to the latest master branch
3b4e779e93 fstools: update to git HEAD
d7275c0312 fstools: filter unknown action in mount.hotplug script
e0daa62af6 fstools: Install mount.hotplug and 10-fstab.defaults as 600
4c0e15fc16 base-files: install missing /etc/iproute2/ematch_map
c3fef269d6 cns3xxx: use actual size reads for PCIe
367ccf7a2d kernel: bump 4.14 to 4.14.91
b9dcf2de5f kernel: bump 4.9 to 4.9.148
a8cc06c537 mac80211: brcmfmac: backport firmware loading changes & fix memory bugs
c5c20f510a odhcpd: noop to fix PKG_SOURCE_DATE
62ddfaff32 odhcpd: filter routes based on prefix_filter
8a9b0b95df apm821xx: switch MX60(W)'s recovery images to multi-image method
afcdf099b7 kernel: fix f2fs on big endian machines
016a71a18a odhcpd: backport prefix filter/NETEV_ADDR6LIST_CHANGE event fixes
806b570a35 ath10k: update QCA4019 firmware
baa00b2182 brcm2708-gpu-fw: update to git HEAD
5af6b7976f bcm53xx: backport DTS changes queued for the 4.21
dbbba84ed4 bcm53xx: rename dts backport patches changing their prefixes

Compile-tested: ar71xx, ramips-{mt7621,mt76x8}, x86-64
Runtime-tested: ramips-mt7621 (D-Link DIR860L)
2019-01-15 17:07:04 +01:00
Matthias Schiffer
2aa324ecf7
gluon-config-mode-geo-location: fix source/i18n mismatch
The text was changed in the i18n files, but the corresponding change in the
Lua sources seemingly got lost during a rebase.

Closes #1611
2019-01-03 03:16:11 +01:00
Matthias Schiffer
cdbd7b65df
docs: releases/v2018.2: fix feature/package name for config wizard map 2019-01-02 20:20:18 +01:00
Ralf Jung
591107111c
docs: releases/v2018.2: add renamed target information to changelog 2019-01-02 20:17:14 +01:00
David Bauer
55d2acd709 ramips-mt76x8: remove broken flag (#1608)
This commit removes the broken flag from all devices in the mt76x8
subtarget.

The stability of the mt76 driver for the mt7628 and mt7612 has greatly
improved in the last half-year. It might be still behind ath9k and
ath10k but it is suitable for daily use.

This affects the following devices:

 - GL.iNet MT300N v2
 - TP-Link Archer C50 v3
 - TP-Link TL-WR841 v13
2018-12-29 23:32:02 +01:00
Martin Weinelt
656230a79f ar71xx: add support for FRITZ!Repeater 300E (#1604)
Signed-off-by: Martin Weinelt <martin@darmstadt.freifunk.net>
2018-12-29 22:51:57 +01:00
David Bauer
888cddb662 gluon-core: distribute dualband radios (#1606)
This commit distributes dualband radios evenly on 2.4 GHz and 5GHz with
2.4 GHz being prioritised higher than 5 GHz. This means in case a device
has only a single radio and this radio supports operation in both bands,
it will be set to 2.4 GHz.

Tested-by: Martin Weinelt <martin@darmstadt.freifunk.net>
Signed-off-by: David Bauer <mail@david-bauer.net>
2018-12-29 21:48:12 +01:00
Matthias Schiffer
497b77b5db
docs: post-release version bump 2018-12-29 21:18:53 +01:00
Matthias Schiffer
3699ce8c1f
Gluon v2018.2 2018-12-29 21:07:59 +01:00
Matthias Schiffer
e8aa119289
docs: add v2018.2 release notes 2018-12-29 21:04:59 +01:00
David Bauer
9bb91e7846
docs: add pointer for AVM flash instructions
Adds a footnote with a link to an instruction on how to flash Gluon onto
AVM routers.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-12-29 21:03:50 +01:00
Matthias Schiffer
e0f2257e4f
docs: add TL-WR810N v1 to device list 2018-12-29 20:13:31 +01:00
Matthias Schiffer
a6bce7959d
ramips-mt76x8: remove VoCore 2 BROKEN flag again
The driver has stablized enough to officially support ramips-mt76x8 devices
again. At least remove BROKEN for VoCore 2 (as it was supported before).
2018-12-29 19:31:51 +01:00
Andreas Ziegler
5746fb08c4 ramips-mt7621: remove BROKEN flag for ZBT WG3526-16M & WG3526-32M 2018-12-28 21:15:29 +01:00
Andreas Ziegler
276c6c3dae ramips-mt7621: fix 5GHz WiFi LED on ZBT WG3526 2018-12-28 21:15:29 +01:00
Matthias Schiffer
9eadf02b34
modules: update OpenWrt
eef6bd3393f4 bcm53xx: update pinctrl driver & use its new DT binding
61323d22c073 dropbear: fix dropbear startup issue
2018-12-26 18:54:55 +01:00
Matthias Schiffer
d535b4708e
docs: remove ramips-mt76x8 target from supported devices
The ramips-mt76x8 target is marked as BROKEN.
2018-12-26 18:10:19 +01:00
Matthias Schiffer
15c471642e
docs: add Gluon v2018.1.4 release notes 2018-12-26 16:37:02 +01:00
Andreas Ziegler
0df910bb48 docs: add D-Link DIR-860L (B1) to supported hardware list 2018-12-24 12:56:53 +01:00
Andreas Ziegler
74f6372348 docs: standardize revision notation in supported hardware list 2018-12-24 12:56:17 +01:00
Martin Weinelt
e9c6153cd5
ramips-mt7621: unflag dir860l-b1 as broken with 11s mesh
Signed-off-by: Martin Weinelt <martin@darmstadt.freifunk.net>
2018-12-23 02:49:17 +01:00
Matthias Schiffer
b042349b36
modules: update OpenWrt packages
578762f4fcbf sqlite3: remove $(FPIC)
68694dddb128 sqlite3: security bump
13a4dcd6147c net/mosquitto: bump to 1.5.5
3e4fae2465fe CircleCI: [18.06] branch specific version.
bb1b12733e1a nut: Backport fixes from master
e6769fc7efd2 libsndfile: Fix MIRROR_HASH
f4321408639e libsndfile: add PKG_SOURCE_DATE
18c316638581 libsndfile: switch to cmake
6124b001e9e5 libsndfile: switch to git
e802a0c00880 tiff: security bump to 4.0.10
b9b3445cc0a9 tree: Update to 1.8.0
890c302e1a92 net/mosquitto: support more acl plugin options
8643915bbd2e darkstat: [18.06] procd init script and enabling additional parameters
8ccfae065f14 prometheus-node-exporter-lua: close io.popen files to reap zombies
430f6c01641b build,circleci: Updates with additional checks from travis scripts.
677eb7ec2b99 build,circleci: add curl & wget to base image
7370760f5de0 nano: update to 3.2
1f2f177d3ca0 collectd: update to 5.8.1
44458746f2dc collectd: remove obsolete references to avr32
635d96ca45ac collectd: include nls.mk for mysql plugin
86c3ea10ecd3 utils/collectd: run with low priority
f1209a6eb8ef net/mwan3: fix NDP on ipv6 for ra services
b6f6df1d771e strongswan: backport upstream fixes for CVEs in gmp plugin
2018-12-20 21:45:38 +01:00
Matthias Schiffer
83f2dc230d
modules: update OpenWrt
753531da249f wireguard: bump to 0.0.20181119
6de949113210 wireguard: bump to 0.0.20181115
6319242a2a37 wireguard: bump to 0.0.20181018
a6a3abeb96f5 wireguard: bump to 0.0.20181007
a74369a64d0a wireguard: bump to 0.0.20181006
1f7504b8843d ethtool: update to 4.19
83cbf4c0bacd ethtool: Update to 4.18
44979a31e13b ethtool: Update to 4.17
2f97b405fed4 ethtool: Update to 4.16
ec9e3e6a9e3e mbedtls: Cosmetic cleanups
492174198f61 tools/e2fsprogs: Update to 1.44.2
e78aa6f77b73 strace: Update to 4.22
3af64ddbff9f fstools: Add the new options available in the menuconfig
dfa9d4a70ec8 fstools: update to latest git HEAD
fc38aad19491 x86: make sysupgrade.tgz reachable again
6b0bafb16b77 x86: add packages files to image bootfs
dab5305e3166 x86: mount writable bootfs
75d4465464e6 include/rootfs.mk: remove boot directory
0f5b8a92b42d mwlwifi: update to version 10.3.8.0-20181114
575621e35561 lantiq/basefiles: use shutdown instead of stop when the system goes down
f7a97a21f77b base-files: sysupgrade: Allow downloading of firmware images using HTTPS
0340d3ad2d1b flex: Add a lex symlink
e2637a471a64 Revert "iptables: fix dependency for libip6tc on IPV6"
c756d666dc04 scripts: update config.guess and config.sub
66ff4e478a1b mwlwifi: update to version 10.3.8.0-20181029
ebe02f7a354f mwlwifi: driver version to 10.3.8.0-20181022
2046cd259035 mwlwifi: driver version to 10.3.8.0-20181008
3d4eb5607817 wolfssl: update to version 3.15.3-stable
53249917825a tools/ccache: update to 3.5
1249e6d498e6 tools/xz: Add PKG_CPE_ID for proper CVE tracking
ae16d0fb39d6 tools/libressl: Add PKG_CPE_ID for proper CVE tracking
b2df8076bd69 tools/patch: Add fedora patch for crashing git style patches
27528d48e1f2 tools: patch: Add missing CVE-2018-6951 fix
a10c67b05727 tools: patch: Fix build by not modifing Makefile.am
1adb3b28a9c1 tools: patch: make patch build depend on automake
ed32045bcc64 patch: apply upstream cve fixes
ab64f9da81c7 ugps: update to latest git HEAD
b64622b0c8de uqmi: update PKG_RELEASE version
bcf824a4794f uqmi: stop proto handler if verify pin count is not 3
4f02bee9bbc7 uqmi: evaluate pin-status output in qmi_setup function
5a3810b38604 uqmi: do not block proto handler if SIM is uninitialized
1e012fd697d8 uqmi: do not block proto handler if modem is unable to registrate
5c10aaa65b1c uqmi: fix variable initilization for timeout handling
251f4fd20e7c uqmi: add timeout option value
860e2dac40db uqmi: redirect uqmi commands output to /dev/null
5d8040455e42 uqmi: fix indenting
1c56c3d2530c gre: make encaplimit support configurable
d5dd3b113465 odhcpd: update to latest git HEAD (FS#1853)
dc78c70d5c07 iw: strip a few more non-essential features from iw-tiny
ab1b46870153 iw: fix filtering linked object files for iw-tiny
0609ea0bf0de iw: add iw-full package without size reduction hacks
0d8ef978744e ubus: update to latest git HEAD
ea08a29d2a1c ipset: update to 6.38
52e9f03b49f0 zram-swap: bump pkg version
243265812813 zram-swap: Add "max compression streams" configuration option
2d4b52707dd6 zram-swap: fix number of created zram devices for multicore CPU's
9a5509736a8e zram-swap: fix zram dev reset for multicore cpu devices
5ff4ea6bc4d2 zram-swap: compression algorithm configuration option
afd6460418df zram-swap: Shell cosmetic
ac7c30708f8b zram-swap: remove trailing whitespaces in init script
d275b30414dc odhcpd-ipv6only: fix dependency for IPV6
b1cc8c8ef246 netifd: update to latest git HEAD
0ca423d59509 netifd: update to latest git HEAD
46fa2453fdbd hostapd: expose device taxonomy signature via ubus
c1a856b18ba8 hostapd: add support for client taxonomy in the full config
8bf1a35eda4f hostapd: fix MAC filter related log spam
0439280c2fcf kernel: support gcc-optimized inlining on all architectures
a29fe94e8cef kernel: Add missing config option for NFSDv4
c1e53d2c82c4 kernel: build support for NFSv4 in nfsd
1a3c129967e0 kernel: add missing dependency to regmap to kmod-gpio-mcp23s08
9885d3aec1db build: Introduce building of artifacts
16f4057188b7 build: fix libressl build on x32 (amd64ilp32) host
8b07cd6000dd build: remove obsolete -rc kernel testing rewrites
868a4cf69f93 build: insert blank line after KernelPackage template to allow chaining calls to it
ca05fd5ebf20 build: fix kernel headers install for uml
2f11a9ed68f5 cns3xxx: fix writing to wrong PCI registers
7b0e1d28e89e kernel: bump 4.14 to 4.14.89
386a57dc596c kernel: bump 4.9 to 4.9.146
217219ee1dd4 kernel: Activate VDSO on MIPS again
fbce30208801 wireguard: bump to 0.0.20180925
113dadc6dde5 wireguard: bump to 0.0.20180918
9f9f8db13865 wireguard: bump to 0.0.20180910
686f70729321 wireguard: bump to 0.0.20180904
b920285883c7 wireguard: bump to 0.0.20180809
4e165fbc29cb wireguard: bump to 0.0.20180802
b3cc304e4552 iptables: fix dependency for libip6tc on IPV6
468a4b5b6279 netifd: do not validate relevant section when ipv6 is not supported
0ccf009b623a base-files: add network_get_metric() to /lib/functions/network.sh
d5b045b52b8c ncurses: use default host install
38e99cb37942 gettext-full: host compile with -fpic
9a01ff5c0349 dante: disable sched_getscheduler() - not implemented in musl
991e43c894d0 kernel: re-enable MIPS VDSO
85c77301d4ad base-files: fix postinstall uci-defaults removal
6bcafab581cd rules.mk: add ESED command
a3446cb0d227 lldpd: inhibit linking of libbsd on !GLIBC
63b867adedf4 kernel: fix build of nftables
69d6da1de601 kernel: generic: Fix nftables inet table breakage
bbc0c4d9cbfe mwlwifi: driver version to 10.3.8.0-20180920
6f50d5ccf378 map: drop default encaplimit value
f6eab3c3de02 ds-lite: drop default encaplimit value
d9f845f76132 odhcpd: enable ipv6 server mode only when it is supported
15a023a458a2 tools/expat: fix docbook2man error on some systems
4b5e062bd3b9 base-files: /etc/services: add missing 'rpcbind' alias
376e9294c718 usbutils: Update usb.ids to 0.315
3dbdd404a872 hostapd: Fix compile with OpenSSL 1.1.0 + no deprecated APIs
fa3805f2b6d3 scripts/ipkg-build: quash error messages when conffiles.resolved is empty
f5cf9b265f78 scripts/metadata.pm: avoid adding dup names in provides list
0dbafc3a3a9b strace: fix build on aarch64
8cac88af4b0f odhcpd: bump to git HEAD (detect broken hostnames)
69f28f3a205d hostapd: fix build of wpa-supplicant-p2p
42dafa0ac589 build: add support for enabling the rootfs/boot partition size option via target feature
62e7ad1d2100 ppp: remove hardcoded lcp-echo-failure, lcp-echo-interval values
87a6aadfd558 base-files: provide more tolerant xterm detection
40ca437c325d brcm47xx: Enable USB power on WNDR3400v3
9afbe27bd01f kernel: add kmod-tcp-bbr
39420c3eadd8 libbsd: Update to 0.8.7
8ec7ad033efd kernel: fix kmod-gpio-mcp23s08 for linux 4.14
741f03b8b7c4 x86/64: enable X86_INTEL_LPSS to select PINCTRL
7d00815ea80a x86: geode: Add missing config options
ac7b9ca362f0 x86/geode: enable X86_INTEL_LPSS to select PINCTRL
4424fa9ef0bb x86: add UHCI and XHCI USB host drivers to 4.14
7772a5b05be1 build: Unset CDPATH to avoid problems
97fddb2fddbf dropbear: backport upstream fix for CVE-2018-15599
e005beec2d02 samba36: Enable umdnsd support
57f3a57abde3 base-files: create /etc/ethers by default
a009d4cdf3de mwlwifi: Update to 10.3.8.0-20180810
1e06b02bf77f firewall: bump to git HEAD
d93bd72a9806 base-files: add function to get mac as text from flash
54278dfa6938 base-files: use consistent coding style
a2b2a9c55fd9 base-files: make wifi report unknown command
7a52e0a7ab08 odhcp6c: apply IPv6/ND configuration earlier
cc6da6fa1ad6 ustream-ssl: update to latest git HEAD
4db4444697b8 imagebuilder: manifest function show stderr
2890abbcc032 scripts: time.pl: avoid hard Time::HiRes dependency
b4454ca4fae1 build: remove GNU time dependency
43c96e8dd87e iwinfo: update to latest Git HEAD
34e3a4a034bb wolfssl: disable broken shipped Job server macro
30d7924c3c62 wolfssl: remove myself as maintainer
eb9ac2590343 openvpn-easy-rsa: update to 3.0.4
38d4ba4e1917 kernel: package x86-optimized crypto-misc modules
63a87b4c7a53 base-files: do not add relevant sections & options except when ipv6 is support in kernel
c58c31bf9974 base-files: sysupgrade: abort if config backup fails
1c833e7bce26 base-files: fix HOME_URL replace
7939cd49c149 include: add netdev family support for nftables
08e73c9526f9 ncurses: install lib on host build
eb7ab27336d8 igmpproxy: drop SSDP packets
f1b086bf0fe4 include/verbose.mk: Add sc to failure message
de3e415a2e95 igmpproxy: add a silent logging option
81541d9159c9 bcm53xx: exit if writing kernel during sysupgrade fails
8dd91b56bef0 brcm2708: Update brcm2708-gpu-fw package
031d5cf24849 kernel: don't auto attach ubi on read error
e6945262642a kernel: handle bad blocks in ubi auto attach code
edc2af2be931 kernel: improve ubi auto attach code readability
c0673db23f1c build: do not override CCACHE_DIR when ccache is disabled
f8750b1a433f build: prereq-build.mk: fix gcc/g++ SetupHostCommand invocation
e5c46a112bed hostapd: remove unused struct hostapd_ubus_iface
aa3e4d56c6a5 base-files: fix wrong sysctl parameter order
4e4d124b27a3 hostapd: fix conflicts hell
775473cf8d47 hostapd: cleanup package definition
0282d04a85b3 openvpn: increase procd termination timeout to 15s
fa112bc46ac7 librpc: add host build to install h files needed for nfs-kernel-server to get compiled
6d5a6c5c9b0e verbose.mk: quote SUBMAKE options
e68e498ff354 kernel: replace bridge port isolate hack with upstream patch backport on 4.14
b06665b2052e kernel: adjust bridge port isolate patch to match upstream attribute naming
0291b76af963 tools/ccache: update to 3.4.2
bc6c4fcd2d67 tools/cmake: update to 3.11.4
24bf0c63dcde fixup-makefile.pl: fixup when PKG_SOURCE is defined elsewhere
becdd2b28e0d build: ASLR hardening use $(FPIC)
f5e33b98394e toolchain: gdb: enable TUI
3341376e0bed ebtables: update to latest git 2018-06-27
b1c42ef11571 ramips: fix wizfi630a swapped lan/wan port
3e3b286fa17a usbutils: Switch to Fedora usbutils
66353bdf5a91 samba36: Disable external libtdb and libtevent
e89126d5d2dc swconfig: swlib_map_settings(): change return type to void
c388a92d61af swconfig: fix un-initialized return value
3b9bfe8328e0 build: include package directory in sha256sums when running on buildbot
ef7a6a4d7260 base-files: add menuconfig option for HOME_URL
7408cdaa310f netfilter: add bpf match support
9f8f5d4d142a dropbear: let opkg manage symlinks of ssh, scp
32b18f6e211e busybox: udhcpc: replace udhcpc_no_msg_dontroute patch by upstream fix
fe193369872b busybox: update to 1.28.4
6d59535b6ac5 nftables: bump to version 0.9.0
cd116c6d5c8e libnftnl: bump to version 1.1.1
21bcc90b1021 base-files: exit if mtd write command fails during sysupgrade
b81774cff807 ramips: mt7621: fix mtu setting with kernel 4.14
3a507b2f9b6e kernel: avoid flow offload for connections with xfrm on the dst entry (should fix IPSec)
1e0db693dfe6 hostapd: make cli treat UNKNOWN COMMAND as failing
cc7fa7fcecbd ramips: fix reboot with W25Q256 with 4-address-mode enabled
a6b561dd01d3 ebtables: update to latest git 2018-06-06
2b51cac21a5a scripts: Replace obsolete POSIX tmpnam in slugimage.pl with File::Temp function
fc0907bc2599 netifd: drop conflicting 'device' interface property
b7beb89b5838 nettle: bump to 3.4
3e02d196553c ca-certificates: ca-bundle: add symlink for openssl default setting
60b29c9c177d curl: Add ca-bundle dependency
0d3bdf7b5940 curl: Use ca-bundle for all TLS libraries.
31f935edafa4 ath10k-firmware: Fix QCA6174 support
5826efd18ca9 hostapd: properly build hostapd-only SSL variants
000a3fef0ad9 hostapd: update packaging and patches
0d08c6705864 hostapd: convert ssl provider build options to variants
a35f24309021 hostapd: update to git HEAD of 2018-05-21, allow build against wolfssl
5435e8023e95 ustream-ssl: fix build against wolfSSL
42121995c7e5 wolfssl: change defaults to cover wpa_supplicant needs
22739871fe51 wolfssl: add PKG_CONFIG_DEPENDS symbols
49487b0ca489 wolfssl: update to version 3.14.4
fbd840724821 package sysfsutils: add support for sysfs settings at boot
903ef9aaecfb kernel: merge kmod-fbcon with kmod-fb
db4341d907a0 ath10k-firmware: Fix mirror hash sum
2e7e60f2d6eb ath10k-firmware: Update QCA988X firmware to the latest version
25f58ed81a34 nftables: bump to 0.8.5 version
1e432993c513 libnftnl: bump to 1.1.0
2f2055de0edb ebtables: update to latest git 2018-05-15
2018-12-20 21:43:51 +01:00
Matthias Schiffer
41174876aa
modules: update Gluon packages
30be52e03bbf autoupdater: consider end of string smaller than all characters except for '~'
688051cb21d6 autoupdater: fix regression in version compare
0835251ca9e2 libplatforminfo: extend Makefile to define compile with custom target
90b26e338877 libplatforminfo: add Config.in for custom target
3a9ea0b47f4b libplatforminfo: add custom definition target
2018-12-20 19:42:40 +01:00
Christoph Krapp
b5aa8c2f7c ar71xx: add support for ZyXEL NBG6616
Signed-off-by: Christoph Krapp <achterin@googlemail.com>
2018-12-20 14:12:50 +01:00
Micha Lenk
4aebb0fd17 docs: getting_started: Update to Debian Stretch (#1602)
I just followed this document on a Debian Stretch, and it worked out of
the box. So let's use Debian's current stable release here.
2018-12-20 01:06:01 +01:00
Martin Weinelt
c6ad711940 modules: update OpenWrt
50789acf4e ar71xx: add support for UniFi-AC-Mesh-Pro
40e1450f59 kernel: bump 4.14 to 4.14.88
85f42a74d3 kernel: bump 4.9 to 4.9.145

Compile-tested: ar71xx-generic, ramips-mt7620, ipq40xx
2018-12-16 01:04:42 +01:00
Martin Weinelt
01a5a79129
modules: update OpenWrt
6f74e269c8 kernel: bump 4.14 to 4.14.87
b2f243394e kernel: bump 4.9 to 4.9.144
2213b20aee kernel: bump 4.14 to 4.14.86
bcd7644007 kernel: bump 4.9 to 4.9.143
d5afaa4114 openvpn: re-add option comp_lzo
629073e86d rpcd: update to latest Git head
1cd945ea22 ramips: fix leds on GL.iNet GL-MT300N-V2
fbadfecbb5 ipq40xx: fix openmesh sysupgrade with tar content out of order
06a20afb34 rules.mk: fix syntax error
d40e90986c rules.mk: add INSTALL_SUID macro
d40de11d1b base-files: fix prerm return value, align with postinst code
cc8e875039 sdk: find kernel modules when KDIR is a symlink
a8b292afe6 uhttpd: update to latest Git head
7a8b75375c uhttpd: support multiple Lua prefixes
fede6df09e uhttpd: update to latest Git head
9671a2d2c8 apm821xx: MBL: load kernel/dtb from SATA 0:1 first
26ebcc88e3 apm821xx: wndr4700: restore sd-card media detection
5337319bdf uclient: update to latest Git head

Compile-tested: ar71xx, ipq40xx, x86-64
Runtime-tested: ar71xx
2018-12-14 01:50:10 +01:00
Christoph Krapp
1c590ca148 ar71xx: add support for UniFi-AC-Mesh-Pro
Signed-off-by: Christoph Krapp <achterin@googlemail.com>
2018-12-09 20:41:56 +01:00
bobcanthelpyou
3c9afd1274 docs: update some old urls (#1598) 2018-12-07 21:40:55 +01:00
Martin Weinelt
76f591995e gluon-client-bridge: set ra_holdoff interval to 30 seconds (#1597)
Allow odhcp6c to fork the script to handle router
advertisments in 30 seconds intervals. This is the value
that was previously used in Gluon v2018.1 / LEDE 17.01.

The default value is 3 seconds and while it is RFC compliant
it can put alot of pressure on even moderately sized devices.

Signed-off-by: Martin Weinelt <martin@darmstadt.freifunk.net>
2018-12-07 21:40:13 +01:00
Christof Schulze
8c058af89d gluon-mesh-babel: remove broken log-file option from config
log-file /dev/stderr is broken for babeld as it eats log messages for debug log.
This commit gets rid of the option. This allows -d N to be used as babeld command
line option.
2018-12-05 00:21:33 +01:00
Julian
68ee1db91e gluon-core: fix pattern %v in opkg URLs (#1594)
$VERSION_ID is a lowercase value
2018-12-02 16:59:06 +01:00
Matthias Schiffer
ccd5c39e12
Merge pull request #1592 from bobcanthelpyou/docs-links
docs: fix some old urls or 'upgrade' to https
2018-12-01 10:13:35 +01:00
bobcanthelpyou
544989fec8 docs: switch links of issues and pull requests 2018-11-30 23:54:14 +01:00
bobcanthelpyou
ba803a1329 docs: fix some old urls or 'upgrade' to https 2018-11-30 23:54:07 +01:00
Sven Eckelmann
6845688016
ath10k-ct: reduce memory consumption
ath10k-ct uses a rather high number of buffers to communicate with the
QCA/Candelatech firmware. Especially the HTC (host-target-communication)
and HTT (host-target-transport) can take up a lot of memory when data is
transferred over a ath10k wifi link.

Even a 256MB device with three radios can go OOM (while sending to three
devices using UDP unicast/multicast packets) with the default buffer
limits. Unfortunately, this also reduced the maximum 5GHz throughput on an
IPQ40xx device from 494/432 Mbit/s for TCP transfers (download/upload) to
438/343 Mbit/s. These throughput values should still be good enough for a
Freifunk installation. And these changes are already used by ath10k in
OpenWrt 18.06.
2018-11-30 20:50:18 +01:00
bobcanthelpyou
f3fa17d0f7 gluon-mesh-babel: Variable 'uret' is reassigned a value before the old one has been used. 2018-11-29 23:57:06 +01:00
bobcanthelpyou
62f06c1b16 gluon-mesh-babel: Unsigned variable 'total' can't be negative 2018-11-29 23:57:06 +01:00
bobcanthelpyou
083b7ef675 gluon-mesh-babel: 'buf' nulled but not freed upon failure 2018-11-29 23:57:06 +01:00
Martin Weinelt
bcf4d076e1 gluon-status-page: display position and link it with geo uri scheme (#1587)
Fixes: #659
Signed-off-by: Martin Weinelt <martin@darmstadt.freifunk.net>
2018-11-27 23:16:32 +01:00
Andreas Ziegler
1d2e36dab5 Revert "gluon-config-mode-geo-location: allow to store coordinates without sharing"
This reverts commit 104d7455fa.
in its current form it requires you to enter coordinates, which we don't want to enforce by default.
2018-11-27 02:07:04 +01:00
Martin Weinelt
7d79298d38
docs: add v2018.1.3 release notes 2018-11-26 22:24:43 +01:00
Martin Weinelt
60a341f910 docs: releases/v2018.1.2: fix link in known issues 2018-11-26 22:14:45 +01:00
Andreas Ziegler
f5dc9601c3
Merge pull request #1577 from freifunk-ffm/wireguard-prep
Prepare existing babel stack for wireguard
2018-11-26 01:22:14 +01:00
Christof Schulze
62406509fc gluon-core: enable ECN 2018-11-26 01:20:31 +01:00
Christof Schulze
e5b238e04a gluon-mesh-babel: exit with error if unable to connect to babeld 2018-11-26 01:20:31 +01:00
Christof Schulze
89b7612fdb gluon-l3roamd: init: dynamically configure mesh interfaces gracefully during reload
This patch makes use of the new feature in l3roamd to gracefully
add, remove and list the mesh interfaces that are currently in use. This
helps when changing mesh interfaces often - a characteristic of the
wireguard protocol implementation as in the previous behavior all local
clients are dropped when adjusting mesh interfaces.
2018-11-26 01:20:31 +01:00
Christof Schulze
a3d9446a3a modules: update packages
2703207 libbabelhelper: bump version, correct error handling on babel socket
8e768b3 mmfd: bump version, include babeld reconnect fix
9e0b9bb l3roamd: allow to del_meshif for initially specified interfaces and get_meshifs on socket
54fac53 micrond: add PKG_LICENSE value
d2c162f bump libbabelhelper version
9eb42b8 bump mmfd version
8fcc217 libbabelhelper: bump version
a5815a3 bump mmfd
50874ee respondd: add documentation for some protocol related functions (#194)
00c6b72 uc: add new package (#192)
c56ec3a mmfd: bump version
521246b l3roamd: bump version, fixing a crash, increasing efficiency and roaming stability by introducing ACK
2018-11-26 01:20:14 +01:00
Ruben Barkow
f1abdf88fe docs: clarify routing_algo example for BATMAN_V (#1579) 2018-11-25 18:30:00 +01:00
Martin Weinelt
9d7647c30a docs: releases/v2018.1.2: update known issues with kmod dependencies regression 2018-11-25 02:51:41 +01:00
Martin Weinelt
24dc8cc8a1
modules: update OpenWrt
a02d9a7d9f tools: tplink-safeloader: add C7v5 EU SupportList
709d080da5 base-files: fix unkillable processes after restart
216c04ff20 kernel: bump 4.14 to 4.14.82
07ef8b70b8 kernel: bump 4.9 to 4.9.138

Compile-tested: ar71xx, ipq40xx, x86-64
Runtime-tested: ar71xx
2018-11-24 15:05:19 +01:00
Jan-Tarek Butt
104d7455fa gluon-config-mode-geo-location: allow to store coordinates without sharing 2018-11-24 15:02:49 +01:00
rubo77
2b066a34a4 docs: add routing_algo example 2018-11-22 11:15:27 +01:00
Christof Schulze
171c293ebe gluon-core, gluon-mesh-babel: move lua functions that generate ll-addresses from a mac into gluon-core 2018-11-21 20:56:35 +01:00
Christof Schulze
c23e6e4b53 gluon-mesh-babel: babel-respond: stop relying on mac addresses and instead obtain ll-address from nic 2018-11-21 20:56:35 +01:00
Christof Schulze
bd96bd4024 gluon-mesh-babel: explicitly specify the use of the busybox netcat 2018-11-21 20:56:35 +01:00
Christof Schulze
b90d214da9 gluon-iptables-clamp-mss-to-pmtu: clamp mss on all mesh interfaces for all destinations to pmtu 2018-11-21 20:47:39 +01:00
Matthias Schiffer
eda3aa3333
gluon-mesh-vpn-core: add gluon-wan exec wrapper
gluon-wan is a sudo-like exec wrapper that switches the process group to
gluon-mesh-vpn, making it use the WAN dnsmasq rather than resolving over
the mesh.

Note that this only affects DNS at the moment. Processes running under
gluon-wan will still use the regular mesh IPv6 routing table, and not the
WAN routing table. This is not a problem for IPv4, as there is only one
IPv4 routing table.

Fixes #1575
2018-11-21 12:09:10 +01:00
Martin Weinelt
8e3a90ff65
docs: add v2018.1.2 release notes 2018-11-20 21:08:00 +01:00
Matthias Schiffer
6d4d4792d5
gluon-mesh-*: do not count wifi clients/neighbours inactive for more than 60s 2018-11-18 11:45:16 +01:00
Matthias Schiffer
f61d252361
gluon-mesh-batman-adv: respondd: do not count batadv clients inactive for more than 60s 2018-11-17 20:07:00 +01:00
Matthias Schiffer
af9c1f7e9f
gluon-mesh-babel: fix respondd provider build/install
Rename to respondd.c / respondd.so, gluon.mk expects these names. This way
we can remove the install code. The installed filename is changed to
gluon-mesh-babel.so, bringing it in line with out common naming scheme.
2018-11-17 19:45:18 +01:00
Matthias Schiffer
7620d41c29
modules: update OpenWrt
0d549271d397 ar71xx: fix TP-Link Archer C7 v5 switch LEDs
dd6d554b2c1e kernel: fix ubifs loosing O_TMPFILE data after power cut
4db74fbd6908 kernel: bump 4.14 to 4.14.81
6f388adef820 kernel: bump 4.9 to 4.9.137
b0d08ec3aef3 sunxi: remove kernel 4.9 support
2018-11-17 16:42:27 +01:00
T-X
cb35b0d10a gluon-ebtables: build kernel with ebt_dnat and ebt_redirect (#1472)
The redirect and dnat target are needed for gluon-alt-esc-client to
forward frames to the selected, alternative gateways.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2018-11-16 21:33:59 +01:00
rubo77
e2e36921a6 docs: multidomain: fix indentation 2018-11-15 00:15:50 +01:00
Martin Weinelt
3601c9aba6 mt76x8: add support for GL.iNet GL-MT300N-V2 (#1548)
Signed-off-by: Martin Weinelt <martin@darmstadt.freifunk.net>
2018-11-14 23:35:02 +01:00
David Bauer
a51ec56363 ipq40xx: add support for ZyXEL NBG6617 (#1560) 2018-11-14 23:02:25 +01:00
Martin Weinelt
d3f2c5f87e
modules: update routing packages
bc6e7f6 Merge pull request #425 from ecsv/batadv-18.06
c00a1bf alfred: Merge bugfixes from 2018.4
7bf62cc batman-adv: Merge bugfixes from 2018.4
d1cf6d1 Merge pull request #422 from ecsv/batadv-18.06
121c92d batctl: Don't overwrite default PKG_BUILD_DIR
95e56cf alfred: Add openwrt revision to internal version
93cce26 batctl: Add openwrt revision to internal version
1a83b56 batman-adv: Add openwrt revision to internal version
1ba424a batman-adv: Load module with AutoProbe
b9656fb batman-adv: Fix search for cfg80211 module symbols
059d726 batman-adv: Remove unused option "interfaces" in config
3d5c2d0 batman-adv: Add DEBUG_LOG -> DEBUGFS dependency
a9a4b04 batman-adv: Rebuild automatically on mac80211 changes
2018-11-14 02:01:47 +01:00
Martin Weinelt
1628665823
modules: update OpenWrt packages
c6a9b01a6 CircleCI: Fix URL references and add BRANCH refs
bbbb47b7a Merge pull request #7366 from thess/ffmpeg-18.06
4e8dd3649 ffmpeg: work around hard/soft float configs for libffmpeg-full
f09f0f1c5 Merge pull request #6932 from chris5560/radicale_18.06
74fc2449e adblock: fix adguard source
1ec36271b net/mosquitto: bump to 1.5.4
5552214d8 haveged: update to 1.9.4
57b1bbb9a ccrypt: Update to 1.11
335bd7cba Merge pull request #7301 from micmac1/maria37
c646c1841 Merge pull request #7231 from padre-lacroix/bandwidthd-18.06
377f88624 mariadb: security bump to 10.1.37
104ce78af bandwidthd: [18.06] fix undefined references to inline functions This is basically same commit that took place in master 3 weeks ago. gcc-7 with -Os makes inline functions disappeard. It is caused by the new C11 inline semantics. pass option -fgnu89-inline to gcc let it use gnu inline semantics. see https://wiki.debian.org/GCC7#Porting_help
db5d46f28 build,circleci: fix container digest
da4563092 build,circleci: add 'time' to container build image
7b85f3c37 isc-dhcp: drop .conf suffix on dhcrelay config file
ca30e0654 build,circleci: copy and adjust config from master
fc212923d glib2: update to 2.58.1
06579f632 ruby: bump to 2.5.3
99208fcfe libssh: mark as BROKEN due to CVE-2018-10933
7bd9d6914 patch: Add missing CVE-2018-6951 patch
bfa879cdf patch: Fix CVE-2018-6952 and CVE-2018-1000156
971efb45a Merge pull request #7160 from EricLuehrsen/o1806_ub_181
c346de9b4 Merge pull request #7164 from pacien/181009-1806-pkg-tinc
9f5ea1c28 watchcat: make compatible with updated busybox ash array handling (fixes #7148)
58dbd3fda tinc: update to 1.0.35
f3bc02155 unbound: update to 1.8.1
482d94bf4 iotivity, i2pd, domoticz: Bump PKG_RELEASE to force re-build with Boost upgrade to 1.68
15cf061d5 gnutls: updated to 3.5.19
d7980aceb mosquitto: bump to 1.5.3
fae92edd7 sendmail: fix confLIBSEARCHPATH to $(STAGING_DIR)
21b69c23a jamvm: Use <fenv.h> instead of <fpu_control.h>
218a7a686 fdm: Merge latest version and build fixes from master
11c25f58f boost: Merge updates (1.68.0) and build fixes from master
cea8bebc6 Merge pull request #7084 from brianjmurrell/add-foolsm-to-18.06
c58367d4f cshark: update to latest git HEAD
e70b4775d strongswan: refresh patches
88715598b strongswan: fix OpenWrt hotplug script handling
1f4c93972 strongswan: add openwrt hotplug script handling
c340159a9 strongswan: include nls.mk for mysql plugin
474d9a0a1 net-snmp: fix inbound firewall rule support
fddaa085f tdb: Remove libbsd dependency
aa58b6bfb tdb: bump to latest version
da27b3134 tdb: avoid installing duplicate files
93587e54e node: Fix incorrect detection of arm_version and arm_fpu
c99983288 node: fix host build fail
0a2078bf1 nano: update to 3.1
791933dd5 Nano: Update to 3.0 Signed-off-by: Jonathan Bennett <jbennett@incomsystems.biz>
1bdddaefc foolsm: Add package foolsm
df8b221e0 Merge pull request #7053 from mlichvar/chrony-fix-ipv6-allow-18.06
1377bc60f chrony: fix configuration of IPv6 client access
23bb744ff adblock: bugfix 3.5.5v2
e8813bb56 adblock: update 3.5.5
c7e97bf2b radicale[18.06]: add extra command "export_storage" to init script
2018-11-14 02:00:36 +01:00
Martin Weinelt
d91b4a8882
modules: update OpenWrt
9d07678d35 mac80211: fix spurious disconnections with powersave clients
eb89dcaf4a kernel: bump 4.14 to 4.14.80
76574f19e2 tcpdump: explicitly disable libcap-ng support
514ad059ef mt76: update to the latest version, sync with master
4f40d4ca73 oxnas: squash-pick commits from master branch
f2a6d39b95 mac80211: brcmfmac: add 2 more recent changes
33731ccff3 bcm53xx: add DT patch describing pins mux controller
e4b0704a51 mac80211: backport firmware_request_nowarn and firmware_request_cache
3589915a43 kernel: backport and include linux/overflow.h
057893024e mac80211: backport sg_init_marker()
f9e50a9468 bcm53xx: update pinctrl driver
e6971b8def bcm53xx: add pending pinctrl driver
55d078b249 script: ipkg-build: honour $SOURCE_DATE_EPOCH
2e54de4e54 mac80211: brcmutil: backport chanspec debugging patch
941256c004 mac80211: brcmfmac: backport the latest 4.20 changes
5195136002 mac80211: brcmfmac: rename 4.20 backport patches
156f6e63c4 mac80211: add iw command wrapper with error logging
aa0aa47aa1 kernel: Add support for Winbond w25q128jv SPI NOR flash
44084d89f2 imx6: fix DMA transaction errors
779b89c757 ath9k: fix dynack in IBSS mode
f9c79947b5 kernel: bump 4.14 to 4.14.79
91a8bc1dd0 Revert "mt76: update to the latest version"
f1a2b5bbbc kernel: tolerate using UBI/UBIFS on MLC flash (FS#1830)
24ca1cda38 mt76: update to the latest version
2018-11-14 01:55:37 +01:00
Ruben Barkow
925d452ba7 docs: multidomain: fix site.conf path to basic and supported rates 2018-11-13 14:55:07 +01:00
Martin Weinelt
e56acfbec0 docs: releases/v2018.1: add remark about GLUON_WLAN_MESH variable
fixes #1561
2018-11-04 14:35:45 +01:00
bobcanthelpyou
94cf96d72f docs: features/autoupdater: fix typos and add GLUON_TARGET for make clean 2018-11-03 12:10:29 +01:00
David Bauer
c1967fe383 ar71xx: remove BROKEN flag for TL-WR810N v1
Fixes #856
2018-10-24 23:44:01 +02:00
Martin Weinelt
9baf454eb3 modules: update OpenWrt
4fb73b61c0 bcm53xx: use upstream SPI controller fix
2db4015285 bcm53xx: replace SPI revert with a fix sent upstream
1e2164aeb4 kernel: add missing symbol for target bcm53xx
3a9aed24d1 dnsmasq: bump to v2.80
270b9d30f6 kernel: bump 4.14 to 4.14.78
4dc42ef40e kernel: bump 4.9 to 4.9.135
47f68ca586 kernel: bump 4.14 to 4.14.77
dbd067013d kernel: bump 4.9 to 4.9.134
486dc7583d ar71xx: fix mtd corruption
9ac7eb4a86 kernel: bump 4.14 to 4.14.76
235148b077 kernel: bump 4.9 to 4.9.133
4fa4b5edaf mac80211: fix A-MSDU packet handling with TCP retransmission
70cb2d20c9 netfilter: add missing dependency for kernel 4.14
bba743458e kernel: bump 4.14 to 4.14.75
86a3d2604f kernel: bump 4.9 to 4.9.132
ae2a3a1d80 kernel: enable memory compaction
46a700e118 e2fsprogs: fix glibc compile issue (FS#1749,FS#1796)
0dbe3d28f7 iperf: fix --daemon option
95e2da8366 ar71xx: Fix installation of fw_setenv in sysupgrade ramdisk
234b893a18 base-files: Reintroduce sysupgrade_pre_upgrade hook
f3753a9ae0 netifd: fix segfault (FS#1875)
b3c64797db build: use CMAKE_SOURCE_SUBDIR variable to cmake.mk
149dcc26d1 kernel: bump 4.14 to 4.14.74
d837c93623 kernel: bump 4.9 to 4.9.131
2018-10-23 17:14:34 +02:00
David Bauer
ffb46c40d9 ar71xx: add Archer C7 v5 switch LEDs 2018-10-15 00:38:18 +02:00
David Bauer
665cc49d67 ar71xx: add support for Archer C7 v5 2018-10-15 00:38:18 +02:00
Martin Weinelt
7c86795d4f modules: update routing packages (#1554)
8b76007 nodogsplash: fix download hash
ebc5874 Merge pull request #417 from bluewavenet/openwrt-18.06
f68a998 nodogsplash: Backport v3.2.1 to OpenWrt 18.06
2e21588 Merge pull request #414 from ecsv/batadv-18.06
3785b55 Merge pull request #411 from bluewavenet/openwrt-18.06
ddef390 batman-adv: Merge bugfixes from 2018.3
ed5d97c nodogsplash: add missing config options
b0e37f2 Merge pull request #409 from wfleurant/backport-fix-luci-cjdns
85775e9 luci-app-cjdns: luci admin support for cjdns-v20.2 (#394)
59e8158 Merge pull request #407 from bluewavenet/openwrt-18.06
883dec4 nodogsplash: Backport v3.2.0
021153d nodogsplash: Remove nodogsplash and nodogsplash2 in preparation for backport of v3.2.0
9d9c0d0 Merge pull request #403 from dangowrt/bmx7-for-openwrt-18.06
ab3529a bmx7: Avoid namespace collision with libubox.
f0b852b bmx7: add config trigger
2018-10-12 11:20:46 +02:00
Andreas Ziegler
849f72b0a6 gluon-status-page: don't cache index meta redirect 2018-10-11 03:23:29 +02:00
Andreas Ziegler
1628f2d49e gluon-config-mode-core: don't cache index meta redirect 2018-10-11 03:23:29 +02:00
Martin Weinelt
84585d8ada docs: move site configuration repositories list to the wiki (#1552) 2018-10-11 03:22:47 +02:00
David Bauer
246a617d71 ar71xx: add support for TL-WR902AC v1 (#1546)
This adds support for the TP-Link TL-WR902Ac v1 travel router.

The device is marked as broken due to 64MB which might be insufficient
in certain environments.
2018-10-11 03:21:51 +02:00
Martin Weinelt
8ecd302dfe
modules: update OpenWrt
8baadecb16 ar71xx: flag FritzBox 4020 buttons as active low
cd12c91dde kmod-sched-cake: don't gso fixup on fixed kernels
670f14ce67 kerneL: bump 4.14 to 4.14.73
23bd33c5a3 kernel: bump 4.9 to 4.9.130
2163b4936e mt76: update to the latest version, fixes mt76x2 beacon issue
b115fcaa86 mac80211: fix management frame protection issue with mt76 (and possibly other drivers)
2018-10-03 00:06:24 +02:00
Ruben Barkow
2a077f86cf ar71xx: unify position of comment containing BROKEN flag reason (#1545) 2018-10-02 01:03:55 +02:00
Matthias Schiffer
1e61e8e897
Disable build of kmod-jool again
kmod-jool build is broken with current kernel 4.14.y.
2018-09-30 19:09:23 +02:00
yanosz
04d524e0d4 docs: user/site: improve explanation of basic_rates / supported_rates (#1540) 2018-09-29 19:18:19 +02:00
Matthias Schiffer
c584d81952
gluon-config-mode-hostname: fix site check for prefill
Do not require this setting in site.conf.
2018-09-29 14:09:28 +02:00
Matthias Schiffer
03702aa881
modules: update OpenWrt
9f3cce2bfb3f mt76: update to the latest version from the 18.06 branch
0b99f08a64c3 uboot-lantiq: fix compatibility with gcc7
e4678c6c01fa ramips: fix Archer C20 sysupgrade
3a783e59ae0e ramips: ex2700: actually remove kmod-mt76*
81b2bf8e3bd7 kernel: bump 4.14 to 4.14.72
2e946ca366c5 kernel: bump 4.9 to 4.9.129
05606de1aa5b kernel: pick earlycon regression fixes from the stable-queue.git
cb352a7c4cf7 build: drop buildbot toolchain rebuild check when not using git
609707cbe7cf mac80211: fix tx queue allocation for active monitor interfaces
ca1d6c7d30cf mt76: fix tx power issue for mt76x2
8a006c24809c mac80211: backport upstream fixes
492bd8ddc906 kernel: bump 4.14 to 4.14.71
0d8d63c038a3 kernel: bump 4.9 to 4.9.128
f506de2cdaf9 ath9k: fix unloading the module
7347ea7453ae uqmi: pass-through ipXtable to child interfaces
de76cefd865c kernel: bump 4.14 to 4.14.70 for 18.06
b4f672c1f986 kernel: bump 4.9 to 4.9.127 for 18.06
4f6ad3c13ace iproute2: q_cake: Also print nonat, nowash and no-ack-filter keywords
e60be1133036 toolchain/glibc: update to latest 2.26 commit
a57062a90832 iproute2: q_cake: Add printing of no-split-gso option
1fdf3b4a4440 iproute2: update cake man page
ae1285286487 kmod-sched-cake: fix 6in4/gso performance issue
f6bd1b306bbb kmod-sched-cake: bump to 20180827
b2a042b5fe0c iproute2: cake: make gso/gro splitting configurable
f14c321a0d26 kmod-sched-cake: bump to 20180728 optional gso split
6f0ede54387e mac80211: brcmfmac: backport CYW89342 support & fixes from 4.20
d3e9c8862ff9 mac80211: brcmfmac: backport patch for per-firmware features
1a7471a303f3 mac80211: brcmfmac: backport 4.19 patches preparing monitor mode support
9e319b7ae268 odhcp6c: add client fqdn and reconfigure options
55bbd8293c9f kernel: bump 4.14 to 4.14.68
81d73ae74788 kernel: bump 4.9 to 4.9.125
5c8d61d7e32d dnsmasq: allow dnsmasq variants to be included in image
2018-09-29 13:48:26 +02:00
Ruben Barkow
5648faf82d Enhance example translation files 2018-09-23 19:00:00 +02:00
Sven Eckelmann
2b208647f7 ar71xx-generic: Reduce SquashFS blocksize to 64K (#1455)
Some 32 MB devices like the Nanostation M2 suffer from sudden high loads
combined with a squashfs related OOM reboot:

  logd invoked oom-killer: gfp_mask=0x2420848, order=0, oom_score_adj=0
  CPU: 0 PID: 774 Comm: logd Not tainted 4.4.135 #0
  Stack : 804214dc 00000000 00000001 80480000 8182fa3c 80474803 804028d0 00000306
          804e378c 00001ade 00000040 00000000 00000000 800a7f10 00000006 00000000
          00000000 00000000 804063e0 80c69994 804e6542 800a5e8c 02420848 00000000
          00000001 801fd600 00000000 00000000 00000000 00000000 00000000 00000000
          00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
          ...
  Call Trace:
  [<800721cc>] show_stack+0x54/0x88
  [<800d5468>] dump_header.isra.4+0x48/0x130
  [<800d5c38>] check_panic_on_oom+0x48/0x84
  [<800d5d64>] out_of_memory+0xf0/0x324
  [<800d9888>] __alloc_pages_nodemask+0x6b8/0x724
  [<800d2960>] pagecache_get_page+0x154/0x270
  [<80134cb0>] __getblk_slow+0x15c/0x374
  [<80160418>] squashfs_read_data+0x1c8/0x6e8
  [<80164628>] squashfs_readpage_block+0x32c/0x4d8
  [<801622a4>] squashfs_readpage+0x5bc/0x6d0
  [<800dd030>] __do_page_cache_readahead+0x1f8/0x264
  [<800d479c>] filemap_fault+0x1a8/0x458
  [<800efc1c>] __do_fault+0x64/0xd0
  [<800f2824>] handle_mm_fault+0x4a4/0xb40
  [<80076e98>] __do_page_fault+0x134/0x470
  [<80060820>] ret_from_exception+0x0/0x10

Reduction of the SquashFS blocksize should reduce the problem slightly on
these nodes. The image size will increase slightly but this should be no
problem for ar71xx-generic (in contrast to ar71xx-tiny).
2018-09-23 14:34:14 +02:00
David Bauer
728d1ffdb1 mt76x8: flag target as broken (#1533)
The MT76x8 is currently not stable enough for worry-free use with Gluon.
It suffers from reboots in intervals as little as 12 hours or WiFi
freezes for several hours.

It may be unflagged as soon the situation with mt76 got better.
2018-09-17 22:40:44 +02:00
David Bauer
9de78e27b6 gluon-config-mode-hostname: add option to use default hostname (#1529)
Before 7827f89, mandatory hostname field in config mode was
pre-filled with the default hostname.

This commit adds the config_mode.hostname.prefill option for
controlling the default value.
2018-09-15 22:36:07 +02:00
Ruben Barkow
71d1c00f89 docs: sensible example values for gluon-config-mode-geo-location-osm (#1528) 2018-09-11 23:46:54 +02:00
Tata
1a690d2fd6 package/features: add gluon-ebtables-limit-arp to batman feature (#1516)
this activates the package by default when using the batman feature
while still allowing to explicitly remove it like this:

GLUON_SITE_PACKAGES := \
  -gluon-ebtables-limit-arp
2018-09-05 04:45:41 +02:00
Matthias Schiffer
c0e9336a98
modules: update OpenWrt
f7413579c082 mpc85xx: add migration script for TP-Link TL-WDR4900 v1 WLAN PCI paths

Fixes #1486
2018-09-04 21:31:21 +02:00
David Bauer
a29883986c ar71xx: add AVM FRITZ!WLAN Reapeater 450E (#1506) 2018-09-04 20:59:16 +02:00
Matthias Schiffer
d9b4d162e1
modules: update OpenWrt packages
6680ce865043 socat: Fix CRDLY, TABDLY and CSIZE shifts for PowerPC
09f9947f8347 sqm-scripts: Bump to v1.2.4
88db40cd2687 php7: update to 7.2.9
853f87a5f68e php7: add dependency to hash for mysqlnd
b2eda633962b libxml2: add cpe id for CVE tracking
84767508864e libxml2: fix CVE-2018-9251 and CVE-2018-14567
c696cc46009d net/mosquitto: update to 1.5.1
19e00979780d tiff: fix remaining CVEs
45ffcb3d6a99 unbound: drop odhcpd leases with wrong field count
251640ac95f7 ffmpeg: Add build overrides for some specific CPUs: Octeon, X86 and 24kf.
a64352cae065 ffmpeg: Add cpu_type to configure opts. Upgrade to 3.2.12
2db46d289c9e postgresql: security bump to 9.6.10
4f3f81b64f1d perl: version modules and non-base packages
bc6753832d30 mariadb: security bump to 10.1.35
1e5416bbd153 travelmate: update 1.2.2
d7bea561dc3c usbip: remove nonshared flag (#6681)
c875de62b36c perl: update to 5.28
53597cf64e00 travis: don't need git cloning progress
bae476afe568 isc-dhcp: write resolv.conf per network & dhcp settings
e9854d09f303 perl: build with -fno-strict-liasing and -fwrapv
af0ad2ce0d70 nut: Fix for nut-upsmon without nut-server
6a5a257fc057 nut: Update my email
41a9bf21f03c nut: Add PKG_FIXUP:=autoreconf
6576f7be9234 nut: added compatibility with openssl-1.1
edf11aaaeeba ddns-scripts[18.06]: bump to version 2.7.8-1
cb54af8d0d31 privoxy: fix uci configuration parsing after upstream OpenWrt changes
327a03e8f0c6 usbip: adapt package to new kernel/libudev
8f6157048f61 usbip: Remove obsolete patches
8bf5fc17db60 krb5: update to 1.16.1
59199e2534dd krb5: set replay cache directory to /tmp
14340062e3da krb5: update depends, adapt FS#1310
8a19a18c4545 travelmate[18.06]: backport release 1.2.1 to 18.06 branch
5e41db3de396 adblock[18.06]: backport release 3.5.4 to 18.06 branch
87b3ea5c8596 lxc: nl: avoid NULL pointer dereference
98822cd11d71 prometheus-node-exporter-lua: add conntrack collector
605acbbebe87 prometheus-node-exporter-lua: set myself as maintainer
44790e43cbef unbound: fix TLS override documentation
522800696de0 php7: update to 7.2.8
98edb6e210f7 php7: fix load order of mysqli extension
cdf150d0cae9 php7: update to 7.2.7
81332c47658b php7: add package dependency on zoneinfo-core
b65a759e8026 php7: use mysqlnd
7e33126dc040 php7: update to 7.2.6
ac5ee1ffb16e php7: replace libmysqlclient dependencies with libmariadbclient
fd57c8cfeb80 irqbalance: fix AARCH64 compilation
45f6a81fb235 simple-adblock: better download processing, luci-app integration, lists optimization, firewall integration
1fb64b107d79 slide-switch: update to latest version
2018-09-04 19:01:54 +02:00
Matthias Schiffer
1128162716
modules: update OpenWrt
13dccfc8e4e8 libubox: set RPATH for host build
456f88376a80 libubox: set HOST_BUILD_PREFIX
0a337dae9cc6 libubox: make sure blobmsg-json is included in host-build
549eb9b3831b libjson-c: set HOST_BUILD_PREFIX
c571627a25c3 libjson-c: Update package URL
0320fea968e3 libjson-c: fix host-build
da9fe5af199f libjson-c: add host build (for libblobmsg-json)
6a4f059ec831 ar71xx: allow to override at803x sgmii aneg status
3444638a05ab ar71xx: fix QCA955X SGMII link loss
a662d6f6bcdc grub2: rebase patches
a0569f5e812b grub2: Fix CVE-2015-8370
30758ee10e82 bzip2: Fix CVE-2016-3189
3315558870e1 scripts: bundle-libraries: fix logic flaw
686c6c5ca7f2 scripts: bundle-libraries: prevent loading host locales (FS#1803)
0f3ec67a8388 ramips: only limit lzma dictionary size on mt7621
cd49f57ff7f6 uqmi: wait for the control device too
159a52e1c2d0 comgt: increase timeout on runcommands
27e6d719e990 ugps: Update to fix position calculation
011e7cb5feab ugps: Add option disabled
def9d215ac7d kernel: bump 4.14 to 4.14.67
5fde931d6071 kernel: bump 4.9 to 4.9.124
4bff3f392bf1 ar71xx: WNR612v2: fix kernel panic due to wrong Wifi LED init
e30227276581 ar71xx/generic: enable Zyxel NBG6616 in kernel config again
5a07b4e7f5b7 mac80211: mwl8k: Expand non-DFS 5G channels
14580aaf81c6 mt76: update to the latest version
8bb9d053eb17 dropbear: backport upstream fix for CVE-2018-15599
79518b7a4b0e ramips: mt7620: add dir-810l network config
f1c3b5454e37 ramips: fix compatibles in SoC dtsi
446dccc0005f ramips: fix GL-MT300N-V2 SoC compatible
4ffed014a36b ramips: drop not existing groups from pinmux
6118db38b9d3 generic: revert workarounds for AR8337 switch
82f9ef60ab7c kernel: bump 4.14 to 4.14.66
a5ccdc0f5950 kernel: bump 4.9 to 4.9.123
2018-09-04 18:58:47 +02:00
Martin Weinelt
3fb83cc3d5 ipq806x: mark as broken because of unstable wifi drivers 2018-09-04 01:05:39 +02:00
Matthias Schiffer
6b5cb4f23d
Merge branch 'geo-location-osm' 2018-09-01 11:38:10 +02:00
Matthias Schiffer
a8d736ac7b
gluon-config-mode-geo-location-osm: add OSM-based location picker
gluon-config-mode-geo-location-osm extends the
gluon-config-mode-geo-location with a location picker based on
OpenStreetMaps.

Based-on-patch-by: Jan-Tarek Butt <tarek@ring0.de>
2018-09-01 11:35:39 +02:00
Matthias Schiffer
0d4188d40b
gluon-web-osm: base on OpenLayers 5, add model class
The new code is shorter and uses more readable variable names. It does not
depend on specifically named input fields anymore (allowing to use multiple
maps on the same page), and only uses well-defined interfaces to trigger
revalidation of input fields.

The Map model class allows to add OSM maps to gluon-web forms.
2018-09-01 11:35:33 +02:00
Matthias Schiffer
ba1df47dba
gluon-web-model: add custom events for form elements 2018-09-01 11:28:12 +02:00
Matthias Schiffer
a3a1d217f2
gluon-web-model, gluon-config-mode-theme: replace old gluon-map class, fix Form id 2018-09-01 11:28:12 +02:00
Matthias Schiffer
9a732f30dd
gluon-web-model: reorder Node arguments so Section:option() can just pass them through 2018-09-01 11:28:12 +02:00
Matthias Schiffer
653c132013
gluon-web-model: remove unused Section attribute "fields" 2018-09-01 11:28:12 +02:00
Matthias Schiffer
a2be178ce8
gluon-web: add view helper for JSON-encoded values
Can be used for inserting Lua values into inline JS code.
2018-09-01 11:28:12 +02:00
Matthias Schiffer
897ee73d14
gluon-mesh-batman-adv: respondd: remove incorrect field width limits
At least the ifindex and the flags fields can be larger than 0xff.

Fixes #1523
2018-09-01 11:12:22 +02:00
Matthias Schiffer
1ef4eb493c
docs: add v2018.1.1 release notes 2018-08-28 20:58:38 +02:00
Matthias Schiffer
b8c81a4509
docs: update v2018.1 release notes 2018-08-28 20:58:38 +02:00
Matthias Schiffer
839afa577c
docs: define version number only once in config file 2018-08-28 20:55:26 +02:00
mokkin
18d88fccf1
docs: site: fix typo (#1498) 2018-08-26 12:59:26 +02:00
Matthias Schiffer
d3d6637c7f
Merge pull request #1517 from blocktrron/pr-memory-calculation 2018-08-25 01:55:01 +02:00
David Bauer
02dfc66438 gluon-status-page: update memory usage estimation
Let gluon-respondd expose "MemAvailable" from /proc/meminfo to allow for
a more realistic memory-usage estimation.

Information on MemAvailable can be found here:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
commit/?id=34e431b0ae398fc54ea69ff85ec700722c9da773
2018-08-25 00:57:44 +02:00
David Bauer
44c70ca4d6 gluon-respondd: expose MemAvailable 2018-08-25 00:57:44 +02:00
Tata
20d22f66dd gluon-mesh-vpn-core: add abstraction layer for VPN interface name (#1518) 2018-08-24 23:21:43 +02:00
Matthias Schiffer
6ebe2ccd1b
gluon-config-mode-geo-location: fix typo 2018-08-23 23:01:43 +02:00
Matthias Schiffer
2b19266a7d
modules: update OpenWrt
24984b07e8ef tools/bison: Update to 3.0.5
50dbaee55c4d cns3xxx: fix mtu setting with kernel 4.14
705262f4d305 kernel: bump 4.14 to 4.14.65
c3be3c0e1d14 kernel: bump 4.9 to 4.9.122
4b4a6308e711 OpenWrt v18.06.1: revert to branch defaults
70255e3d624c OpenWrt v18.06.1: adjust config defaults
5eb055306fc6 rpcd: update to latest git HEAD
e11df1eac62f openssl: update to version 1.0.2p
033472e1bd9c kernel: bump kernel 4.9 to version 4.9.120
bfc9a4401bbe kernel: bump kernel 4.14 to version 4.14.63
75e4d2d18c0c ramips: add missing USB packages into ASL26555-16M
5b1c6570ca6f brcm47xx: cosmetic fix in model detection
1fe7a17aed63 ath25: Do not build images for ubnt2 and ubnt5
9cc774f91abb at91: do not build image for at91-q5xr5
508adbd871df uci: bump to source date 2018-08-11
ec1c66f53fff mwlwifi: update to version 10.3.8.0-20180615
9866622d8179 tools: findutils: fix compilation with glibc 2.28
c448f798404a tools: m4: fix compilation with glibc 2.28
67f91dfa5150 kernel: bump 4.14 to 4.14.62
e4a57509311e kernel: bump 4.9 to 4.9.119
433c94f29688 wpa_supplicant: fix CVE-2018-14526
2a8d8adfb0a9 Revert "libevent2: Don't build tests and samples"
9fe68b436947 kernel: move e1000e patches to backports
bd451d46a695 kernel: add pending e1000e fixes
aeec1dd7bab6 firmware: intel-microcode: bump to 20180703
8d903be35ad0 curl: Fix CVE-2018-0500
1e4b5c8b1f18 ustream-ssl: update to version 2018-05-22
ea22e3df3eb0 mbedtls: Update to 2.12.0
0d5a041095a1 mbedtls: Activate the session cache
69c75f076a08 mbedtls: cleanup config patch
6603a0c23274 mbedtls: Deactivate platform abstraction
ae1ae0751332 kernel: remove stray 4.4 references
fb5f02616084 kernel: backport upstream fix for CVE-2018-5390
16d89ef291f7 kernel: bump 4.14 to 4.14.61
ca3174e4e9de kernel: bump 4.9 to 4.9.118
0990dfc9cebe Revert "kernel: usb: dwc2 DMA alignment fixes"
be4ab7e178a9 brcm2708: fix w1 patch
6a27c2f4b1a4 base-files: drop fwtool_pre_upgrade
fe90d14880ad libevent2: Don't build tests and samples
eb06fa6cf73a kernel: generic: fix problem with w1-gpio-custom
25cb85abe7f3 wwan: Fix teardown for sierra_net driver
7e03be7e2e32 kernel: leds-apu2 remove boardname check
8139438fc036 dropbear: close all active clients on shutdown
c3df07ab3b2b kernel: gpio-nct5104d remove boardname check
5a430bd13f7a build: README punctuation pendantry
888cc05cf578 build: Update README & github help
da9a7a9a51b3 basefiles: Reword sysupgrade message
d10189939549 linux: update license tag to use correct SPDX tag
1e5bd42d63e5 kernel: usb: dwc2 DMA alignment fixes
c61f543532a6 firmware: amd64-microcode: update to 20180524
4017c528ca9e kernel: remove linux 4.4 support
e3ab280e4700 kernel: remove linux 3.18 support
5742a2ba35e2 libubox: fix mirror hash
23d4f663e33a netifd: update to latest git HEAD
cb043ad8dada Revert "mt7620: gsw: make IntPHY and ExtPHY share mdio addr 4 possible"
6c075777d5af kernel: add missing ARM64_SSBD symbol
b40316c21a96 mt7620: gsw: make IntPHY and ExtPHY share mdio addr 4 possible
f63463591b9f ramips: fix gigabit switch PHY access on MDIO
9ce7aa325ebd kernel: bump 4.14 to 4.14.60 for 18.06
9e1530b2a35e kernel: bump 4.9 to 4.9.117 for 18.06

Fixes build with glibc 2.28.
2018-08-21 21:24:31 +02:00
Matthias Schiffer
a72cf0b86b
gluon-config-mode-geo-location: revise altitude label overrides
As already done with other config mode texts, the altitude field now has
default texts that are used when they are not set in the site i18n files.
The altitude-help text has been removed from site i18n; instead, the
geo-location-help text now overrides the whole section description
including the part that mentions the altitude.
2018-08-19 20:58:26 +02:00
Matthias Schiffer
b4346ff9e6
gluon-config-mode-geo-location: make altitude show behaviour match docs
Do not show by default, delete old altitude value when a form without
altitude shown is saved.

Fixes #1493
2018-08-19 20:20:31 +02:00
Matthias Schiffer
688de03db2
docs: dev/web: update model/view/controller paths
Fixes #1491
2018-08-15 19:31:43 +02:00
Matthias Schiffer
fead411f87
brcm2708: adjust to changed OpenWrt image names 2018-08-11 00:19:28 +02:00
David Bauer
6296e20462 docs: add OCEDO Koala to supported devices (#1511)
Addition of the OCEDO Koala to the supported devices in the docs was
forgotten in 52bc028.
2018-08-10 11:02:55 +02:00
Ruben Barkow
d861266842 docs: getting_started: dependency for time package (#1503) 2018-08-07 13:47:19 +02:00
Ruben Barkow
2b16257896 gluon-web-mesh-vpn-fastd: clarify config of default crypto method (#1502) 2018-08-06 21:36:05 +02:00
Andreas Ziegler
f6dee4386c modules: update OpenWrt
8be3af93b4 uclient: update to latest git HEAD
2589f8589c sdk: include arch/arm/ Linux includes along with arch/arm64/ ones
7d15f96eaf iperf: bump to 2.0.12
4f3082583a sdk: bundle usbip userspace sources
5f23d0f3db include/feeds.mk: fix distfeeds.conf without per-feed repos
5828113986 bcm53xx: backport BCM5301X/BCM53573 dts commits from 4.19+
f7e647ca7b bcm53xx: switch USB 3.0 PHY DT description to use MDIO bus
9c110b97c6 bcm53xx: backport DT fix for I2C controller interrupt
b5b5f5dfa6 kernel: backport mtd support for subpartitions in DT
f8e57f450d kernel: backport mtd patches with Broadcom of_match_table-s
f7668334a8 Re-enable arbitrary IPv6 addresses as outer ip4-in-ip6 tunnel source address
d700eb187b kernel: remove duplicate #define's in at803x Ethernet PHY driver
20c64dabb6 kernel: re-add patch for AT8032 Ethernet PHY
93782d5e8e ca-certificates[18.06]]: remove myself as PKG_MAINTAINER
ce234299bc OpenWrt v18.06.0: revert to branch defaults
03b693064b OpenWrt v18.06.0: adjust config defaults
b0b5c64c22 Revert "ar71xx: define switch for rb-952ui-5ac2nd"
3442ec5d57 ar71xx: define switch for rb-952ui-5ac2nd
f4798d37f1 imagebuilder: add function to show manifest
a3dd6c939d ar71xx:add support for E750G v8
11a5128b98 ar71xx:add support for E750A v4
21ad5fb1ea ar71xx:add support for E558 v2
4dc0ff8183 brcm2708: split sdcard.img.gz into a sysupgrade and factory image
f24e012997 base-files: network.sh: gracefully handle missing network.interface ubus ns
d4a4f06589 iwinfo: update to version 2018-07-24
4a39d8cfd0 iwinfo: bump to latest git HEAD
cb73dd21a3 ar71xx: rbspi: fix RB wAP AC gpio conflict and LED
bb06f6d3ba ar71xx: add missing diag LED support for RB wAP 2nD
c8e8ff1c9f brcm47xx: rework model detection
ca0c649a38 bcm53xx: revert SPI controller commit breaking flash reads
cf5a892430 dnsmasq: bump to dnsmasq v2.80test3
bf1b0fad2b dnsmasq: don't use network functions at boottime (FS#1542)
cb9d5f0a7c dnsmasq: bump to latest patches on 2.80rc2
962e86d9af brcm47xx: revert upstream commit breaking BCM4718A1
29aab93ea2 mac80211: backport brcmfmac fixes & debugging helpers from 4.18
4e7f4777b0 odhcpd: update to latest git HEAD
da0dd6adc2 ubus: update to latest git HEAD
3f0d44b8de firewall: update to latest git HEAD and build with LTO
69021e9b89 ubus: update to latest git HEAD
6302f0161b libubox: update to latest git HEAD
f91a0f3b1a wireguard-tools: add wireguard_watchdog script
f1dbfa1937 wireguard: bump to 0.0.20180718
ff91b32d26 wireguard: bump to 0.0.20180708
b84a1c56f3 build: do not alter global default package selection from profiles
90b15b00a2 WDR4900v1 remove dt node for absent hw crypto.
a80276235a iproute2: tc: backport canonical cake support
5b12057d7c build: fix compile error when a package includes itself in PROVIDES
8a0ad2660a apm821xx: fix sata access freezes
2018-08-06 03:07:01 +02:00
Andreas Ziegler
01c1bf603f docs: vpn: fastd's unencrypted method is 'null', not 'none' 2018-08-04 12:19:15 +02:00
Andreas Ziegler
78ed75ee28 Revert "gluon-core: make sure dns traffic leaves the correct interface when there is ipv6 wan uplink"
This reverts commit b3d7011130.

with this change, DNS in batman-adv based networks is broken.
although the revert breaks babel based networks, this is not as big of a problem.
2018-08-03 15:04:26 +02:00
Christof Schulze
a304814c80 gluon-l3roamd: set gc_thresh for ipv4 and ipv6 to obtain DELNEIGH messages 2018-08-02 00:58:51 +02:00
Christof Schulze
d17cef06a2 gluon-l3roamd: obtain uci cursor 2018-08-02 00:58:51 +02:00
Christof Schulze
b3d7011130 gluon-core: make sure dns traffic leaves the correct interface when there is ipv6 wan uplink 2018-08-02 00:58:51 +02:00
Christof Schulze
0f9ab5e306 gluon-mesh-babel: add new package 2018-08-02 00:58:51 +02:00
Christof Schulze
6241ba5435 gluon-iptables-clamp-mss-to-pmtu: add new package 2018-08-02 00:58:51 +02:00
Martin Weinelt
0e21d17032 ar71xx-generic: prefer kmod-ath10k for 802.11s mesh (#1499)
removes cryptic debug messages from kernel ring buffer and
also reduces memory usage by as much as 20-25 MiB.
2018-08-01 03:37:56 +02:00
Tata
cf9b6e34ff gluon-web-osm: add javascript static osm source (#1483)
Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>
2018-07-29 16:07:39 +02:00
Felix Kaechele
d87c4b521b gluon-mesh-vpn: support ingress bandwidth shaping with tunneldigger (#1460)
Signed-off-by: Felix Kaechele <felix@kaechele.ca>
2018-07-26 01:26:00 +02:00
Ruben Barkow
b9b61ed79c gluon-config-mode-theme: background grey of clicked buttons (#1492) 2018-07-25 22:36:48 +02:00
Ruben Barkow
ca2929a61f gluon-web-admin: add site-commit to info page (#1482) 2018-07-25 22:30:29 +02:00
Sven Eckelmann
b9ec173ffb ipq40xx: add support for OpenMesh A62
This device is a dual 5GHz device. It is recommended to manually change the
radio of the first device to the lower 5GHz channels and the second radio
to the upper 5GHz channels.
2018-07-25 22:27:16 +02:00
Sven Eckelmann
36a5604dfe ipq40xx: add support for OpenMesh A42 2018-07-25 22:27:16 +02:00
David Bauer
04b446d8cd ramips: add support for TP-Link TL-WR841N v13 (#1470) 2018-07-25 22:19:59 +02:00
David Bauer
8395c08e66 ramips: add support for TP-Link Archer C50 v3 (#1487) 2018-07-23 04:34:37 +02:00
Sven Eckelmann
3ef28a4684 gluon-client-bridge: Revert "move IPv4 local subnet route to br-client (#1312)"
The commit b3762fc61c ("gluon-client-bridge: move IPv4 local subnet route
to br-client (#1312)") moves the IPv4 prefix from the local-port interface
to br-client. A client requesting an IPv4 connection to the IPv4 anycast
address of the node (the device running gluon) will create following
packets:

1. ARP packet from client to get the MAC of the mac address of the anycast
   IPv4 address
2. ARP reply from node to client with the anycast MAC address for the IPv4
   anycast address
3. IPv4 packet from client which requires reply (for example ICMP echo
   request)
4. ARP request for the client MAC address for its IPv4 address in prefix4
   (done with the mac address of br-client and transmitted over br-client)
5. IPv4 packet from node (transmitted over br-client with br-client MAC
   address) as reply for the client IPv4 packet (for example ICMP echo
   reply)

The step 4 and 5 are problematic here because packets use the node specific
MAC addresses from br-client instead of the anycast MAC address. The client
will receive the ARP packet with the node specific MAC address and change
their own neighbor IP (translation) table. This will for example break the
access to the status page to the connected device or the anycast DNS
forwarder implementation when the client roams to a different node.

This reverts commit b3762fc61c and adds an
upgrade code to remove local_node_route on on existing installations.
2018-07-22 16:42:41 +02:00
Sven Eckelmann
fc59d5208d gluon-mesh-batman-adv: Drop IPv4 anycast related packets from/to bat0
The commit b3762fc61c ("gluon-client-bridge: move IPv4 local subnet route
to br-client (#1312)") moves the IPv4 prefix from the local-port interface
to br-client. A client requesting an IPv4 connection to the IPv4 anycast
address of the node (the device running gluon) will create following
packets:

1. ARP packet from client to get the MAC of the mac address of the anycast
   IPv4 address
2. ARP reply from node to client with the anycast MAC address for the IPv4
   anycast address
3. IPv4 packet from client which requires reply (for example ICMP echo
   request)
4. ARP request for the client MAC address for its IPv4 address in prefix4
   (done with the mac address of br-client and transmitted over br-client)
5. IPv4 packet from node (transmitted over br-client with br-client MAC
   address) as reply for the client IPv4 packet (for example ICMP echo
   reply)

The step 4 is extremely problematic here. ARP replies with the anycast IPv4
address must not be submitted or received via bat0 - expecially not when it
contains an node specific MAC address as source. When it is still done then
the wrong MAC address is stored in the batadv DAT cache and ARP packet is
maybe even forwarded to clients. This latter is especially true for ARP
requests which are broadcast and will be flooded to the complete mesh.

Clients will see these ARP packets and change their own neighbor IP
(translation) table. They will then try to submit the packets for IPv4
anycast addresses to the complete wrong device in the mesh. This will for
example break the access to the status page to the connected device or the
anycast DNS forwarder implementation. Especially the latter causes extreme
latency when clients try to connect to server using a domain name or even
breaks the connection setup process completely. Both are caused by the
unanswered DNS requests which at first glance look like packet loss.

An node must therefore take care of:

* not transmitting ARP packets related to the anycast IPv4 address over
  bat0
* drop ARP packets related to the anycast IPv4 when they are received on
  bat0 from a still broken node
* don't accept ARP packets related to the anycast IPv4 replies on local
  node when it comes from bat0

Fixes: b3762fc61c ("gluon-client-bridge: move IPv4 local subnet route to br-client (#1312)")
2018-07-22 16:42:41 +02:00
Adorfer
65d172f835
gluon-config-mode-mesh-vpn: i18n/de: fix missing comma 2018-07-19 19:28:48 +02:00
Matthias Schiffer
bd75341739
modules: update OpenWrt
a297324a135a base-files: fix wrong sysctl parameter order
1e48546a6ad1 igmpproxy: run in foreground for procd
2018-07-18 20:37:07 +02:00
Matthias Schiffer
017bcd43ce
gluon-core: remove nixio dependency 2018-07-17 20:08:16 +02:00
Matthias Schiffer
06a9d61523
gluon-web-*: replace nixio with luaposix 2018-07-17 20:08:16 +02:00
Matthias Schiffer
92d90cdfb7
gluon-config-mode-*: replace nixio with gluon.util 2018-07-17 20:08:16 +02:00
Matthias Schiffer
90031ba97a
gluon-status-page: replace nixio with luaposix 2018-07-17 20:08:16 +02:00
Matthias Schiffer
5fc04fb34a
gluon-wan-dnsmasq: replace nixio with luaposix 2018-07-17 20:08:15 +02:00
Matthias Schiffer
32394dc694
gluon-mesh-vpn-core: replace nixio with luaposix 2018-07-17 20:08:15 +02:00
Matthias Schiffer
fd10d7cbb0
gluon-core: replace nixio with luaposix and luabitops 2018-07-17 20:08:15 +02:00
Matthias Schiffer
60a0e78a4a
gluon-core: gluon.util: remove unused function readline() 2018-07-17 20:08:15 +02:00
Matthias Schiffer
223dd49f95
modules: update OpenWrt packages
787a5f9c555b gcc: enable compilation with gcc 7.x
2018-07-17 19:54:33 +02:00
Matthias Schiffer
22e9e2c45b
modules: update OpenWrt
f8cc68670fcf mediatek: fix parallel build issues in image build code
1086408b17fa mtd: improve check for TRX header being already fixed
5dca299fabc4 mtd: support bad blocks within the mtd_fixtrx()
5889cf70e99f kmod-sched-cake: bump to 20180716
393ee8d0b28a qos-scripts: fix uci callback handling
c9c0fc28a9c4 base-files: fix UCI config parsing and callback handling
aee917a5a28d apm821xx: fix usb-otg on 4.14
3539430b3daa odhcp6c: add noserverunicast config option for broken DHCPv6 servers
6363377c477f odhcp6c: update to latest git HEAD
ce8cab388aab odhcp6c: user string option support
dc52b7b104aa ipq40xx: add get_status_led to diag.sh
7fc7128b086a OpenWrt v18.06.0-rc2: revert to branch defaults
4de335bdbed6 OpenWrt v18.06.0-rc2: adjust config defaults
e4d0ee5af5a0 uhttpd: update to latest Git head
2018-07-17 19:52:41 +02:00
David Bauer
c3ceded76f ipq40xx: add support for IBSS
Add support for IBSS meshing. Leave target marked as BROKEN for IBSS
as stability is unknown and WiFi LEDs are not working.

Functionality was tested in the network of Freifunk Frankfurt with other
ipq40xx and ar71xx devices.
2018-07-16 01:39:36 +02:00
David Bauer
6e48dedeb8 scripts: include binaries in patch
This commit allows for binary content in patches created via 'make
update-patches'.

Binary patches are needed for BDFs required for al boards on the new
ipq40xx target. Before this commit, binaries were omitted from the
generated patch which resulted in the patch not able to apply.

Patches without binary content do not differ in case they are created
with the '--binary' flag.
2018-07-16 01:39:36 +02:00
David Bauer
c4b1febd31 ipq40xx: add target
This commit adds support for the new ipq40xx target.
2018-07-16 01:39:36 +02:00
Christoph Krapp
4883bc7141 ar71xx: add support for TP-Link RE355 (#1478)
Support is marked as broken because this device is sold in two variants,
one with 64M RAM and another with 128M. As of now 64M is not enough
for ath10k with 5GHz enabled.
As there is no indication known which variant one will get better mark
it as broken.

Signed-off-by: Christoph Krapp <achterin@googlemail.com>
2018-07-15 18:29:42 +02:00
Matthias Schiffer
81756ad734
docs: releases/v2018.1: extend explanation of status page rewrite 2018-07-14 21:18:41 +02:00
Matthias Schiffer
3bf5e1c875
docs: releases/v2018.1: add note regarding next_node.name change
Fixes: #1463
2018-07-14 21:07:26 +02:00
Matthias Schiffer
7460431faa
scripts/copy_output.sh: add support for "extra" images
The new extra_image command allows to copy additional images that don't
fall into the sysupgrade or factory categories to the output directory.
These images will be placed in the "other" subdirectory.

The extra_image command takes 3 arguments: in_suffix (suffix in OpenWrt
bin directory), out_suffix (suffix in Gluon output directory) and ext (file
extension). Example:

  extra_image '-tftp' '-tftp' '.bin'

The ext argument can be omitted to control the whole filename suffix
including the extension from in_suffix and out_suffix. Multiple extra_image
commands can be used for a single device; aliases work as usual.

Based-on-patch-by: David Bauer <mail@david-bauer.net>
2018-07-14 18:33:37 +02:00
Matthias Schiffer
e8cb34bae2
scripts/copy_output.sh: refactor 2018-07-14 18:17:36 +02:00
Matthias Schiffer
ece5c6af77
modules: update OpenWrt
a7b2764879db include/prereq-build.mk: explicitly check for -f flag when using busybox time
2018-07-14 15:50:31 +02:00
Matthias Schiffer
7e4bfee3c9
gluon-core: upgrade: remove unused variables 2018-07-14 13:35:28 +02:00
Matthias Schiffer
7b23e443e1
modules: update OpenWrt
bc7abe8729f3 include/kernel-build.mk: fix kernel rebuild on backport patch changes
c99c70e05303 kernel: backport page fragment API changes from 4.10+ to 4.9
2018-07-14 13:11:47 +02:00
Matthias Schiffer
83301241ec
mt76: depend on kernel 4.14
Do not break the build on kernel 4.9 (ar71xx).
2018-07-14 01:24:13 +02:00
Matthias Schiffer
f1f2bae94f
gluon-core: remove obsolete gluon.site_config library 2018-07-13 23:16:33 +02:00
Matthias Schiffer
c5fd53e527
modules: update OpenWrt
3e81365141e4 kernel: gen_stats: Fix netlink stats dumping in the presence of padding
dd1f97b37d41 ramips: clean up and fix MT7621 NAND driver issues
68f40d7ecc4c mt76: update to the latest version
16a9ddfe64e2 ramips: ethernet: use own page_frag_cache
0e6cfb691914 ramips: ethernet: use skb_free_frag to free fragments
2018-07-13 17:33:27 +02:00
David Bauer
52bc028e6b ar71xx: add support for OCEDO Koala (#1475) 2018-07-13 01:25:58 +02:00
Matthias Schiffer
79b20b6e12
modules: update OpenWrt
514a4b3e1b4e include/feeds.mk: rework generation of opkg distfeeds.conf
3e89f58a5ead base-files: fix feed list in PKG_CONFIG_DEPENDS
7fa7c854fe33 include/feeds.mk: always add available feeds to PACKAGE_SUBDIRS
a5b9553cf592 scripts/feeds: add src-dummy method
2f306873efbe ramips: TP-Link TL-WR902AC v3: add missing wps button
36a4681b2bef ramips: TP-Link TL-WR902AC v3: don't build factory image
ca903c73c705 kernel: bump 4.14 to 4.14.54 for 18.06
3a5498c5e55d kernel: bump 4.9 to 4.9.111 for 18.06
27014da237f1 mac80211: Expose support for ath9k Dynack
5a40fad22a39 kernel: bcm47xxpart: fix getting user-space data partition name
2018-07-12 21:40:49 +02:00
Julian
126b34ff14 mvebu: add correct subtarget (#1473) 2018-07-11 22:13:16 +02:00
Matthias Schiffer
63c16c01a0
scripts: move DEFAULT_FEEDS definition to a separate file
modules.sh can't depend on openwrt/feeds.conf.default, otherwise the
initial update will fail.
2018-07-11 21:47:50 +02:00
Julian
9906d69322 docs: fix wrong Banana Pi model in v2018.1 release notes (#1466) 2018-07-11 04:12:00 +02:00
Matthias Schiffer
210d97c53e
Switch to OpenWrt 18.06 branch 2018-07-10 22:57:40 +02:00
Matthias Schiffer
fcd5f183ee
docs: Gluon v2018.1+ 2018-07-08 21:01:29 +02:00
Matthias Schiffer
f01037384d
docs, README: Gluon v2018.1 2018-07-08 20:59:57 +02:00
Matthias Schiffer
473818e905
docs: add v2018.1 release notes 2018-07-08 20:55:30 +02:00
Matthias Schiffer
0036ed5ddf
docs: examples: improve domain_seed comments 2018-07-08 20:55:30 +02:00
Matthias Schiffer
3540eb96ed
docs: user/site: improve feature flag explanation 2018-07-08 20:55:29 +02:00
Matthias Schiffer
655da23520
docs: features/wired-mesh: add section about VXLAN encapsulation 2018-07-08 20:55:29 +02:00
Matthias Schiffer
446ae60d94
modules: update Gluon packages
be2c35785994 respondd-module-airtime: Fix reported noise result (#190)
2018-07-08 20:11:21 +02:00
Matthias Schiffer
6a5e67b383
docs: add documentation for site library 2018-07-07 11:43:37 +02:00
Vincent Wiemann
68af719e24 docs: private-wlan: add uci command to set MAC (#1454)
add a missing command to set the special Gluon MAC address of the private WLAN interface to the documentation.
2018-07-04 00:06:23 +02:00
Vincent Wiemann
dc13668b9d docs: increase recommended disk space for builds (#1450)
With all the packages being built 10GB are not enough anymore.
2018-07-03 00:06:05 +02:00
Matthias Schiffer
baebf9b852
docs: add ebtables-limit-arp feature to site.mk example
Closes: #1436
2018-07-01 16:34:00 +02:00
David Bauer
2fda1a1f86 ar71xx: use Power-LED as Diag-LED on FRITZBox 4020 (#1453)
This commit makes use of the Power-LED as Diag-LED, allowing the LED to
work as a status indicator for config-mode.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-06-30 19:23:12 +02:00
Matthias Schiffer
da058c5ef9
gluon-status-page: move neighbours-batadv wrapper to batadv-specific package 2018-06-30 16:03:13 +02:00
Matthias Schiffer
df22d41593
docs: site-example: remove duplication of contact-info texts in example
Let sites leave these texts empty by default, just add a comment where to
find the default labels.
2018-06-29 21:03:45 +02:00
Andreas Ziegler
5cf7c53e69
gluon-config-mode-geo-location: allow overriding geo location description text 2018-06-29 21:01:24 +02:00
Andreas Ziegler
533ea986ad
gluon-config-mode-hostname: allow overriding hostname description text 2018-06-29 20:55:32 +02:00
Matthias Schiffer
a49cf395bd
cripts/check_site.lua: print paths separated by '.' rather than '/'
Using slashs instead of dots is a bit unexpected, and as long as we're not
going for full-blown JSONPath, neither is more correct than the other.
2018-06-29 20:47:59 +02:00
Sven Eckelmann
3d18ae02d8 ar71xx: Add support for TP-Link CPE210 v2 (#1445) 2018-06-26 01:19:55 +02:00
Ralf Jung
1649635be4
gluon-config-mode-contact-info: allow overriding contact field help and note in site 2018-06-24 19:47:52 +02:00
Sven Eckelmann
384c2772c9 ar71xx: add ath10k packages for OpenMesh A40/A60 (#1444)
The dependency line was lost during the rebase of the current master
version.

Fixes: 9d719a2e57 ("ar71xx: add support for OpenMesh A40/A60 (#1424)")
2018-06-24 13:32:56 +02:00
Matthias Schiffer
b2436f674b
docs: add new doc page about package development
Explain the magic of gluon.mk. The feature flag documention is moved into
this new page.
2018-06-23 19:44:43 +02:00
Christoph Krapp
1a065fbe24 ar71xx: add support for ZyXEL NBG6716 (#1443) 2018-06-22 20:21:11 +02:00
J0WI
ee97fe8b9e gluon-web-admin: show sha256sum to verify upgrade (#1441) 2018-06-19 19:24:27 +02:00
Matthias Schiffer
4919f5443d
docs, README: Gluon v2017.1.8 2018-06-17 17:38:34 +02:00
Matthias Schiffer
c36d3286a1
modules: switch routing feed to openwrt-18.06 branch
By using the release branch, we will be able to get future bugfixes without
local patches.
2018-06-17 17:31:02 +02:00
lemoer
c0e7b96d1d docs: add documentation about multidomain support (#1365) 2018-06-14 00:01:56 +02:00
Matthias Schiffer
046103e5a2
modules: update routing packages
87cba7f8996a batman-adv: add patches from 2018.1-maint 2018-06-12
2018-06-13 22:52:37 +02:00
heini66
c0df74876f docs: add link to site config of Freifunk Nordheide (#1428) 2018-06-09 15:55:29 +02:00
J0WI
27e460f8ca docs: add link to site config of Freifunk Dreiländereck (#1425) 2018-06-09 14:23:50 +02:00
J0WI
6a68d6fba8 docs: update link to site config of Freifunk Kiel to HTTPS (#1427) 2018-06-09 14:23:01 +02:00
Sven Eckelmann
ef819cc196 ar71xx: add support for OpenMesh OM2P(-HS)v4 (#1426) 2018-06-09 13:55:38 +02:00
Martin Weinelt
2ba3b35d0d docs: update site url for darmstadt (#1413) 2018-06-09 13:53:12 +02:00
Sven Eckelmann
9d719a2e57 ar71xx: add support for OpenMesh A40/A60 (#1424) 2018-06-08 20:18:30 +02:00
Christoph Krapp
54ff903633 ar71xx: add support for TP-Link TL-WA901ND v5 (#1423) 2018-06-07 22:36:18 +02:00
Matthias Schiffer
998cc6e16e
modules: update LEDE
b6a1f43075f9 base-files: fix UCI config parsing and callback handling
6734f32d91cd mtd: add build hack to reintroduce shared mtd for older releases
aaac9e82aa60 mtd: mark as nonshared to fix FS#484
0fee4906d5c0 ustream-ssl: update to latest git HEAD
f34a0756fd94 ustream-ssl: update to latest git HEAD
98b9d8a3d3fd mbedtls: Activate the session cache
88ba88e5adc4 mbedtls: update mbedtls to version 2.7.3
2018-06-06 22:33:23 +02:00
Matthias Schiffer
0563473abb
ar71xx: fix boot with increased kernel size on CPE/WBS 210/510
Fixes: d139a13563 ("Add various patches to deal with bigger kernels")
Fixes #1417
2018-06-06 22:29:01 +02:00
Sven Eckelmann
c840a588b9 mac80211: initialize sinfo in cfg80211_get_station
Most of the implementations behind cfg80211_get_station will not initialize
sinfo to zero before manipulating it. For example, the member "filled",
which indicates the filled in parts of this struct, is often only modified
by enabling certain bits in the bitfield while keeping the remaining bits
in their original state. A caller without a preinitialized sinfo.filled can
then no longer decide which parts of sinfo were filled in by
cfg80211_get_station (or actually the underlying implementations).

cfg80211_get_station must therefore take care that sinfo is initialized to
zero. Otherwise, the caller may tries to read information which was not
filled in and which must therefore also be considered uninitialized. In
batadv_v_elp_get_throughput's case, an invalid "random" expected throughput
may be stored for this neighbor and thus the B.A.T.M.A.N V algorithm may
switch to non-optimal neighbors for certain destinations.
2018-06-06 11:39:00 +02:00
Jan-Philipp Litza
e909d45ab0 gluon-radv-filterd: Invalidate originators cache after some time (#1343) 2018-06-05 21:55:30 +02:00
Matthias Schiffer
603912dd0d
gluon-config-mode-contact-info: restore datatype definition
optional = true does not make sense without a datatype. When no datatype is
set, the empty string will be a valid value, so data is never unset in the
write function. Restore the minlength(1) datatype so the contact setting is
deleted as intended when no value is provided.
2018-06-04 23:37:32 +02:00
Matthias Schiffer
b8fa1b2a99
gluon-config-mode-contact-info: remove useless description
The first half was just the package title, the second was outdated.
2018-06-04 23:15:59 +02:00
Matthias Schiffer
184dc54317
modules: update routing packages
2dfb22876414 batman-adv: add patches from 2018.1-maint 2018-06-03
2018-06-04 19:20:05 +02:00
Matthias Schiffer
0351fc0ade
modules: update routing packages
688901a664eb bird2: Add package
ecbdeb0500cc bird: Rename to bird1 and bump to v1.6.4
453de2136e2f nodogsplash2: update to version 2.1.1 (#376)
a71ecc3dddc4 babeld: Update to 1.8.2
209877071051 miniupnpd: drop from repo
2018-06-03 16:11:03 +02:00
Matthias Schiffer
ef9b7deb12
modules: update OpenWrt packages
b93e46562a0d lighttpd: CONFIG_LIGHTTPD_SSL includes mod_openssl
08e547f94394 usbip: remove upstreamed musl compatibility patch (#5983)
09b00c08f56a ruby: bump to 2.4.4
20984d673e43 icu: fix CVE-2017-15422
e1b36a234cbb lighttpd: add mod-wstunnel
62b0d30aebc0 lighttpd: update to 1.4.48
0b748a3ac596 sqm-scripts: Fix return value bug in postrm script
96c08703f38a mosqitto: bump to 1.4.15 for CVE fixes.
90d3ef2f7633 minidlna: exclude "po" directory to fix CONFIG_BUILD_NLS=y builds
b8e6fc3eb752 sqlite3: fix uClibc builds
acc974f84caf p11-kit: disable trust module
4e93c8bf468b tiff: version bump to address open CVEs
2847e03934e9 libxslt: add patches copied from Debian to fix CVEs
902542faa04e libssh: fix zlib detection
dc7f2ccad2fd alsa-lib: fix uClibc builds
e359065b625b net/https-dns-proxy: Update to 2018-01-24.
b6cf69bca6d3 unbound: update to 1.6.8 for CVE-2017-15105
4038c7ea6f44 [17.01] travelmate: release 1.0.2
366e595d5689 [17.01] adblock: release 3.4.3
f5046db67e53 vpnc: fix using proto_add_host_dependency
c13cd82a4a76 ulogd: use strncpy instead of memcpy
02692887ba89 wget: backport 1.19.2 from master
23d7fd181720 tree: backport from master
eb3a0d828e1f postgresql: update to version 9.5.10
81571ac0efd5 gnutls: Use HTTPS instead of FTP
2c4ea103d01c ruby: bump to 2.4.3
fe63607e8802 python: declare explicit Host/Compile to fix pgen tool installation error
78acfcc7ed06 net/mwan3-luci: fix iface_state on on status page
7cf09e3ec4f0 python: update to version 2.7.14 for branch 17.01
0230af3b2027 attendedsysupgrade-common: add package
feda1e4ba614 tinc: version bump 1.0.33
f2131de798e2 gnutls: updated to 3.5.16
2018-06-03 16:07:12 +02:00
Matthias Schiffer
0bce62ca3e
modules: update LEDE
6e47c22268d5 ar71xx: Deactivate build of Netgear WNR2000v3
9dd189d4adc4 mvebu: Add support for WRT3200ACM with new NAND flash
adfd64ddd62c brcm47xx: add switch port mapping to Asus WL-500W
4a38c0cad5b2 odhcpd: fix managed address configuration setting
058a0b7552f8 apm821xx: Add default packages to NAND target
6eec0e46ed33 wireguard: bump to 20180519
5ad80ff24b27 wireguard: no longer need portability patch
83089916dcc3 wireguard: bump to 20180514
6cc65b05f311 wireguard: Add support for ip6prefix config option
0e3cc084968f wireguard: bump to 0.0.20180513
4cb9af80dd9b wireguard: bump to 20180420
9e5bed665259 wireguard: bump to 20180304
57e773bd4ea7 wireguard: bump to 20180202
90d9df048b47 wireguard: bump to 20180118
161d95f4c5a7 kernel: bump kernel 4.4 to 4.4.132 for 17.01
2c0cd47dab77 rpcd: update to lastest HEAD
7b54d52a443e kernel: use accepted version of bcm47xxpart fix commit
3c81d12ec328 bcm53xx: backport the first bunch of 4.18 BCM5301X patches
b07875308476 ar71xx: fix and improve ALFA Network Tube2H support
e8b1af45f8b2 kernel: bump kernel 4.4 to 4.4.131 for 17.01
2018-06-03 16:04:44 +02:00
Matthias Schiffer
baf40535b1
modules: update Gluon packages
c34d129afb48 batman-adv-legacy: update to git version 2018-06-03
ed7ed7dcbaf0 autoupdater: allow skipping the version check (#187)
6268f870f17f mmfd: bump version to use new libbabelhelper, do not start verbose
f51707e1c5fd libbabelhelper: bump version for new lexer
d3391981cd09 l3roamd: bump version
2018-06-03 15:59:44 +02:00
Sven Eckelmann
e1a741be4f batman-adv: Fix best gw refcnt after netlink dump (#1411)
A reference to the best gateway is taken when the list of gateways in the
mesh is sent via netlink. This is necessary to check whether the currently
dumped entry is the currently selected gateway or not. This information is
then transferred as flag BATADV_ATTR_FLAG_BEST.

After the comparison of the current entry is done,
batadv_*_gw_dump_entry() has to decrease the reference counter again.
Otherwise the reference will be held and thus prevents a proper shutdown of
the batman-adv interfaces (and some of the interfaces enslaved in it).

Fixes: 899235a4a637 ("Merge pull request #241 from ecsv/batman-adv-2016.4-maint-2016-10-29")
Reported-by: Andreas Ziegler <dev@andreas-ziegler.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2018-06-03 14:37:59 +02:00
Christoph Krapp
114d4688d2 ar71xx: generic: enable CONFIG_MTD_SPLIT_TPLINK_FW (#1406) 2018-05-26 22:25:14 +02:00
Vincent Wiemann
33956cd4b3 ar71xx: add support for Alfa AP121F (#1404)
Adds support for Alfa AP121F USB powered travel router (looks like an USB ethernet adapter).
There is no factory image, but only a sysupgrade file for this router which can be installed using the inbuilt UBoot web interface.
Configure your PC with IP address 192.168.1.2 and connect the router using its RJ45 port. Hold the reset button while powering the device until all LEDs have flashed 3 times simultaneously. You can now access the fallback web interface using a web browser at http://192.168.1.1 and flash the sysupgrade file.
2018-05-23 19:32:40 +02:00
Matthias Schiffer
f51eac7582
gluon-status-page: add contact information again
The field was accidentally removed during the status-page rewrite.

Fixes #1401
2018-05-22 22:48:27 +02:00
Andreas Ziegler
7b1857e743 modules: change url from git.lede-project.org to git.openwrt.org 2018-05-22 01:42:06 +02:00
Christoph Krapp
7ce4fac1a9 ar71xx: add model detection for Ubiquiti AC Mesh (#1400) 2018-05-21 15:51:26 +02:00
Christof Schulze
ab7f1acd0c gluon-config-mode-contact-info: provide enhancements for german, english and french translation to comply with DSGVO (#1394)
* do not allow to obligatorily require contact information
* add remark that the data is provided voluntarily
* mention how to delete the data
* be very clear about the fact that the data being entered is public and
  can be downloaded and processed by anyone.
2018-05-19 19:26:33 +02:00
Christoph Krapp
1be49d1326 Update LEDE patches (#1399) 2018-05-18 23:08:08 +02:00
Christoph Krapp
68ee56b869 ar71xx: add support for GL.iNet GL-AR750 (#1395) 2018-05-17 22:33:18 +02:00
David Bauer
ed7d68490d gluon-config-mode: add platform on config-mode reboot (#1397)
This commit adds the ability to show information about the platform on
config-mode reboot.
2018-05-17 02:30:29 +02:00
Martin Weinelt
b0bfe25274 docs: add package/gluon-ebtables-limit-arp (#1386)
based on package documentation, authored by T_X 
84a6f65f02/package/gluon-ebtables-limit-arp/Makefile (L18-L39)

fixes #1383
2018-05-17 02:02:15 +02:00
Christoph Krapp
eaa23aeae6 ar71xx: add support for TP-Link TL-WR940N v6 (#1389) 2018-05-17 01:33:52 +02:00
Andreas Ziegler
b1d1ecc923
docs: add devices which only support 11s meshing (#1384) 2018-05-12 14:04:14 +02:00
Andreas Ziegler
05e65eadff docs: fix naming of UniFi AC Mesh 2018-05-11 02:03:25 +02:00
Andreas Ziegler
678c0e1f6c docs: RE450: add remark regarding ath10k meshing 2018-05-11 02:03:01 +02:00
Andreas Ziegler
4487a767a7 docs: add Archer C7 v4 to supported hardware list 2018-05-11 02:02:24 +02:00
Andreas Ziegler
c938b213c8 docs: add missing devices which are already supported 2018-05-09 04:02:05 +02:00
Andreas Ziegler
59d6b2a4ee ramips-rt305x: correct alphabetical order 2018-05-09 04:00:02 +02:00
Andreas Ziegler
21e84243fe docs: remove duplicate entry for DIR-615 (C1) 2018-05-09 03:57:56 +02:00
Ruben Barkow
894539efe8 docs: enhance section about GLUON_FEATURES (#1348) 2018-05-09 03:30:12 +02:00
Matthias Schiffer
5bd1d88f85
ar71xx-generic: make ubiquiti-rocket-m a separate device
Make ubiquiti-rocket-m a separate device rather than a bullet-m alias to
enable USB support and allow adding devive-specific packages.
2018-05-08 18:39:18 +02:00
David Bauer
22d45448fd ar71xx: add support for Fritz!Box 4020
This commit adds support for the AVM Fritz!Box 4020 WiFi-router.

SoC:   Qualcomm Atheros QCA9561 (Dragonfly) 750MHz
RAM:   Winbond W971GG6KB-25
FLASH: Macronix MX25L12835F
WiFi:  QCA9561 b/g/n 3x3 450Mbit/s
USB:   1x USB 2.0
IN:    WPS button, WiFi button
OUT:   Power LED green, Internet LED green, WLAN LED green,
       LAN LED green, INFO LED green, INFO LED red
UART:  Header Next to Black metal shield
       Pinout is 3.3V - RX - TX - GND (Square Pad is 3.3V)
       The Serial setting is 115200-8-N-1.

Tested and working:
 - Ethernet (LAN + WAN)
 - WiFi (correct MAC)
 - Installation via EVA bootloader
 - OpenWRT sysupgrade
 - Buttons
 - LEDs

Not working:
 - USB port

Installation via EVA:
In the first seconds after Power is connected, the bootloader will
listen for FTP connections on 169.254.157.1 (Might also be 192.168.178.1). Firmware can be uploaded
like following:

  ftp> quote USER adam2
  ftp> quote PASS adam2
  ftp> binary
  ftp> debug
  ftp> passive
  ftp> quote MEDIA FLSH
  ftp> put openwrt-sysupgrade.bin mtd1

Note that this procedure might take up to two minutes. After transfer is
complete you need to powercycle the device to boot OpenWRT.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-05-08 15:20:02 +02:00
Andreas Ziegler
1531571a7e targets/ipq806x: use ath10k-firmware-qca99x0-ct for 11s and remove BROKEN flag 2018-05-07 00:03:04 +02:00
lemoer
73c30b0916 gluon-respondd: fix whitespace after "if" 2018-05-05 15:09:30 +02:00
lemoer
dde708692c gluon-respondd: use %SCNu64 instead of %llu for uint64_t 2018-05-05 15:09:30 +02:00
lemoer
6ac7e97fae gluon-respondd: add information from /proc/stat to "statistics"
This commit adds information about:
- how cpu time is spent since boot in jiffies (1/100*sek) (cpu)
    - the value is summed for all cores, so in 10 seconds the
      summed values will increase by 4000, if the cpu has
      4 cores
- context switches since boot (ctxt)
- interrupt counters since boot (intr, softirq)
- forks since boot (processes)

    { "stat": {
       "cpu": {
         "user": 219403,
         "nice": 1714,
         "system": 75159,
         "idle": 2727739,
         "iowait": 2943,
         "irq": 0,
         "softirq": 571
       },
       "intr": 8426340,
       "ctxt": 50992590,
       "processes": 10549,
       "softirq": 5161884
    } }
2018-05-05 15:09:30 +02:00
Matthias Schiffer
39c17c6a34
modules: update routing packages
0bf3b72c33d9 nat46: fixup PKG_MIRROR_HASH
23aa2e7b4afa nodogsplash2: Add NDS Restart Hook for Firewall (#369)
7ae81c8311ec cjdns: 20.1 -> 20.2
ff7b5da265e1 prince: version bump to v0.4
2f90fe406c58 miniupnpd: De-maintainering myself.
fdaa4cde3b2c bmx7: bump version
455a54207c84 batman-adv: upgrade package to latest release 2018.1
2e4937ea68f8 batctl: upgrade package to latest release 2018.1
a0eca40b0003 alfred: upgrade package to latest release 2018.1
015e5e99f2b6 bmx7: use configReaload on service reload
0ced8ec5a763 bmx7: keep bmx7 secret keys on sysupgrade
4bff0b3c65c5 cjdns: build fixes
7fc2fbdfc1b7 babeld: release 1.8.1
135bc605b4cf alfred: Support interface IDs with more than two digits
91e600e1cd9a bmx7: convert init script to use procd
86be0095b475 nodogsplash2: Add compatibility with mwan3 v2
17fccad969ea smcroute: Change download to HTTP
63cae8f571a6 bmx7: bump version
2018-05-04 20:35:42 +02:00
Matthias Schiffer
0b090252ec
modules: update LEDE
999bb66b20b0 kernel: add missing in6_dev_put_clear call to an ipv6 network patch
81573ea25924 kernel: bump kernel 4.4 to 4.4.129 for 17.01
afa887388766 gcc: gcc 6.3.0 fix comparison between pointer and integer
2018-05-04 19:59:09 +02:00
Matthias Schiffer
0a0105307f
docs, README: Gluon v2017.1.7 2018-04-30 12:25:21 +02:00
Matthias Schiffer
1f7ed28b76
gluon-core: set VXLAN/legacy mode in site config
In multidomain setups, VXLAN is enabled by default, but can be disabled in
domain configs using the mesh/vxlan option. In single domain setups, the
mesh/vxlan option is mandatory.

The UCI option for legacy mode is removed.

Fixes #1364
2018-04-27 18:05:50 +02:00
Matthias Schiffer
5d92f125cd
gluon-web-network: remove legacy option for wired mesh 2018-04-27 17:48:36 +02:00
Matthias Schiffer
aeae9df001
check_site: improve error message for unset values 2018-04-27 17:48:36 +02:00
Matthias Schiffer
3519f4e61b
gluon-radv-filterd: correct call to ebtables-tiny
Fixes: 8e5abf02ae ("treewide: switch to ebtables-tiny")
2018-04-27 14:38:01 +02:00
Matthias Schiffer
a2eb50e0e6
x86: move common parts of x86-generic and x86-64 to include file 2018-04-26 22:59:36 +02:00
Matthias Schiffer
818acd6021
x86: remove bash and wget again
Let's keep the default package selection to hardware support.
2018-04-26 22:55:36 +02:00
Andreas Ziegler
563f351b78 x86: add packages: leds, sensors, gpio, usb, wifi and tools 2018-04-26 20:54:49 +02:00
Matthias Schiffer
a55b83f42e
modules: update LEDE
eed9d40133fe ar71xx: Ubiquiti Airmax M: add relocate-kernel to invalidate cache
23a638ebd1fd brcm47xx: backport upstream patches for Netgear WNR1000 V3
2018-04-26 20:46:44 +02:00
Matthias Schiffer
7bb6a775b1
modules: update LEDE
efb6ca189641 base-files: /lib/functions.sh: ignore errors in insert_modules
b5ba01a0d3f6 fstools: update to latest lede-17.01 branch
a9b607740273 kernel: bump kernel 4.4 to 4.4.126 for 17.01
09d95e44fc3d mbedtls: change libmbedcrypto.so soversion back to 0
4673a0bffc89 kernel: mtd: bcm47xxpart: improve handling TRX partition size

Also switch to the upstreamed version of "kernel: disable accept_ra by
default".
2018-04-17 22:23:26 +02:00
Matthias Schiffer
dff02d5d60
docs, README: Gluon v2017.1.6 2018-04-16 18:09:37 +02:00
Christof Schulze
2465a103f6
gluon-status-page: when prettifying undefined numbers, show - instead of NaN 2018-04-16 10:23:15 +02:00
Matthias Schiffer
62943f9ca1
gluon-mesh-vpn-tunneldigger: fix typo in description 2018-04-15 22:48:23 +02:00
Matthias Schiffer
6304a317e4
gluon-l3roamd: fix interface checks in initscript
The local_node ifstatus must be checked for local-node, not client. While
we're at it, also clean up the syntax a bit.
2018-04-15 12:49:52 +02:00
Christof Schulze
8959d8c3ea
gluon-status-page: make status page mesh protocol agnostic
batman-adv-specific parts are moved to a new package
gluon-status-page-mesh-batman-adv.
2018-04-15 12:46:01 +02:00
Christof Schulze
b70d4ce20a
gluon-core, gluon-l3roamd: introduce script gluon-list-mesh-interfaces that lists all currently active mesh interfaces 2018-04-15 12:41:01 +02:00
Christof Schulze
6dff120e3c
gluon-status-page: reduce usage of absolute paths in cgi-bin scripts neighbours-nodeinfo and stations 2018-04-15 12:39:36 +02:00
Matthias Schiffer
35ade80f1c
gluon-status-page: move mesh protocol specific definitions into a separate file 2018-04-15 11:36:37 +02:00
Matthias Schiffer
3282a63ea7
gluon-status-page: remove "lastseen" field from neighbours-batadv output
The field is unused.
2018-04-15 10:09:36 +02:00
Matthias Schiffer
433af56f99
gluon-status-page: fix code indentation 2018-04-15 10:01:25 +02:00
Matthias Schiffer
994c94918a
treewide: automatically set SECTION and CATEGORY for Gluon packages 2018-04-14 00:01:04 +02:00
Matthias Schiffer
6f0d9f1e2d
gluon-status-page: fix typo in comment 2018-04-13 22:50:37 +02:00
Matthias Schiffer
2ef34bddca
Merge branch 'builtin-kmods' 2018-04-13 18:03:57 +02:00
Matthias Schiffer
02f905f542
ar71xx: build kernel modules used by Gluon into the kernel
ar71xx-generic and -tiny benefit most from the optimized kernel, as they
contain all devices with 32MB RAM. We enable CONFIG_GLUON_SPECIALIZE_KERNEL
for all targets using the mips24_kc architecture so packages shared between
targets don't need to be rebuild all the time.
2018-04-13 17:32:20 +02:00
Matthias Schiffer
74f4119c1b
treewide: add support for building kernel modules used by Gluon into the kernel 2018-04-13 17:32:20 +02:00
Matthias Schiffer
d139a13563
Add various patches to deal with bigger kernels 2018-04-13 16:00:58 +02:00
Matthias Schiffer
2f4d3b71af
Add patches to reduce iptables module dependencies 2018-04-13 16:00:58 +02:00
Matthias Schiffer
8e5abf02ae
treewide: switch to ebtables-tiny 2018-04-13 16:00:58 +02:00
Matthias Schiffer
461f93bfe4
modules: update Gluon packages
6c38a5dd639e simple-tc: add PKG_CONFIG_DEPENDS to trigger rebuild on dependency changes
2018-04-13 16:00:33 +02:00
Matthias Schiffer
543eb17882
gluon-core: remove DNS cache feature
dnsmasq's caching is severly broken and does not handle all answer records
equally. In particular, its cached answers are missing DNSKEY and DS
records, breaking DNSSEC validation on clients.

Remove the cache for now. It may return if dnsmasq is fixed or we switch to
a different resolver.
2018-04-13 15:15:40 +02:00
Matthias Schiffer
395266e404
gluon-core: remove obsolete dnsmasq upgrade script
The script cleaned up an old setting that was removed in 2014.
2018-04-13 15:01:43 +02:00
Matthias Schiffer
ba9fc94e85
gluon-core: get rid of old sysctl settings 2018-04-13 14:41:01 +02:00
Matthias Schiffer
9b937a8c64
gluon-core: remove unused gluon.sysctl Lua module 2018-04-13 14:41:01 +02:00
Matthias Schiffer
25b32ec2fe
treewide: move sysctl settings to /etc/sysctl.d
net.ipv6.conf.br-client.forwarding is moved from gluon-client-bridge to
gluon-mesh-batman-adv, as the setting is not useful with non-bridged
protocols.
2018-04-13 14:41:01 +02:00
Matthias Schiffer
0b4340b5a6
Backport patches for improved sysctl handling 2018-04-13 14:41:01 +02:00
Matthias Schiffer
46c5effae3
gluon-core: reduce mac80211 fq_codel memory limit to 256KB on devices with 32MB RAM 2018-04-11 08:33:30 +02:00
Matthias Schiffer
d210cfcad9
generic: do not attempt to build kmod-usbip
kmod-usbip is broken since the last kernel update.
2018-04-10 20:25:38 +02:00
Matthias Schiffer
e44f74531f
Update LEDE patches 2018-04-10 19:15:49 +02:00
Matthias Schiffer
710a2ed0e2
modules: update LEDE
6577fe2198f5 ar71xx: sysupgrade: improve CPE/WBS 210/510 validation, add new metadata offset
afca23558a2f kernel: backport commit reverting genirq patch causing regressions
ba502a49a7e4 intel-microcode: update to 20180312
5a9b101543ed brcm47xx: add Luxul XAP-1500 and XWR-1750 WiFi LEDs
fe3db683f943 mac80211: brcmfmac: add support for BCM4366E chipset
3ca1438ae0f7 mbedtls: update to version 2.7.2
c4b382934836 openssl: update to 1.0.2o
bed0ee7cbfaa Kernel: bump 4.4 to 4.4.124 for 17.01
fad29d2c3dea mac80211: brcmfmac: backport commit dropping IAPP packets by default
2018-04-10 19:14:33 +02:00
Matthias Schiffer
c1f49a5661
modules: update Gluon packages
61c7aac8ef87 simple-tc: conditionalize kmod dependencies
73d9ff871b90 ebtables-tiny: introduce stripped-down ebtables variant
2018-04-10 13:09:25 +02:00
Matthias Schiffer
968840c774
modules: update Gluon packages
e1d11c9393d2 batman-adv-legacy: update source date
2018-04-07 22:01:13 +02:00
Matthias Schiffer
bf611a9ab8
modules: update Gluon packages
878f83eb741f batman-adv-legacy: update to latest git

Fixes #1358
2018-04-07 21:56:08 +02:00
Matthias Schiffer
ad7d154c5a
scripts/check_site.lua: show type of incorrect values in error messages 2018-04-01 23:21:18 +02:00
Matthias Schiffer
b7be32d9f4
scripts/check_site.lua: print proper error message for non-string keys in need_alphanumeric_key() 2018-04-01 23:18:53 +02:00
Linus Lüssing
951b6632bc gluon-ebtables-limit-arp: do not add multicast addresses to filter
With the batman-adv multicast support compiled back in again we end up
with multicast addresses in the batman-adv translation table.

Currently we wrongly interpret multicast addresses returned by TT as a
unique host, too, which adds them with a source address filter to
ebtables as well. However, the source address of an ethernet frames is
never supposed to be a multicat one.

This leads to unnecessary entries in ebtables. Fixing this by ignoring
those MAC addreses returned by TT which have the multicast bit set.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2018-04-01 03:26:50 +02:00
Jan-Tarek Butt
d5ef9b67c9
gluon-mesh-vpn-tunneldigger: only allow in domain config
Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>
2018-03-28 18:38:01 +02:00
Matthias Schiffer
f17bb94ad7
gluon-config-mode-theme: fix styling of select elements
* Use correct width
* Don't display focus outline (Webkit)
* Don't let option elements inherit error colors (Webkit)
2018-03-27 20:38:26 +02:00
Matthias Schiffer
6dc9369715
gluon-status-page: suppress "broken pipe" syslog message
Some HTTP endpoints were writing annoying "broken pipe" messages to stderr.
2018-03-27 19:48:04 +02:00
Martin Weinelt
946b42e234
gluon-config-mode-domain-select: allow hiding of individual domain codes 2018-03-20 18:05:38 +01:00
Martin Weinelt
85c0bd6f57
scripts/check_site.lua: add table_keys() helper 2018-03-20 17:23:48 +01:00
Matthias Schiffer
1a7d93a2b9
scripts/check_site.lua: add support for alternative checks 2018-03-20 17:15:55 +01:00
Andreas Ziegler
91912f4935 ar71xx-tiny: add support for TP-Link TL-WR940N v5
adding an alias as it uses the same image as the TL-WR940N v4
2018-03-19 23:34:45 +01:00
Matthias Schiffer
84f82a1339
docs: remove duplicated (and outdated) site docs
At the moment, we don't have a good guideline for package-specific
configuration, but it seems like a good idea not to split configuration
into too many tiny pages, especially for packages that aren't commonly
selected explicitly.

Some uncommon configuration is dropped from the example site.conf to remove
clutter.
2018-03-17 21:20:47 +01:00
Matthias Schiffer
532b57011f
gluon-core, gluon-client-bridge: allow 0-character ESSIDs/mesh IDs 2018-03-17 15:38:24 +01:00
Jan-Tarek Butt
dda1b2a127
gluon-client-bridge: check AP SSID length to be in range of 1-32 characters 2018-03-17 15:33:40 +01:00
Jan-Tarek Butt
9a9024843b
gluon-core: check mesh ID and IBSS SSID length to be in range of 1-32 characters 2018-03-17 15:33:12 +01:00
Matthias Schiffer
7827f8960f
gluon-config-mode-hostname: add config_mode.hostname.optional site option
This setting allows to enforce manually setting a hostname.

In the initial configuration, the hostname field is now left empty; when
setting the hostname is not enforced, the default hostname is shown as the
field placeholder.

Fixes #1139
2018-03-17 12:51:14 +01:00
Matthias Schiffer
486c2e4821
gluon-config-mode-contact-info: change "mandatory" site option to "optional"
Also add documentation about config mode settings.
2018-03-17 12:27:57 +01:00
Matthias Schiffer
440cc1ec54
docs: remove obsolete gluon-legacy configuration 2018-03-17 12:05:59 +01:00
Matthias Schiffer
87ded4c3d8
gluon-config-mode-hostname: improve English node name explanation 2018-03-17 11:48:25 +01:00
Matthias Schiffer
9f86bf3155
gluon-core: add default_hostname helper 2018-03-17 11:44:33 +01:00
Matthias Schiffer
a5cb34bdc1
modules: update LEDE
60f8d388c69e kernel: merge a pending fix for HFSC warnings/slowdowns (fixes FS#1136)
f609913b5c60 mbedtls: update to version 2.7.0
58a95f0f8ff7 tools/e2fsprogs: fix building on a glibc 2.27 host
2018-03-16 23:16:26 +01:00
Matthias Schiffer
d87a798ac3
gluon-core: disable VXLAN checksums
Our VXLAN setup was changed to accept VXLAN packets without checksum almost
2 months ago, so we can disable sending the checksums now as well. Slightly
improves performance.
2018-03-16 20:17:03 +01:00
Matthias Schiffer
22cdd1d78e
batman-adv: add pending patches
Fixes checksum failures on TT version updates.

Fixes #1321
2018-03-16 20:11:35 +01:00
Matthias Schiffer
7b8ee50ceb
modules: update Gluon packages
9bf34bebc545 batman-adv-legacy: update to latest git
2018-03-16 19:44:51 +01:00
Andreas Ziegler
d66ff7b087 docs: features/dns-cache: multiple names and better example domain 2018-03-13 04:18:16 +01:00
Matthias Schiffer
7f812e8754
package/features: never implicitly enable gluon-web-mesh-vpn-fastd
This package only provides the choice between "security" and "performance
mode". It should only be enabled when specified in site.mk.
2018-03-12 13:57:57 +01:00
Matthias Walther
4aa6dce17a docs: hardware.rst: explain how to get the image name for a new device (#1335) 2018-03-12 03:28:28 +01:00
Matthias Schiffer
c80c294b3f
gluon-mesh-batman-adv: increase bridge multicast querier robustness to 9
The RFC standard multicast querier interval is 120s. Our querier uses in
interval of 20s for better support of roaming clients, but our robustness
setting of 3 leads to external queriers using the standard interval to be
timeout after only 60s, leading to frequent "querier appeared/disappeared"
messages. Increase robustness so that external queriers with any interval
<180s are supported.
2018-03-11 12:36:54 +01:00
Matthias Schiffer
68a706a948
gluon.mk: remove GLUON_PKG_MAKE option 2018-03-09 10:05:44 +01:00
Matthias Schiffer
c514ae1882
modules: update LEDE
9bdea6a2964b generic: revert broken LED core patch
2018-03-08 22:31:25 +01:00
Matthias Schiffer
5e086da608
gluon-respondd: remove Gluon-specific provider directory
Our provider modules are prefixed with gluon- now, and the log message
about a missing provider dir was confusing users.
2018-03-08 21:46:05 +01:00
Matthias Schiffer
60522ee253
treewide: move package Makefile boilerplate to gluon.mk 2018-03-08 19:49:41 +01:00
Ruben Barkow
ee14a03e70 treewide: french translation: WLAN -> Wi-Fi (#1342) 2018-03-08 11:26:10 +01:00
Matthias Schiffer
ca43e9058f
gluon-radv-filterd: add missing build dependency on respondd 2018-03-07 21:26:11 +01:00
Matthias Schiffer
934221b86f
treewide: remove redundant definitions from package Makefiles 2018-03-07 21:23:41 +01:00
Matthias Schiffer
5315cfd4f7
modules: update Gluon packages
31e20006049b treewide: remove redundant definitions from package Makefiles
53a659abf880 lua-geolocate: add package for WLAN-based geolocation based on openwifi.su
2018-03-07 20:53:34 +01:00
Matthias Schiffer
d0fbb81a65
modules: update LEDE
9b0a4bafbce7 base-files: tune fragment queue thresholds for available system memory
b47094ce96ff include/package-defaults.mk: fix default Build/Prepare with empty ./src
75be005e8bdc include/rootfs.mk: retain list of conffiles with CONFIG_CLEAN_IPKG
696c6325a3a7 include/rootfs.mk: do not remove opkg prerm scripts during rootfs preparation
17c0362178ca base-files: sysupgrade: do not rely on opkg to list changed conffiles
2ae9ebf37402 kernel: bump 4.4 to 4.4.120 for 17.01
571d3def6baf x86: add preinit hook to reload microcode
681aaaf719ec firmware: add microcode package for Intel
c6314ee06f94 firmware: add microcode package for AMD
222521d5937a tools: add iucode-tool
f7a6b6724a63 x86: enable microcode loading for Intel and AMD
dfe620cb93c0 odhcpd: fix interop with wide DHCPv6 client (FS#1377)
18c999a6ff33 base-files: fix off-by-one in counting seconds for factory reset
92ea65b36aa7 sunxi: disable LPAE to allow kernel to run on A13
7dcbe0e22dbb bcm53xx: fix fallback code for picking status LED
4db583b9c2ab mountd: update to the latest version from 2018-02-26
2018-03-07 19:17:48 +01:00
Linus Lüssing
7e404ac517 batman-adv: multicast TT fixes and cleanups
The first one adds a fix that might potentially result in multicast packet
loss once we would enable multicast_mode again.

The second one avoids some small but unnecessary overhead. More
importantly though, it is supposed to ease further multicast improvements
later (e.g. no need for a multicast sending node to determine overlap
between WANT_ALL_IPV4/6 flags and TT entries while on fast-path).

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2018-03-07 10:10:32 +01:00
Matthias Schiffer
4d9c3c1c79
modules: update routing packages
3aaa772ef520 bmx7: bump version
ccd4210f0ba7 bmx7: add PKG_MIRROR_HASH
d6dcd0c75630 bmx6: add PKG_MIRROR_HASH
536782119f0a alfred: upgrade package to latest release 2018.0
6a6f5da5efd5 batctl: upgrade package to latest release 2018.0
3bb75b003563 batman-adv: upgrade package to latest release 2018.0
2f74073c209d bmx7: bump version to 58b3823262512a48f5174e6778b2368c55bd05d9
733e935f04fc cjdns: v20 -> v20.1
f0ee73aa2285 bmx7: bump version
21a6454d7226 bmx6: bump to latest upstream version
2018-03-07 08:45:52 +01:00
Matthias Schiffer
17370d8462
gluon-ebtables: unconditionally segment IGMP/MLD
We must ensure that each node becomes IGMP/MLD querier for its local
clients; having only a single querier for the whole mesh is generally
unreliable, leading to frequent "IGMP/MLD querier appeared/disappeared"
messages from batman-adv and unreliable snooping.

In smaller meshes it might be interesting only segment querier domains, but
allow membership reports to pass through the mesh, in order to support
snooping switches outside the mesh without special configuration. A
site.conf switch is provided to control this behaviour.

Fixes #1320
2018-03-07 08:12:30 +01:00
Matthias Schiffer
7c9e1e1007
ebtables: add support for ICMP/IGMP type matches 2018-03-07 08:12:01 +01:00
Matthias Schiffer
0d07d179d8
Revert "busybox: compile with debug information"
This reverts commit 582635b031.

The segfault issue has disappeared, so the workaround is not needed
anymore.
2018-03-05 06:53:17 +01:00
rubo77
d4bfa6c4e0 gluon-config-mode-hostname: clarify the use of the nodename 2018-03-02 02:57:59 +01:00
Matthias Schiffer
208cd4d98c
gluon-client-bridge: allow WLAN configs without ap section again
Fixes: 7ccdacd294 ("treewide: rework check_site_lib.lua")
2018-03-01 01:18:39 +01:00
Matthias Schiffer
3e88331137
gluon-status-page: add dependency on libubus-lua 2018-02-26 18:55:51 +01:00
Matthias Schiffer
27f7ce444f
gluon-status-page: when visiting via a next-node address, redirect to a unique address
A downside of this behaviour is that the page does not work for IPv4-only
clients, as the redirect will always point at an IPv6 address.

Still, it seems like a good idea to enforce the redirect even from the IPv4
next-node address, as switching nodes while being connected to the status
page would lead to unexpected behaviour.
2018-02-26 03:25:01 +01:00
Matthias Schiffer
fdf823a3a2
gluon-status-page-api: merge back into gluon-status-page
All Access-Control-Allow-Origin are removed to improve users' privacy. As
the status page API is thus not useful without the status page anymore,
merge them back into a single package.

The status-page-api respondd provider is removed as well.

Fixes #1194
2018-02-26 02:20:38 +01:00
Matthias Schiffer
88906f238b
gluon-status-page: reimplement based on gluon-web
This new status page is significantly smaller than the old one. It always
loads its resources from the same host as the page itself, not requiring
cross-origin requests anymore.

It also uses the common i18n infrastructure of gluon-web.

Fixes #914
2018-02-26 02:20:38 +01:00
Matthias Schiffer
b1aa5390a7
gluon-config-mode-core: move gluon-web base path to /lib/gluon/config-mode
- CGI script and index.html are moved from gluon-web to
  gluon-config-mode-core, the script is renamed to 'config'
- gluon-web and gluon-web-model base views and i18n files are symlinked
  into the new path
- gluon-web-theme is renamed to gluon-config-mode-theme and installs
  directly into the new path
- all gluon-web-* models, controllers and views are moved into the new
  path
2018-02-26 00:07:13 +01:00
Matthias Schiffer
3925344292
gluon-setup-mode: move HTTP server support to gluon-config-mode-core, add gluon-lock-password 2018-02-26 00:07:12 +01:00
Matthias Schiffer
9648489a01
gluon-web: reorganize layout handling
Also bring back gluon-web-theme's i18n strings.
2018-02-26 00:07:12 +01:00
Matthias Schiffer
c3e4ceed28
gluon-web: split out model support into a separate package 2018-02-26 00:07:08 +01:00
Matthias Schiffer
83a6847fbd
gluon-web: remove unneeded functions from gluon.web.util
exec() is moved to gluon.util.
2018-02-25 17:13:30 +01:00
Matthias Schiffer
5dcb784308
gluon-core: remove unused lock and exec functions 2018-02-25 17:13:30 +01:00
Matthias Schiffer
987eef011a
gluon-core: remove unused user/group management functions, call lock command directly 2018-02-25 17:13:30 +01:00
Matthias Schiffer
6ae1af9694
gluon-mesh-vpn-core: use OpenWrt's user/group management 2018-02-25 17:13:30 +01:00
Matthias Schiffer
218de7e0ae
gluon-web: pass base path from CGI script 2018-02-25 17:13:30 +01:00
Matthias Schiffer
661e4dee9f
gluon-config-mode-core, gluon-web-*: do not access dispatcher directly 2018-02-25 17:13:30 +01:00
Matthias Schiffer
4a8283b5ab
gluon-web: remove unused files 2018-02-25 17:13:30 +01:00
Matthias Schiffer
93c1d77e07
gluon-web-theme: add missing dependencies 2018-02-25 17:13:30 +01:00
Matthias Schiffer
d5dc7a63fc
modules: update LEDE
01d7a5d7dee2 perf: restrict libunwind dependency to archs that actually support libunwind
b345cc24892d libunwind: fix build with musl on PPC
2018-02-25 17:11:16 +01:00
Matthias Schiffer
37cdea9733
gluon-web-*: consistently use <%| tag 2018-02-23 20:05:07 +01:00
Matthias Schiffer
dd23a805c2
gluon-web: add new <%| tag for escaped expressions 2018-02-23 19:45:28 +01:00
Matthias Schiffer
961c9db81f
gluon-web-mesh-vpn-fastd: remove "gluon" from view paths
These files are already located in /lib/gluon, no need to add it a second
time.
2018-02-23 18:55:04 +01:00
Matthias Schiffer
b2b489854e
gluon-config-mode-core: remove "gluon" from view paths
These files are already located in /lib/gluon, no need to add it a second
time.
2018-02-23 18:53:41 +01:00
Matthias Schiffer
002ab9b0e5
docs: package/gluon-config-mode-domain-select: fix syntax error 2018-02-23 14:06:43 +01:00
Matthias Schiffer
4ba7356a24
docs: dev/web: update i18n docs 2018-02-23 14:05:32 +01:00
Matthias Schiffer
f558279137
contrib: update i18n-scan.pl script 2018-02-23 13:39:56 +01:00
Matthias Schiffer
88789b1536
gluon-web: update i18n strings 2018-02-23 13:39:56 +01:00
Matthias Schiffer
172a02e2dc
gluon-config-mode-domain-select: remove i18n build commands
gluon-config-mode-domain-select does not have any i18n files of its own.
2018-02-23 13:39:56 +01:00
Matthias Schiffer
557565e189
gluon-web: add i18n package namespaces 2018-02-23 13:39:56 +01:00
Matthias Schiffer
1a426c3bb9
gluon-web: make pcdata() prototype match lmo_translate() 2018-02-23 02:08:25 +01:00
Matthias Schiffer
93d3393993
gluon-web: make buf_length() argument const 2018-02-23 02:08:11 +01:00
Matthias Schiffer
2681622018
gluon-web: build with -fvisibility=hidden 2018-02-23 01:05:27 +01:00
Matthias Schiffer
43e70f351f
gluon-web: handle translation and escaping in generated Lua code
By emitting Lua code to call translate() and pcdata(), we are more
flexible than when doing this internally in the parser. The performance
penalty should be negligible.
2018-02-23 00:57:03 +01:00
Matthias Schiffer
933cc3d7d9
gluon-web: use ' instead of " for strings in generated Lua code
We need a bit less escaping this way.
2018-02-23 00:34:06 +01:00
Matthias Schiffer
3e292ba06f
gluon-web: close FDs after mmap() 2018-02-23 00:03:57 +01:00
Matthias Schiffer
99b4d2eaf0
gluon-web: clean up LMO code 2018-02-22 22:47:27 +01:00
Matthias Schiffer
3203970969
gluon-web: clean up parser 2018-02-22 21:13:24 +01:00
Matthias Schiffer
5a20f9794c
gluon-web: clean up buffer handling 2018-02-22 21:13:24 +01:00
Matthias Schiffer
624d969c52
gluon-web: compile with -std=c99 -Wall -Wextra
Also fix all warnings.
2018-02-22 21:13:23 +01:00
Matthias Schiffer
56a10e03b3
gluon-web: update copyright 2018-02-22 21:13:23 +01:00
Matthias Schiffer
7e5f0fe1d5
gluon-web: clean up opening files
Open with O_CLOEXEC, use fstat() instead of stat().
2018-02-22 21:13:23 +01:00
Matthias Schiffer
94f22e50e6
gluon-web: clean up malloc() calls 2018-02-22 21:13:23 +01:00
Matthias Schiffer
f957593f26
gluon-web: template_lmo: clean up sfh_hash() 2018-02-22 21:13:23 +01:00
Matthias Schiffer
9e8a6ec2b5
gluon-web: remove lmo_canon_hash()
Our strings can be looked up verbatim.
2018-02-22 13:58:20 +01:00
Matthias Schiffer
b5817f5523
gluon-web: replace custom strfind() function with memmem() 2018-02-22 13:37:57 +01:00
Matthias Schiffer
0ff4761a57
gluon-web: remove unnecessary template_lualib.h 2018-02-22 13:34:32 +01:00
Matthias Schiffer
91ae553c93
gluon-web-node-role: don't mention "Freifunk" in the labels 2018-02-22 03:27:29 +01:00
Matthias Schiffer
5b1989249a
modules: update Gluon packages
5c6476ea5893 autoupdater: use safe allocation functions
3566cabef51d autoupdater: add safe allocation functions
0b61fee98e85 autoupdater: Check if allocation of uci contect was successfull
c802276581e0 autoupdater: uclient: fix nullpointer dereference on invalid URL (#183)
2018-02-22 02:43:57 +01:00
Matthias Schiffer
b943691488
modules: update LEDE
788312ca59c5 uqmi: ensure CID is a numeric value before proceeding
b934aa2f2144 kernel: update 17.01 kernel to 4.4.116
b3b16c8ce5c6 uqmi: use built-in command for data-link verification
e9eb219e5a07 uqmi: use correct value for connection checking
5661ac1de4d8 uqmi: use general method for state cleaning
7c259fb98018 uqmi: silence error on pin verification
046222dfaf12 uqmi: fix raw-ip mode for newer lte modems
0393009ec84e net: uqmi: fix blocking in endless loops when unplugging device
31ae7381b8db kernel: refresh patches
3b227103e6a3 kernel: backport raw-ip mode for newer QMI LTE modems
f60be720772c base-files: don't evaluate block-device uevent
623cdc4ffeef ramips: backport mt7530/762x switch fixes
b15d54e659b4 perf: use libunwind
566ff9e6ee69 libunwind: enable build for arm
2018-02-20 23:05:41 +01:00
Andreas Ziegler
b38ca0a794
docs: update copyright year in sphinx's conf.py 2018-02-20 15:45:43 +01:00
lemoer
84618ed65a docs: add features/vpn to index (#1330) 2018-02-20 15:28:15 +01:00
Jan-Tarek Butt
60ca1ddf1a docs: add Unifi AC-LR and AC-Mesh to HW list. 2018-02-20 15:22:21 +01:00
Jan-Tarek Butt
be286c4c69 ar71xx-generic: set unifi-ac-lr alias on ac-lite 2018-02-20 15:22:21 +01:00
lemoer
1a5ae67ff8 docs: add general documentation about vpn protocols (#1330) 2018-02-19 08:01:06 +01:00
Christof Schulze
9711afaf69
gluon-core: allow multiple domain names for next_node-feature
* change type of next_node.name
* create domain entry for each entry and add to dnsmasq configuration

[Matthias Schiffer: reword documentation]
2018-02-16 15:15:31 +01:00
T-X
b3762fc61c gluon-client-bridge: move IPv4 local subnet route to br-client (#1312)
This patch moves the prefix4 subnet route from the local-node veth
device to br-client (while keeping the next node ipv4 address on the
local node device).

This is in preparation to allow routing over the br-client interface
later.
2018-02-16 00:00:12 +01:00
Christof Schulze
f94a410738 gluon-l3roamd: let l3roam0 interface and routes be set up by l3roamd 2018-02-15 23:54:06 +01:00
Christof Schulze
e724fec260 gluon-l3roamd: adjust l3roamd startup parameters
* use local socket
* use main routing table,
* pass client-bridge
2018-02-15 23:54:06 +01:00
Matthias Schiffer
62d8d3e8f2
Update LEDE patches 2018-02-15 23:27:15 +01:00
Linus Lüssing
84a6f65f02 gluon-ebtables-limit-arp: a package for ARP rate-limiting
This package adds filters to limit the amount of ARP Requests
devices are allowed to send into the mesh. The limits are 6 packets
per minute per client device, by MAC address, and 1 per second per
node in total.

A burst of up to 50 ARP Requests is allowed until the rate-limiting
takes effect (see --limit-burst in the ebtables manpage).

Furthermore, ARP Requests with a target IP already present in the
batman-adv DAT Cache are excluded from the rate-limiting,
both regarding counting and filtering, as batman-adv will respond
locally with no burden for the mesh. Therefore, this limiter
should not affect popular target IPs, like gateways.

However it should mitigate the problem of curious people or
smart devices scanning the whole IP range. Which could create
a significant amount of overhead for all participants so far.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2018-02-15 23:21:11 +01:00
Linus Lüssing
66d4cdf466 kernel: bridge: ebtables: Avoid resetting limit rule state
This is needed for the Gluon ARP limiter to work without hiccups in
traffic.

Link: https://patchwork.ozlabs.org/patch/841210/
Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2018-02-15 23:21:11 +01:00
kb-light
b98956e47e
gluon-config-mode-domain-select: new package
[Matthias Schiffer: slightly clean up code]
2018-02-15 20:57:53 +01:00
Matthias Schiffer
0dd03597a6
gluon-config-mode-core: allow returning functions from wizard modules
Allow returning functions in addition to the names of UCI packages to
commit. Functions are run after all packages have been committed.
2018-02-15 20:57:53 +01:00
Matthias Schiffer
345a5de861
gluon-core: add newline to the end of sysconfig files
Both gluon.sysconfig and libgluonutil already remove the trailing newline
if it exists. It's nicer to avoid files without a trailing newline, e.g.
for printing the file contents in a terminal.
2018-02-15 20:57:53 +01:00
Martin Weinelt
427c83754b gluon-core: 200-wireless: upgrade 11ac radios to VHT20 (#1328)
Patch originally authored by @oleeander.

Fixes #424
2018-02-15 20:29:19 +01:00
Matthias Schiffer
d61f6a1e85
gluon-core: rename iterate_radios() to foreach_radio(), pass whole radio section
Allows to remove some redundant UCI lookups.
2018-02-15 14:04:37 +01:00
Matthias Schiffer
ffa5bdd716
modules: update Gluon packages
7abd688e6ae7 sse-multiplex: don't use stdio FILE I/O for nonblocking sockets
2018-02-13 22:31:03 +01:00
Matthias Schiffer
985d0cfd81
modules: update LEDE
2e26bdfeca ar71xx: remove bs-partition ro-flag for UniFi AC
28483d4ab2 procd: update to latest git HEAD
2018-02-11 19:42:51 +01:00
Karsten
f69fbf7d05 gluon-core: don't disable legacy mesh on mesh_lan on reconfigure (#1323)
Fixes #1322
2018-02-07 07:33:25 +01:00
Andreas Ziegler
4315ef7a1f sunxi: cleanup BROKEN flag formatting 2018-02-07 04:03:00 +01:00
Julian
167e1b34dc sunxi: LeMaker Banana Pi: remove BROKEN (#1325) 2018-02-06 18:24:46 +01:00
Martin Weinelt
42763d21dc
gluon-mesh-vpn-core: add public key to nodeinfo response
This is currently only implemented in the gluon-mesh-vpn-fastd
package.

Advertising the public key may be deemed problematic when
your threat-model involves protecting the nodes privacy
from tunnel traffic correlation by onlink observers.

It can be enabled by setting site.mesh_vpn.fastd.pubkey_privacy
to `false`.
2018-02-04 20:47:53 +01:00
Matthias Schiffer
623faf794a
gluon-web: fix access to undefined in checkvalue()
Fixes: cfe1bba8 "gluon-web: fix radio button view of ListValues"
2018-02-04 18:57:27 +01:00
Matthias Schiffer
9ece0daa76
gluon-web: ListValue: convert keys to strings before adding to key list
Fixes validation of ListValues.

Fixes: ec532b95 "gluon-web: extend ListValue with optional and unset
values"
2018-02-04 18:57:27 +01:00
Vincent Wiemann
273a60fe62 ramips-mt7621: Add support for ZBT-WG3526-32M (#1296)
including backport of mtd patches.

The general flash issue (32MB) was discussed here:
https://gist.github.com/dmke/d389bc364b3f73f525076eaee0019dc1
The resulting patch was the following:
http://lists.infradead.org/pipermail/linux-mtd/2016-December/070889.html

Another patch by nbd168 added the required mtd read operations for supporting ZBT-WG3526-32M:
https://github.com/lede-project/source/commit/22d982e#diff-3835f027e16e6416090c1833bc732af3
2018-02-04 17:42:48 +01:00
Matthias Schiffer
c7ab72317e
lede: update patches 2018-02-03 14:22:48 +01:00
Matthias Schiffer
87ced3c5c6
modules: update LEDE
b1205a9211 ar71xx: /lib/ar71xx.sh: add model detection for TP-Link TL-WR810N
fbeae9d891 iptables: make kmod-ipt-debug part of default ALL build
6ea9a702c5 iptables: Fix target TRACE issue
00fa1e4108 curl: fix libcurl/mbedtls async interface
d5278cc48b kernel: bump 4.4 to 4.4.112 for 17.01
2ae0741f3b dnsmasq: backport validation fix in dnssec security fix
58d60bd283 dnsmasq: backport dnssec security fix for 17.01
d626aa005b mountd: bump to git HEAD version
f0336975be kernel: bump 4.4 to 4.4.111 for 17.01
fb6f21c657 kmod-sched-cake: bump to latest cake bake for 17.01
2e8a3bb35f ar71xx: Netgear WNR2000v4: do not include USB packages [17.01]
3fa86282fa build: fix restoring /etc/opkg with PER_DEVICE_ROOTFS
987a7e3175 ramips: fix lenovo newifi-y1 switch and LED config
dbb5ffaed5 ramips: firewrt: indicate boot status via LED
2018-02-03 14:17:29 +01:00
Matthias Schiffer
c479d9160d
gluon-core: don't request a prefix via DHCPv6 on WAN
The prefix is not used, and requesting it leads to odhcp6c log spam with
certain DHCPv6 servers.
2018-02-03 03:02:56 +01:00
Matthias Schiffer
09c2e60cd4
gluon-core: upgrade/110-network: fix formatting 2018-02-03 03:02:20 +01:00
Matthias Schiffer
6137169104
docs, README: Gluon v2017.1.5 2018-01-31 21:56:01 +01:00
Matthias Schiffer
40efe80c2f
docs, README: Gluon v2017.1.4 2018-01-31 21:54:59 +01:00
Matthias Schiffer
ec532b95cf
gluon-web: extend ListValue with optional and unset values
If a value is unset or optional, an empty choice is added to the selection.
This empty choice will be marked as invalid if the value is not optional.

This is properly supported for the 'select' widget only for now, and not
for 'radio'.
2018-01-31 17:08:21 +01:00
Matthias Schiffer
cfe1bba8ae
gluon-web: fix radio button view of ListValues
Pretty much everything about this was broken:
* Fix dependency tracking
* Fix vertical orientation
* Fix paddings
* Add theming
2018-01-31 15:47:45 +01:00
Matthias Schiffer
dbfd22d651
gluon-web: simplify DynamicList data attributes, respect size option 2018-01-30 23:55:08 +01:00
Matthias Schiffer
bc75ce5c86
gluon-site: remove dependency of GLUON_MULTIDOMAIN on gluon-site
Solves a recursive dependency problem.

While we're at it, also fix the description string.
2018-01-28 11:24:42 +01:00
Matthias Schiffer
ff073f55d8
Merge pull request #1318 from rotanid/target-cleanup
target files cleanup: variable checks and comments
2018-01-27 13:04:15 +01:00
Andreas Ziegler
e9362cb724 targets: update & cleanup reasons for BROKEN flags 2018-01-26 14:17:44 +01:00
Andreas Ziegler
e92140c593 targets: remove check if ATH10K_PACKAGES is set
as GLUON_WLAN_MESH now is set by default, ATH10K_PACKAGES is set by default, too
2018-01-26 14:17:35 +01:00
Matthias Schiffer
6ae067cb37
gluon-core: add domain aliases and pretty name
Based-on-patch-by: lemoer <git@irrelefant.net>
2018-01-26 12:32:47 +01:00
lemoer
2ef0af5fe8
gluon-respondd: add system.domain_code to respondd provider "nodeinfo"
[Matthias Schiffer: rebase]
2018-01-26 12:32:47 +01:00
Matthias Schiffer
8cb0388416
scripts/check_site.lua: enable in_site()/in_domain() checks 2018-01-26 12:32:47 +01:00
lemoer
146787fa5c
libgluonutil: merge domain and site configs
[Matthias Schiffer: rebase and simplify]
2018-01-26 12:32:47 +01:00
Matthias Schiffer
a2f45d0d32
gluon-core: store default domain in UCI 2018-01-26 12:32:46 +01:00
Matthias Schiffer
51c0ceeb55
scripts/check_site.lua: merge site and domains for validation
Each domain is validated separately, preferring domain values to site
values.

Based-on-patch-by: lemoer <git@irrelefant.net>
2018-01-26 12:32:46 +01:00
Matthias Schiffer
24a085a542
gluon-site: add default domain and check for it
This does not do anything yet, as this_domain() is not implemented yet.

Based-on-patch-by: lemoer <git@irrelefant.net>
2018-01-26 12:32:46 +01:00
Matthias Schiffer
07dbfea617
gluon-site: disable multidomain support by default 2018-01-26 12:32:46 +01:00
Matthias Schiffer
faceb3932c
config: check if GLUON_DEBUG is 1 rather than nonempty 2018-01-26 12:32:46 +01:00
Andreas Ziegler
a99fdf7919 ramips-mt7621: Netgear WNDR3700v5 has no factory image
fixes build after 3ec63b8c
2018-01-26 01:45:49 +01:00
Jan-Philipp Litza
cf329daaf0
Add package gluon-radv-filterd
This package drops all incoming router advertisements except for the
default router with the best metric according to B.A.T.M.A.N. advanced.

Note that advertisements originating from the node itself (for example
via gluon-radvd) are not affected.
2018-01-25 23:02:49 +01:00
Matthias Schiffer
7ae8a51126
gluon-core: allow zero VXLAN UDP checksum on RX
Also disabling TX checksums and not only allowing incoming packets without
checksum will provide another small speedup. As doing so would break wired
meshing with VXLAN-enabled nodes that require non-zero checksums, we will
wait a few days before this step.
2018-01-24 22:41:29 +01:00
Matthias Schiffer
e54b37d835
gluon-core: firewall: move VXLAN rules to the top
Evaluating these rules before all the ICMPv6 rules improves wired mesh
throughput measurably.
2018-01-24 22:41:29 +01:00
Matthias Schiffer
a9edd43693
Avoid unaligned memory accesses in VXLAN and batman-adv
Improves performance slightly.
2018-01-24 22:41:23 +01:00
Matthias Schiffer
2950cc3f59
gluon-core: only use a bridge for wired meshing when necessary
On most devices, there is only a single LAN interface connected to all LAN
ports, so no bridge is necessary.
2018-01-24 22:16:09 +01:00
Matthias Schiffer
8b44d09963
scripts/generate_manifest.sh: fix filesize for symlinks
scripts/filesize.sh doesn't follow symlinks.

Fixes #1316
2018-01-24 09:49:21 +01:00
Matthias Schiffer
4d4626f1c5
batman-adv: add fixes for packet checksum handling
Fixes "hw csum failure" log spam in batman-adv.
2018-01-23 12:14:29 +01:00
Matthias Schiffer
c89d4f5bfa
modules: update routing packages
86375f5 alfred: adjust intervals
c5f18d5 bird: fix build dependencies
013b91d nat46: harden 464xlat teardown logic
d464bf1 bmx6: fix gcc6&7 warnings, avoid json-c patch
f48f332 nodogsplash2: update to version 2.0.1 (#344)
c3487c6 nodogsplash2: Fix Startup Failure (#343)
9abfeba mcproxy: update to latest version (#339)
d3b2d83 bmx7_json: Fix broken include of json.h
5e96695 nodogsplash2: change configuration defaults (#341)
679f780 bmx: Use repos from https://github.com/bmx-routing and remove bmx7 json-c patch
69ef0bb nodogsplash2: set the default webroot explicitly
467f0b6 batman-adv: Fix missing function name for timer_setup
dabd584 cjdns: update to version 0.20
7cb7b83 bird-openwrt: update to version 0.3
3eb8bf4 alfred: upgrade package to latest release 2017.4
e211376 batctl: upgrade package to latest release 2017.4
d046353 batman-adv: upgrade package to latest release 2017.4
b47bae1 smcroute: make build id optional
73601c9 mrd6: remove build timestamp
1c6ef01 mrd6: refresh patches
78049b4 [olsr] Bump olsr version to 0.9.6.2
8d12cf5 alfred: upgrade package to latest release 2017.3
34db538 batctl: upgrade package to latest release 2017.3
14daec6 batman-adv: upgrade package to latest release 2017.3
7d56487 batman-adv: Fix conflicts with compat-wireless backports-4.14-rc1
187937b batman-adv: Prevent FTBFS when redefining ether_setup
bb8271c Update OONF to 0.14.1-1
4c76240 Update 0.14.1 release
565cd8d v0.14.1
560504b Control build type by CONFIG_DEBUG option
5a9cd90 Fix http plugin option for olsrd2
cfb3e95 Allow HTTP Plugin
15e5046 olsrd: pud: does not depend on ncurses
71d0a0b Add v0.14.0 OONF
91e76a2 mcproxy: remove pedantic flag to allow compilation with musl
2018-01-23 12:14:29 +01:00
Matthias Schiffer
0d4bb8ff60
modules: update Gluon packages
9a6ad5c batman-adv-legacy: update to 2018-01-23 git version
ea9c5dc batman-adv-legacy: update to 2018-01-22 git version

Fixes "hw csum failure" log spam in batman-adv-legacy.
2018-01-23 12:14:28 +01:00
Matthias Schiffer
962ab3f92b
modules: update Gluon packages
fc194bc autoupdater: uclient: add error handling in connection setup
2018-01-22 11:00:07 +01:00
Andreas Ziegler
d586720c5c ar71xx-generic: add support for Ubiquiti NanoBeam M5
marked as BROKEN for now as it is untested

related issue: #1099
2018-01-20 15:38:49 +01:00
Andreas Ziegler
c4e3cca1d3 ar71xx-tiny: add support for TP-Link TL-WR802N v1
marked as BROKEN for now as it is untested
2018-01-19 23:47:36 +01:00
Andreas Ziegler
708aae5015 ar71xx-generic: add support for TP-Link TL-WR810N
marked as BROKEN for now as it is untested
2018-01-19 23:47:31 +01:00
Andreas Ziegler
3ec63b8c70 ar71xx-generic: add support for Netgear WNDR3700v5
fixes #442
2018-01-19 20:45:29 +01:00
Matthias Schiffer
0cb4cfdadf
docs: dev/hardware: remove some outdated info, reword a bit 2018-01-19 14:17:33 +01:00
Matthias Schiffer
c84820cb08
package/gluon.mk: add to PKG_FILE_DEPENDS
Ensure packages get rebuilt when gluon.mk changes.
2018-01-19 13:22:26 +01:00
Matthias Schiffer
775028475b
check_site: move site loading logic to check_site_lib (which is renamed to check_site.lua) 2018-01-19 12:33:52 +01:00
Matthias Schiffer
43628c1679
scripts/check_site_lib.lua: improve display of invalid values 2018-01-19 11:02:33 +01:00
Matthias Schiffer
7ccdacd294
treewide: rework check_site_lib.lua
In addition to significant internal differences in check_site_lib.lua (in
particular unifying error handling to a single place for the upcoming
multi-domain support), this changes the way fields are addressed in site
check scripts: rather than providing a string like 'next_node.ip6', the
path is passed as an array {'next_node', 'ip6'}.

Other changes in site check scripts:
* need_array and need_table now pass the full path to the sub fields to the
subcheck instead of the key and value
* Any check referring to a field inside a table implies that all higher
levels must be tables if they exist: a check for {'next_node', 'ip6'} adds
an implicit (optional) check for {'next_node'}, which allows to remove many
explicit checks for such tables
2018-01-19 10:12:43 +01:00
Matthias Schiffer
414dfa8155
libgluonutil: simplify CMakeLists.txt
libgluonutil is not usable outside the OpenWrt/LEDE environment anyways, so
it doesn't make much sense to make the CMakeLists.txt overly generic.
2018-01-19 06:23:29 +01:00
Matthias Schiffer
020afc856f
gluon-site: install domain configs
The domain configs are not checked yet, and not used for anything.

Based-on-patch-by: lemoer <git@irrelefant.net>
2018-01-19 05:44:25 +01:00
lemoer
50812b162c
treewide: forbid use of selected site variables in domain specific or site configs
[Matthias schiffer: rebase, add a few more restrictions]
2018-01-19 04:05:27 +01:00
Matthias Schiffer
8d8d4fa0c3
scripts/check_site_lib.lua: introduce in_site() and in_domain() helpers
These helpers are no-ops for now, until the actual multi-domain support is
added.
2018-01-19 03:30:50 +01:00
lemoer
b520bf5c50
gluon-core: rename site_seed to domain_seed
[Matthias Schiffer: rebase]
2018-01-19 03:30:06 +01:00
Matthias Schiffer
1dd9845db1
package/gluon.mk: use nicer escaping in GluonCheckSite 2018-01-19 01:38:56 +01:00
lemoer
adcd5b7311
gluon-core: add gluon-reconfigure script
Not useful by itself except for testing; will be used for multi-domain
support.

[Matthias Schiffer: rename script, use for initial configuration]
2018-01-19 01:10:39 +01:00
lemoer
0f5d932c4f
gluon-core: add util gluon-show-site to print merged site config
This should not convert JSON to a Lua table and back, as this loses the
distinction between arrays and objects, but as our site.conf is defined in
Lua anyways (for now), this can be fixed in a later revision.

[Matthias Schiffer: rename to gluon-show-site, rebase]
2018-01-19 01:07:44 +01:00
lemoer
5817170821
gluon-core: introduce "gluon" uci package
[Matthias Schiffer: change section name and commit message]
2018-01-19 00:41:25 +01:00
Matthias Schiffer
0b80f1b5ce
gluon-core: reimplement gluon.site module in C
By basing the Lua gluon.site module on gluonutil_load_site_config(), the
config load implementation needs to changed only in a single place for
multi-domain support.
2018-01-18 16:29:00 +01:00
Matthias Schiffer
6cf88c3b03
Replace luci-lib-jsonc with our own lua-jsonc 2018-01-18 16:28:59 +01:00
Matthias Schiffer
4d7740ae97
modules: update Gluon packages
d14cede lua-jsonc: new package
309dacf batman-adv-legacy: batctl: backport TL header lines fix (#181)
2018-01-18 16:28:56 +01:00
Matthias Schiffer
12103d9638
gluon-web: remove useless serialize_json alias 2018-01-18 07:49:00 +01:00
Matthias Schiffer
01336f70ec
gluon-core: firewall: make the default input policy REJECT
Fixes #1311
2018-01-17 09:51:10 +01:00
Matthias Schiffer
a32fddf38c
gluon-core: firewall: accept inbound VXLAN traffic on wired mesh interfaces
Fixes #1308
2018-01-17 09:51:10 +01:00
Matthias Schiffer
454555a030
gluon-alfred: firewall: allow alfred server announces from mesh 2018-01-17 08:06:42 +01:00
Matthias Schiffer
18feb29b29
gluon-autoupdater: don't reference old autoupdater util library
Fixes #1310
2018-01-17 01:06:15 +01:00
David Bauer
99b02701cc ar71xx: add support for TP-Link Archer C58/C59/C60 (#1281) 2018-01-16 18:51:12 +01:00
Andreas Ziegler
fb93c3b259 ar71xx: correct model name for TL-WR1043N v5, fixes #1307 2018-01-16 18:30:37 +01:00
Matthias Schiffer
c72adcacae
modules: update Gluon packages
49cb4b3 autoupdater: new implementation
2018-01-13 00:25:08 +01:00
Matthias Schiffer
18b9174d03
Use 'disabled' attribute instead of 'auto' to disable wired mesh interfaces
The 'auto' attribute still allows enabling the interface using ifup, which
is not intended when wired mesh is disabled.
2018-01-11 23:06:36 +01:00
Matthias Schiffer
0b6f433478
Merge pull request #1303 from rotanid/mesh-doc-pr
docs: move GLUON_WLAN_MESH to site.rst & improve text
2018-01-11 22:03:52 +01:00
Andreas Ziegler
979c69ffc3 docs: move GLUON_WLAN_MESH to site.rst & improve text
fixes an error and removes the focus on ath10k
2018-01-11 03:59:47 +01:00
Tata
919dda90b3 build: introduce GLUON_WLAN_MESH build variable (#1298)
defaults to 11s, allowing to build devices without IBSS-support

obsoletes GLUON_ATH10K_MESH
2018-01-10 15:49:33 +01:00
Matthias Schiffer
e65dc0e7dd
docs: add package/gluon-web-logging to index 2018-01-09 23:12:28 +01:00
Matthias Schiffer
dce388fdc7
modules: update LEDE
c3cdc53164 ag71xx: Fix rx ring buffer stall on small packets flood on qca956x and qca953x.
e07ee06aad ar71xx: QCA956X: add missing register
7bc25dfa63 mvebu: fix mvneta build with Linux 4.4.110
541a1a7ff5 lantiq: activate noise margin delta for VDSL too
dea8979a81 Lantiq: make possible to tweak DSL SRN from UCI
9934231670 libubox: update to latest lede-17.01 git HEAD
7f5a040359 kernel: update kernel 4.4 to version 4.4.110
ddedcb19e5 brcm47xx: relocate the stack in loader
da43069f5b brcm47xx: relocate loader to higher address
f19416ae9d fstools: backport fix from master branch
55c23e44f4 procd: update to latest git HEAD
ffbbcc9b34 brcm47xx: image: build firmware for Asus WL-500g Deluxe
0426596453 Revert "iptables: fix nftables compile issue (FS#711)"
da126d557c iptables: fix nftables compile issue (FS#711)
473e994571 rpcd: backport version 2017-12-07 from master
b833944eb2 uci: update to HEAD of lede-17.01 branch
dca4dfacf2 iproute2: cake: fix patch format error
ee55629a30 kernel: bump 4.4 to 4.4.108 for 17.01
c4e9487cf5 iproute2: cake: support new operating modes for 17.01
4f1dca9eca kmod-sched-cake: bump to latest bake of cake for 17.01
959a49dc15 ramips: fix widora neo diag led
a1908023cc base-files: fix logic when to show failsafe banner
1c9299877b base-files: set FAILSAFE in /etc/profile when /tmp/.failsafe exists
2603c85060 wireguard: bump to 20171221
f8a441e020 kernel: bump 4.4 to 4.4.107
ceea0ac25d wireguard: bump to 20171211
ebb54740c7 brcm47xx: remove target specific network preinit config
b41d154f50 rules.mk: export TMPDIR
e719a08cc1 usbutils: Update usb.ids file to latest
4cfcfecf76 hostapd: remove unused local var declaration
796bc21023 hostapd: don't set htmode for wpa_supplicant
50147d41b9 libnl-tiny: use fixed message size instead of using the page size
0625814426 packages: nvram: fix memory leak in _nvram_free
0f175041ad mac80211: don't pass the hostapd ctrl iface in adhoc
05f0fac189 hostapd: explicitly set beacon interval for wpa_supplicant
7f78a86254 hostapd: set mcast_rate in mesh mode
c315843f88 igmpproxy: remove firewall rules when service is stopped
91e48304a9 openvpn: add support to start/stop single instances
e5c284bb81 package/elfutils: add CFLAG -Wno-format-nonliteral
dde29b2b01 tools/coreutils: install readlink
2f75641b1f uhttpd: fix query string handling
79024cd3be openssl: fix cryptodev config dependency
bead60c2d3 uqmi: replace legacy command invoke with newer type
5872c19c63 procd: Always tell cmake whether to include seccomp support or not
cd901ef1a6 libunwind: disable building with ssp
1aedf2f149 tools/squashfs: use host cflags
7fa70027d4 ppp: make the patches apply correctly again
d63eb474b3 ppp: fix compile warning
9bd667fc24 dropbear: fix PKG_CONFIG_DEPENDS
9d1bfb8f4d dropbear: make ssh compression support configurable
ed4f4f1a8e procd: Install seccomp-trace symlink
77e79b2dd0 openvpn: update to 2.4.4
5beb0abc83 build: remove @ as it's causing an error
eff1f7e7ef usbutils: avoid duplicating the git revision
9cf371c1f4 dnsmasq: Pass TARGET_CPPFLAGS to Makefile
2f80d84638 wwan: json format in some modem definitions
c61cf4a447 base-files: add /etc/profile.d to conffiles
bdc998c696 base-files: order conffiles alphabetically
c58e824acc procd: mdns: Support txt values with spaces
aaa73fea36 ar71xx: fix switch port numbering on RB750r2 and RB750UPr2
b69ea02a00 scripts/dowload.pl: use glob to expand target dir
80a22eee4b samba36: Remove syslog and load printers lines.
71797b6eca samba36: Don't resolve interfaces.
1458bc2d9c samba36: Remove guest ok since LuCI configures it.
f0065554b2 config: make CONFIG_ALL_* select other CONIFG_ALL_* options
2b88309335 nvram: add help message for nvram magic not found
118a2ea0bc nvram: improve argument check when program start
c446ee4ad4 nvram: add usage() function
9e84d333b1 nvram: fix memory leak
3b6b892d67 ca-certificates: Update to 20170717
23b9dc2eca base-files: drop unused preinit_echo function
ca7c9db47f tools/pkg-config: Update to 0.29.2
75d8127338 base-files: suppress uci not found output in login.sh
b616aa6db7 scripts/package-metadata.pl: inhibit compile deps on missing build types
2e1a87a3e1 build: bundle-libraries.sh: do not override argv[0] in inner exec calls
a37f8b0c6e samba36: Remove legacy options
89c4f47caa scripts/download.pl: Adjust URLs
338968a170 build: fix invocation of bundled ld.so in SDK and Imagebuilder
0a976262a5 kmod-sched-cake: drop maintainer
610e2afdcc zlib: use default Build/Configure rule
cf11a41af6 lzo: use default Build/Configure rule
c86490605c netfilter: add iptables-mod-rpfilter package
ea23ba9a25 bzip2: add symlink to binary
d413c75d24 dropbear: add option to set max auth tries
8693ab5152 dropbear: server support option '-T' max auth tries
0e6a6c8487 hostapd: configure NAS ID regardless of encryption
ef3649d90e hostapd: add acct_interval option
3027a68093 valgrind: bump to 3.13.0
3129db331c busybox: backport 'ip rule suppress_{prefixlength, ifgroup}'
86158ad37d libunwind: update to version 1.2.1
59004433e9 imagebuilder: don't rewrite package list output
74eeb07817 imagebuilder: clean package_list
7f3f2bc03b build: remove old kernel-headers build directories
c7234e3036 imagebuilder: add package_list function
9c3e4b5434 base-files: board.json's switch reset means existence, not argument
7d1f4073ce gdb: remove Build/Compile rule ; default one works
9a99039989 rb532: enable high-res timers, refresh kernel config
e802cbfc25 xburst: enable high-res timers, refresh kernel config
e01367e3af kernel: add CONFIG_SCHED_HRTICK=y to the generic config
6e1e2e7b96 package/grub2: update to 2.02
13a5568d6e ip17xx: correct aneg_done return value
816fb3433b mvswitch: fix autonegotiation issue
41ee45428b ppp: propagate master firewall zone to dynamic slave interface
a44c44077e usbmode: remove devices with unsupported modes
e8bd0a606a tar: override symlink permissions
59a1c1675d tools/sparse: Update to snapshot 2017-03-31
a6e5943a2a elfutils: Pass -Wno-unused-result to silence warnings as errors
08070221ed gcc: fix documentation entries added by 910-mbsd_multi.patch
ef43c04c34 scripts/download.pl: print the command used to download files
6e09b20563 tools/libressl: update to 2.5.4
08be74f699 tools/isl: update to 0.18
26ea59cd01 lldpd: bump to 0.9.7
444b64f533 libunwind: update to 1.2
e5612d6640 lantiq: spi: double time out tolerance
28c350f2f0 base-files: fix default procd reload
108a42bcba ramips: support jumbo frame on mt7621 up to 2k
8d4c047dd1 lldpd: drop specific respawn params [use system-wide]
8ee15ed61a elfutils: bump to 0.169
9754a9c606 devel/trace-cmd: Update to 2.6.1
79def69047 comgt-3g: enable modem before to setpin
070463fb61 devel/strace: Update to 4.16
67caf6bbce network/utils/ipset: Update to 6.32
f0a493160c mac80211: gracefully handle preexisting VIF
827f108b42 scripts: Probe external toolchains for libthread-db
bb9eb2c96e build: new fixes for symlinked .config handling
4607007a86 build: allow val.% targets to bypass the prepare steps
90575776b7 x86: keep /boot mounted for kexec
6b9eb0c73a hostapd: fix reload frequency change patch
040ff6fdbd build: remove absolute path to perl and replace with /usr/bin/env perl
98588273b1 kernel: allow selecting RTC drivers on targets without explicit RTC support
f30114c7c4 dropbear: fix procd interface trigger install
3e7f191008 include/packages-defaults.mk: Remove LARGEFILE option
a1392e08c5 netifd: return error status in reload_service
10182cb2c6 grub2: update to 2.02~rc2
38ea91ea9a base-files: use restart if no reload hook for service
9b24d99b91 iproute2: add libgenl.h and ll_map.h to InstallDev section
94597229c3 busybox: fix installation of cron and ntpd scripts in the default config
9ce30f7175 kernel: move initramfs's init script out of base-files
c8a0f3aa29 target.mk: check that CPU_TYPE has known CPU_CFLAGS mapping
977db9f08a scripts/download.pl: fix error message on hash mismatch
7fb03d9610 netifd: fix fw3 warnings in dhcp script
f69d73f1b2 build: allow specifying flow-control to grub on serial console
91821c8c0b kexec-tools: get kexec running on MUSL and x86 hardware
affff02798 busybox: don't install NTP scripts if NTP isn't configured
7ccfa826ee ar8327: Add workarounds for AR8337 switch.
0aafbf6c00 build: fix STAMP_PREPARED with quilt
80304ace58 lantiq: remove lantiq_board_model, it is unused
8be5b12ea1 lantiq: remove lantiq_board_name, use the generic function instead
0f0d742ae3 lantiq: move lantiq_board_detect() to 03_preinit_board.sh
f173464f13 base-files: add generic board_name function to functions.sh
62a8252a0f mac80211: Fix race condition leading to wifi interfaces not coming up at boot sometimes.
5f03ce1213 scripts: only generate config from feature flag if fully match
f7f69130e5 lzo: Update to 2.10
6ba0cc14e9 tools/coreutils: Update to 8.27
100553d605 tools/libressl: Update to 2.5.1
25fe034861 tools/dosfstools: Update to 4.1
ed4976d884 tools/sed: Update to 4.4
7263e3cdca lldpd: bump to 0.9.6
3225fbfcbf x86: image: drop duplicated copy of bzImage into vmlinuz
37aae44a47 libnl: Fix building with uClibc
950439234e toolchain: add musl libc.so to external toolchain
cfb5a550e4 iwcap: fix handling kill signal during dump
1411493569 x86: image: drop unneeded grub call
58e0c0feec x86: image: drop unused ROOTDELAY variable
05f0b8d18b ccache: update to 3.3.4
15efa09507 base-files: add submission service port
56b9f0ffc0 procd.sh: use parameterized respawn values
28c9731984 toolchain: Allow external toolchains to specify libthread-db
2dd9b62f82 rssileds: Fix build with external toolchains
2d31ec4c1b adb: Also pass TARGET_CPPFLAGS
ec395eeb17 swconfig: Link with libubox
c6dd059a9a px5g: Fix TARGET_LDFLAGS and add TARGET_CPPFLAGS
12b811a609 omcproxy: Update to latest HEAD
1e3ff02ea5 bsdiff: Also pass down TARGET_CPPFLAGS
051a33e7c9 thc-ipv6: Allow overriding CFLAGS
a91d8dd162 tools/m4: update 1.4.18
acd481470c build: get rid of FIND_L from host.mk
11cd6077ba build: unsilence move command
903a404663 build: skip headers install and config on make target/linux/prepare
a7fc27edce build: make Host/Install/Default use Host/Compile/Default with an extra argument
94f079e338 build: Pass -iremap gcc option as a single argument
3056122bf7 toolchain/gcc: parallelize make install
a33b0ced78 toolchain/musl: parallelize make install
1d0f7e3136 imagebuilder: make submake invocations less verbose
bdb05f5ef5 gcc: remove obsolete uclibc patch
90a43e508e toolchain/gcc: reduce source directory size by about 420 MB
82615922b0 bcm53xx: suppress osafeloader info error messages during flashing
c566a9e563 toolchain: Broaden the executable loader pattern
3387158e45 build: Suffix build directory with _$(LIBC) for external toolchains
2428b6d6b6 tools/sstrip: Fix compile under standard linux.
50b478956a openssl: update to 1.0.2n
135aa3ba7e base-files: upgrade: make get_partitions() endian agnostic
207bcea1de cyassl: update to wolfssl 3.12.2 (1 CVE)
3bb881862b mdadm: fix parameter quoting
6c1b6e8221 mdadm: Fix config generation
4fc0fb3ca3 mdadm: Do not check RUN_DIR
157b892994 kernel: remove out of tree direct-io disable hack
adc9f935c3 utils/mdadm: Update to 4.0
8bf67f63b9 mdadm: extend uci config support
4af145ea67 rules.mk: make PKG_CONFIG_DEPENDS properly track string values
2b664499cd kernel: bump 4.4 to 4.4.103 for 17.01
ed82c52a4a uqmi: also try newer pin verification
b41a2e646e opkg: bump to version 2017-12-08
f5f5f583f9 hostapd: backport fix for wnm_sleep_mode=0
19ebc19f54 hostapd: Expose the tdls_prohibit option to UCI
3590316121 dnsmasq: backport infinite dns retries fix
060b7f1fbb curl: apply CVE 2017-8816 and 2017-8817 security patches
4b5861c47d mt76: update to the latest version
f19d47f848 tools: patch various gnu tools for macOS 10.13
e5a10bc0fc samba36: backport an upstream fix for an information leak (CVE-2017-15275)
d77fe9219a ramips: backport MT7628 pinmux fixes
9601e6a0e2 ramips: add missing reset button for Nexx WT1520
0946ec0f46 wireguard: bump to snapshot 20171127
2018-01-09 19:03:34 +01:00
Linus Lüssing
4911da56e1
gluon-ebtables: Enable concurrent ebtables updates
This enables the ebtables internal locking mechanism which
will avoid race conditions between multiple, concurrent
ebtables calls.

This is a preparation for the upcoming gluon-arp-limiter
daemon, to avoid issues if upon restarting gluon-ebtables
the gluon-arp-limiter daemon tries to modify the tables.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2018-01-03 19:58:53 +01:00
Sven Eckelmann
cb03183284
ebtables: Use flock() for --concurrent option
The previous locking mechanism was not atomic, hence it was possible
that a killed ebtables process would leave the lock file in place which
in turn made future ebtables processes wait indefinitely for the lock to
become free.

Fix this by using flock(). This also simplifies code quite a bit because
there is no need for a custom signal handler or an __exit routine
anymore.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2018-01-03 19:58:53 +01:00
Matthias Schiffer
9e3ea83093
Refresh patches and fix numbering 2018-01-03 19:54:13 +01:00
David Bauer
9273e56c63 ar71xx: add support for TP-Link Archer C7 v4 (#1289) 2018-01-03 16:50:23 +01:00
Christof Schulze
621eaf3c91 modules: update url to lede-project git repository after upstream move (#1292) 2018-01-03 12:42:18 +01:00
Christof Schulze
bc2fb8cc69 gluon-respondd: firewall should allow access for devices in zone local_client (#1291) 2017-12-31 19:57:57 +01:00
Christof Schulze
910a6c8bb3 gluon-respondd: add current unix time to statistics (#1287) 2017-12-29 23:49:28 +01:00
Matthias Schiffer
d531289dee
Backport patches for rx buffer stalls on QCA953x and QCA956x
Fixes #1101
2017-12-29 16:12:52 +01:00
Matthias Schiffer
21b3dd3259
build: add file size field to manifest lines
We would like to check the file size instead of downloading indefinitely.
The file size is added in another copy of the manifest lines, which is
ignored by older autoupdater implementations.
2017-12-28 22:57:37 +01:00
Matthias Schiffer
245e0f9ecc
Merge pull request #1280 from FreifunkVogtland/libbatadv
libbatadv: Add common batman-adv helper functions library
2017-12-28 14:50:13 +01:00
Christof Schulze
41ab551518
libgluonutil: add function that retrieves the node prefix from site.conf 2017-12-27 23:50:31 +01:00
Ruben Barkow
a92cfa3194 docs: standardize package descriptions and add missing example in site-example (#1179) 2017-12-27 21:48:21 +01:00
Matthias Schiffer
8e6e06c4b8
modules: update Gluon packages
57c6796 tunneldigger: clean up version variables in Makefile
90ecf80 tunneldigger: Update to newest upstream commit: (#178)
8769d07 L3roamd bump (#180) -- use all-nodes mac
79583b3 l3roamd: bump version, fix memleaks, adjust output (#177)
030be55 l3roamd: bump version to 2017-12-11
ffd793a libbabelhelper: update version
e0e4fa2 mmfd: bump version (compile fix) (#176)
25123fe bumping versions of l3roamd, mmfd, libbabelhelper
2017-12-27 17:53:18 +01:00
Sven Eckelmann
6701aa81a5 gluon-status-page-api: Use genl helpers from libbatadv
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2017-12-27 17:40:41 +01:00
Sven Eckelmann
a267cc7ee7 gluon-mesh-batman-adv: Use genl helpers from libbatadv
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2017-12-27 17:40:35 +01:00
Sven Eckelmann
624cffc744 libbatadv: Add library for common batman-adv helpers
Interacting with batman-adv's genl interface requires some code and
definitions which could be shared between different packages. libbatadv is
trying to do this without providing any guarantee for ABI or API stability.
It is only useful in very controlled environments like gluon.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2017-12-27 17:40:30 +01:00
Matthias Schiffer
f799518194
gluon-ebtables-filter-multicast: do not filter out Bridge Loop Avoidance
batman-adv uses gratuitous ARP packets with certain target addresses for
BLA.

Fixes #1198
2017-12-27 17:22:37 +01:00
Karsten
35237c2ca1 gluon-web-network: make 'PoE Power Port[0-9]' translatable (#1173) 2017-12-27 03:11:49 +01:00
Jan-Tarek Butt
f514ec13b5
brcm2708-bcm2709: add manifest_alias for raspberry-pi-2-model-b-rev-1.1 2017-12-27 03:06:19 +01:00
Jan-Tarek Butt
7b61cb16f8
brcm2708-bcm2708: add manifest_alias for raspberry-pi-model-b-rev-2
Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>
2017-12-27 03:05:53 +01:00
Matthias Schiffer
2b1ffb3034
gluon-core, gluon-client-bridge: create local_client zone in core
As core defines basic rules for this zone, it makes sense to create it
there.
2017-12-27 02:43:34 +01:00
Matthias Schiffer
8ea5810bda
gluon-core: firewall: allow inbound ICMPv4 ping on local_node 2017-12-27 02:43:34 +01:00
Matthias Schiffer
39284f00d0
gluon-core: firewall: allow Multicast Listener Discovery on mesh/local_client
Based-on-patch-by: Christof Schulze <christof.schulze@gmx.net>
2017-12-27 02:43:33 +01:00
Matthias Schiffer
a252383918
gluon-core: firewall: remove redundant ICMPv6 output rules
OUTPUT is always accepted, no need to allow ICMPv6 explicitly.
2017-12-27 02:43:33 +01:00
Matthias Schiffer
fe2048e4df
gluon-core: firewall: coding style
Wrap long lines.
2017-12-27 02:43:33 +01:00
Ralf Jung
4bae0a429f docs: dns-cache: explain setting dns.servers a bit more (#1268) 2017-12-27 00:21:08 +01:00
edeso
ab16cea161
build: allow passing relative paths
Allow using relative paths for GLUON_SITEDIR, GLUON_OUTPUTDIR, ...

We also check for whitespace in paths now, as build will not work properly
with whitespace anyways, and Make's abspath would require escaping
otherwise.

[Matthias Schiffer: minor changes, rewrite commit message]
2017-12-25 17:54:42 +01:00
David Bauer
70784cb3b2 ar71xx: add support for TP-Link TL-WR1043N v5 (#1279) 2017-12-19 04:22:44 +01:00
Rotzbua
3e25039012 docs: README.md: switch to https URLs (#1278) 2017-12-14 16:12:10 +01:00
Steffen Förster
9136562517 ramips-rt305x: add D-Link DIR-615 rev D1-D4 2017-12-08 00:00:35 +01:00
Matthias Schiffer
d21c3e4964
modules: update LEDE
7f3dab2fc3 kernel: bump 4.4 to 4.4.102
d3f40aabba wireguard: bump to 20171122
7ec639451d ramips: fix Planex CS-QR10 device packages
6cfa7e5788 ramips: fix DCH-M225 support
e626942c33 dnsmasq: load instance-specific conf-file if exists
d64c0e54a5 rpcd: update to version 2017-11-12
ecaad8b2cb brcm47xx: fix switch port mapping on D-Link DIR-330
d851d7fa56 wireguard: fix portability issue
8751bd771d wireguard: move to kernel build directory
ed571c14e0 wireguard: bump to 0.0.20171111
c9fb48a432 procd: update to latest git HEAD (fixes and improvements)
cda8ec7dd8 openssl: update to 1.0.2m
421754191d brcm47xx: fix switch port mapping on Asus RT-N12 and RT-N16 models
95824b9bf6 rpcd: update to the latest version from 2017-11-09
792559f25b mountd: bump to git HEAD version (optimization fixes)
a0ef1c478a functions.sh: fix default_postinst function
2017-11-26 15:44:41 +01:00
kb-light
17d1c65610
ramips-mt7621: do not tag ubnt-erx(-sfp) as broken
There is no wifi, so there is no bad wifi.

[Matthias Schiffer: rebase onto master]
2017-11-26 12:46:20 +01:00
Karsten Böddeker
64cfd648cb
ramips-mt7621: add support for UBNT EdgeRouter X-SFP
[Matthias Schiffer: remove patch "ramips: simplify ubnt-erx-sfp device
definition", as it depends on other patches that have not been backported]
2017-11-26 12:44:52 +01:00
Christof Schulze
c544846bc5
gluon-neighbour-info: allow respondd replies on mesh and wan interface 2017-11-25 23:31:23 +01:00
Christof Schulze
e5b4d25451
gluon-respondd: allow access to respondd from mesh-internal addresses 2017-11-25 23:31:08 +01:00
Christof Schulze
1c1c9f8fc7
gluon-core: firewall rework, make base policy more restrictive
* gluon-core, gluon-client-bridge: introduce new firewall zone: local_client
 * gluon-core: put clients in local_client zone, introduce drop-zone,
   set dns-rules and zones
 * gluon-respondd: allow respondd on mesh
 * gluon-status-page-api: allow http input on mesh and client
2017-11-25 23:19:08 +01:00
Matthias Schiffer
7351fb5d4a
gluon-web-network: fix reading "legacy" mode settings from UCI
Fixes #1269
2017-11-25 22:08:58 +01:00
Matthias Schiffer
87c741b45e
scripts: run feeds.sh with bash like the other scripts handling modules
Fixes #1262
2017-11-23 17:44:46 +01:00
Andreas Ziegler
1ca402ee46 ramips-mt7621: ZBT-WG3526 has no factory image 2017-11-23 03:09:03 +01:00
Andreas Ziegler
14ef0387ea ramips-mt7621: add ZBT-WG3526 2017-11-23 03:05:58 +01:00
kb-light
f7f659c254
gluon-web-network: make poe_passthrough more generic 2017-11-15 22:45:22 +01:00
Andreas Ziegler
6f7504b48a docs: site-example: site.conf: fix typo 2017-11-15 03:44:53 +01:00
Matthias Schiffer
d147c987c6
modules: update LEDE
6b6578feec wireguard: version bump to 0.0.20171101
9740523763 ar71xx: fix LED config for DIR-869 A1
bdf19eec35 ipq806x: nbg6817: sync MAC addresses to the upstream values
2aff2add31 ipq806x: nbg6817: add kmod-fs-ext4 to device packages
63f6408ccc uclient: update to the latest version, fixes fetch of multiple files
2017-11-05 20:40:20 +01:00
Matthias Schiffer
460830bea1
modules: update Gluon packages
16bf1f9 libpacketmark: fix call of initialization function (again)

Fixes #1245
2017-11-04 20:56:54 +01:00
Matthias Schiffer
3fce6a6836
docs: fix recommended command line to generate site seed
Without -v, hexdump would sometimes replace duplicate bytes with "*" and
a newline.
2017-10-31 22:41:33 +01:00
Christof Schulze
94e7827ac8
gluon-status-page: improve localization (#1241) 2017-10-31 19:25:27 +01:00
Matthias Schiffer
7a53482f86
modules: update LEDE
3eae19acee ramips: fix Youku-YK1 support
8a48a53dcb tools/squashfs4: include sysmacros.h explicitly
8406e50df5 tools/squashfs: include sysmacros.h explicitly
96dbf59e5a tools/mtd-utils: include sysmacros.h explicitly
d2fd6412a6 tools/findutils: include sysmacros.h explicitly
367b4563b4 dnsmasq: restore ability to include/exclude raw device names
ee6fa8d839 lantiq: add missing default lan interface
2bee675d33 ipq806x: fix Zyxel NBG6817 WiFi button
f5935f78a1 ramips: fix default usb support for nexx wt3020-8M
2017-10-29 20:48:31 +01:00
Matthias Schiffer
f7baa2c4df
modules: update OpenWrt packages
Fixes a build issue in kmod-jool.

82ef2fd7 jool: fix PKG_BUILD_DIR to avoid kernel ABI mismatch
fee9a0aa monit: update to 5.24, use https download url
5a6fcfbc monit: update to 5.23
4479fada monit: update to 5.20, use PKG_HASH
9ce3deb8 sqlite3: update to 3.19.3
6bca8579 libs/sqlite3: Update to 3190200
0a279576 sqlite: update to 3.17.0
58a1a733 libwebsockets: add PROVIDES to both variants
e967fd8c icu: fix CVE-2017-14952 Double-Free Vulnerability [lede-17.01]
3c29b149 Revert "Provides a way to acquire the list of installed packages without the"
27bdc743 Revert "add ubus call to perform a sysupgrade and acl file for the attended"
cdcf6ad2 Revert "due to renaming .rpcd was forgotten in the Makefile"
04cbc70c due to renaming .rpcd was forgotten in the Makefile
f6c287f1 add ubus call to perform a sysupgrade and acl file for the attended sysupgrade use case as well uci defaults. Package is a part of the GSoC 17 project implementing easy sysupgrade functionality.
983819f3 Provides a way to acquire the list of installed packages without the need to have opkg available. It is being used for the GSoC 17 project implementing easy sysupgrade functionality.
cd5c4487 wireguard: drop package
9040b270 noddos: new backport of noddos from master branch
72e88678 wireguard: bump to release 0.0.20171005 for 17.01
de79f4c7 bluez: fix CVE-2017-1000250
b56e6504 tor: update to version 0.2.9.12
c69b0774 tor: update to version 0.2.9.11
ea9ca5ed ruby: bump to 2.4.2
fa3a118d collectd: uptime plugin: apply fix from upstream
4739584c mwan3: fix interface-bound traffic when interface is offline
d61bf45c haproxy: update to 1.7.8 and pending patches  - fixes reload issue with hanging process
a6a44f91 pcre: Added fix for CVE-2017-11164 by adding stack recursion limit
1434dbdf pcre: upgrade to version 8.41  - fixes security issues
ad256bbf strongswan: fix typo
a7007291 strongswan: add curve25519 plugin
1143cb9b strongswan: bump to 5.5.3
384e89b3 strongswan: bump to 5.5.2
fe233e35 net/mwan3: update Makefile
42f46570 unbound: update to 1.6.5
a3c78648 net/mwan3: remove lock file on mwan3 stop
282e9001 net/mwan3: fix ping issue if last interface recovers from failure
94a52336 net/mwan3: fix ipset generation in hotplug script with an lock
822bc96b net/mwan3: add lock for mwan3 hotplug script
70d96f5d net/mwan3: add connected network regardless of mwan3 interface enable state
8a111b5b net/mwan3: mwan3track interrupt sleep on signal (trap) event
eefc65b0 net/mwan3: fix hotplug on ACTION ifdown
7fb33ad6 mosquitto: properly use localhost instead of ipv4
75f50611 mosquitto: support more config options in UCI
956ef7a8 acme: Make sure postrm script doesn't fail
788f17e9 acme: Fix for curl linked against mbed TLS. (#4254)
5383fd42 nlbwmon: update to latest version
29fb31fe nlbwmon: add package
ce5ff274 mosquitto: update to 1.4.14
bdac4914 mosquitto: update to 1.4.13
e4e22eb9 zabbix: update to 3.2.6
4ea3c274 zabbix: partially fix zabbix-extra-mac80211
26897f09 zabbix: update to 3.2.4, use PKG_HASH
f2539c58 lighttpd: backport more mod_cgi fixes queued for 1.4.46
46014e36 coreutils: stdbuf: fix missing libstdbuf.so
e8af9ce4 gnutls: updated to 3.5.13
4c26df19 libtasn1: updated to 4.12
b91c48ba openconnect: new option mtu
7af43217 openconnect: drop stale config: interface
9c9571fd openconnect: Bump openconnect to 7.08
72928442 minidlna: backport fixes from 1.1.6 and 1.2.0 releases
ca5d4b08 openldap: update to 2.4.45
dc558eaa mosquitto: fix empty client-nossl package
33d8f9e5 libdmapsharing: update to 2.9.38
53d18a45 tor: update to version 0.2.9.10
2017-10-29 18:47:17 +01:00
Matthias Schiffer
becc90d818
build: delete lede/tmp on module updates
LEDE doesn't always notice that the metadata needs to be refreshed.
2017-10-29 18:44:30 +01:00
Matthias Schiffer
207337b5de
modules: update Gluon packages
5249974 libpacketmark: fix call of initialization function

Fixes #1245
2017-10-25 14:57:05 +02:00
Matthias Schiffer
3a8ea42595
modules: update LEDE (2017-10-23)
0780e12483 opkg: bump to 2017-10-23 (lede-17.01)
98c003e3da lantiq: ARV752DPW22: fix wireless mac address
50db9a4004 lantiq: ARV752DPW22: set correct wireless led trigger

Fixes #1246
2017-10-23 23:57:44 +02:00
lrnzo
0b4cbec0e9
docs: change group name gluon-fastd to gluon-mesh-vpn
The group was renamed during the development of Gluon v2017.1, adjust the
documentation accordingly.
2017-10-22 20:34:05 +02:00
Andreas Ziegler
a040ec0083
ar71xx: add TP-Link Archer C25 (#1238)
BROKEN because of stability issues with 5GHz enabled.
2017-10-22 01:43:20 +02:00
Matthias Schiffer
53de2e65c5
modules: update Gluon packages
6d2b807 lua-simple-uci: fix set()/tset()/section() with empty lists
5733253 libbabelhelper: adapt to new install paths due to package version change
ce7f69a use latest libbabelhelper
f76cfa8 mmfd: bump version to pull in latest adaptions to libbabelhelper
b4f97fb mmfd: bump version to pull in latest adaptions to libbabelhelper
706bef6 respondd: add diagnostics about failed module load (#171)
4f1a0c0 mmfd: bump version
f5cc0fb libbabelhelper: add initial version
2017-10-19 02:13:44 +02:00
Matthias Schiffer
184e2283ce
modules: update LEDE base
373fa54d35 kernel: bump 4.4 to 4.4.93 for 17.01
586a721d3f mountd: bump to git HEAD version (fixes SIGSEV crashes)
cdb2684dce LEDE v17.01.4: revert to branch defaults
444add156f LEDE v17.01.4: adjust config defaults
79f57e422d wireguard: version bump to 0.0.20171017
d501786ff2 hostapd: add wpa_disable_eapol_key_retries option
b6c3931ad6 hostapd: backport extra changes related to KRACK
a5e1f7f5ef mac80211: backport kernel fix for CVE-2017-13080
46e29bd078 x86: partly revert cabf775
707305a19d mac80211: Update wireless-regdb to master-2017-03-07
907d8703f4 wireguard: add wireguard to base packages
bff16304b0 brcmfmac: backport length check in brcmf_cfg80211_escan_handler()
fa0b5fce1f kernel: bump 4.4 to 4.4.92
e6fd17d04c ramips: fix compile warning in MT7621 NAND driver
2e9f3c6225 ramips: fix typo in MT7621 NAND driver
63c17142c8 hostapd: merge fixes for WPA packet number reuse with replayed messages and key reinstallation
cdd093b539 x86/64: add xen DomU support
cabf775e64 x86: Refresh subtargets kernel config
da0219ed9f x86: Fix xen serial console by removing conflicting PATA driver
f52b404aee x86/generic: use HIGHMEM64G instead of HIGHMEM4G to fix PAE and Xen
8ad1b09c6d kernel: add fix for bgmac with B50212E B1 PHY
c1023c8075 mt76: sync with version 878456caf60d from master
baa8eaaba6 bcm53xx: backport DTS changes up to the first 4.15 queued commits
94aa2b8af0 ar71xx: add rssileds to WA850RE v1 image
f67c22e0c2 toolchain/gdb: update to version 8.0.1
067221360e cmake: fix build error with Xcode 9 on macOS 12
a999f91ca3 gcc: fix build error with macOS + Xcode 9
2ce9c84a92 build: add a darwin sitefile to deal with macOS 10.12 + Xcode 9 build errors
f9a849ca84 ramips: mt7620: do not pad sysupgrade Archer images
2017-10-18 21:15:38 +02:00
Martin Weinelt
1992d4fd29 docs: mtu: fix reference to faq entry, add mtu diagram locally 2017-10-17 01:16:26 +02:00
Martin Weinelt
e4ef421711 docs: faq: clarify how to calculate proper mesh-vpn mtu value 2017-10-14 13:59:46 +02:00
Martin Weinelt
0d1d579196 docs: mesh-vpn: recommend better default mtu 2017-10-14 13:59:46 +02:00
Ruben Barkow
99c405756f gluon-web-theme: allow more width in style for input fields and selectboxes (#1229) 2017-10-14 13:42:24 +02:00
David Lutz
ced1b7ab98 contrib/sign.sh: fix typo (#1237) 2017-10-13 02:18:47 +02:00
Tarnatos
230897be86 docs: autoupdater.rst: add GLUON_RELEASE to make manifest (#1235) 2017-10-12 09:50:17 +02:00
hexa-
ea01c467f2
docs: fix typo in v2017.1.3 release notes (#1234) 2017-10-11 02:01:50 +02:00
Matthias Schiffer
36c940c11d
docs, README: import v2017.1.3 release notes 2017-10-04 22:53:30 +02:00
Matthias Schiffer
cc1f6555c8
modules: update LEDE (2017-10-03)
Update to LEDE v17.01.3.

ee32de4426 LEDE v17.01.3: revert to branch defaults
df54a8f583 LEDE v17.01.3: adjust config defaults
d0bf257c46 uhttp: update to latest version
2017-10-04 00:49:57 +02:00
Matthias Schiffer
9324d18fee
gluon-mesh-batman-adv: filter out all packages between bat0 and local-port
Filtering by MAC address won't filter out multicast packages like router
solicitations, causing uradvd to send out router advertisements with
maximum frequency (every 3 seconds) in active meshes, even when no local
client is actually interested in the advertisements.

Fixes #1230
2017-10-03 17:07:42 +02:00
Matthias Schiffer
a8f5051104
modules: update LEDE (2017-10-02)
783465d783 odhcpd: don't enable server mode on non-static lan port
c92c1894a5 odhcpd: backport fixes from master branch (FS#402, FS#524)
4b4a4af814 dnsmasq: bump to v2.78
b8357e87d7 base-files: create /etc/config/ directory
3350137bd3 sunxi: clean up modules definitions
a881323cb2 ltq-vdsl-mei: revert disable optimized firmware download
f483a35f08 curl: fix security problems
e232c6754d mbedtls: update to 2.6.0 CVE-2017-14032
37e1bd27d0 generic: drop 704-phy-no-genphy-soft-reset.patch
720b0e2e2d kernel: update 4.4 to 4.4.89
b428f45c06 ltq-vdsl-mei: disable optimized firmware download
39e5cd9556 ltq-vdsl: fix PM thread suspend and resume handling
86f0e8b091 openvpn: add "extra-certs" option
af802bc687 lantiq: fix missing otg_cap on danube platform
12a0da6315 tcpdump: noop commit to refer CVEs fixed in 4.9.2
f66c6e1d8a tcpdump: bump to 4.9.2
a131f7cb69 utils/tcpdump: Rework URLs
7f1359c14e base-files: fix wan6 interface config generation for pppoe
97ebdf93a3 ipq806x: Archer C2600: fix switch ports numbering
d33f7905df treewide: fix shellscript syntax errors/typos
4f162ac3ce ramips: fix hg255d LED status support
2017-10-02 21:08:11 +02:00
Christof Schulze
86e89a86d1 gluon-mesh-vpn-fastd: make respondd module compile again (#1228)
by moving the declaration of ret to the top of get_fastd()
2017-09-24 23:49:00 +02:00
lemoer
4899dda4af treewide: check for NULL after uci_alloc_context() (#1224) 2017-09-21 20:56:40 +02:00
Matthias Schiffer
c0b4fb54a4
modules: update LEDE
Fixes #1223
2017-09-11 19:50:45 +02:00
Matthias Schiffer
32c010ce3b
modules: update LEDE 2017-09-07 15:39:12 +02:00
Matthias Schiffer
08cbbf9925
build: move all generic config generation to targets/generic
As the default package list is now handled using the 'packages' directive,
explicit wpad-mini removals in target definitions can be dropped.
2017-09-07 03:21:42 +02:00
Matthias Schiffer
587c5016cb
build: handle generic and target-specific config in the same run of target_config{,_check}.sh
This, together with a new try_config directive, will allow checking the
generic config and make it more flexible.
2017-09-07 00:17:57 +02:00
Steffen Förster
b325f00599
ramips-mt7620: add new subtarget with some Gl.Inet devices 2017-09-06 20:58:51 +02:00
Chrissi^
ab296fcd13
docs: mention GLUON_RELEASE in make manifest instructions
Adding the fact that GLUON_RELEASE is needed with 'make manifest'
if it is used with 'make'.

This fact was mentioned in the v2017.1 release notes but is not (clearly)
mentioned inside other parts of the documentation.

Signed-off-by: Chrissi^ <chris@tinyhost.de>

[Matthias Schiffer: minor rewording]
2017-09-06 18:26:29 +02:00
Matthias Schiffer
2c7f4487fd
docs: features/autoupdater: whitespace cleanup 2017-09-06 18:24:03 +02:00
Matthias Schiffer
a8067e0a2f
modules: update LEDE 2017-09-06 16:03:09 +02:00
Matthias Schiffer
9ab93992d1
gluon-autoupdater: mirror URLs must start with http://
The older busybox-based wget erroneously accepted URLs without protocol.
Add validator to avoid building firmwares with broken autoupdates.
2017-09-05 19:04:27 +02:00
A.Kasper
5de9f0469e Update dns-cache.rst: adding a best practices for setting the name
Adding hints that the next_node name should contain a dot to avoid (mobile) browsers interpreting "nextnode" as searchphrase. Also setting it to an fqdn helps when clients use static dns servers.
2017-08-25 23:04:32 +02:00
Matthias Schiffer
9168107f13
docs: import v2017.1.2 release notes 2017-08-14 02:06:31 +02:00
Matthias Schiffer
24cfdc384a
docs: import v2016.2.7 release notes 2017-08-14 02:04:16 +02:00
hexa-
c3c6ea0cd7 brcm2708: drop wpad-mini as it clashes with hostapd-mini (#1205) 2017-08-13 21:43:57 +02:00
Steffen Förster
e395284156 brcm2708: add target and platform for raspi3 (#1204)
This device has built in wifi we should include it at least for experiments.
2017-08-13 15:53:11 +02:00
Matthias Schiffer
fda2d10b6f
gluon-web-admin: simplify info.html template 2017-08-11 22:09:08 +02:00
Matthias Schiffer
13b325355d
gluon-core: make old site_config library reference new one, not the other way around 2017-08-11 22:07:35 +02:00
Matthias Schiffer
ee6afaced9
treewide: use new gluon.site Lua library
Some files have received some additional refactoring.
2017-08-11 22:07:34 +02:00
Matthias Schiffer
fd36bcce07
gluon-web-admin: fix info.html template indentation 2017-08-11 21:25:46 +02:00
Matthias Schiffer
8dbf3ea568
gluon-mesh-batman-adv: fix radvd start with dns.servers, but without next_node.ip config 2017-08-11 20:56:06 +02:00
Matthias Schiffer
8a41ed05f1
gluon-core: more coding style fixes 2017-08-11 20:28:59 +02:00
kb-light
90305761ce
gluon-core: update lib/gluon/upgrade/150-poe-passthrough for naming within lede 2017-08-11 20:27:51 +02:00
kb-light
949f4b7dd5
gluon-core: lib/gluon/upgrade/150-poe-passthrough: fix indentation 2017-08-11 20:26:08 +02:00
Matthias Schiffer
3df9fcecb0
gluon-core: explicitly disable radios without configuration in site.conf 2017-08-08 14:08:35 +02:00
Matthias Schiffer
293a45456b
gluon-core, gluon-client-bridge: use new gluon.site library in gluon.util
In particular, this affects users of gluon.util.iterate_radios.
2017-08-08 14:07:09 +02:00
Matthias Schiffer
53b6065500
gluon-ebtables-source-filter: use new gluon.site library to avoid 'or {}' syntax 2017-08-08 13:53:20 +02:00
Matthias Schiffer
12ec6ab2bc
gluon-mesh-batman-adv: use new gluon.site library to avoid 'or {}' syntax 2017-08-08 13:53:20 +02:00
Matthias Schiffer
951f62ac85
gluon-config-mode-*, gluon-web-admin: use new gluon.site library to avoid 'or {}' syntax 2017-08-08 13:53:16 +02:00
Matthias Schiffer
eef3bba123
gluon-client-bridge: use new gluon.site library to avoid 'or {}' syntax 2017-08-08 13:53:09 +02:00
Matthias Schiffer
1d6e6726d7
gluon-core: use new gluon.site library to avoid 'or {}' syntax 2017-08-08 13:53:02 +02:00
Matthias Schiffer
57adb49de2
gluon-core: add new gluon.site library for convenient access to optional values
The new gluon.site lua library will eventually replace gluon.site_config
(which is hereby deprecated, but will continue to be supported for a
while).

The new gluon.site library will wrap all values to allow traversing
non-existing tables without errors.

    site = require 'gluon.site'
    c = site.a.b.c -- doesn't fail even if a or a.b don't exist

The wrapped values must be unwrapped using call syntax:

    site_name = site.site_name()

Using the call syntax on a non-existing value will return nil. An
alternative default value may be passed instead:

    mac = site.next_node.mac('16:41:95:40:f7:dc')
2017-08-08 13:20:38 +02:00
Matthias Schiffer
085cf0debf
ar71xx-generic: add alias for Ubiquiti UniFi Mesh
Fixes #1021
2017-08-08 12:08:09 +02:00
Matthias Schiffer
73ad23936e
gluon-web-wifi-config: make the code a bit nicer
simple-uci will now delete an option when nil is passed.
2017-08-08 04:31:53 +02:00
Matthias Schiffer
0fee6cc707
gluon-web-logging: remove uci:set() nil check
simple-uci will now delete an option when nil is passed.
2017-08-08 04:31:53 +02:00
Matthias Schiffer
6884aad788
gluon-core: simplify 820-dns-config code 2017-08-08 04:31:53 +02:00
Matthias Schiffer
cd9ee858b8
gluon-config-mode-geo-location: remove uci:set() nil check
simple-uci will now delete an option when nil is passed.
2017-08-08 04:31:53 +02:00
Matthias Schiffer
4f51439167
gluon-config-mode-contact-info: remove uci:set() nil check
simple-uci will now delete an option when nil is passed.
2017-08-08 04:31:52 +02:00
Matthias Schiffer
31721a61f5
gluonc-core: 200-wireless: remove unneeded nil checks for uci:set_list()
uci:set_list() will delete the list when nil is passed, so there is no need
to differentiate between the cases.
2017-08-08 04:31:52 +02:00
Matthias Schiffer
06d0c0f211
gluon-core: fix 200-wireless coding style 2017-08-08 04:31:52 +02:00
Matthias Schiffer
2b9dd54f00
gluon-client-bridge: fix 320-gluon-client-bridge-wireless coding style 2017-08-08 04:31:52 +02:00
Matthias Schiffer
51a3e8e072
modules: update Gluon packages 2017-08-08 04:31:52 +02:00
Matthias Schiffer
952439885e
gluon-mesh-vpn: fix fastd <-> tunneldigger migration
The generic upgrade script is moved to run after the more specific scripts.
In addition, the script will now remove the configuration sections of
uninstalled VPN packages, so both positive and negative changes of the
default enable state can be migrated correctly.

Based-on-patch-by: Cyrus Fox <cyrus@lambdacore.de>
Fixes: #1187
2017-08-08 01:39:29 +02:00
Linus Lüssing
23a8947628
Revert "generic: batman-adv: disable multicast optimizations for now"
This reverts commit 819758f425.

A proper fix is now available, therefore reverting this workaround.
2017-08-07 22:07:14 +02:00
Matthias Schiffer
c66b18ca9e
modules: update openwrt-routing packages
Updates batman-adv and alfred to 2017.2 and adds the batman-adv TT-sync
fix.

Fixes #1183
2017-08-07 22:01:34 +02:00
Matthias Schiffer
1cffbb3935
modules: update LEDE 2017-08-07 14:00:33 +02:00
Christof Schulze
c93bd3de07 modules: upgrade PACKAGES_GLUON (#1202) 2017-08-07 00:53:29 +02:00
Matthias Schiffer
6e8a7675ba
modules: update LEDE 2017-07-30 20:17:54 +02:00
Matthias Schiffer
a76eaa5c45
gluon-mesh-batman-adv: preserve gw_mode on upgrades
When a Gluon node is used to connect to an uplink router/DHCP server (for
example in deployments without VPN tunnels), the gw_mode must be set to
server; this should be preserved on upgrades.

Fixes #1196
2017-07-25 23:49:11 +02:00
Steffen Förster
582d09615b
gluon-mesh-batman-adv: enable routing algorithm configuration through site.conf
[Matthias Schiffer: move to proto_gluon_bat0_setup() and default to BATMAN_IV]
2017-07-19 17:58:07 +02:00
Matthias Schiffer
e8a73324ab
modules: update LEDE 2017-07-19 17:02:09 +02:00
Matthias Schiffer
4d1cda71ff
Backport a few more sysupgrade packages
Improve error handling a bit, and fix upgrade for some (unsupported or
broken) targets.
2017-07-13 17:28:49 +02:00
Matthias Schiffer
6d9d755bb3
modules: update LEDE 2017-07-13 10:57:37 +02:00
Matthias Schiffer
74f43ab80f
Backport sysupgrade patches preventing hangs on certain sysupgrade failures 2017-07-13 00:37:56 +02:00
Matthias Schiffer
0c9df0eb30
modules: update LEDE 2017-07-13 00:31:10 +02:00
Matthias Schiffer
b4caa7f766
build: make GLUON_FEATURES error handling compatible with older Make versions
.SHELLSTATUS was not available before Make 4.2.
2017-07-11 04:44:56 +02:00
hexa-
5617eec665 docs/site-example: fix comment and syntax error (#1186) 2017-07-11 04:14:24 +02:00
kb-light
46126de792 Add new package gluon-web-logging (#1153) 2017-07-11 02:58:45 +02:00
Matthias Schiffer
98b48f75d6
README: fix typo 2017-07-10 22:58:15 +02:00
Matthias Schiffer
3fd4ee99c3
gluon-l3roamd: fix incorrect dependency
gluon-mesh-babel is not merged yet, and once it is, this would lead to a
circular dependency.
2017-07-09 13:12:58 +02:00
Matthias Schiffer
9ae2be7b55
docs: dev/feature-flags: fix a few typos 2017-07-09 02:35:06 +02:00
Matthias Schiffer
6ca841bad5
build: introduce GLUON_FEATURES
To reduce the number of packages that need to be listed in
GLUON_SITE_PACKAGES, this adds a new variable GLUON_FEATURES. Sets of
packages are enabled automatically based on the combination of listed
feature flags.

Site-specified package feeds can provide their own feature flag
definitions.
2017-07-09 02:31:38 +02:00
Matthias Schiffer
e2b508ee2a
modules: update LEDE 2017-07-08 22:57:27 +02:00
Matthias Schiffer
818705280e
gluon-ebtables-*: add dependency on gluon-mesh-batman-adv
These packages don't work or don't make sense without batman-adv.
2017-07-08 21:23:00 +02:00
Matthias Schiffer
e52c575b57
scripts: metadata: fix issue generating syntax errors in Kconfig files
Update "scripts: metadata: always resolve dependencies through provides
list" to new version.
2017-07-08 21:19:14 +02:00
Matthias Schiffer
2cd30d644b
Remove redundant virtual packages
As PROVIDES can be used to replace real packages now, we don't need the
virtual packages as workaround anymore. This also means that the providing
packages don't need to be added to site.mk explicitly anymore when the
default provider is used.
2017-07-08 16:34:40 +02:00
Matthias Schiffer
9b7ef2c65e
scripts: metadata: always resolve dependencies through provides list
Allow to use PROVIDES to replace existing packages.
2017-07-08 16:26:56 +02:00
Matthias Schiffer
90c5bd3796
modules: update LEDE 2017-07-08 14:49:19 +02:00
Ruben Barkow
84d117ff73
gluon-web-admin: add option to show/hide password-login and add minimum password length 2017-07-07 02:15:52 +02:00
Sunz3r
b5a8959f59 gluon-config-mode-mesh-vpn: add tunneldigger to reboot page (#1172) 2017-07-06 13:24:15 +02:00
Matthias Schiffer
d72a1ea9c6
docs, README: import Gluon v2017.1.1 release notes 2017-07-03 17:17:02 +02:00
Matthias Schiffer
6e039911ab
generic: don't explicitly enable busybox sha256sum applet
LEDE has sha256sum enabled by default.
2017-07-03 03:49:03 +02:00
Matthias Schiffer
102f6a7244
Revert "generic: busybox: enable sha512sum to workaround segfault issue"
This reverts commit dcff68029e.
2017-07-03 01:45:21 +02:00
Matthias Schiffer
582635b031
busybox: compile with debug information
The added debug information is stripped of during packaging, so it does not
increase the package size. It does however slightly change offsets in the
code, preventing the weird ash segfaults we've been seeing. Also, if the
issue returns, we'll have debug information matching the coredumps.
2017-07-03 01:45:21 +02:00
Ruben Barkow
0441c7d91f gluon-web-admin: typo "your node" (#1169) 2017-06-29 22:15:18 +02:00
Matthias Schiffer
86636c3ae6
ramips-rt305x: add D-Link DIR-615 H1
Fixes #1164
2017-06-29 18:28:16 +02:00
Tata
5dcbbe93dc gluon-node-info: use GluonSrcDiet (#1168) 2017-06-29 11:59:22 +02:00
Matthias Schiffer
27f35e56b4
gluon-core: add interfaces having proto = gluon_mesh to mesh firewall zone
Based-on-patch-by: Christof Schulze <christof.schulze@gmx.net>
2017-06-27 23:49:56 +02:00
Christof Schulze
e432dd4d9f
gluon-core: gluon_mesh.sh: whitespace cleanup 2017-06-27 23:45:58 +02:00
Matthias Schiffer
ae593d8439
gluon-core: convert site seed to lowercase
While we use the hexadecimal representation as a hash input for simplicity,
it should not be interpreted as case-sensitive.
2017-06-27 23:28:23 +02:00
Matthias Schiffer
0ceb25e3e7
gluon-web-network: allow switching wired mesh legacy mode on and off 2017-06-27 23:04:50 +02:00
Matthias Schiffer
a2711065c8
gluon-core: add VXLAN support for gluon_wired protocol 2017-06-27 23:04:50 +02:00
Matthias Schiffer
0d6f957196
gluon-core: introduce new gluon_wired netifd proto for wired meshing
The new proto will simplify the switch to VXLAN encapsulation.
2017-06-27 23:00:17 +02:00
Matthias Schiffer
8bcd0975af
gluon-core: add a "site seed" to site.conf to seed site-specific random values 2017-06-27 23:00:17 +02:00
Matthias Schiffer
f42afcebf2
modules: update LEDE 2017-06-27 18:16:36 +02:00
Florian Beier
1690b51d21 ar71xx-generic: add support for GL.INet GL-AR300M (#1163) 2017-06-27 02:31:39 +02:00
Matthias Schiffer
08e667ba2e
gluon-client-bridge: add default next-node MAC address
The next-node MAC address doesn't need to be unique in different
communities, so we can as well add a default value.
2017-06-26 22:48:45 +02:00
kb-light
f9f68535aa build: add show-release make target (#1159)
`make show-release` can be used to discover the current release in scripts.
2017-06-26 20:52:22 +02:00
Matthias Schiffer
819758f425
generic: batman-adv: disable multicast optimizations for now
A bug in batman-adv can lead to a large amount of management traffic being
exchanged between nodes when the multicast optimizations are enabled,
effectively making the mesh unusable. It's safer to disable the feature
for now, until we have a real fix.
2017-06-26 14:37:13 +02:00
kb-light
c90e13594a docs: dev/web/model: fix typo (#1152) 2017-06-24 19:25:12 +02:00
Ruben Barkow
822cfecbf5 gluon-config-mode-autoupdater: autoupdater disabled message (#1137) 2017-06-23 14:55:38 +02:00
David Lutz
93c6cf1506 ramips-rt305x: Add support for A5-V11 (#1151) 2017-06-23 13:23:31 +02:00
Matthias Schiffer
dcff68029e
generic: busybox: enable sha512sum to workaround segfault issue
sha512sum doesn't add much code that is not also used by sha256sum, but the
change of the configuration hides the segfault issue described in:

  https://bugs.lede-project.org/index.php?do=details&task_id=822

While the issue only seemed to affect dhcpv6.script, it would clutter /tmp
with coredumps, eventually leading to OOM.
2017-06-23 13:12:46 +02:00
Ruben Barkow
b44373efaf gluon-web-*: remove unused Section variables (#1150) 2017-06-23 13:00:52 +02:00
Matthias Schiffer
acfc3cc1a2
gluon-core: upgrade/210-interface-wan: whitespace cleanup 2017-06-21 17:16:41 +02:00
Matthias Schiffer
0db63008cd
gluon-core: upgrade/220-interface-lan: whitespace cleanup 2017-06-21 02:56:23 +02:00
Matthias Schiffer
5b09c64186
vxlan: add new package for netifd VXLAN proto 2017-06-21 02:34:24 +02:00
Matthias Schiffer
3030fabebd
generic: vxlan: backport support for VXLAN over link-local IPv6 2017-06-21 02:34:24 +02:00
Matthias Schiffer
9a787c9878
generic: mtd: backport unlock support and asserted fixes for certain Winbond/Spansion flash chips
This patch got lost in the OpenWrt -> LEDE transition and fixes flash
writes on new UBNT PicoStations.
2017-06-20 11:04:01 +02:00
Ruben Barkow
f3d763f509 gluon-web: improve menu order in Advanced Settings (#1146) 2017-06-19 20:16:18 +02:00
Ruben Barkow
1d2f3be71d docs: site-example with cryptic SSID for mesh (#1125)
The SSID for the mesh network should be cryptic, otherwise some users will try to connect to that network and have a bad user experience.
2017-06-19 10:51:19 +02:00
kb-light
56d74e41c1 docs: update ffho site repo (#1145) 2017-06-19 00:40:54 +02:00
Matthias Fritzsche
201fa576b8
docs: add note that GCC 4.8 is needed to build gluon
The used nodejs 4.4.5 needs at least GCC 4.8 to be build
https://github.com/nodejs/node/blob/v4.x/BUILDING.md

Signed-off-by: Matthias Fritzsche <matthias@chemnitz.freifunk.net>
[Matthias Schiffer: moved information to the first section]
2017-06-14 10:12:35 +02:00
Matthias Schiffer
869ceb425c
x86-generic: add manifest aliases for x86-kvm and x86-xen_domu
Allow the autoupdater to work when updating from the removed targets.
2017-06-13 12:21:03 +02:00
Matthias Schiffer
62132a590f
scripts: add support for manifest-only model aliases 2017-06-13 12:21:03 +02:00
Matthias Schiffer
e40e05ad5f
docs: releases/v2017.1: add some more information on updating v2016.2.x build setups 2017-06-13 11:06:19 +02:00
Matthias Schiffer
4827f2df1b
docs: site-example: remove redundant "iptables" package
iptables will be pulled in anyways.
2017-06-10 22:00:47 +02:00
Matthias Schiffer
49354994ef
docs: Gluon v2017.1+ 2017-06-10 14:06:00 +02:00
Matthias Schiffer
31893cb912
docs, README: Gluon v2017.1 2017-06-10 14:04:23 +02:00
Matthias Schiffer
5da8a15382
docs, README: import Gluon v2016.2.6 release notes 2017-06-10 13:54:13 +02:00
Matthias Schiffer
0cfbc60b05
docs: releases/v2017.1: add note about x86 image sizes 2017-06-10 12:05:25 +02:00
Matthias Schiffer
1ef215161f
modules: update LEDE 2017-06-09 13:31:47 +02:00
Matthias Schiffer
606e8490d3
docs: dev/upgrade: some minor text improvements 2017-06-08 20:59:57 +02:00
Matthias Schiffer
fab7ae3d7f
docs: releases/v2017.1: add another note about migration of packages 2017-06-08 20:56:36 +02:00
Matthias Schiffer
a8e6fb8aa0
docs: releases/v2017.1: mention missing tunneldigger IPv6 support 2017-06-08 16:25:09 +02:00
Matthias Schiffer
c0d261beb7
docs: add preliminary v2017.1 release notes 2017-06-08 16:07:14 +02:00
Matthias Schiffer
b2d0d9bdce
Update LEDE 2017-06-08 12:21:30 +02:00
Matthias Schiffer
71bfa305fd
docs: features/dns-cache: clean up 2017-06-07 17:07:52 +02:00
Matthias Schiffer
8bfa3f96c9
docs: update hardware support list 2017-06-07 15:42:21 +02:00
Matthias Schiffer
9b687332d3
ar71xx-generic: remove CPE220/CPE520 1.0 devices
These devices have never actually existed; the corresponding support
strings have been removed from the stock firmwares as well.
2017-06-07 15:22:18 +02:00
Matthias Schiffer
aabe0dd41d
ar71xx-tiny: add TP-Link TL-WA701N/ND v2 again
It seems the device was lost during the OpenWrt -> LEDE migration.
2017-06-07 15:20:12 +02:00
Matthias Schiffer
009162134a
ramips-mt7621: add support for UBNT EdgeRouter X 2017-06-06 16:34:04 +02:00
Matthias Schiffer
88f2e3e4e2
Revert "generic: revert to OpenWrt CC partition sizes on x86 and similar images for now"
This reverts commit fcce9e5295.

The x86-generic kernel does not fit into 4MB.
2017-06-01 21:10:01 +02:00
Matthias Schiffer
44995887ec
mvebu: fix sysupgrade
Backport another sysupgrade patch.
2017-06-01 20:43:52 +02:00
Matthias Schiffer
9dae2ebbfd
gluon-mesh-vpn-fastd: respondd: adjust for new site.conf mesh VPN structure
Fixes #1130
2017-06-01 16:23:51 +02:00
Matthias Schiffer
fbc11086c0
modules: update routing packages
Updates batman-adv and alfred to 2017.1. This also allows us to drop our
last batman-adv patch.
2017-05-30 11:54:42 +02:00
Matthias Schiffer
6f834923f6
modules: update OpenWrt packages 2017-05-30 11:54:37 +02:00
Matthias Schiffer
52d28c1140
Backport staged sysupgrade patches
The staged sysupgrade allows to properly unmount the rootfs before writing
the new partitions. This will fix upgrades losing configuration when
parition sizes change on x86 and similar image types.
2017-05-30 07:31:37 +02:00
Matthias Schiffer
fcce9e5295
generic: revert to OpenWrt CC partition sizes on x86 and similar images for now
This will allow upgrading using the broken sysupgrade scripts in OpenWrt
CC without losing the configuration.

Fixes #1010
2017-05-30 03:28:31 +02:00
Matthias Schiffer
6e05ade58f
Update LEDE 2017-05-30 02:49:01 +02:00
Matthias Schiffer
ad91ab1be7
build: don't copy packages to output directory for targets without opkg
Fixes #1126
2017-05-15 23:23:02 +02:00
Matthias Schiffer
a7ea424214
mac80211, hostapd: use upstream fix for AP+11s VIF combinations 2017-05-13 18:15:20 +02:00
Matthias Schiffer
1ed87c6df4
gluon-mesh-batman-adv: enable bridge learning on bat0 again
Reverts d5829d87be ("gluon-mesh-batman-adv-core: disable bridge port
learning on bat0").

Fixes #1121
2017-05-12 15:43:31 +02:00
mokkin
774d733dee docs: user/site: clarify syntax of mesh_on_lan/mesh_on_wan options (#1119) 2017-05-04 06:03:26 +02:00
Matthias Schiffer
afc2e0c03d
build: scripts/target_config_check.sh: output all relevant errors
Don't stop after the first error, as later error messages may make the
cause of the error much clearer in some cases.
2017-05-02 17:05:55 +02:00
Matthias Schiffer
8180a9868a
modules: update LEDE 2017-05-02 11:44:12 +02:00
Matthias Schiffer
e0da968d71
modules: prefer https URLs 2017-05-02 11:40:53 +02:00
Christof Schulze
5bf3c895d0 gluon-mesh-batman-adv: announce dns server if dns cache was configured (#1105) 2017-04-27 21:11:23 +02:00
Steffen Förster
373613bb54 ar71xx-generic: add profile for UBNT Airgateway Pro and alias for UBNT Airgateway LR (#1107)
The Airgateway LR is the same device as the normal Airgateway but with an detachable antenna. The Pro version is a cheap dual band device.
2017-04-27 04:15:13 +02:00
Tarnatos
22042a3bf2 better upstream server description (#1106)
gluon-core: dns-cache documentation polish
Now its clear that upstreams severs normally means "community gateways".
* added cacheentries to description
* made upstream server description more general
* description of the A and AAAA-records for next_node added
* mention of Cache not being allocated when not set in site.conf 
* dns-cache doku polish
2017-04-26 19:02:22 +02:00
Matthias Schiffer
6c053d92b8
ar71xx-tiny: add support for TP-Link TL-WR841N/ND v12 2017-04-20 16:59:55 +02:00
Matthias Schiffer
ec89335d0f
modules: update OpenWrt packages 2017-04-20 16:57:35 +02:00
Matthias Schiffer
cf877e9683
modules: update LEDE 2017-04-20 16:56:57 +02:00
Matthias Schiffer
4a0ba9e45b Merge pull request #1096 from T-X/lede-enable-multicast-snooping 2017-04-18 15:11:36 +02:00
bobcanthelpyou
82f5afd09d
ar71xx-tiny: add TP LINK TL-WA730RE v1 2017-04-16 16:26:24 +02:00
Linus Lüssing
c519ec4596 gluon-core: reenable multicast snooping for wan zone
LEDE recently disabled multicast snooping by default:

https://git.lede-project.org/?p=project/netifd.git;a=commitdiff;h=52541140f8138e31958cdc3d7e42a4029fa6bbc9

Reenable it for Gluon as there have been no confirmed issues for
LEDE and no negative reports concerning Gluon v2016.2.x so far.

Closes #1025.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2017-04-13 22:31:47 +02:00
Linus Lüssing
66ead88dcb gluon-client-bridge: reenable multicast snooping for client zone
LEDE recently disabled multicast snooping by default:

https://git.lede-project.org/?p=project/netifd.git;a=commitdiff;h=52541140f8138e31958cdc3d7e42a4029fa6bbc9

Reenable it for Gluon as there have been no confirmed issues for
LEDE and no negative reports concerning Gluon v2016.2.x so far.

Closes #1025.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2017-04-13 22:31:31 +02:00
Simon Joda Stößer
2789710104 docs: site-example/site.mk: improve comment about variables (#1095) 2017-04-13 21:59:17 +02:00
Malte Möller
ad9878be9d ar71xx-generic: add Support for TP Link RE450 (#1092)
Fixes #1084

Hardware is very similar to Archer C5v1 and C7v2.

Tested factory install and autoupdater.

IBSS Mesh on 2.4 and 5 GHz is working fine.

The only Ethernet Port is used for config mode and afterwards handled
as WAN Port.
2017-04-13 02:01:19 +02:00
Matthias Schiffer
e45c30330d
gluon-mesh-batman-adv: refactor interface management
We now create bat0 and primary0 independently of the lower mesh interfaces,
making the whole setup a lot more robust. In particular:

- we can't accidentially destroy primary0 because of concurrent setup and
  teardown runs of different interfaces
- bat0 will always exist, even when no mesh interfaces are up (e.g. no link
  on wired mesh)
- interfaces going down and up again will never tear down the whole of
  batman-adv
- we can enable and disable bat0 independently of the lower interface
  states
2017-04-12 19:23:08 +02:00
Matthias Schiffer
4ca67dcca5
gluon-mesh-batman-adv-*: unify into a single source package
For simplicity, we don't use different MTUs for compat 14 and 15 anymore,
there's no harm in using 1532 for batman-adv-legacy as well.
2017-04-12 04:22:45 +02:00
Matthias Schiffer
a502295eaf
gluon-core: gluon_mesh: make transitive and fixed_mtu available as interface data, add post-setup.d
In addition, transitive and fixed_mtu now default to 0 instead of an empty string.
2017-04-12 03:44:45 +02:00
Matthias Schiffer
d967d58abc
netifd: ubus: add interface method to trigger renew event 2017-04-12 03:43:31 +02:00
Matthias Schiffer
872784cf15
modules: update LEDE 2017-04-11 02:08:42 +02:00
Matthias Schiffer
c4641d47fd
gluon-mesh-batman-adv-core: dont' call 'ip' to check if primary0 exists 2017-04-11 02:01:38 +02:00
Matthias Schiffer
02f2d8796c
gluon-core: don't call 'ip' to check if an interface exists 2017-04-11 02:01:21 +02:00
Matthias Schiffer
c4613c4e8d
gluon-core: gluon.util: pass UCI cursor to get_wlan_mac(), get rid of local UCI context 2017-04-11 01:48:11 +02:00
Matthias Schiffer
f48d10bdde
gluon-core: gluon.util: pass UCI cursor as argument to iterate_radios() instead of using local context 2017-04-11 01:48:11 +02:00
Julian Labus
901b122d83
gluon-web-wifi-config: use find_phy from gluon.util 2017-04-11 01:48:11 +02:00
Julian Labus
734d1925de
gluon-core: gluon.util: fix PHY detection for radios addressed by PCIe address 2017-04-11 01:48:10 +02:00
Matthias Schiffer
da22c5cf8e
gluon-core: gluon.util: change find_phy argument to config table and make public 2017-04-11 01:48:10 +02:00
Julian Labus
9d5c551166 docs: restructure index for better readability in readthedocs theme 2017-04-10 16:32:37 +02:00
Julian Labus
4cf977485a docs: add missing link to gluon-ebtables-source-filter 2017-04-10 16:32:37 +02:00
Matthias Schiffer
6499658b52
gluon-mesh-batman-adv-core: don't print error message when no_rebroadcast is not supported
batman-adv 2017.0 doesn't need (or support) no_rebroadcast anymore. Don't
fail when the file doesn't exist.
2017-04-10 01:32:30 +02:00
Matthias Schiffer
9e487f3104
docs, README: Gluon v2016.2.5 2017-04-09 21:44:07 +02:00
Matthias Schiffer
9ae5fd3723
docs: add Gluon v2016.2.5 release notes 2017-04-09 21:43:02 +02:00
kb-light
eefd2ef8db Add package gluon-ebtables-source-filter (#1015) 2017-04-09 18:18:51 +02:00
Julian
13c61d9394 gluon-core: fix pattern %v in opkg URLs (#1087) 2017-04-07 14:24:13 +02:00
Cyrus
6a0ca58fc3 gluon-core: Fixed bug which kept legacy VLAN interface definitions (#1085) 2017-04-03 20:48:42 +02:00
Christof Schulze
2e1f1211d4 modules: update Gluon packages (#1082) 2017-03-27 23:03:41 +02:00
Matthias Schiffer
57070a56be
ipq806x: add new target and support for TP-Link Archer C2600
Completely untested for now.

Closes #835
2017-03-27 11:44:07 +02:00
bobcanthelpyou
eae359c961 docs: features/monitoring: update alfred README and alfred-json links (#1081) 2017-03-26 23:54:43 +02:00
Cyrus
540d0ff0a3 gluon-mesh-vpn-core: Fixed conditions for migration code (#1080)
VPN daemons were always disabled
2017-03-26 10:26:33 +02:00
Matthias Schiffer
efec1fc319
modules: update LEDE 2017-03-25 14:57:45 +01:00
hexa-
adf3b91557 docs: user/site.rst: add peer with ip addresses and mention resilience benefit (#1073) 2017-03-23 17:35:50 +01:00
Cyrus Fox
aa17e3e86e
gluon-mesh-vpn-tunneldigger: ignore default config when checking for legacy configs 2017-03-23 12:51:41 +01:00
Tarnatos
d3d1059149 ar71xx: more consistent image file names for TP-Link TL-WR940N (#1071)
The TL-WR940N doesn't have detachable antennas. Make v1-v3 match v4.
2017-03-23 12:40:46 +01:00
Matthias Schiffer
e13f1b2c5b
docs, README: Gluon v2016.2.4 2017-03-13 15:25:30 +01:00
lrnzo
54e271ad99 docs: dev/web/i18n: fix typo (#1068) 2017-03-12 00:49:56 +01:00
lrnzo
e01f4f14aa docs: features/wired-mesh.rst: fix typo (#1067) 2017-03-11 14:20:41 +01:00
Matthias Schiffer
5e369fb352
mac80211: revert upstream change breaking AP+11s VIF combinations
Fixes meshing over 802.11s.
2017-03-11 06:37:41 +01:00
Matthias Schiffer
da19961188
gluon-web: javascript: don't use global RegExp.$x matches, fix "this" for parameterized validators
Doing so caused broken validations, as different validators were affecting
each other.
2017-03-10 22:25:00 +01:00
Matthias Schiffer
ca5e1f8b75
docs: site-example: update mesh VPN configuration 2017-03-10 20:17:41 +01:00
Matthias Schiffer
e6d0b58d91
docs: user/site: add information on gluon-mesh-vpn-tunneldigger configuration 2017-03-10 19:49:11 +01:00
Matthias Schiffer
b016cf18b4
gluon-mesh-vpn-core: add code for migration of enabled state between fastd and tunneldigger
Based-on-patch-by: Cyrus Fox <cyrus@lambdacore.de>
2017-03-10 19:45:35 +01:00
Matthias Schiffer
a49ef70c53
gluon-config-mode-mesh-vpn: add tunneldigger support
Based-on-patch-by: Cyrus Fox <cyrus@lambdacore.de>
2017-03-10 19:45:34 +01:00
Cyrus Fox
ad7a36fdce
gluon-mesh-vpn-tunneldigger: add package for tunneldigger L2TP support 2017-03-10 19:45:34 +01:00
Matthias Schiffer
be88eba07f
Refactor common parts of gluon-mesh-vpn-fastd into a gluon-mesh-vpn-core package
The fastd_mesh_vpn site.conf section is renamed to mesh_vpn.fastd.
2017-03-10 19:45:34 +01:00
hexa-
1c9b0ced00 bcm2708: prevent wpad-mini from conflicting with hostapd-mini (#1065) 2017-03-10 15:31:20 +01:00
Matthias Schiffer
f2dabed13d
modules: update routing packages
Updates batman-adv to 2017.0.1.
2017-03-10 02:57:09 +01:00
Matthias Schiffer
b6b76b0596
netifd: update to git HEAD version 2017-03-10 02:00:57 +01:00
Matthias Schiffer
c54ac85c29
modules: update OpenWrt packages 2017-03-10 01:53:57 +01:00
Matthias Schiffer
4a81373989
modules: update LEDE 2017-03-10 01:53:42 +01:00
Matthias Schiffer
41a9f9b06c
gluon-mesh-batman-adv-core: fix ARP resolution of next-node IPv4 address
The ebtables rules were not adjusted when switching from macvlan to veth.
2017-03-08 22:52:25 +01:00
Matthias Schiffer
9a33b4ce79
overlay/opkg.mk: add explanatory comment 2017-03-02 22:53:40 +01:00
Matthias Schiffer
3115aa5640
Update Gluon packages 2017-03-02 16:32:27 +01:00
Matthias Schiffer
7222fc07d1
gluon-web-private-wifi: fix default value of "enabled" setting 2017-03-02 15:09:49 +01:00
0x4A6F
ebeefa1747 ar71xx-generic: add support for Ubiquiti Rocket M Titanium (#968) 2017-03-01 13:21:28 +01:00
Matthias Schiffer
8245e77218
gluon-status-page: fix browser compatiblity of language selection 2017-02-26 20:55:31 +01:00
Matthias Schiffer
959c8ae7f8
gluon-status-page: use unique filenames for dependencies, switch to SHA256 checksums 2017-02-26 19:46:33 +01:00
Matthias Schiffer
a70462ff18
Update Gluon packages
Switch sha512sum to sha256sum to match updated autoupdater.
2017-02-25 01:28:07 +01:00
Matthias Schiffer
9e6cfaee0d
scripts: generate SHA256 manifest lines in addition to SHA512
The current autoupdater will only respect the last line for a given model
name, so we can add SHA256 checksums as long as they occur before the
corresponding SHA512 line.
2017-02-25 00:38:50 +01:00
Christof Schulze
b7651ee96f gluon-core: limit fq_codel memory to 1MB per AP with less than 48MB RAM (#1046) 2017-02-24 19:43:32 +01:00
Christof Schulze
946d873c14 gluon-status-page-api: limit uhttp max_requests to 16 on devices with <48MB RAM (#1045) 2017-02-24 19:38:40 +01:00
Matthias Schiffer
568ba483bb
docs: dev/web/view: fix a typo 2017-02-24 15:22:27 +01:00
Julian
6d77065263 mvebu: remove wpad-mini (#1056) 2017-02-24 15:19:16 +01:00
Matthias Schiffer
465cefb69f
rules.mk: make PKG_CONFIG_DEPENDS properly track string values
This will ensure that gluon-site and gluon-autoupdater are rebuilt
correctly when GLUON_RELEASE or GLUON_BRANCH change.
2017-02-24 13:34:27 +01:00
Matthias Schiffer
0af0be0673
ar71xx-generic: don't try to build a factory image for D-Link DIR-825 B1
The size of the factory images is limited to 4MB, which caused build
failures when many additional packages were included.

Rather than moving the device to ar71xx-tiny, we ignore the factory images
and just build the sysupgrade. This way, the whole flash is usable for
Gluon.

This means that installing Gluon on these devices will now require to flash
a plain LEDE image first, and then upgrading using the Gluon sysupgrade
image.

Fixes #1020
2017-02-24 01:50:17 +01:00
Matthias Schiffer
28f42b24a8
gluon-setup-mode, gluon-status-page-api: remove references to rpcd
rpcd is not included in our images anymore since switching to gluon-web, so
we don't need to disable it anymore.
2017-02-24 00:44:03 +01:00
Matthias Schiffer
2b9aaa81a1
Update Gluon packages 2017-02-24 00:15:35 +01:00
Jan-Tarek Butt
c9f62fc278
gluon-mesh-batman-adv-core: Move lua file into luasrc dir 2017-02-23 20:27:23 +01:00
Matthias Schiffer
b45585a109
Switch LAN and WAN port of Ubiquiti AirGateway
This makes the LAN port the PoE master, so the AirGateway can be used to
supply power to another node connected via mesh-on-LAN.

Fixes #608
2017-02-23 19:49:39 +01:00
Matthias Schiffer
f0b919e89c
gluon-client-bridge: add next-node IPv6 address as deprecated
We always want to prefer the unique node address for outgoing traffic. Note
that this doesn't have an effect with batman-adv, as usually br-client will
be the outgoing interface, so the unique address would be chosen anyways.
2017-02-23 17:58:44 +01:00
Ruben Barkow
4f87327bfa
docs: add email subject and body to site-example 2017-02-23 16:40:36 +01:00
Matthias Schiffer
60633f0e6a
Update Gluon packages 2017-02-23 16:22:34 +01:00
Christof Schulze
b994ad4fdc gluon-l3roamd: add package containing basic l3roamd configuration (#1042) 2017-02-23 15:49:32 +01:00
Matthias Schiffer
12780715e9
Update OpenWrt packages 2017-02-23 13:32:05 +01:00
Matthias Schiffer
471a54245a
Update LEDE 2017-02-23 13:32:00 +01:00
Matthias Schiffer
c9a77c6108
Update Gluon packages 2017-02-23 13:27:27 +01:00
Matthias Schiffer
071c5c18f8
docs: some site-example i18n HTML fixes 2017-02-23 10:21:31 +01:00
Matthias Schiffer
f9aa784600
build: fix error message in case of missing site repository 2017-02-22 22:40:36 +01:00
rubo77
da7f69142f
gluon-config-mode-mesh-vpn: add extra message if mesh-VPN was not selected
This was introduced in ffhh-packages at https://github.com/freifunkhamburg/ffhh-packages/tree/master/gluon-config-mode-reboot-ffhh
2017-02-22 19:28:25 +01:00
Matthias Schiffer
f458d788c8
gluon-config-mode-core: make welcome and reboot message optional
Make use of our new _translate() function.
2017-02-22 19:28:25 +01:00
Matthias Schiffer
1d7b4482b7
gluon-web: add renderer._translate()
_translate() will return nil when no match is found.
2017-02-22 19:28:22 +01:00
Matthias Schiffer
e70ced9caa
docs: fix uses of obsolete "escape" function in site examples 2017-02-22 18:14:15 +01:00
Matthias Schiffer
22746a2a0d
docs: add documentation for gluon-web 2017-02-22 01:32:19 +01:00
Matthias Schiffer
31d3f08f25
treewide: convert all LuCI-based packages to gluon-web 2017-02-22 01:31:25 +01:00
Matthias Schiffer
e4b74be506
gluon-web: add package
The gluon-web package is basically a stripped-down and refactored version
of the LuCI base.
2017-02-22 01:30:58 +01:00
Matthias Schiffer
a06541623e
gluon-luci-admin: remove redundant Compound 2017-02-21 20:55:08 +01:00
Matthias Schiffer
78d8645e19
gluon-luci-autoupdater: avoid use of CBI Maps
As convenient as the Map is, the underlying code is very complex and will
be removed.
2017-02-21 20:55:08 +01:00
Matthias Schiffer
b5a3b9115b
gluon-luci-admin: get rid of an unneeded model 2017-02-21 20:55:08 +01:00
Matthias Schiffer
90fa69d7dd
gluon-config-mode-core: remove bogus comments from pofiles 2017-02-21 20:55:08 +01:00
Matthias Schiffer
08994ae8c0
ar71xx-tiny: fix image name for TL-WR940N v4
To fix the autoupdater.
2017-02-21 20:54:36 +01:00
kb-light
558e98ae42 gluon-mesh-vpn-fastd: improve check_site 2017-02-21 11:19:44 +01:00
Ruben Barkow
95c04cd862
docs: improve autoupdater explanation 2017-02-21 10:14:28 +01:00
kb-light
c9563cdebd scripts: check_site_lib: introduce need_string_array_match() (#1016) 2017-02-21 09:45:33 +01:00
txt.file
1fdaee080a ar71xx-generic: add support for TP-Link TL-WA7210N (#1029) 2017-02-21 09:42:30 +01:00
Andrey Perliev
26a0cbd1cc gluon-status-page: JS translations (#1044)
Add translation support to gluon-status-page, including English, German and Russian translations.
2017-02-21 09:40:09 +01:00
Matthias Schiffer
134ddd411c
build: add list-targets make target
`make list-targets` can be used to discover the available targets in
scripts.
2017-02-16 18:36:20 +01:00
Matthias Schiffer
43f32e3c3b
gluon-autoupdater: fix incomplete comment in upgrade script
Fixes #1043
2017-02-16 08:46:41 +01:00
Christof Schulze
6a5a7a7131 gluon-mesh-vpn-fastd: do not depend on gluon-mesh-batman-adv (#1041)
In preparation for Babel support.
2017-02-13 21:00:54 +01:00
Matthias Schiffer
266b02dba6
docs, README: Gluon v2016.2.3 2017-02-13 02:20:07 +01:00
Matthias Schiffer
5fd1a91816
docs: add release notes for Gluon v2016.2.3 2017-02-13 02:19:06 +01:00
Matthias Schiffer
dc2cc47594
Update LEDE 2017-02-12 15:26:31 +01:00
Matthias Schiffer
e5a9e3f6e3
README: fix command to get release list 2017-02-12 08:33:59 +01:00
Matthias Schiffer
2e6d457ec1
scripts/update.sh: don't hide errors because of invalid commit IDs 2017-02-12 08:03:46 +01:00
Matthias Schiffer
b4ccb1fa95
ar71xx-mikrotik: update device definitions 2017-02-12 07:15:16 +01:00
Matthias Schiffer
0775bf76aa
docs: dev/hardware: update libplatforminfo instructions 2017-02-12 06:11:43 +01:00
Matthias Schiffer
08386a778a
Update Gluon packages 2017-02-12 06:11:38 +01:00
Matthias Schiffer
afdae86a5e
gluon-respondd: allow platforminfo_get_model() to return NULL 2017-02-12 06:04:22 +01:00
Matthias Schiffer
31ee7be16d
x86-xen_domu: remove
Remove obsolete x86-xen_domu definition, it has been merged into
x86-generic.
2017-02-12 05:11:10 +01:00
Christof Schulze
b40d94111e build: add GLUON_DEBUG flag, if enabled set CONFIG_DEBUG and do not strip binaries (#1028) 2017-02-11 23:33:07 +01:00
Christof Schulze
b38bd942b9 gluon-status-page-api: fix indentation of luasrc/lib/gluon/status-page/www/cgi-bin/interfaces 2017-02-11 23:31:28 +01:00
Christof Schulze
8b63ac792a gluon-statuspage-api: make lib/gluon/status-page/www/cgi-bin/interfaces mesh-protocol agnostic 2017-02-11 23:31:28 +01:00
Christof Schulze
b3e609dca9
gluon-radvd: improve coding style in initscript 2017-02-11 22:40:51 +01:00
Christof Schulze
25f1b64934
gluon-radvd: remove netdev from initscript
uradvd will tolerate devices appearing and disappearing during runtime.
2017-02-11 22:40:41 +01:00
Matthias Schiffer
2adf67edad
Update routing packages (batman-adv v2016.5)
Also remove our own no_rebroadcast patch, as batman-adv v2016.5 now has a
more sophisticated rebroadcast suppression that should work automatically
in the most relevant cases.
2017-02-11 20:12:27 +01:00
Matthias Schiffer
61ecdbec8c
Update LuCI packages 2017-02-11 19:35:55 +01:00
Matthias Schiffer
1ed014f899
Update OpenWrt packages 2017-02-11 18:00:51 +01:00
Matthias Schiffer
e6ec14a5cb
Update LEDE 2017-02-11 18:00:42 +01:00
Matthias Schiffer
184cb1010d
gluon-core: add single_as_lan option to configure a single ethernet port as LAN instead of WAN 2017-02-10 22:48:23 +01:00
Matthias Schiffer
e39cbcbda1
gluon-core: gluon.util: make exec() replace all stdio files with /dev/null 2017-02-10 22:09:59 +01:00
Matthias Schiffer
ea12cb770d
gluon-core: nicer indentation of /lib/gluon/upgrade/020-interfaces 2017-02-10 22:08:51 +01:00
Matthias Schiffer
e5cb125737
Move wifi24/5 and mesh_on_wan/lan site validators from gluon-mesh-batman-adv-core to gluon-core
These values have been in use in gluon-core for some time, the validators
need to be moved as well.
2017-02-10 21:19:34 +01:00
Matthias Schiffer
f238b01173
gluon-client-bridge: use a veth pair instead of macvlan to connect local-node to br-client
macvlan interfaces never directly exchange traffic with the underlying
interface, but only with other hosts behind the interface. In consequence,
router advertisements from the uradvd running on br-client could never
reach local-node, preventing it from getting an IPv6 address without RAs
from an external radvd. Fix this be replacing the macvlan interface with
a veth pair (with the peer interface in br-client).

As a side effect, this saves about 5KB of flash, as the veth module is
simpler than macvlan.
2017-02-10 10:21:38 +01:00
Matthias Schiffer
249ff34079
netifd: device: add veth support 2017-02-10 09:58:23 +01:00
Matthias Schiffer
57f8b9bc6a
Switch back roles of br-client and local-node interfaces
When preparing the migration from macvlan to veth for local-node, MAC
address conflicts occurred as some ports of br-client had the same address
as local-node. Reverting the roles of both interfaces fixes this.

By default, br-client is left as an interface without addresses and
firewall rules that drop everything, so the bridge is used to connect its
ports only. gluon-mesh-batman-adv-core changes this to the usual set
of addresses and firewall rules.
2017-02-10 09:58:23 +01:00
Matthias Schiffer
b92dfcb966
Move creation of local-node device from gluon-mesh-batman-adv-core to gluon-client-bridge
Prepare reverting the roles of br-client and local-node to their state
before 8c4403ba11.
2017-02-10 09:42:16 +01:00
Matthias Schiffer
eb350aba34
gluon-client-bridge, gluon-mesh-batman-adv-core: nicer indentation of uci:section calls
Also simplify the local_node.peerdns setting.
2017-02-10 08:16:27 +01:00
Matthias Schiffer
f9a52fd54f
Move luci-base dependency from gluon-core to gluon-setup-mode
Nothing outside the config mode depends on luci-base anymore.
2017-02-10 02:10:02 +01:00
Matthias Schiffer
5f922cf3ef
gluon-status-page-api: upgrade: don't throw error messages without rpcd 2017-02-10 02:10:02 +01:00
Matthias Schiffer
efb8475f45
build: get rid of some redundant build dependencies 2017-02-10 02:10:01 +01:00
Matthias Schiffer
80de4a69e3
gluon-client-bridge: don't depend on luci.ip 2017-02-10 02:10:01 +01:00
Matthias Schiffer
e665bfe64a
gluon-core: don't depend on luci.ltn12 2017-02-10 02:10:01 +01:00
Matthias Schiffer
c83b5b3cab
treewide: get rid of luci.util outside of config mode/advanced settings 2017-02-10 02:10:01 +01:00
Matthias Schiffer
6cf03bab37
treewide: replace normal uses of luci.model.uci with simple-uci to reduce LuCI dependencies
We also make use of the boolean support of simple-uci to make scripts
clearer.
2017-02-10 02:10:01 +01:00
Matthias Schiffer
6f48fc428f
gluon-legacy: remove package
The maintenance overhead doesn't justify keeping this old stuff anymore.
2017-02-10 02:10:01 +01:00
Christof Schulze
718758f0e5 gluon-respondd: have respondd join ff05::... in addition to ff02::... (#1030)
Rework init script to additionally join a ff05::... multicast group on the mesh-wide interface.
2017-02-10 02:03:04 +01:00
Simon Joda Stößer
f3ba4d0d0c docs: fix typos in 2016.1 release notes (#1031)
Add missing trailing `,` in simple_tc section and change the order of ingress and egress to default format used by Gluon.
2017-02-09 17:31:17 +01:00
Matthias Schiffer
3300c5a9bf
docs: add features/dns-cache to TOC 2017-02-09 03:06:07 +01:00
Steffen Förster
b8dc1a784a ramips-mt7628: add new platform and vocore2 (#1027) 2017-02-09 02:07:00 +01:00
Matthias Schiffer
69fca890b2
Update Gluon packages 2017-02-09 02:04:44 +01:00
Matthias Schiffer
a33f852c64
Update Gluon packages 2017-02-08 22:34:52 +01:00
Steffen Förster
fb05aef96b
x86-geode: add target for Geode CPUs 2017-02-03 22:47:14 +01:00
Matthias Schiffer
8ea481edea
x86: add kmod-8139cp by default
Fixes #1022
2017-02-03 22:35:56 +01:00
Andreas Ziegler
1222c386a7 gluon-dns-config: update documentation (#1013) 2017-01-29 00:15:00 +01:00
kb-light
f606e0ee8a scripts: fix manifest generation 2017-01-28 10:48:42 +01:00
Matthias Schiffer
9c93baf740
batman-adv: use kernel-specific PKG_BUILD_DIR
Fixes a build issue when switching targets.
2017-01-27 13:47:56 +01:00
Matthias Schiffer
3d1860e092
build: allow using DEVICES variable for sysupgrade_image/factory_image images
Setting DEVICES will also suppress cleaning the package directory,
improving incremental build speed.
2017-01-27 01:30:47 +01:00
Matthias Schiffer
6b62e2fc78
gluon-core: check_site.lua: only accept /64 as prefix6
A lot of our code does not actually work with other prefix lengths.

Fixes #1014
2017-01-26 18:59:38 +01:00
Matthias Schiffer
3e7434bca1 Merge pull request #1000 from freifunk-ffm/christf_dns-config
Add gluon-dns-config: a package that enables the node to be used as DNS cache
2017-01-25 00:00:29 +01:00
Christof Schulze
8b083d4986 gluon-core: check_site.lua: fix indentation 2017-01-24 23:21:10 +01:00
Christof Schulze
e2e910fb41 gluon-core: add configuration that enables the next_node to be used as dns cache 2017-01-24 23:20:40 +01:00
Matthias Schiffer
1069f03028
Update Gluon packages 2017-01-24 21:28:03 +01:00
Matthias Schiffer
0be280cde5
Fix creation of system users after sysupgrades
The ar71xx-tiny target sets CONFIG_CLEAN_IPKG, which would delete opkg
control files required for user creation. Fix image generation and the user
creation script.

Fixes #1012
2017-01-24 19:10:13 +01:00
Matthias Schiffer
01512419f4
gluon-luci-admin: fix firmware upgrade confirmation code
Fix an exception breaking the page.
2017-01-21 18:08:53 +01:00
Matthias Schiffer
e7b434ef34
gluon-luci-admin: fix password setting 2017-01-20 17:00:36 +01:00
Matthias Schiffer
70b116fd61
build: apply model-specific site packages at the end of the package list 2017-01-19 18:00:46 +01:00
Matthias Schiffer
aaa4150613
build: fix inclusion of site/modules 2017-01-19 17:27:14 +01:00
Matthias Schiffer
054b1094ff
Update Gluon packages 2017-01-19 17:00:16 +01:00
Matthias Schiffer
d72d3bcd9d
Update Gluon packages 2017-01-19 14:27:20 +01:00
Matthias Schiffer
0a8e028e8f
gluon-core: upgrade: don't print an error message on systems without opkg 2017-01-19 13:10:57 +01:00
Matthias Schiffer
cb33d518c6
build: backport a few STAGING_DIR_HOSTPKG bugfixes 2017-01-19 00:09:16 +01:00
Matthias Schiffer
78b2775eec
Use LEDE as base for Gluon 2017-01-18 17:21:43 +01:00
Matthias Schiffer
04818c170b
package: refactor add_to_set/remove_to_set to get rid of last LuCI patch 2017-01-18 16:28:54 +01:00
Matthias Schiffer
a0efa9f3fd
odhcp6c: update to use upstreamed solution to ignore default lifetime for RDNSS 2017-01-18 16:28:54 +01:00
Matthias Schiffer
7736f53dc4
Update LuCI to master branch 2017-01-18 16:28:48 +01:00
Matthias Schiffer
2dd8a700ca
package: avoid use of GLUONDIR variable 2017-01-17 21:22:58 +01:00
Matthias Schiffer
850499fdb3
ar71xx-generic: mark Meraki devices as BROKEN again
These devices don't have unique MAC addresses with OpenWrt/LEDE at the moment
(see #993).
2017-01-09 23:06:09 +01:00
Sven Eckelmann
471852814d mac80211: Allow switching of the ath10k regulatory domain (#1001)
ath10k has to switch the regulatory domain when switching the default
country when ATH_USER_REGD is enabled. This is for example important when
switching from country US (FCC) to DE (ETSI). The ath implementation will
use ath_reg_dyn_country_user_allow to check if this is allowed.

Unfortunately, this function always seems to return false to
ath_reg_notifier_apply even when ATH_USER_REGD is enabled. But it must
actually always accept the requests from the user (when ATH_USER_REGD is
enabled) to correctly set the conformance test limits in the ath10k binary
blob.

Not doing it will sometimes allow too high transmit powers on edge channels
for correctly calibrated devices outside their default regulatory domain.

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-01-09 22:28:21 +01:00
kb-light
d3bc378536 ar71xx-generic: TP-Link WBS210/510: remove BROKEN (#1002) 2017-01-09 22:25:16 +01:00
Matthias Schiffer
99471f8d5d
ar71xx-generic: add support for TP-Link WBS210/510 (untested)
Closes #844
2017-01-06 12:02:32 +01:00
Christof Schulze
d09351c97c gluon-luci-portconfig: portconfig.lua: change spaces to tabs (#998) 2017-01-02 19:22:05 +01:00
Matthias Schiffer
2ddf77fc81 Merge pull request #990 from freifunk-ffm/christf_get_mesh_interfaces
gluon-core: add function to gluon.util that returns all active mesh-devices
2016-12-23 00:56:42 +01:00
Matthias Schiffer
cd4753aaa5
gluon-respondd: add /usr/lib/respondd to provider directories 2016-12-23 00:44:20 +01:00
Matthias Schiffer
aac86d48df
modules: update Gluon packages 2016-12-23 00:42:41 +01:00
Christof Schulze
33817311ed modules: upgrade routing-feed to include babel 1.8 2016-12-23 00:36:44 +01:00
Matthias Schiffer
bee999dd90
ar71xx-generic: backport support for TP-LINK TL-WR1043ND v4
Fixes #961
2016-12-22 00:01:55 +01:00
Christof Schulze
e41e5cb8d9 gluon-core: add get_mesh_devices(uconn) to gluon.util which will return all devices being up and having proto = gluon_mesh 2016-12-21 23:51:48 +01:00
Christof Schulze
0abe350782 gluon-core: replace blanks by tabs in gluon.util 2016-12-21 23:47:03 +01:00
Matthias Schiffer
1f08074438
x86: generalize partition discovery for sysupgrade
Backport a few patches to allow sysupgrades on mmcblk and similar block
devices.
2016-12-20 13:36:19 +01:00
Matthias Schiffer
689de50c27
build: ensure that target-specific default packages are built 2016-12-20 13:36:19 +01:00
Matthias Schiffer
7dce74c0f9
Refresh patches 2016-12-20 01:09:53 +01:00
Matthias Schiffer
62ac802d4a
scripts/update-patches: include unabbreviated object IDs in patch files
The default abbreviation length depends on factors like user configuration,
git version and number of repository objects. Use unabbreviates IDs to make
patch generation more reproducible.
2016-12-20 01:08:11 +01:00
Matthias Schiffer
74ac0c6c78
docs: add TP-Link TL-WR940N v4 to hardware list 2016-12-19 15:09:24 +01:00
Matthias Schiffer
c25a87b1fc
docs, README: Gluon v2016.2.2 2016-12-19 00:26:42 +01:00
Matthias Schiffer
e6c3ee64d6
docs: add release notes for Gluon v2016.2.2 2016-12-19 00:26:03 +01:00
Matthias Schiffer
5058d0c2f1
docs: index: add TP-Link TL-WA801N/ND v3 to hardware list 2016-12-17 03:11:41 +01:00
David Lutz
ef39158ed1
ar71xx-generic: add Support for TP-LINK TL-WR940N v4 2016-12-13 01:31:43 +01:00
Matthias Schiffer
2796f66fcb Merge pull request #976 from FreifunkVogtland/batadv-netlink
Switch from batman-adv v14/v15 debugfs to netlink
2016-12-13 01:20:27 +01:00
Matthias Schiffer
61de5b8841
mvebu: fix comment about BROKEN status 2016-12-12 15:02:45 +01:00
Julian Labus
5b10928ce0
mvebu: add missing package uboot-envtools which is needed for sysupgrade 2016-12-12 15:02:11 +01:00
Matthias Schiffer
77c649e296
ar71xx-generic: update support list for CPE210/510/...
Fixes #975
2016-12-11 18:03:04 +01:00
Matthias Schiffer
182c21eddc
gluon-site: convert site.conf to JSON in compile instead of install step 2016-12-11 15:19:09 +01:00
Sven Eckelmann
22946b14b6 gluon-mesh-batman-adv-core: Switch from debugfs to batadv netlink
The batadv debugfs requires large memory blocks to write the text debug
tables. This is inefficient for large tables like the global translation
table or the originators table.

The memory requirement can be reduced by using netlink. It copies smaller
packets in a binary format to the userspace program. The respondd module of
gluon-mesh-batman-adv-core can therefore parse larger originator tables
without causing an OOM on systems which are tight on memory.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2016-12-11 12:03:12 +01:00
Sven Eckelmann
6ac5b9cbc8 gluon-status-page-api: Switch from debugfs to batadv netlink
The batadv debugfs requires large memory blocks to write the text debug
tables. This is inefficient for large tables like the global translation
table or the originators table.

The memory requirement can be reduced by using netlink. It copies smaller
packets in a binary format to the userspace program. gluon-status-page-api
can therefore parse larger originator tables without causing an OOM on
systems which are tight on memory.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2016-12-11 12:03:12 +01:00
Ruben Barkow
ff0ad20752 gluon-config-mode-core: hand over more info to the reboot screen (#930) 2016-12-11 03:13:28 +01:00
Matthias Schiffer
dc090d3587
Update Gluon packages 2016-12-11 01:31:40 +01:00
Matthias Schiffer
a7d8409466
Update routing packages
This lifts batman-adv and alfred to version 2016.4.
2016-12-11 01:16:27 +01:00
Matthias Schiffer
bab42a3a4c
Update Gluon packages 2016-12-11 00:54:06 +01:00
Matthias Schiffer
9a06a98651
gluon-respondd: add delay to mesh-wide multicast requests
Mesh-wide multicast requests are answered with a random delay of up to 10s.
2016-12-11 00:42:41 +01:00
Matthias Schiffer
f2524ee179
Update Gluon packages 2016-12-11 00:22:18 +01:00
Matthias Schiffer
8c4403ba11
gluon-client-bridge, gluon-mesh-batman-adv-core: switch roles of br-client and local-node interfaces
MAC and IP addresses are switched. This makes the gluon-client-bridge
package more useful for different routing protocols that don't need a
unique address on the client bridge.

As a side effect, gluon-radvd is now using the next-node address, which had
been considered before, but was dismissed to avoid having gluon-radvd
depend on gluon-next-node and gluon-mesh-batman-adv. This will be useful
for announcing default routes via gluon-radvd.

One downside is that this introduces a minor dependency on batman-adv in
gluon-respondd: the hotplug script that checked for the client interface
before will now check for local-node. This doesn't really matter: for mesh
protocols without a local-node interface, the check will do nothing (which
makes sense, as there is no interface to bind to for mesh-wide respondd).
2016-12-10 23:43:44 +01:00
Matthias Schiffer
d2373590e0
gluon-core: add support for removing sysctl settings 2016-12-10 23:43:44 +01:00
Matthias Schiffer
3fc9154d1d
gluon-batman-adv-core: merge gluon-next-node into gluon-batman-adv-core 2016-12-10 23:43:44 +01:00
Matthias Schiffer
fb85d96d5e
gluon-next-node: don't require next_node.ip6
The next-node interface may be useful with IPv4 only or even just a MAC
address. This prepares merging gluon-next-node into gluon-batman-adv-core.
2016-12-10 23:43:23 +01:00
Jan-Philipp Litza
fcf3abd9c4 gluon-respondd: restart on state change of client iface
Because we unconditionally appended `-i br-client` to the command line of
respondd, it wasn't restarted when br-client changed state. Now, we use a
jsonfilter expression on the network.interface dump data, similar to how the
other interface names are generated, and only add the interface to the argument
list if it is up.
2016-12-09 10:43:24 +01:00
Christof Schulze
4a1b47de45 docs: dev/basics: add rules for coding guide (#970)
* use tabs instead of spaces
* use jsonfilter for speed
2016-12-08 23:56:43 +01:00
Jan-Philipp Litza
d8bb97831b gluon-respondd: Use procd in initscript and to restart on network changes 2016-12-08 23:30:57 +01:00
Matthias Schiffer
cb86fce29f
gluon-respondd: make setup.d script executable 2016-12-08 23:02:23 +01:00
txt.file
1f927af82e docs: fix typo in docs/user/site.rst 2016-12-08 18:24:17 +01:00
Christof Schulze
ca57cdfe77 gluon-respondd: make initialisation mesh protocol agnostic (#946) 2016-12-08 17:44:29 +01:00
Matthias Schiffer
ddf0217395
docs: feature/roles: remove another outdates sentence 2016-12-07 11:46:18 +01:00
Matthias Schiffer
3fd0ca77c7
docs: feature/roles: update outdates site config docs 2016-12-07 11:43:50 +01:00
rubo77
2a101ddd56
gluon-core: add dirty flag to gluon-version, add site-version 2016-12-06 20:05:34 +01:00
Ruben Barkow
cb9b2335af docs: rename Freifunk Entenhausen to Alpha Centauri (#955) 2016-12-06 20:02:51 +01:00
Matthias Schiffer
1677b62e4b
ar71xx: fix LEDs for TL-WA801ND v3, remove BROKEN 2016-12-06 19:01:46 +01:00
Matthias Schiffer
28e697c448
ar71xx: fix sysupgrade on TL-WR801ND v3 2016-12-06 16:20:09 +01:00
Matthias Schiffer
e9835e3c98
Update Gluon packages 2016-12-05 11:01:05 +01:00
Julian
a9e29725c0 Add support for mvebu target (#964) 2016-12-05 10:45:05 +01:00
Sven Eckelmann
eed79bc37c openwrt: Remove extra soc check in ath79_gpio_output_select (#965)
The  assignment of the gpio_count and reg_base in ath79_gpio_output_select
takes care that only supported platforms can use ath79_gpio_output_select.
But the rebase of the patches after the last OpenWrt base update
accidentally added an extra check for the SoC which was missing support
soc_is_qca955x().

Boots on QCA955X devices which were using ath79_gpio_output_select stopped
with

    Kernel bug detected[#1]:
    [...]
    Call Trace:
    [<803e6174>] ath79_gpio_output_select+0x30/0xe8
    [<803ed590>] om5p_acv2_setup+0x24/0x200
    [<803e4dc0>] ath79_setup+0x28/0x38
    [<80069ac8>] do_one_initcall+0x148/0x1ec
    [<803e2cc4>] kernel_init_freeable+0x150/0x208
    [<80065218>] kernel_init+0x10/0x114
    [<80060878>] ret_from_kernel_thread+0x14/0x1c

Fixes: a22c1d5670 ("Update OpenWrt base")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2016-12-05 10:42:40 +01:00
Matthias Schiffer
b32ed384c7 gluon-mesh-batman-adv-core: respondd: correctly detect lower interface types (#954)
Fixes #941
2016-12-03 13:22:22 +01:00
Matthias Schiffer
1f3e789463
gluon-next-node: fix ebtables rules without next_node.ip4 2016-11-30 15:27:06 +01:00
Ruben Barkow
34deeac380 gluon-config-mode-geo-location: make the label for altitude definable in the site folder (#883) 2016-11-30 13:13:59 +01:00
Neal Oakey
9223639ffe ar71xx-generic: make UBNT image names consistent (#809) 2016-11-29 23:11:50 +01:00
Christof Schulze
54109702bd docs: add development guide including one first guideline wrt lua vs. sh usage (#951) 2016-11-29 20:45:25 +01:00
Matthias Schiffer
6ebf7120df
ar71xx: fix syntax error in /lib/ar71xx.sh
Fixes: 212c38f0 "ar71xx: add model detection for UBNT Rocket Ti"
2016-11-29 20:01:54 +01:00
Matthias Schiffer
78ccfaa58d
Update OpenWrt patches 2016-11-29 19:15:28 +01:00
Matthias Schiffer
32400db282
Update Gluon packages 2016-11-29 18:49:35 +01:00
Neal Oakey
212c38f074 ar71xx: add model detection for UBNT Rocket Ti (#943) 2016-11-29 15:33:19 +01:00
Sven Eckelmann
3d9a3f35be kernel: add at803x workaround for sgmii mode (#949)
Some (possibly broken) bootloaders incorrectly initialize the at8033 phy.
This breaks auto-negotation on these SGMII devices. The mode has therefore
to be set back in to a valid configuration by Linux.

Fixes #911
2016-11-29 15:29:19 +01:00
Matthias Schiffer
20fc162b38
gluon-core, gluon-setup-mode: fix WAN/LAN assignment on CPE210
The interfaces were accidentially switched when the CPE210 was separated
from the CPE510 code.
2016-11-22 20:01:13 +01:00
Matthias Schiffer
b6285800d1
build: clean up postinst scripts after build
OpenWrt does this by default to save some space.
2016-11-22 18:32:07 +01:00
Matthias Schiffer
f98b175da1
build: fix setting of opkg tmpdir
Don't use system /tmp for build.
2016-11-22 18:32:07 +01:00
viisauksena
7e1dd5730c docs/wired make uci commit more specific (#942)
propose to make uci commit more specific to minimize unwanted changes in other temporary written config files like wireless ssid (in some offline changers)
2016-11-21 10:25:45 +01:00
Matthias Schiffer
3ac9d34c49
docs: dev/basics: remove outdated docs about patch and unpatch commands 2016-11-19 17:34:19 +01:00
Matthias Schiffer
ce53ed209b
docs: user/site: improve mcast_rate description 2016-11-16 18:24:15 +01:00
Matthias Schiffer
9279fe4b3b
ar71xx, ramips: reduce CPU load and flickering on devices using rsslieds
Fixes #897
2016-11-16 01:55:04 +01:00
Vieno Foo
849f8f66bf
docs: fix typo in features/wlan-configuration 2016-11-15 22:45:26 +01:00
Matthias Schiffer
0e85726a0a
ath9k: fix ath9k_hw_gpio_get() to return 0 or 1 on success
Fixes the Ubiquiti UAP Outdoor+ HSR.
2016-11-15 19:29:29 +01:00
Matthias Schiffer
de2551d435
Fix OpenWrt patch numbering 2016-11-14 22:38:58 +01:00
Andreas Ziegler
6107f215d2 x86: add mmc drivers to generic and 64 subtargets 2016-11-14 22:38:17 +01:00
Andreas Ziegler
aa61a5d489 x86-64: add pata drivers 2016-11-14 22:38:17 +01:00
Matthias Schiffer
5ef3d883a5
ar71xx-generic: backport region code support for TP-Link TL-WR841ND v11 2016-11-11 03:45:49 +01:00
Matthias Schiffer
60b4830c51
linux-firmware: switch back to git protocol from https for download
Using HTTPS breaks the download on Debian Wheezy. The switch was an
unintended side effect of the backport from LEDE.

Also, fix the commit message of the backport patch (mwlwifi is not updated
anymore since the last OpenWrt base upgrade).

Fixes #919
2016-11-10 03:30:16 +01:00
Kevin Olbrich
3fd43d7bdb
docs: user/site: fix typo (#924) 2016-11-09 02:30:36 +01:00
Matthias Schiffer
138a3a008e
docs, README: import release notes from Gluon v2016.2.1 2016-11-08 17:28:12 +01:00
Andreas Ziegler
9fba8d7a64 x86: include kmod-igb, kmod-sky2 and kmod-tulip into generic and 64 subtargets 2016-11-06 15:07:06 +01:00
Andreas Ziegler
dbc6fe70d7 x86: sort network packages alphabetically 2016-11-06 15:06:24 +01:00
viisauksena
539081d315 gluon-mesh-vpn-fastd: make fastd syslog level configurable (#915) 2016-11-06 00:01:49 +01:00
Matthias Schiffer
b707840949
README: update mailing list subscribe/unsubscribe addresses 2016-11-05 12:29:09 +01:00
Matthias Schiffer
233a7a3c5e
ar71xx: fix syntax error in /etc/uci-defaults/01_leds 2016-11-05 04:36:08 +01:00
Matthias Schiffer
095583ba92
Update OpenWrt base 2016-11-02 17:33:54 +01:00
Brother-Lal
740c60c7e4 gluon-status-page: add hint to enable JavaScript if it is disabled (#913) 2016-10-24 14:43:12 +02:00
Brother-Lal
e80f751a85 fix error in statuspage if cookies are disabled (#912)
If cookies are disabled, the Statuspage only displays an empty ("Not connected")
This checks if the localStorage API is available and working and only uses it in this case
Also allows better backwards compatibility.
2016-10-24 14:18:01 +02:00
Ruben Barkow
30811f7f1b Docs: autoupdater->build instructions num cores +1 (#908) 2016-10-20 16:44:04 +02:00
Franz Pletz
9aa31f18e3 docs: mention dependency on wget (#906)
Tested build on a minimal Ubuntu 16.04 container image without wget.
2016-10-19 19:06:02 +02:00
Matthias Schiffer
a606b32b17
ar71xx-generic: set region code for TL-WA901ND v4 and remove BROKEN
Tested-by: Jannis Pinter <jannis@pinterjann.is>
2016-10-15 19:11:35 +02:00
Matthias Schiffer
df5f4ad243
ath9k: remove intermediate queueing patch
The downgraded version of ath9k was reported to cause issues with Windows
clients before. Remove the problematic patch.
2016-10-13 10:02:11 +02:00
Matthias Schiffer
487922a8d9
Downgrade mac80211 to LEDE 6c2651566cce8f5b3a3d3b976439dee2bac5e07e
In addition, the temperature compensation support patch is reverted.

It seems that newer mac80211 version are less stable, so we downgrade it
for now.
2016-10-11 03:38:53 +02:00
Matthias Schiffer
9934d254da
kernel: add fix for CVE-2016-7117
This probably doesn't affect Gluon as nothing is using recvmmsg, but it's
still a good idea to get this fixed ASAP.
2016-10-11 02:15:42 +02:00
Matthias Schiffer
e1808451aa
Update OpenWrt base 2016-10-11 02:15:42 +02:00
Matthias Schiffer
f1c23b3b3c
scripts/sha512sum.sh: output error message to stderr 2016-10-10 06:18:18 +02:00
Jan-Tarek Butt
0f3e660842
scripts: improve variable escaping 2016-10-10 05:57:35 +02:00
Jan-Tarek Butt
85c66b3bf8
gluon-autoupdater: double quote $1 to prevent globbing and word splitting 2016-10-10 05:44:27 +02:00
Matthias Schiffer
82ef6599f8
mac80211: backport ath9k stability fix 2016-09-30 17:23:20 +02:00
Simon Joda Stößer
e98da9b766 docs: fixed link to issue #414 in v2016.2 release notes (#895) 2016-09-29 18:26:33 +02:00
Ben Oswald
5c7be1e01a add link to Freifunk Rhein-Neckar site repository (#890) 2016-09-27 09:40:45 +02:00
Jan-Philipp Litza
e54bde54d6 Merge pull request #888 from kokel/site-ffmwu
docs: update link to site repository of Freifunk MWU
2016-09-22 21:52:38 +02:00
Tobias Hachmer
be4df11f57 docs: update link to site repository of Freifunk MWU 2016-09-22 21:46:19 +02:00
Matthias Schiffer
d017739ac0
docs: change version to v2016.2+ 2016-09-21 20:19:10 +02:00
Matthias Schiffer
6964d30ff2
docs, README: change current release to v2016.2 2016-09-21 20:04:57 +02:00
Matthias Schiffer
77101fc703
docs: update v2016.2 release notes 2016-09-18 22:58:12 +02:00
Matthias Schiffer
4e2888f7a2
gluon-wan-dnsmasq: fix handling of static DNS servers
Fixes #886
2016-09-18 22:39:22 +02:00
Matthias Schiffer
cb6d31123f
docs: various fixes to v2016.2 release notes 2016-09-17 05:14:50 +02:00
Matthias Schiffer
d953304585
docs: add preliminary release notes for Gluon v2016.2 2016-09-11 19:42:41 +02:00
Matthias Schiffer
8644358c2b
docs: add missing newlines in index 2016-09-11 18:15:48 +02:00
Matthias Schiffer
c3997455e8
docs: fix and update make variable section 2016-09-11 18:05:28 +02:00
Matthias Schiffer
25907645b7
docs: update hardware support list 2016-09-11 17:26:30 +02:00
Matthias Schiffer
bfbfe508cf
docs, README: Gluon v2016.1.6 2016-09-11 16:58:13 +02:00
Matthias Schiffer
96917d644d
docs: update comment about prefix4 in site.conf example 2016-09-10 17:20:54 +02:00
Matthias Schiffer
e56e3c25db
docs: update docs for prefix4/next_node.ip4 2016-09-10 17:19:13 +02:00
Matthias Schiffer
b902ddd8df
gluon-next-node: make IPv4 next-node address optional
If next_node.ip4 is not set or gluon-next-node is not used, prefix4 will
now be optional as well.
2016-09-10 17:15:16 +02:00
Matthias Schiffer
ea95dceb10
Update Gluon packages 2016-09-10 01:30:11 +02:00
Matthias Schiffer
2432373f5f
ar71xx-generic: allow choosing the ath10k firmware branch in site.mk
The GLUON_ATH10K_MESH must be set to 11s or ibss; when it is not set,
ath10k device images won't be built at all. This also allows us to remove
the BROKEN flag for ath10k devices, as the GLUON_ATH10K_MESH variable is
sufficient to avoid ath10k devices if desired.

Fixes #864
2016-09-09 03:02:40 +02:00
Matthias Schiffer
7153fa3615
ath10k-firmware: add ath10k-firmware-qca988x-11s 2016-09-09 03:01:17 +02:00
Matthias Schiffer
b08ac98f1c
docs: fix gluon-config-mode-contact-info syntax errors and formatting 2016-09-09 03:00:54 +02:00
Sven Eckelmann
d3811bb2bf ar71xx-generic: Mark MR1750 and OM5P-AC devices as BROKEN (#878)
The MR1750 and OM5P-AC devices are based on ath9k SoCs and an external
ath10k chip. All devices which are using ath10k should be marked as broken
due to deficits in their IBSS support.

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-09-07 17:56:04 +02:00
Ruben Barkow
d03c88afb4 gluon-config-mode-contact-info: define an "obligatory" option in site.conf (#843) 2016-09-07 06:44:57 +02:00
J0WI
d2fb547a3f gluon-status-page: removed obsolete css prefixes (#877)
None of them are used by modern browsers anymore, so it's safe to remove them.
2016-09-07 06:03:57 +02:00
Matthias Schiffer
183c35401a
mac80211, hostapd, ...: update to LEDE 42f559ed70897a7b74dd3e6293b42e6d2e511eaa 2016-09-07 05:49:54 +02:00
Matthias Schiffer
8343278bbf
Merge branch 'mesh-proto' 2016-09-07 02:15:18 +02:00
Matthias Schiffer
d05cee5b55
gluon-mesh-batman-adv-core: explicitly set primary MAC address using a dummy interface
Fixes #834
2016-09-07 02:14:43 +02:00
Matthias Schiffer
6cddaedfc7
Reorganize MAC addresses, always explicitly set address for private WLAN
Fixes #842
2016-09-07 02:14:42 +02:00
Matthias Schiffer
4f39be09c9
gluon-core: migrate custom batadv interfaces to gluon_mesh proto
Users may have defined additional mesh interfaces. Properly migrate these
to avoid subtly breaking the network config (and make them ready for new
mesh protocols).
2016-09-07 02:14:42 +02:00
Matthias Schiffer
9a5a8e0ab0
gluon-client-bridge: add LAN interfaces to client bridge by default (instead of doing this in the batman-adv-specific scripts)
This allows to weaken the gluon-mesh-batman-adv-core dependency of
gluon-luci-portconfig to gluon-client-bridge.
2016-09-07 02:14:42 +02:00
Matthias Schiffer
8434896014
gluon-mesh-batman-adv-core: move config not specific to batman-adv to gluon-core 2016-09-07 02:14:42 +02:00
Matthias Schiffer
d1e6dfb7e3
gluon-mesh-batman-adv-*, gluon-mesh-vpn-fastd: configure batman-adv through gluon_mesh proto 2016-09-07 02:14:42 +02:00
Matthias Schiffer
b7380decc2
gluon-mesh-batman-adv-*: add gluon_mesh protocol handlers 2016-09-07 02:14:42 +02:00
Matthias Schiffer
5cd6295265
gluon-core: add gluon_mesh netifd proto
This new protocol will allow configuring mesh interfaces independently of
the used mesh protocol.
2016-09-07 02:14:42 +02:00
Lustikus
fb587e9b55
Update hardware.rst
[Matthias Schiffer: changed the text a bit]
2016-09-05 16:11:21 +02:00
Jan-Philipp Litza
92118cf1d0 Remove squashing from contribution guidelines (#865) 2016-09-02 19:16:28 +02:00
Matthias Schiffer
a3dcece329
docs: add package/gluon-ebtables-segment-mld to index 2016-08-30 23:55:46 +02:00
Matthias Schiffer
d70788adbc
gluon-status-page-api: hide warning in upgrade script 2016-08-30 22:09:40 +02:00
Matthias Schiffer
2331cb194e
gluon-mesh-batman-adv-core, gluon-mesh-vpn-fastd: switch MAC address assignment
Switch to:

1. WAN
2. LAN
3. Mesh VPN

As WAN and LAN are setup in gluon-mesh-batman-adv-core (and will be moved
to gluon-core), while the mesh VPN has its own package, giving WAN and LAN
the first indices is preferable.
2016-08-30 21:25:40 +02:00
Ruben Barkow
8557ffb2b9 docs: minor improvements to i18n docs, mention French (#866) 2016-08-30 18:32:41 +02:00
Steffen Förster
7fd1d0d62e ar71xx-generic: add support for ALFA N2 and N5 (#871)
+ added profile for these devices
+ added entry in the docs for these devices plus the missing alfa tube
2016-08-30 12:18:35 +02:00
Matthias Schiffer
051fd926ef
gluon-wan-dnsmasq: add interface name to link-local addresses
Fixes #854
2016-08-28 22:04:47 +02:00
Matthias Schiffer
639c12b8e2
ar71xx-generic: add support for new TP-Link region codes
Generate flashable images for the Archer C7 v2 with current stock firmware
again.

To set the region code, the GLUON_REGION variable must be set to "us" or
"eu" in site.mk or as a make argument.

Fixes #860
2016-08-28 21:03:56 +02:00
Matthias Schiffer
b2473f05cb
scripts/update.sh: don't disable commit signing for modules 2016-08-27 21:31:54 +02:00
Matthias Schiffer
94c993cfe2
Update Gluon packages 2016-08-27 21:24:57 +02:00
Matthias Schiffer
514390d3a2
Update Gluon packages 2016-08-27 17:29:07 +02:00
Matthias Schiffer
e0ed7dde85
gluon-config-mode-mesh-vpn: fix indentation 2016-08-27 16:39:30 +02:00
Matthias Schiffer
7e0075584d
Use a "pretty" hostname where possible
Fixes #414
2016-08-27 16:33:37 +02:00
Matthias Schiffer
6df141e7a6
Update Gluon packages 2016-08-27 16:33:36 +02:00
Matthias Schiffer
819c7d59f1
gluon-config-mode-*, gluon-luci-*: add escaping for many user- or site-defined strings
Allows weird release numbers, models and site names, and prepares support
for pretty hostnames.
2016-08-27 15:18:13 +02:00
Matthias Schiffer
79a49a1515
gluon-luci-theme: add HTML and URL escaping utility functions 2016-08-27 13:19:42 +02:00
kb-light
81280d8e18 gluon-mesh-batman-adv-core: use need_one_of() to check for valid mcast_rate 2016-08-27 07:12:07 +02:00
kb-light
6ff94aca35 gluon-core: make wifi rates configurable by site.conf
and add documentation
2016-08-27 07:11:58 +02:00
kb-light
4d98fbb1bb scripts: update need_string_array() to work as expected 2016-08-26 23:28:26 +02:00
kb-light
21e033213c scripts: add functions need_one_of and need_array_of to check_site_lib.lua
need_one_of(varname, array, required) checks weather the value of the specified variable is part of given array.
need_array_of(varname, array, required) is similar to need_one_of() but assume that varname points to an array.
2016-08-26 23:28:26 +02:00
Matthias Schiffer
c84bb17915
Merge branch 'enable-multicast-snooping' of https://github.com/T-X/gluon 2016-08-26 21:05:30 +02:00
Matthias Schiffer
e5acba5fbc
gluon-radvd: fix init script
Fixes #862
2016-08-24 13:07:29 +02:00
Matthias Schiffer
1c6256907b
ar71xx-generic: add support for TL-WA801ND v3 (untested)
Fixes #800
2016-08-23 00:26:51 +02:00
Linus Lüssing
6594ba314c gluon-core: reenable multicast snooping on WAN side
Just like we enabled multicast snooping on the batman-adv client bridge
again, let's do the same for the WAN side.

With one exception: The IGMP/MLD querier is kept disabled to avoid
becoming too "bossy"/"noisy" on a foreign network. The main router on
the WAN side should perform querying and by that enable
IGMP/MLD/snooping if it considers this appropriate there.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2016-08-23 00:21:26 +02:00
Linus Lüssing
2a51d94fbb gluon-mesh-batman-adv-core: reenable multicast snooping
A few issues with the bridge snooping were identified and fixed
upstream in OpenWRT:

* "firewall: Allow IGMP and MLD input on WAN" (r45613)
* "kernel: bridge: backport two snooping related patches" (r45783)
* netifd: "bridge: Fix multicast_to_unicast feature by hairpin+isolate"
  (OW: "netifd: update to the latest version, adds multicast-to-unicast fixes" (r46719))
* "kernel: bridge, multicast-to-unicast: assign src after pskb_may_pull()" (r46721)
* "kernel: bridge, multicast-to-unicast: fix echoes on STA" (46765)

These have very likely caused issues with the bridge snooping before,
which led to disabling it in the past. Let's reenable the multicast
snooping now that they were fixed for reduced multicast overhead on the
wifi.

Advantages are the following:

This mildly reduces overhead on the mesh layer. And significantly reduces
overhead on the AP interface and therefore significantly increases
available airtime (the currently most significant scalability bottleneck).

Secondly removes an easy, often accidental node-local Denial-of-Service
vector based on multicast flooding / streaming.

Thirdly, makes node-local multicast streaming feasible.

Finally should noticably increase battery life of mobile devices.

Note: bridge querier is disabled for br-wan. We want to avoid becoming
too "bossy"/"noisy" on a foreign network.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2016-08-23 00:15:27 +02:00
T-X
d5829d87be gluon-mesh-batman-adv-core: disable bridge port learning on bat0 (#780)
The mesh side has become fairly huge in many communities. Up to
a few thousand entries can currently be found in the forwarding
database (fdb) of a bridge for its bridge port bat0.

The bridge fdb is kind of redundant to the batman-adv global translation
table here. Therefore this patch tries to reduce memory footprint by
following an approach similar to the IGMP/MLD split patchset approach:

Make the bridge oblivious not only regarding multicast listeners towards
the mesh but with this patch unicast hosts on the mesh, too.

If the destination of an ethernet frame is known by the bridge to be a
local one, then the frame is forwarded to the according port. If it is
unknown, then the frame is forwarded to the wifi AP interface and bat0.

mac80211 and batman-adv then know whether to drop or forward a frame
further through their own book-keeping.

Note that unicast-flood is not disabled for the wifi AP bridge port, nor
is learning disabled on the wifi AP. This is mainly to keep the
configuration in UCI and according setup scripts simple ;). However, not
disalbling unicast-flood on the wifi AP interface might also give a
minor latency improvement for newly joining wifi clients.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2016-08-22 23:26:07 +02:00
Matthias Schiffer
b00c1a30c3
dropbear: update to LEDE 277f85c21ae0ede4e15e66cbd801b9fb502531df
Includes a few security updates and enables Curve25519 support.

Fixes #223
2016-08-22 19:23:15 +02:00
Matthias Schiffer
61cde569ad
ar71xx: backport fixes for better CPE210/510 support (again)
This patchset enables the RX LNA for the CPE210/510, improving RX by about
20dB. The profiles for CPE210 and CPE510 is split into two images.

The problematic patch switching the CPE510 to the secondary ART is left
out.
2016-08-22 18:42:33 +02:00
Ruben Barkow
934f640b9b Docs: more example site configs in the wild (#837) 2016-08-22 17:32:53 +02:00
Simon Wunderlich
655498889b ar71xx-generic: remove broken mark for wr842n-v3 (#859)
I've bought a couple of those devices from Senetic GmbH.

https://www.senetic.de/product/TL-WR842N

They have 16 MB of Flash and 64 MB of RAM. Platform support works fine,
I've also tested a little with Ethernet (since I saw some regressions on
OpenWRT/LEDE with 841v11), no problems.

Therefore, lets remove the broken mark.

Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
2016-08-22 16:15:08 +02:00
Matthias Schiffer
0eac102971
scripts/update.sh: fix checkout of correct base commit after fetching 2016-08-12 09:23:07 +02:00
Matthias Schiffer
98557891da
mac80211, hostapd, iw, ...: update to LEDE 27dffa0b0c53a1a817a9a37d1647c7e70672273f 2016-08-09 04:12:28 +02:00
Matthias Schiffer
bb3db1795b
update/patch: avoid applying patches directly in build repos
Switching branches and applying patches in the build repos will
unnecessarily touch many files, causing rebuilds of packages that didn't
really change; furthermore, it is filling the reflog with many entries.

Don't ever switch to base branch in the build repos and apply patches in
a temporary clone to avoid these issues.

In addition, GPG signing is generally disabled in the build repos to
override potential global configuration (as signing doesn't make sense and
will slow down rebases).
2016-08-09 03:41:52 +02:00
@RubenKelevra
93deaad8a8 modules: change url from openwrt.org to github one (#850) 2016-08-08 21:22:00 +02:00
Sprinterfreak
74f4a9380a ar71xx-generic: verified Tube2h, remove BROKEN (#847) 2016-08-08 11:55:37 +02:00
kb-light
2789aebcb2 gluon-luci-private-wifi: limit ssid to 32 characters (#848)
Fixes #845
2016-08-08 11:38:57 +02:00
Jan-Philipp Litza
d445cb772d gluon-radvd: Use procd in init script
The main advantage is that procd is capable of logging stderr to logd,
making errors easier to debug.
2016-07-30 20:27:20 +02:00
Matthias Schiffer
f3cb6d7b36
gluon-luci-portconfig: add setting for PoE passthrough
Fixes #328
2016-07-30 00:04:17 +02:00
Matthias Schiffer
b1a753e1c5
gluon-core: allow setting PoE passthrough default setting from site.conf 2016-07-30 00:00:39 +02:00
Matthias Schiffer
f2feea2d3a
contrib/lsupgrade.sh: show upgrade scripts in luasrc directories 2016-07-29 22:30:11 +02:00
Matthias Schiffer
284c61d98e
mac80211, hostapd, iw, ...: update to LEDE b2ddfbc1c7b935cf931b4c336969b65947270ce9 2016-07-29 21:43:45 +02:00
Matthias Schiffer
66a7542a01
netifd: update to latest version 2016-07-29 21:30:26 +02:00
Jannis Pinter
f103ee244f Add support for Buffalo WZR-HP-G300NH2 (#836)
Add Buffalo WZR-HP-G300NH2 to Makefile, device is already supported in OpenWrt and LEDE.
Verified functionality with actual device.
2016-07-29 15:28:28 +02:00
Matthias Schiffer
3d3eb24a97
ar71xx-generic: backport a few D-Link DIR-505 A1/A2 patches
Fixes #658
2016-07-28 16:33:49 +02:00
Matthias Schiffer
cb2ecbfdf0
Make libuecc a shared library, update Gluon packages 2016-07-28 01:06:56 +02:00
Matthias Schiffer
b241373640
gluon-luci-private-wifi: set MAC address if the driver provides one 2016-07-28 00:27:47 +02:00
Matthias Schiffer
279a409198
gluon-core: split get_wlan_mac_from_driver() out of get_wlan_mac() 2016-07-27 17:25:05 +02:00
Matthias Schiffer
806af27083
gluon-client-bridge, gluon-mesh-batman-adv-core: make macaddr variable local in upgrade script 2016-07-27 17:25:05 +02:00
Matthias Schiffer
7565839fc4 Merge pull request #674 from T-X/filter-igmp-mld
Filter IGMP+MLD
2016-07-27 17:24:43 +02:00
Matthias Schiffer
0c63fc466e
ar71xx-generic: fix Tube2H profile 2016-07-27 13:19:01 +02:00
Matthias Schiffer
e773f686c9
ar71xx-generic: fix BOARDNAME for UAP AC Lite
Caused by a broken backport.

Fixes #689
2016-07-27 05:37:23 +02:00
Matthias Schiffer
fd80c4ea4b
netifd: fix broken download URL 2016-07-27 05:36:21 +02:00
Matthias Schiffer
85674a5557
gluon-luci-admin: rename "Expert Mode" to "Advanced settings"
Use the common term; the "Expert Mode" never was a distinct mode of
operation anyways.
2016-07-27 02:38:39 +02:00
Matthias Schiffer
5e3b1f80b0
gluon-luci-admin: regenerate fr.po 2016-07-27 02:35:06 +02:00
Matthias Schiffer
0b0550c30f
ar71xx-generic: fix names of ALFA products
Fixes autoupdater for Hotnet-UB and AP121. Also add note about broken
autoupdates on Tube2H.
2016-07-27 01:42:59 +02:00
Christof Schulze
65ee128c37
gluon-radvd: externalize arguments
The arguments are now provided by gluon-mesh-batman-adv-core, so
gluon-radvd can be used with other mesh protocols.

[Matthias Schiffer: removed PROVIDES dependency]
2016-07-27 01:24:33 +02:00
Matthias Schiffer
aae05fe368
netifd: update to latest version from LEDE 2016-07-27 00:54:48 +02:00
Matthias Schiffer
7974284ed6
mac80211: update to LEDE b47f438d98cd4b731d7f4431448dde973eae4739 2016-07-26 01:12:16 +02:00
Matthias Schiffer
55d6f71cff
gluon-setup-mode: remove unneeded require 2016-07-26 01:11:03 +02:00
Sprinterfreak
7a03c09e55 ar71xx-generic: add support for ALFA Networks Tube2H (#828) 2016-07-25 15:53:03 +02:00
lemoer
8e8f794c24 gluon-neighbour-info: improve verbosity on wrong cli parameters (#829)
gluon-neighbour-info: improve verbosity on wrong cli parameters
2016-07-25 15:52:27 +02:00
Matthias Schiffer
1c42aa0e42
libpcap: fix dependency of install-shared-so make target 2016-07-21 18:03:05 +02:00
Matthias Schiffer
2afe34efec
Use MAC addresses provided by WLAN drivers by default
Some drivers (mt76) don't support arbitrary MAC addresses. Use the
addresses provided by the driver (avoiding the primary address) by default,
but fall back to our has-based scheme when the driver doesn't provide
(enough) addresses.
2016-07-20 18:42:56 +02:00
Matthias Schiffer
c8bc4620d1
gluon-core: unify indentation in gluon/util.lua 2016-07-20 17:51:09 +02:00
Matthias Schiffer
849af9ade0
gluon-client-bridge, gluon-mesh-batman-adv-core: simplify VIF config functions 2016-07-20 15:44:36 +02:00
Florian Klink
b2117fd31b
x86-generic: enable CONFIG_SATA_VIA 2016-07-20 14:44:23 +02:00
Matthias Schiffer
91881f45dc
mac80211: update to LEDE 6c2651566cce8f5b3a3d3b976439dee2bac5e07e
Also switch to kmod-ath10k-ct, so we can drop our AP+IBSS patch.
2016-07-19 22:39:24 +02:00
Matthias Schiffer
64fdc0d7ba
gluon-mesh-batman-adv-core: add sleep to autoupdater network stop script
Accidentially forgot to commit this. The sleep is necessary so netifd can
actually stop the WLAN interfaces after `wifi down`.
2016-07-19 15:49:07 +02:00
Jan-Tarek Butt
8f5a7c9001
gluon-mesh-batman-adv-core: stop WLAN and batman-adv before autoupdater upgrades
[Matthias Schiffer:
  - improve commit message
  - add pidof check
  - also call `wifi down`
]
2016-07-19 03:41:21 +02:00
Matthias Schiffer
0c7457f122
Update Gluon packages 2016-07-19 02:46:24 +02:00
Matthias Schiffer
9ffdb0cd15
docs: user/site: clarify mirror ordering
Fixes #823
2016-07-10 22:42:42 +02:00
Jan-Tarek Butt
1c1f490527
Minify all Lua code 2016-07-10 20:14:25 +02:00
Matthias Schiffer
42910c0606
ramips-mt7621: use phy1 MAC address as primary on DIR-860L B1 2016-07-10 15:51:07 +02:00
Matthias Schiffer
c913957e01
gluon-luci-wifi-config: fix to work with legacy configs using macaddr instead of path to identify radios 2016-07-09 23:32:46 +02:00
Jan-Tarek Butt
1a289341a4
build: add GluonSrcDiet define to package.mk
This call takes an input and an output argument and will copy all files
from the input to the output, while minifying the Lua files.

[Matthias Schiffer: simplified definition, added commit message.]
2016-07-09 15:46:39 +02:00
Matthias Schiffer
d0831aa83a
Update routing packages 2016-07-06 16:17:37 +02:00
Sven Eckelmann
4af46bdb9c batman-adv: import Linux 4.7 fixes
Introduce new fixes:

 * Avoid nullptr dereference in bla after vlan_insert_tag
 * Avoid nullptr dereference in dat after vlan_insert_tag
 * Avoid tt_req_node list put for unhashed entry
 * Fix orig_node_vlan leak on orig_node_release
 * Fix non-atomic bla_claim::backbone_gw access
 * Fix reference leak in batadv_find_router
 * Free last_bonding_candidate on release of orig_node

Also replace the gluon version of the speedyjoin patch with the one already
included in openwrt-routing.

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-07-06 15:56:16 +02:00
Matthias Schiffer
a4b60a372b
ar71xx-generic: fix TL-WR841N/ND v11 LEDs
Fixes #812
2016-07-03 22:28:11 +02:00
Matthias Schiffer
267b9bd018
ar71xx-generic: add support for TP-Link TL-WR842N/ND v3 (untested) 2016-07-03 22:27:38 +02:00
Matthias Schiffer
634997ec87
Add target ramips-mt7621 with model D-Link DIR-860L B1
Needs more testing, high packet loss at the moment.
2016-07-03 21:56:32 +02:00
Matthias Schiffer
fd237f6f43
mac80211: update to LEDE 0a0caa2656c8db73518a1783743ede772e3ac40f 2016-07-03 19:22:09 +02:00
Matthias Schiffer
0676f5f394
x86: stop relying on hexdump for image build signature
Fixes #811
2016-07-03 19:16:30 +02:00
Matthias Schiffer
b4829fad6b
Update gluon packages 2016-07-01 14:28:52 +02:00
Matthias Schiffer
f1570cacb0
ramips: add missing patch to spi-nor backport to fix mt7621 support 2016-07-01 13:23:31 +02:00
Matthias Schiffer
e678ab140e
scripts/update-patches: disable rename detection
git 2.9 enables rename detection by default, changing the content of some
of our patch files. Explicitly disable it.
2016-07-01 13:22:09 +02:00
Matthias Schiffer
6b644df4ae
brcm2708-*: remove BROKEN 2016-06-29 16:50:54 +02:00
Christian Tramnitz
fb8c7a8baf sunxi: add Banana Pro (#802)
build-tested with 2016.1.4, boots but packet loss on eth0
omitted ata due to build errors
2016-06-23 01:05:54 +02:00
Matthias Schiffer
bae721a9bb
Add target ar71xx-mikrotik
Fixes #121

Based-on-patch-by: Tobias Hachmer <tobias@hachmer.de>
2016-06-23 00:29:28 +02:00
Matthias Schiffer
acd5cc903e
build: allow profiles to supply an additional file to be copied to the image directory 2016-06-23 00:24:54 +02:00
Matthias Schiffer
dc485f7356
gluon-core: make gluon.platform.match() match all boards when no boards are given 2016-06-23 00:07:25 +02:00
Matthias Schiffer
4251b4d4f5
Update Gluon packages 2016-06-22 23:11:20 +02:00
Sven Eckelmann
93fe275000 batman-adv: Fix speedy join in gateway client mode
Speedy join only works when the received packet is either broadcast or an
4addr unicast packet. Thus packets converted from broadcast to unicast via
the gateway handling code have to be converted to 4addr packets to allow
the receiving gateway server to add the sender address as temporary entry
to the translation table.

Not doing it will make the batman-adv gateway server drop the DHCP response
in many situations because it doesn't yet have the TT entry for the
destination of the DHCP response.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2016-06-21 12:26:46 +02:00
Sven Eckelmann
fa04fff88d ar71xx-generic: Add support for OpenMesh MR1750v2
The new MR1750v2 device support is only available in LEDE master. The
relevant patches have to backported to add support for them in Gluon

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-06-17 20:04:00 +02:00
Sven Eckelmann
3ccd516971 ar71xx-generic: Add support for OpenMesh OM2P-HSv3
The new OM2P-HSv3 device support is only available in LEDE master. The
relevant patches have to backported to add support for them in Gluon

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-06-17 20:04:00 +02:00
Sven Eckelmann
f640573b5d docs: Fix list alignment of OpenMesh devices
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-06-17 13:15:25 +02:00
Matthias Schiffer
7a2dd8b3e4
Revert "ar71xx: backport fixes for better CPE210/510 support"
This reverts commit ffd1f0b3a5.
2016-06-17 11:21:39 +02:00
Matthias Schiffer
04106989bb
Update routing packages
batman-adv & alfred 2016.2.
2016-06-16 06:03:09 +02:00
Matthias Schiffer
2b5bf4c2a2
Update OpenWrt and LuCI packages 2016-06-16 04:40:45 +02:00
Matthias Schiffer
80751d9b6d
kernel: change kmod-crypto-{core,arc4} to builtin
Another backported upstream change.
2016-06-16 04:29:22 +02:00
Matthias Schiffer
d7c1c7fffe
kernel: make IPv6 builtin
Packages in the openwrt-routing master have adjusted to this upstream
change, so we follow. Also saves a bit of space.
2016-06-16 01:24:43 +02:00
Matthias Schiffer
20e57a1c71
build: backport a few patches for better Make 4.2+ support 2016-06-15 19:32:15 +02:00
Jan Niehusmann
1059a798ef ar71xx: add GL-AR150 support
Mainly applying a vendor patch from https://github.com/domino-team/OpenWrt-patches

(https://raw.githubusercontent.com/domino-team/OpenWrt-patches/master/AR150%2C%20AR300%2C%20Domino%20-%20CC1505/000-gl-ar150-cc.patch)
2016-06-15 15:04:04 +02:00
Matthias Schiffer
ffd1f0b3a5
ar71xx: backport fixes for better CPE210/510 support
This patchset enables the RX LNA for the CPE210/510, improving RX by about
20dB. The profiles for CPE210 and CPE510 is split into two images, so the
CPE510 can use the correct ART offset, improving the TX power by 10dB.

Fixes #796
2016-06-09 05:53:57 +02:00
Thomas Weißschuh
0a936e4de5 gluon-batman-adv-core: respondd: add gateway_nexthop field 2016-06-02 16:14:13 +02:00
Matthias Schiffer
a852056c37
Update Gluon packages 2016-05-31 17:33:51 +02:00
Matthias Schiffer
5ea9c0833a
node: fix CXXFLAGS on host install
Now really fixes the build on Debian Jessie...
2016-05-30 01:00:00 +02:00
Matthias Schiffer
ca7c71a52b
node: fix build on Debian Jessie 2016-05-29 20:19:21 +02:00
copyrights
0c8f637daa
ar71xx-generic: add D-Link DIR-505 rev. A2 as alias of D-Link DIR-505 rev. A1 2016-05-29 16:49:49 +02:00
Matthias Schiffer
3f24aa248a
docs: add documentation about site modules 2016-05-29 16:40:33 +02:00
Stefan Tabbert
8342294b47
sunxi: add Lamobo-R1
No sysupgrade support yet.
2016-05-29 15:09:50 +02:00
Matthias Schiffer
60aaa426e6
ar71xx-generic: add support for NETGEAR WNR2200 2016-05-29 15:06:10 +02:00
Matthias Schiffer
4becc7dbbd
Backport fixes for the WNR2200 2016-05-29 14:28:16 +02:00
Matthias Schiffer
b56b6640e6
mac80211: backport ath9k GPIO support 2016-05-29 13:47:29 +02:00
Matthias Schiffer
59d4b3056f
Update patches
For some reason, the filenames of the OpenMesh support patches were
truncated.
2016-05-29 12:00:17 +02:00
Metatron321
5c67b4909d docs: added site for Regio Aachen 2016-05-29 10:28:24 +02:00
Matthias Schiffer
9fc0dcdd7a
Merge remote-tracking branch 'origin/doubles-fmt' 2016-05-28 16:17:04 +02:00
Matthias Schiffer
13465e9365
node: downgrade to v0.12.14
Allow to build Gluon with GCC 4.7 (e.g. on Debian Wheezy) as host compiler
again.
2016-05-28 16:06:43 +02:00
Matthias Schiffer
efc004abf2
scripts/patch: never GPG-sign automated commits, regardless of the default configuration 2016-05-28 16:04:40 +02:00
Jan-Philipp Litza
76c3456787 gluon-node-info: simplify respondd module code a bit 2016-05-27 22:40:17 +02:00
Jan-Tarek Butt
22ec5f1c83
docs: fix 404 error for nordwest site repo url 2016-05-27 00:14:27 +02:00
Jan-Philipp Litza
f7eda9381f respondd modules: Use proper formatting of doubles
Most doubles that are delivered via respondd have limited input
precision, but are converted with up to 17 digits of precision. That can
cause ugly blowups like 0.2800000000000001 in the output, which is
avoided by specifying better format strings (like "%.2f" in most cases).
2016-05-26 17:38:36 +02:00
Johannes Rudolph
4c09783723 docs: autoupdater's fallback option (#786) 2016-05-26 16:46:32 +02:00
Matthias Schiffer
cbb1f804f0
docs, README: Gluon v2016.1.5 2016-05-26 02:17:58 +02:00
Matthias Schiffer
35690aeb58
Merge branch 'openmesh-primary_mac' of https://github.com/ecsv/gluon 2016-05-24 00:34:05 +02:00
Matthias Schiffer
a054e4783d
Merge branch 'openmesh' of https://github.com/ecsv/gluon 2016-05-24 00:33:36 +02:00
Sven Eckelmann
780f7cad2a ar71xx-generic: Use eth0 as OpenMesh primary mac address
The OpenMesh devices have a sticker with the eth0 mac address on the
bottom. Also all other mac addresses are calculated based on this address.
Therefore, it is better to use this as primary mac address instead of the
WiFi mac address.

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-05-23 21:39:27 +02:00
Sven Eckelmann
3039ba15a0 docs: Fix path to script detecting the primary mac address (#782)
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-05-23 21:02:05 +02:00
Sven Eckelmann
101595ead8 ar71xx-generic: Remove extra dash between v2 and OpenMesh device name (#781)
The returned name for OpenMesh devices with a an extra vX when calling

    lua -e 'print(require("platform_info").get_image_name())'

doesn't contain a dash between the vX and the device name. Thus the image
should also not contain a dash.

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-05-23 17:13:51 +02:00
Sven Eckelmann
69ce123457 ar71xx-generic: Add support for OpenMesh MR1750/OM5P-AC
The new ath9k/ath10k based devices are only available in OpenWrt trunk. The
relevant patches have to backported to add support for them in Gluon

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-05-23 11:15:30 +02:00
Andreas Fischer
38f70cfd81 docs: typo repositoy -> repository (#779) 2016-05-22 19:06:01 +02:00
Linus Lüssing
4199b216c6 ebtables-segment-mld: Segment IGMP/MLD domain
This patch adds a new gluon-ebtables package to filter IGMP/MLD messages
via ebtables.

For one thing this reduces multicast overhead: About one third of all
ICMPv6 multicast traffic in Lübeck or Hamburg is MLD.

Furthermore it removes a potential Distributed Denial-of-Service vector
(see Gluon ticket #553).

Finally, it is a prerequisite for enabling bridge multicast snooping in
a decentral and robust fashion.

Note that IGMP/MLD are filtered for multicast traffic coming from
the mesh, too (new MULTICAST_IN), as unfortunately there seem to
be other queriers somewhere in the mesh at least for Freifunk
Lübeck. Also adding these rules to be prepared to anyone intentionally
or unintentionally disabling these filters on his/her node.

Node operators not running Gluon (for instance gateway nodes) should
make sure to either enable multicast_router towards bat0 or disable
multicast snooping entirely if they have a bridge on top of bat0.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2016-05-20 22:59:31 +02:00
Linus Lüssing
8e891b2cc4 ebtables-filter-mcast: Remove redundant allow-filter for hop-by-hop
ebtables actually skips any IPv6 extension headers like the hop-by-hop
one. So this rule is actually void.

The intend back then was to allow passing MLD messages into the mesh.
Since extension headers are skipped, the general icmpv6 rule will
actually match MLD messages. So the hop-by-hop rule is unnecessary,
too.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2016-05-20 02:04:25 +02:00
Sven Eckelmann
62feb04fe1 ar71xx-generic: Generate OpenMesh sysupgrades in OpenWrt
The workaround to generate sysupgrade images for OpenMesh devices in gluon
is replaced in LEDE/OpenWrt by a special patch. It is therefore better to
drop the workaround and use the upstream version.

Reported-by: Matthias Schiffer <mschiffer@universe-factory.net>
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-05-19 20:59:34 +02:00
Matthias Schiffer
97879e80ad
gluon-config-mode-core: clean up reboot handling
Don't fork reboot process before all package hooks have been handled and
rendering is complete.

Replace debug.setfenv hack to close stdout with nixio.dup.

Fixes #772
2016-05-19 15:31:47 +02:00
Matthias Schiffer
4a60e5a02a
gluon-mesh-vpn-fastd: add missing iptables dependency confusing Kconfig
This was causing "recursive dependency" errors and potentially broken
configurations.
2016-05-18 01:24:11 +02:00
Sven Eckelmann
a5c8e60172 ar71xx-generic: Add support for OpenMesh devices
Integrate OpenMesh devices available in OpenWrt Chaos Calmer:

 - MR600
 - MR600v2
 - MR900
 - MR900v2
 - OM2P
 - OM2P-HS
 - OM2P-HSv2
 - OM2P-LC
 - OM2Pv2
 - OM5P
 - OM5P-AN

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-05-16 13:31:25 +02:00
Sven Eckelmann
d30a6ff1db gluon-luci-admin: Fix uploaded image validation
The image validation currently fails on some devices (tested OpenMesh)
because it isn't done via sysupgrade. But the checks depend partially on
the integration in sysupgrade (e.g. via loops that can be stopped via
"break statements").

Instead of hacking its own version check, it is easier and better tested to
just use 'sysupgrade -T' like it is already done by LuCI.

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-05-16 13:31:25 +02:00
Matthias Schiffer
54bc175cc1
Update Gluon packages 2016-05-16 02:17:39 +02:00
Matthias Schiffer
cab23b1838
ar71xx-generic: switch default WAN/LAN assignment on Ubiquiti UAP Pro
Fixes #764
2016-05-14 01:02:25 +02:00
Matthias Schiffer
087112a09b
ar71xx-generic: add support for UniFi AC PRO/LITE (LITE untested)
Also backport some patches improving QCA956x support.
2016-05-14 00:48:10 +02:00
Matthias Schiffer
86ef9b0e97
Fix creation of IBSS interfaces on devices with two radios
Lua's tables are 1-based, so we must decrement the index by 1 to get the
desired MAC addresses. By not doing this, the second IBSS interface would
get the address with index 8, but only indices 0..7 are available.

Fixes: c73a12e0ea
2016-05-14 00:34:04 +02:00
Matthias Schiffer
c05f28d1a3
mpc85xx-generic: fix flash detection after spi-nor backport 2016-05-11 12:01:57 +02:00
Matthias Schiffer
340df0dbee
Fix build with GCC 6
Make pkg-config, mkimage and gcc build with GCC 6 as host compiler. Fix
miscompilation of node.

Fixes #755
2016-05-09 17:09:00 +02:00
Matthias Schiffer
40d087de84
kernel: backport spi-nor driver from 4.4.9
Fixes #687
2016-05-07 00:48:34 +02:00
Matthias Schiffer
8bd0ecd9b3
docs: clean up and update Ubiquiti hardware support list 2016-05-06 20:16:44 +02:00
Matthias Schiffer
fdc43ff721
ar71xx-generic: remove BROKEN for Ubiquiti Rocket M XW 2016-05-06 20:10:25 +02:00
Matthias Schiffer
80d5f5f995
netifd: update and revert problematic patch
Fixes VLANs with shell protos on top of WLAN devices.

Fixes #754
2016-05-05 22:23:24 +02:00
Matthias Schiffer
d79bc0b398 README: add Roadmap link 2016-05-03 19:30:43 +02:00
Nils Schneider
46991e927f Update Gluon packages 2016-05-02 11:27:05 +02:00
Matthias Schiffer
794738b268 ar71xx-generic: add support for TP-LINK TL-WA901ND v4
Fixes #731
2016-04-29 18:33:52 +02:00
Matthias Schiffer
7fd60ac48a Update OpenWrt base
This also reverts commit 24d8695d8ceeb09d6c84bcd6ee4ffe087c9b386b...
2016-04-29 17:55:51 +02:00
Matthias Schiffer
ce563f25ad ar71xx-generic: remove BROKEN for TL-WR841N/ND v11 2016-04-29 17:44:04 +02:00
Matthias Schiffer
086a10676d docs, README: Gluon v2016.1.4 2016-04-29 17:43:32 +02:00
kb-light
f68a5662b6 gluon-node-info: add a script to fix whitespaces within the coordinates
Signed-off-by: kb-light <freifunk@kb-light.de>
2016-04-28 09:34:33 +02:00
Matthias Schiffer
10638960c9 Merge pull request #739 from lemoer/dev-fix-broken
build: fix inconsistent handling of BROKEN variable.
2016-04-27 23:19:28 +02:00
lemoer
32f40303f0 build: fix inconsistent handling of BROKEN variable. 2016-04-27 22:48:18 +02:00
Matthias Schiffer
d77bfe9da9 gluon-mesh-batman-adv-core: fix rssid for setups without 11s 2016-04-27 21:07:46 +02:00
Matthias Schiffer
9b63127aa5 build: fix race condition on make clean without preceeding normal make 2016-04-27 20:27:26 +02:00
kb-light
d8092bce62 gluon-config-mode-mesh-vpn: provide contact-information for reboot-message (#671) 2016-04-27 17:08:42 +02:00
kb-light
269a8fbdd4 gluon-config-mode-geo-location: add ability to hide the altitude field (#693) 2016-04-27 12:37:30 +02:00
Matthias Schiffer
937fe715c7 gluon-mesh-batman-adv-core: make mesh_lan config a bridge
There are a few devices which have more than one LAN interface (for example
some revision of the TL-WR941ND, which uses a DSA-based switch, so each
switch port has its own netdev.) On these devices we need a bridge for
mesh-on-lan (as the alternative of adding them to batman-adv individually
would need too many MAC addresses.)
2016-04-27 12:20:27 +02:00
lemoer
c73a12e0ea Change MAC schema generation (#715)
While ath9k/ath10k devices can supprt VIFs with any combination of MAC addresses, there are also adapters which have a hardware MAC filter which only allows a few bits to differ. This commit changes the addresses of all VIFs to ony differ in the last 3 bits, which is required to support many Ralink/Mediatek based WLAN adapters.

Technically, the new addresses are generated by calculating an MD5 hash of the primary MAC address and using a part of this hash as a prefix for the MAC addresses.

The addresses (BSSIDs) of the AP VIFs are also reused for the LAN and WAN interfaces in mesh-on-LAN/WAN mode to reduce the number of needed addresses, and thus reduce the chance of collisions. This is not a problem as the MAC addresses of the AP VIFs are never used except as BSSID, and thus not seen by routing protocols like batman-adv.

Fixes #648

[Matthias Schiffer: rewrote commit message]
2016-04-27 12:16:39 +02:00
corvusmo
82b5b5a8d2 gluon-status-page: refactor creation of table rows and cells (#738) 2016-04-27 08:40:13 +02:00
Matthias Schiffer
7f2b93e7f0 gluon-status-page: remove old status page
We have Git for history, there's no reason to keep old files that aren't
used anymore.
2016-04-26 21:29:48 +02:00
Matthias Schiffer
c936fd8054 Merge branch 'master' of https://github.com/corvusmo/gluon 2016-04-25 18:33:10 +02:00
Matthias Schiffer
8f6cc2dadd ar71xx-generic: add TP-LINK TL-WR841ND v11 support
Fixes #721
2016-04-25 18:18:56 +02:00
Matthias Schiffer
c18d43d2cb gluon-core: use correct file variable in get_site_config() 2016-04-24 15:55:37 +02:00
Matthias Schiffer
069bcb3327 Update Gluon packages 2016-04-24 13:22:43 +02:00
Matthias Schiffer
10a469bcfc Update OpenWrt base 2016-04-24 11:54:32 +02:00
Matthias Schiffer
f38bbf0d2c gluon-mesh-batman-adv-core: remove 'gluon.batman_adv' Lua module
It is not used anymore.
2016-04-24 09:47:06 +02:00
Matthias Schiffer
7f1c11cf7e Backport parallel download locking support
Fixes #733
2016-04-24 09:11:20 +02:00
Matthias Schiffer
db32736d3b Merge pull request #730 from jannic/master
Add support for carambola 2 board
2016-04-22 18:13:10 +02:00
Jan Niehusmann
bdcd166c7c ar71xx-generic: add support for Carambola 2
Device information can be found at:
http://www.8devices.com/products/carambola-2
https://wiki.openwrt.org/toh/8devices/carambola2

I only did some minimal testing of gluon on the carambola 2 development
board:

 - Config mode works
 - Connects to Wifi Mesh
 - Allows clients to connect

Notably, autoupgrade has not yet been tested.

Change to 010-primary-mac is necessary as the mac address printed
on the sticker is the one of eth0, not the wifi mac.
2016-04-22 08:32:19 +02:00
Matthias Schiffer
ff95dd9650 docs: user/faq: fix typo 2016-04-22 07:30:11 +02:00
Matthias Schiffer
ddb9e6b2e5 Merge pull request #679 from T-X/preparations-for-mcast-snooping-final
Preparations for Multicast Snooping Final
2016-04-20 19:44:53 +02:00
Matthias Schiffer
fe1b887f49 docs: user/site: fix formatting of definition list
Newer versions of Sphinx would break lines at the colons.
2016-04-19 05:56:18 +02:00
Matthias Schiffer
9260a8fa15 docs: add info about IPv6 and DNS requirements for NTP/autoupdater 2016-04-19 05:55:11 +02:00
corvusmo
80515c087d gluon-status-page: sort gateways alphabetically
Fixes #698
2016-04-08 21:23:56 +02:00
Nils Schneider
271e864005 docs/user/site.rst: typo 2016-04-08 14:17:45 +02:00
Matthias Schiffer
5bfb06fe36 ar71xx-generic: add support for UBNT Rocket M XW (untested) 2016-04-07 18:08:43 +02:00
Matthias Schiffer
b46589a637 xtables-addons: build: fix configure compatiblity with POSIX shells
Fixes #710.
2016-04-05 20:59:25 +02:00
kb-light
8fec2e9286 CONTRIBUTING.md: update links
link "packages" instead of "community repositories"

add link for rejected features to bottom link list

link "#gluon" to webirc

link the mentioned commit 2a93c58
2016-04-04 00:13:42 +02:00
Matthias Schiffer
317657c63e Merge branch 'TmcatsMerakiBranchMerged' of https://github.com/smoe/gluon 2016-04-03 23:02:40 +02:00
Nils Schneider
1e1363f17e ar71xx: Meraki MR12/MR62/MR16/MR66 support
OpenWRT now supports the CISCO Meraki enterprise class routers
MR12, MR16, MR62 and MR66. The fabric firmware demands the yearly
renewal of a support license.

This firmware was successfully tested by @Garunda for the MR62 (and
the MR12 with it for which this is an alias). The initial firmware
pre OpenWRT adoption was prepared and adapted for Gluon by @tcatm.
The confirmation of the functionality of the image for the MR66
(and the aliased MR16 with it) is still pending.

The devices are of strategic interest to the Freifunk community as
they are making a rock-solid impression. However, these come with
fairly hefty annual license. The Freifunk may offer an escape route
for those who had signed up and want to keep their investment into the
similarly expensive hardware. Used evices sell for $60 on eBay/Amazon
in the US. Here in the old world it is all >300 €, still.

Credits go to @Garunda for testing, to @tcatm for finding the
OpenWRT patch prior to its adoption and preparing the initial Gluon
adaptation, to @smoe for the update once that patch had arrived in
OpenWRT, and to @NeoRaider for his review and advice to use
GluonModelAlias for MR62 and MR66 to point to MR12 and MR16,
respectively.
2016-04-03 22:56:17 +02:00
Jan-Philipp Litza
3a3c922a4d gluon-core: use exec on uci commit 2016-04-03 16:14:48 +02:00
Matthias Schiffer
4658afb2c6 gluon-core: commit all UCI configs at the end
Avoid commiting configs inbetween to decrease number of flash writes.

Fixes #714.
2016-04-02 18:56:45 +02:00
Matthias Schiffer
827d81aab3 gluon-config-mode-mesh-vpn: fix save() call for traffic limits
It doesn't seem like this mistake had any effect.
2016-04-02 18:53:56 +02:00
Matthias Schiffer
19f248c755 build: ensure the early path doesn't leak into later build steps
Leads to broken symlink setup by OpenWrt, usually breaking the build with
a "Too many levels of symbolic links" message.

Fixes #716.
2016-04-02 04:31:50 +02:00
Matthias Schiffer
4511ef15d6 Merge pull request #717 from kb-light/ar71xx-generic-image-renaming
ar71xx-generic: update profiles.mk to match new naming
2016-04-02 03:59:55 +02:00
kb-light
24d8695d8c ar71xx-generic: update profiles.mk to match new naming
Update the naming of some TP-Link devices corresponding to commit 0fd48fd7dab066db8a46e51775579c9ef507ca25 within git.openwrt.org/15.05/openwrt.git
2016-04-02 03:35:29 +02:00
Matthias Schiffer
3732c26e95 ar71xx-generic: add support for TP-Link TL-WR710N v2.1 2016-04-02 00:59:19 +02:00
Matthias Schiffer
196722663a ar71xx-generic: backport a few TP-Link model detection and upgrade check patches 2016-04-02 00:54:07 +02:00
Matthias Schiffer
4f051061de Update OpenWrt base 2016-04-01 21:09:29 +02:00
Matthias Schiffer
b78a53c5af docs, README: Gluon v2016.1.3 2016-03-31 21:19:47 +02:00
Matthias Schiffer
657f6812c4 Merge pull request #712 from mokkin/patch-1
added site for Leipzig
2016-03-31 21:00:32 +02:00
mokkin
d7eb477ef5 added site for Leipzig 2016-03-31 20:54:08 +02:00
Matthias Schiffer
f4208f2a2b build: support LibreSSL as provider of openssl
Fixes #709
2016-03-30 03:01:26 +02:00
Matthias Schiffer
fddf2073f8 Merge pull request #708 from kb-light/rename
docs: Freifunk Paderborn is now called Freifunk Hochstift
2016-03-29 22:30:52 +02:00
Matthias Schiffer
d9ca449ed0 generic: mtd: spi-nor: disable protection for Winbond flash at startup 2016-03-29 22:00:58 +02:00
kb-light
954e378a5f docs: Freifunk Paderborn is now called Freifunk Hochstift
link to site-repo updated
2016-03-29 12:41:26 +02:00
Matthias Schiffer
0b25275976 Update to libuecc v7 and fastd v18 2016-03-29 00:35:02 +02:00
Matthias Schiffer
d4d9c349a2 Revert "generic: mtd: spi-nor: always disable software protection"
This reverts commit 1ccd24df77.

This commit probably causes problems with some flash chips:

http://patchwork.ozlabs.org/patch/549173/
http://patchwork.ozlabs.org/patch/553683/
2016-03-26 14:28:26 +01:00
Matthias Schiffer
1ccd24df77 generic: mtd: spi-nor: always disable software protection
Fixes unwriteable flash when the bootloader leaves it protected.
2016-03-26 13:23:13 +01:00
Matthias Schiffer
d5f5ce74e8 build: add module separators/headings to patch/update/update-patches scripts
Suggested-by: Steffen Möller <steffen_moeller@gmx.de>
2016-03-26 00:03:04 +01:00
Matthias Schiffer
33d028783f build: remove rather useless "patch" and "unpatch" make targets 2016-03-25 23:57:15 +01:00
Matthias Schiffer
a26f781404 ar71xx: make bootconsole wait for both THRE and TEMT
Original commit message:

    MIPS: ath79: make bootconsole wait for both THRE and TEMT

    This makes the ath79 bootconsole behave the same way as the generic 8250
    bootconsole.

    Also waiting for TEMT (transmit buffer is empty) instead of just THRE
    (transmit buffer is not full) ensures that all characters have been
    transmitted before the real serial driver starts reconfiguring the serial
    controller (which would sometimes result in garbage being transmitted.)
    This change does not cause a visible performance loss.

    In addition, this seems to fix a hang observed in certain configurations on
    many AR7xxx/AR9xxx SoCs during autoconfig of the real serial driver.

    A more complete follow-up patch will disable 8250 autoconfig for ath79
    altogether (the serial controller is detected as a 16550A, which is not
    fully compatible with the ath79 serial, and the autoconfig may lead to
    undefined behavior on ath79.)
2016-03-24 18:34:34 +01:00
Matthias Schiffer
86894548c5 Explicitly set SHELL to bash
Fixes some messages if /bin/sh doesn't support 'echo -e'.

Suggested-by: Steffen Möller <steffen_moeller@gmx.de>
2016-03-22 13:01:18 +01:00
Matthias Schiffer
7327ad2ff1 Merge pull request #697 from berendt/docs_copyright_year
docs: add 2016 copyright year to sphinx conf file
2016-03-21 23:05:16 +01:00
Christian Berendt
67fe231805 docs: add 2016 copyright year to sphinx conf file 2016-03-21 22:31:46 +01:00
Alexander Dahl
d2b74b4cf0 openwrt: add patch fixing sysupgrade on Xen DomU
Patch tested on v2016.1.x branch with Freifunk Magdeburg firmware on
Debian Jessie amd64 Xen host. See the same patch in our gluon fork here:
https://github.com/FreifunkMD/gluon/blob/fix-sysupgrade-xen/patches/openwrt/0058-x86-fix-platform_export_bootpart-for-Xen-virtual-disks.patch

Sysupgrade was tested successfully by manually making the change before
upgrading in the filesystem of the running node and upgrading to the
fixed FFMD experimental build in config mode via expert settings in
webgui.

Patch also submitted to OpenWRT trunk already.

Signed-off-by: Alexander Dahl <alex@netz39.de>
2016-03-17 22:12:44 +01:00
Matthias Schiffer
d7e6bd2046 Merge pull request #685 from FreifunkChemnitz/master
Add Support for the ALFA Hornet UB and similar devices
2016-03-14 10:53:45 +01:00
Steffen Förster
4e2423c081 Add Support for the ALFA Hornet UB and similar devices
The Hornet UB is sold at least in the varieties. Without case it is a Hornet UB, with case and without connected USB port it is called AP121. If the USB port is present this device is called AP121U.
We have a AP121U in our mesh http://meshviewer.chemnitz.freifunk.net/#!v:m;n:00c0ca6efffa
2016-03-13 15:59:47 +01:00
Matthias Schiffer
b8cb60a8d6 Merge pull request #675 from T-X/preparations-for-mcast-snooping
Preparations for Multicast Snooping
2016-03-11 13:27:33 +01:00
Linus Lüssing
c9aa2672bd bridge: Increase IGMP/MLD robustness parameter to three for br-client
We are mostly dealing with the 2.4GHz crap-band here, so increasing the
IGMP/MLD robustness parameter to three to be able to compensate for up
to two consecutive instead of just one lost packet.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2016-03-10 16:44:34 +01:00
Linus Lüssing
4d00c804c0 bridge: Lower IGMP/MLD query intervals for br-client
There are some devices not acting properly to roaming events, in that
they do not timely reissue IGMP/MLD reports after reconnecting.

To compensate for that this commit reduces the query interval from 125
seconds to 20 and the query response interval from 20 seconds to 5.
This reduces a timeout to 20+5 seconds in the worst-case (12.5s average)
after a roaming event for such broken devices. This should be below the
30s "impatient user threshold" and below any connection timeout.

Until the bridge multicast snooping + querier gets re-enabled this is a
no-op.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2016-03-10 16:44:05 +01:00
Matthias Schiffer
06685ef0ec Merge pull request #682 from kb-light/docs
docs: fix typo in upgrade.rst
2016-03-10 08:41:26 +01:00
Matthias Schiffer
4c9a0a143e Merge pull request #681 from FreifunkChemnitz/master
Add support for TP-Link TL-WA7510N
2016-03-10 08:41:03 +01:00
kb-light
4511da0aee docs: fix typo in upgrade.rst 2016-03-10 00:38:19 +01:00
Steffen Förster
ea90788315 Add support for TP-Link TL-WA7510N
This CPE is supported by OpenWRT and already running in Chemnitz
2016-03-09 22:17:06 +01:00
Matthias Schiffer
2ee35f3102 docs, README: add release notes for v2016.1.2, update version numbers 2016-03-09 19:21:40 +01:00
Matthias Schiffer
e729d33bab netifd: update to latest git master 2016-03-09 06:47:53 +01:00
Matthias Schiffer
fc6d4d6c97 gluon-mesh-batman-adv-core: respondd: add uci.h include
This include wasn't actually missing, but well hidden behind the iwinfo.h
include. Make this more obvious.
2016-03-08 07:57:06 +01:00
Linus Lüssing
0fc9e1d966 update config: "firewall: Allow IGMP and MLD input on WAN" (r45613)
Adopt the according modifications to the default firewall settings of
the WAN interface from OpenWRT, revision 45613.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2016-03-08 07:55:55 +01:00
Linus Lüssing
ca9a6f34f3 gluon-mesh-batman-adv-core: Always forward towards mesh/batman-adv
An IGMP/MLD domain split will prevent us from being able to track
multicast listeners on other nodes.

Therefore we need to always hand any multicast packets we received from
local clients to batman-adv. With bridge multicast snooping disabled,
the current setting in Gluon, this is already the case.

However, in preparation to enabling multicast snooping, we need to
enforce forwarding towards batman-adv by setting the bridge port
option "multicast_router" to 2.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2016-03-08 07:55:55 +01:00
Matthias Schiffer
01878f4bbc Backport GPIO control support
Backport of rr46271 and r46922.

Based-on-patch-by: Julian Kornberger <jk+github@digineo.de>
2016-03-07 06:08:32 +01:00
Matthias Schiffer
85b857d98a Merge pull request #676 from PowerPan/PowerPan-gitsubmodules-1
git submodules
2016-03-06 20:56:23 +01:00
Johannes Rudolph
13658879e5 git submodules
Possibility to work with git submodules
2016-03-06 03:09:09 +01:00
Matthias Schiffer
1f06d20705 ath10k: remove hard dependency on ath10k-firmware-qca988x
We use our own firmware package.
2016-03-04 17:40:56 +01:00
Matthias Schiffer
3b61a768b9 Update Gluon packages 2016-03-04 00:51:28 +01:00
Matthias Schiffer
8272a8f807 Update OpenWrt base 2016-03-03 23:49:58 +01:00
Matthias Schiffer
0320b4da03 docs, README: add release notes for v2016.1.1, update version numbers 2016-03-02 16:23:10 +01:00
Matthias Schiffer
6f4ca79d01 docs: update list of supported hardware 2016-03-02 01:03:33 +01:00
Matthias Schiffer
595cba1bfa Update OpenWrt base 2016-03-01 23:33:00 +01:00
Matthias Schiffer
45e238aa05 Update OpenWrt base 2016-03-01 17:07:18 +01:00
Matthias Schiffer
6f23ef9eb7 Update OpenWrt base
We got most of our patches backported by upstream :)
2016-03-01 12:52:12 +01:00
Matthias Schiffer
289b599233 gluon-status-page: unify prefix list of prettyBytes and prettyBits 2016-03-01 00:06:20 +01:00
Matthias Schiffer
6e452f207a gluon-status-page: don't use internationalization API
It is not supported by all browsers yet.

Also change load display always to display 2 decimal digits (as it is read
from the kernel with 2 decimal digits).

Fixes #606
2016-03-01 00:06:20 +01:00
Matthias Schiffer
5a2f130323 Merge pull request #668 from 0xDEAD/mr13u
ar71xx-generic: add support for TP-Link MR13U
2016-02-29 18:59:26 +01:00
Matthias Ludwig
19a7380e74 ar71xx-generic: add support for TP-Link MR13U 2016-02-29 15:54:41 +01:00
Matthias Schiffer
79bc3a8d4b gluon-status-page: fix neighbour purging
notUpdated is a Set, to a for-in loop doesn't work.

Fixes #657
2016-02-29 01:12:20 +01:00
Matthias Schiffer
bb8d1783b3 gluon-config-mode-*, gluon-luci-portconfig: improve validation
Make bandwidth limits unsigned; trim numbers, the validator accepts
trailing whitespace.
2016-02-28 22:38:19 +01:00
Matthias Schiffer
1e78665b12 Add contrib/depdot.sh
This script will analyze the dependencies of Gluon's packages and output
them as a dot graph.
2016-02-28 20:01:19 +01:00
Matthias Schiffer
c7a957ca9f ar71xx-generic: add support for Onion Omega 2016-02-28 05:29:15 +01:00
Matthias Schiffer
ff574cfe65 ar71xx/lzma-loader: fix O32 ABI conformance
Backport of r48279
2016-02-28 05:00:50 +01:00
Matthias Schiffer
b6c576645f kernel/gpio_keys: load module on pre-init
fix rescue mode on wdr4900

Backport of r48793
2016-02-28 04:41:39 +01:00
Matthias Schiffer
ec1c82566a scripts/patch.sh: add --committer-date-is-author-date to git am
This option will make the generated commit IDs deterministic, greatly
reducing the number of repository objects created when calling `make
update` repeatedly.
2016-02-28 03:30:14 +01:00
Matthias Schiffer
00b620ae51 Update mac80211 backport to r48810 2016-02-28 03:27:49 +01:00
Matthias Schiffer
c9f7a17d3a brcm2708-gpu-fw: move pkg build dir to kernel build dir to fix rebuild bugs after cleaning the kernel tree
Backport of r48732
2016-02-28 02:30:34 +01:00
Matthias Schiffer
d2ab156605 Update OpenWrt base 2016-02-28 02:02:56 +01:00
Matthias Schiffer
88bdc98108 gluon-status-page: don't reset signal graphs on resize events if width hasn't changed
Mobile browsers will often show or hide the address bar while scrolling.
This causes resize events which would often reset the signal graphs.

Fixes #662
2016-02-26 05:35:47 +01:00
Matthias Schiffer
89b3dca8b5 kernel: disable software protection bits for macronix flash chips at init
The bootloader of AirOS 5.6.x doesn't remove the flash protection for us,
so we have to do this ourselves.
2016-02-26 04:39:50 +01:00
Matthias Schiffer
56f1cd5383 firmware-utils: mkfwimage: fix firmware_max_length for XM layout
This should fix problems with flashing from AirOS 5.6.x.
2016-02-25 22:50:58 +01:00
Matthias Schiffer
b9161061fa Merge branch 'ubnt-detection' of https://github.com/oakey-dev/gluon 2016-02-25 17:40:36 +01:00
Matthias Schiffer
6961406523 Merge pull request #640 from kokel/preserve-wifi-channel
gluon-core: add preserve wifi channel feature
2016-02-24 17:25:02 +01:00
Jan-Philipp Litza
f2fc359e65 Merge pull-request #661 from viisauksena/patch-1
docs: fix typo in authorized keys config example
2016-02-24 11:20:35 +01:00
viisauksena
e4439a3fe4 docs: fix typo in authorized keys config example 2016-02-24 11:17:42 +01:00
Matthias Schiffer
f97269158a Update Gluon packages 2016-02-19 17:57:50 +01:00
Matthias Schiffer
f0ad8ed5cb gluon-mesh-batman-adv-core: enable mesh_no_rebroadcast for Mesh-on-WAN/LAN
Ethernet links provide transitive connectivity in all but very unusual
setup, enable mesh_no_rebroadcast to reduce load for devices on links with
many nodes.

Fixes #652
2016-02-16 23:26:42 +01:00
Neal Oakey
a7c2f7ab59 add new UBNT images, as the detection now works 2016-02-14 23:11:03 +01:00
Neal Oakey
a07419bbfe fix UBNT XM model detection 2016-02-14 20:59:49 +01:00
Matthias Schiffer
0fd4ff0a68 build: don't overwrite opkg key when it already exists 2016-02-13 17:02:11 +01:00
Kokel
388d264ff0 gluon-core: add preserve wifi channels feature
This new feature introduces the new uci section 'gluon-core.wireless' with a preserve_channels option:
 * preserve_channels (boolean)

By setting this option to 1 (true) wifi channels will be preserved during upgrades.
2016-02-10 07:06:36 +01:00
Matthias Schiffer
a40d3cddba mac80211: update backport to r48681 2016-02-09 18:44:22 +01:00
Matthias Schiffer
9a10ad688d build: add support for choosing a different url filename part than the output file
Backport of r47591 and r48427
2016-02-09 13:50:22 +01:00
Matthias Schiffer
19242f4deb Remove all uses of batman-adv-visdata
Should be redundant after 0bd0df6f93
2016-02-08 20:58:28 +01:00
Matthias Schiffer
c523238f82 Update routing packages 2016-02-08 20:13:15 +01:00
Matthias Schiffer
d84028301e Update LuCI packages 2016-02-08 19:49:20 +01:00
Matthias Schiffer
4ebbf01a51 Update OpenWrt packages 2016-02-08 19:42:55 +01:00
Matthias Schiffer
43ceba8cb9 Update OpenWrt base 2016-02-08 18:41:58 +01:00
Felix Kaechele
d45b2def40 backport: Futro support in x86-generic
Signed-off-by: Felix Kaechele <felix@kaechele.ca>
2016-02-08 14:16:11 +01:00
Matthias Schiffer
e021af7cb5 docs: change version to v2016.1+ 2016-02-08 10:49:06 +01:00
Matthias Schiffer
55dc9c369d docs, README: change current release to v2016.1 2016-02-08 10:46:28 +01:00
Matthias Schiffer
b8791e0829 docs: releases/v2016.1: fix a formatting issue 2016-02-08 10:22:46 +01:00
Matthias Schiffer
f8b328835b docs: features/monitoring: replace one last mention of gluon-announced 2016-02-07 21:42:04 +01:00
Matthias Schiffer
627e6b7b81 docs: user/site: change peer limit in example fastd config to 1
Change the limit to match our recommendation in the site-example.
2016-02-07 11:23:41 +01:00
Matthias Schiffer
10f7a88ba9 Backport fix for CVE-2016-0728 (local root exploit)
We're too close to the release of Gluon 2016.1 to do a full update of our
OpenWrt tree, therefore just make a backport of this.
2016-02-06 07:39:51 +01:00
Matthias Schiffer
e0e96b7b28 Merge branch 'restrict-respondd' 2016-02-05 19:18:40 +01:00
Matthias Schiffer
8bfb5fe102 docs: add information about image symlinks to the Getting Started page 2016-02-05 19:02:49 +01:00
Matthias Schiffer
495e154a6a docs, LICENSE: fix upper and lower case of "OpenWrt" 2016-02-05 18:48:48 +01:00
Matthias Schiffer
145cb4ded2 gluon-luci-admin: ensure that the authorized_keys file always ends with a newline
Fixes #558
2016-02-05 18:31:25 +01:00
Matthias Schiffer
2f499dbfc1 gluon-respondd: restrict queries from the mesh to link-local addresses
Restrict to link-local addresses to prevent amplification attacks from
outside the mesh, or such attacks affecting the outside world.

Fixes #637
2016-02-05 17:06:07 +01:00
Matthias Schiffer
4d6956fa25 docs: update outdated monitoring documentation 2016-02-05 11:00:38 +01:00
Matthias Schiffer
10d7ad2107 docs: add more documentation of WLAN configuration
Fixes #574
2016-02-05 10:40:26 +01:00
Matthias Schiffer
19d4ca1b3e Merge pull request #638 from kpanic23/patch-1
docs: Corrected some typos and strange grammar
2016-02-05 10:31:14 +01:00
Matthias Schiffer
54bb143128 docs: releases/v2016.1: grammar fixes, some minor improvements 2016-02-05 06:54:45 +01:00
kpanic23
e8d0fc6a81 Corrected some typos and strange grammar 2016-02-04 14:29:01 +01:00
Matthias Schiffer
6554cc21ab Merge remote-tracking branch 'origin/firewall-multicast' 2016-02-03 08:40:20 +01:00
Matthias Schiffer
d58484c84e gluon-mesh-batman-adv-core: respondd: fix pattern to count clients to work with compat 15 2016-02-02 17:18:52 +01:00
Jan-Philipp Litza
4ab184cd61 docs: Update regarding respondd refactoring 2016-02-02 15:13:17 +01:00
Jan-Philipp Litza
5bb4316f71 gluon-neighbour-info: Open firewall on WAN for respondd replies
If the query was via multicast, the response isn't matched by
--state ESTABLISHED,RELATED

This fixes #619
2016-02-02 13:06:54 +01:00
Matthias Schiffer
0005b3b5a2 autoupdater: stop non-essential services before downloading the image 2016-02-02 09:22:50 +01:00
Matthias Schiffer
b4aaf8a1f8 gluon-respondd: add init script
Instead of starting gluon-respondd from a hotplug handler, add a proper
init script. The new init script has a restart_if_running argument which
is now used by the hotplug handler.
2016-02-02 09:18:13 +01:00
Matthias Schiffer
9004028cb4 Convert gluon-announce Lua code to C modules, rename to gluon-respondd
gluon-announced and gluon-announce are merged to gluon-respondd.
2016-02-02 09:18:12 +01:00
Matthias Schiffer
840d07dd48 Add utility library libgluonutil 2016-02-02 06:39:22 +01:00
Matthias Schiffer
54ed2a8d14 docs: add TP-Link TL-WR843N/ND 2016-01-30 02:01:21 +01:00
Matthias Schiffer
4bfdd504cb Merge pull request #634 from Ranlvor/patch-wr843n
Added Support for TP-Link WR843ND
2016-01-30 01:59:43 +01:00
Ranlvor
35ed4d2b76
Added Support for TP-Link WR843ND
Tests done to verify that this worked as intended:
 * checked plattform_info image_name
 * checked primary_mac
 * does appear in ffmap-d3
 * does mesh
 * does fastd-VPN
2016-01-29 00:08:01 +01:00
Matthias Schiffer
2223ccd94c Update gluon packages 2016-01-24 19:35:09 +01:00
Matthias Schiffer
4ed5b85668 docs: add UniFi AP Outdoor+ to list of supported devices 2016-01-17 23:23:42 +01:00
Matthias Schiffer
7c67ff0cf1 ath9k: fix HSR tuner support for UniFi Outdoor Plus
Also remove the BROKEN check as the UniFi Outdoor Plus support seems to
work fine now.

Fixes #272
2016-01-17 23:17:34 +01:00
Matthias Schiffer
49fcfb8da7 Merge pull request #623 from oakey-dev/master
add support for ubiquiti airRouter
2016-01-17 16:35:25 +01:00
Neal Oakey
472a1ff3eb add support for ubiquiti airRouter 2016-01-17 16:33:49 +01:00
Matthias Schiffer
b1e1b47a70 Merge pull request #622 from rotanid/patch-1
docs: Update autoupdater.rst
2016-01-15 19:40:45 +01:00
Andreas Ziegler
d10a7b9c72 docs: Update autoupdater.rst
fix typo and express sentence regarding update priority clearer
2016-01-15 00:47:02 +01:00
Daniel Golle
4ce85afc22 gluon-status-page-api: support batadv-in-VLAN on ibss interface
introduce function to recurse down to the lowest layer-2 interface
corresponding to a given interface.
also re-introduce some of the previously removed input validation plus
some more to protect against glob and path based exploits.
2016-01-13 12:59:16 +01:00
Matthias Schiffer
e012e67bf1 Update Gluon packages 2016-01-12 16:02:13 +01:00
Matthias Schiffer
d295d6ef39 Merge pull request #617 from makomi/master
readme: fix typo, improve formatting
2016-01-10 17:25:28 +01:00
Matthias Kolja Miehl
65c0e256ab readme: fix typo, improve formatting 2016-01-10 16:09:03 +00:00
Matthias Schiffer
0880159eb5 gluon-status-page: fix handling of interface names containing dots 2016-01-08 14:54:30 +01:00
Matthias Schiffer
c69587fba4 build: disable generation of ramdisk images
Our build process works similarly to the image builder and doesn't support
the generation of initramfs-based images.

Fixes #616
2016-01-08 11:23:44 +01:00
Delta / Stefan
bbdc334b43 gluon-status-page: add TB to list of units for transfer volumes
Fixes #614
2016-01-07 18:09:30 +01:00
Matthias Schiffer
0bd0df6f93 kernel: fs, seq_file: fallback to vmalloc instead of oom kill processes
Fixes #177
2016-01-04 10:26:40 +01:00
Matthias Schiffer
7b6f3fed70 Merge pull request #607 from freifunk-gluon/site.json
Convert site.conf to JSON during build
2016-01-04 10:25:13 +01:00
Matthias Schiffer
4456480a52 docs: add D-Link DIR-505 (A1) and Buffalo WZR-HP-G300NH (and remove WZR-HP-G300N, it is not actually supported) 2016-01-04 05:32:14 +01:00
Matthias Schiffer
f396ba43d9 Merge branch 'master' of https://github.com/coacx/gluon 2016-01-04 05:28:54 +01:00
Matthias Schiffer
7cd00aec52 Merge branch 'dir-505' of https://github.com/bdobe/gluon 2016-01-04 05:28:44 +01:00
Matthias Schiffer
f23e024787 Convert site.conf to JSON during build
This will allow us to use its content from other languages than Lua as
well.
2016-01-02 23:49:25 +01:00
Matthias Schiffer
97471a1bb7 lua-cjson: add host build support 2016-01-02 23:49:25 +01:00
Matthias Schiffer
289f58d5b9 ar71xx: another fix to wndr3700_board_detect 2016-01-02 23:46:48 +01:00
bdobe
ddc2a51764 ar71xx-generic: add support for D-Link DIR-505 2016-01-01 23:17:25 +01:00
Matthias Schiffer
e14b907e44 Merge pull request #610 from plumpudding/master
docs: fix typo
2016-01-01 21:49:53 +01:00
PetaByteBoy // Milan Pässler
02d3ed2fa9 docs: features/wired-mesh: fix typo 2016-01-01 20:35:43 +01:00
Matthias Schiffer
65ce99449e docs: rename development version to v2016.1 2016-01-01 16:29:15 +01:00
Matthias Schiffer
df018ed7c7 docs: releases/v2015.2: fix typo 2015-12-20 20:13:09 +01:00
Matthias Schiffer
73a818b896 alfred: use batman-adv-visdata 2015-12-18 17:46:24 +01:00
Matthias Schiffer
8ffdcaaa1b gluon-mesh-batman-adv-core: announce/neighbours.d: use batman-adv-visdata 2015-12-18 17:46:24 +01:00
Matthias Schiffer
939087cec9 gluon-status-page-api: neighbours-batadv: use batman-adv-visdata, increase interval 2015-12-18 17:46:24 +01:00
Matthias Schiffer
90a64ca87f gluon-status-page-api: use sse-multiplex 2015-12-18 17:46:24 +01:00
Matthias Schiffer
fa504dae8d gluon-neighbour-info: simplify and fix timeout calculation
The timeout was calculated incorrectly (in each iteration the span between
the start time and the current time was substracted from the timeout
again), and would often become negative, causing warnings in the kernel
log.
2015-12-18 17:46:24 +01:00
Matthias Schiffer
a3155c427a gluon-neighbour-info: fix a few compiler warnings 2015-12-18 17:46:24 +01:00
Matthias Schiffer
d3bc707caa gluon-neighbour-info: flush after writing the HTTP header
sse-multiplex likes to get the header as fast as possible.
2015-12-18 17:46:24 +01:00
Matthias Schiffer
c3150d821f gluon-announce{,d}: create a new UCI cursor for each run 2015-12-18 17:46:24 +01:00
Matthias Schiffer
077dbe3c08 gluon-status-page-api: decrease dyn/statistics event frequency
The statistics data is now cached for 5s, no need to send an event every
second. The new interval is 3s, which is coprime with the cache timeout.
2015-12-18 17:45:45 +01:00
Matthias Schiffer
48d24c2674 gluon-announce: enable caching 2015-12-18 17:43:16 +01:00
Matthias Schiffer
eba7ecbbc0 gluon-announced: add support for caching announced data 2015-12-18 17:43:12 +01:00
Matthias Schiffer
5927fd66db gluon-status-page: filter out duplicate events in statistics event stream
Allows simple handling of cached events.
2015-12-18 17:37:48 +01:00
Matthias Schiffer
38477d5c0c Update gluon packages 2015-12-18 17:37:33 +01:00
Matthias Schiffer
6b8888fe5a Update Gluon packages 2015-12-12 20:51:47 +01:00
Matthias Schiffer
837c457f42 Merge pull request #593 from freifunk-gluon/pr-fastd-docs
docs: Improve documentation of fastd and autoupdater config in site.conf
2015-12-09 23:11:14 +01:00
Jan-Philipp Litza
46aa2e7c6a docs: Improve documentation of fastd and autoupdater config in site.conf 2015-12-09 21:00:19 +01:00
ruben
de8c908dc3 docs: grammar and formatting enhanced in site.conf 2015-12-08 22:58:40 +01:00
Matthias Schiffer
5ecb8a7366 gluon-mesh-vpn-fastd: gluon-annouced: fix fastd status always being reported as enabled 2015-12-08 22:47:32 +01:00
Matthias Schiffer
3655a5b228 Revert "bzip2: extend/fix the Host/Install rule to install libbz2.so files"
Fixes #589
2015-12-08 19:53:21 +01:00
Matthias Schiffer
6aa7a783cc Merge pull request #590 from kokel/release-v2015.2
docs: releases/v2015.2: add ubiquiti airgateway
2015-12-08 19:45:00 +01:00
Tobias Hachmer
4c78da2978 docs: releases/v2015.2: add ubiquiti airgateway 2015-12-08 19:32:08 +01:00
Nils Schneider
0bb530d1c6 gluon-status-page: fix display of rx and tx traffic
On the status page statistics section counters for transmitted and received traffic were mixed up. Transmitted traffic was shown as received while received traffic was shown as being transmitted.

Fixes #586
2015-12-07 13:44:17 +01:00
Matthias Schiffer
108a1116d1 Merge pull request #584 from Ranlvor/master
OpenSSL: Added source/old to PKG_SOURCE_URL
2015-12-07 11:14:49 +01:00
Philzen
444105d22e docs: releases/v2015.2: fix small typo 2015-12-07 09:15:09 +01:00
Ranlvor
e73d3c5c52
OpenSSL: Added source/old to PKG_SOURCE_URL
OpenSSL moves old versions of the library from http://www.openssl.org/source/
to http://www.openssl.org/source/old/1.0.2/ breaking the old links. That
behavior breaks the OpenWRT-build every time OpenSSL releases a new version.

This patch adds http://www.openssl.org/source/old/1.0.2/ to the PKG_SOURCE_URL
of OpenSSL to avoid breaking the build whenever OpenSSL releases a new
version.
2015-12-06 16:14:51 +01:00
Matthias Schiffer
87dd5bb3bb build: copy opkg keypair to target openwrt tree instead of linking it
Fixes #579
2015-12-02 15:11:38 +01:00
Matthias Schiffer
3643d818db Merge pull request #565 from freifunk-gluon/rn-v2015.2
docs: add v2015.2 release notes
2015-11-30 22:27:58 +01:00
Matthias Schiffer
6110d3d444 acx-mac80211: mark as BROKEN to avoid compile failure on mipsel targets 2015-11-28 22:41:42 +01:00
Martin Gebhardt
b16ce6637b Add WZR-HP-G300NH to ar71xx-generic target 2015-11-28 01:13:50 +01:00
Matthias Schiffer
9c7582afe0 gluon-luci-private-wifi: fix typo in code file and regenerate translation files (correctly this time) 2015-11-27 14:33:56 +01:00
Matthias Schiffer
7f0fe061dc gluon-luci-private-wifi: fix translation files 2015-11-27 09:49:12 +01:00
Matthias Schiffer
c456fb231f build: improve feed update fix (and remove accidentially committed part) 2015-11-25 11:35:34 +01:00
Matthias Schiffer
2ffd05357c build: ensure the feeds are updated when modules or site modules change 2015-11-25 02:28:37 +01:00
Matthias Schiffer
df9df3d1b4 docs: add v2015.2 release notes 2015-11-24 04:10:53 +01:00
Matthias Schiffer
7c12de7250 docs: add WD My Net N600/N750 to list of supported devices 2015-11-24 04:10:07 +01:00
Matthias Schiffer
caa5bbdafe Merge pull request #568 from kaechele/mynet
targets/ar71xx-generic: add WD MyNet N600/N750
2015-11-24 04:06:53 +01:00
Matthias Schiffer
d16a9a25ca Merge pull request #570 from rotanid/master
docs: add link to tecff/site-ffa (Altdorf, Landshut & Umgebung)
2015-11-24 04:05:19 +01:00
Andreas Ziegler
26b4d5691f docs: add link to tecff/site-ffa (Altdorf, Landshut & Umgebung) 2015-11-24 03:55:52 +01:00
Felix Kaechele
00022fc07f targets/ar71xx-generic: add WD MyNet N600/N750
Signed-off-by: Felix Kaechele <felix@kaechele.ca>
2015-11-23 23:13:51 +01:00
Matthias Schiffer
e5d6ec73f5 contrib/sign.sh: remove debug echo command 2015-11-23 21:09:43 +01:00
Matthias Schiffer
d2779c7711 Merge pull request #566 from Adorfer/master
-spelling
2015-11-23 14:20:33 +01:00
Adorfer
8f31ce81b3 -spelling 2015-11-23 13:11:26 +01:00
Matthias Schiffer
ce44045a8b docs: releases/v2015.2: remove accidentially pasted line in the "Added hardware support" section 2015-11-23 01:51:57 +01:00
Matthias Schiffer
f79d837e87 docs: update list of supported hardware
Also
* create list of newly supported devices since v2015.1.2 in the v2015.2 release notes
* update information on docs/user/x86
* fix a comment in targets/ar71xx-generic/profiles.mk
2015-11-23 01:43:35 +01:00
Matthias Schiffer
f01121f7db contrib/sign.sh: various cleanups, exit with 1 on error 2015-11-23 01:14:54 +01:00
picard
40a9bdd7b1 docs: update ffnw site URL 2015-11-23 01:00:42 +01:00
Matthias Schiffer
d428576ec5 Merge pull request #552 from freifunk-gluon/disable-mesh
gluon-mesh-batman-adv-core: keep disabled state even when the mesh interface section name is changed
2015-11-23 00:42:39 +01:00
Matthias Schiffer
f0308ed93c docs: add documentation for gluon-ebtables-filter-{multicast,ra-dhcp} 2015-11-23 00:39:32 +01:00
Matthias Schiffer
81b2142e65 Merge branch 'patch-1' of https://github.com/ohrensessel/gluon 2015-11-22 23:28:39 +01:00
Matthias Schiffer
1ec09d7596 Merge pull request #564 from brokenbike/patch-1
Fix typo in LICENSE
2015-11-22 05:14:19 +01:00
Matthias Schiffer
fabb0143c4 base-files: add missing public key
This patch is already included in the current OpenWrt CC branch.
Cherry-pick for now as we're very close to the Gluon 2015.2 release.
2015-11-21 18:36:45 +01:00
brokenbike
186fb0f33a Fix typo in LICENSE
In line 2: indiviual -> individual
2015-11-21 13:29:31 +01:00
Matthias Schiffer
77829cda98 ar71xx: fix wndr3700_board_detect for some NETGEAR WNDR3700v2 (again) 2015-11-20 15:23:02 +01:00
Matthias Schiffer
3f70440527 ar71xx: fix AR71XX_MODEL on TP-Link TL-WR703N 2015-11-20 00:04:59 +01:00
Matthias Schiffer
ef38d386cb Fix the mac80211 backport not to remove the dependencies on kmod-crypto-arc4 and kmod-crypto-aes
The trunk version of mac80211 doesn't need these dependencies anymore as
they are compiled into the kernel.

While this didn't cause any issues for Gluon as we always build the kernel
with all modules, this fix makes the patch work on a plain OpenWrt CC as
well.
2015-11-18 23:07:46 +01:00
Matthias Schiffer
0335ce10e2 gluon-mesh-batman-adv-core: keep disabled state even when the mesh interface section name is changed
Is makes sense to always look for both ibss_radio* and mesh_radio* sections
to determine if the meshing should be enabled when regenerating these
sections. Doing this, the disabled state will survive updates changing the
section name (either updating from pre-2015.2 while keeping IBSS, or
changing from IBSS to 11s or vice-versa).

If both ibss_radio* and mesh_radio* sections exist, the disabled state will
be kept correctly for each section, the behaviour is changed only when
creating a section that didn't exist before.

Fixes #549
2015-11-18 03:01:18 +01:00
Matthias Schiffer
e528977100 gluon-site: set PKG_FILE_DEPENDS to site.conf and i18n/ only
PKG_FILE_DEPENDS caused the whole site repo to be hashed to determine if
gluon-site needed rebuilding. While this is normally no problem,
alternative build setups sometimes put the Gluon repo inside the site repo,
causing long build times and parallel build failures.
2015-11-18 02:39:05 +01:00
Matthias Schiffer
8ef02f33e9 ar71xx: backport ath10k calibration data load changes 2015-11-18 02:03:35 +01:00
Nils Schneider
7031468da3 Merge pull request #548 from freifunk-gluon/getting_started
docs: improve user/getting_started, some minor fixes in user/site
2015-11-18 00:45:54 +01:00
Leo Krueger
bc15b6c810 gluon-ebtables-filter-multicast: drop icmpv6 type 128 & 139, drop icmp
in a layer 2 mesh network, multicast pings cause a lot of traffic in the
network, significantly increasing the 'backgroudn noise' (= Grundrauschen)
and stressing nodes in the network.

this commit blacklists all icmpv4 multicast traffic as well as multicast
icmpv6 echo-requests and node iformation queries. as no application
depending on these types of multicast traffic is known, blacklisting is safe.
2015-11-12 21:16:37 +01:00
Matthias Schiffer
0b77bee3d7 ar71xx: fix TL-WR941ND v6 switch PHY mask
Fixes #550
2015-11-08 20:48:17 +01:00
Matthias Schiffer
7028c0e113 ar71xx-generic: add profile for TL-WR1043ND v3 2015-11-06 13:17:45 +01:00
Matthias Schiffer
171b484735 docs: improve user/getting_started, some minor fixes in user/site
This commit basically does two things: it urges users always to use an own
git repository to manage the site configuration, and it removed all
mentions of "communities" from the "Getting started" page, as it was too
Freifunk-specific.

Other documentation pages (especially the site configuration docs) should
probably be adjusted as well.
2015-11-06 00:17:09 +01:00
Matthias Schiffer
abd43c163c ar71xx: add support for TP-LINK TL-WR1043ND v3 2015-11-05 18:17:28 +01:00
Matthias Schiffer
b6b5aad79c Merge pull request #546 from MPW1412/patch-1
Confusion of WAN an LAN, this line is for mesh-on-lan
2015-11-05 17:01:48 +01:00
Matthias Walther
b33635c47c Update wired-mesh.rst 2015-11-05 16:19:55 +01:00
Matthias Schiffer
72e554fcff Remove BROKEN for TL-LINK TL-WR940 v1 & v2
These devices are identical to the TL-WR941 v4 & v5, so we don't need to
test them explicitly.
2015-11-04 14:53:37 +01:00
Matthias Schiffer
a3feff21cf ar71xx: add TP-LINK TL-WR941ND v6 support (again) 2015-11-02 19:26:15 +01:00
Matthias Schiffer
1cbe532751 Merge branch 'mac80211' 2015-11-02 18:10:00 +01:00
Matthias Schiffer
6e79982442 build: improve logging of tool build 2015-11-02 17:40:29 +01:00
Matthias Schiffer
34183c1cb2 build: further fixes for clean builds
usign has pulled in new dependencies, and OpenWrt doesn't like the command
`make tools/prepare` in a clean build.
2015-11-02 15:09:01 +01:00
Matthias Schiffer
2c6484ca15 mac80211: backport from trunk r47249 + additional patches 2015-11-02 02:58:55 +01:00
Matthias Schiffer
6be3893a7b ipv6: fix crash on ICMPv6 redirects with prohibited/blackholed source
Fixes #540
2015-11-02 02:02:37 +01:00
Matthias Schiffer
31d65173f2 build: clean up key generation and early preparation
This will fix the early preparation happening much too often and also fixes
early preparation after `make clean`.
2015-11-02 01:58:30 +01:00
Matthias Schiffer
db6c50011d build: make make dirclean remove the whole GLUON_OUTPUTDIR 2015-11-02 01:35:53 +01:00
Matthias Schiffer
7475ef8f14 Update OpenWrt base
Update kernel to 3.18.23
2015-11-02 00:16:09 +01:00
Matthias Schiffer
82a9d7904a build: fix QUILT=1 option
This broke due to the Makefile changes for building the module repo.
2015-10-31 22:53:20 +01:00
Jan-Philipp Litza
cf509cf4d9 Merge pull request #539 from brokenbike/patch-1
Update site.rst
2015-10-31 10:54:56 +01:00
brokenbike
2df84fc474 Update site.rst
The Freifunk Münsterland firmware was formerly known as Freifunk Münster firmware - while the URL hasn't changed. In future, there will probably be subdomains with their own files, but for now this is state of the project.
2015-10-30 21:16:27 +01:00
Matthias Schiffer
4c4ca21545 build: fix creation of opkg key when BUILDDIR hasn't been created yet 2015-10-30 20:07:19 +01:00
Matthias Schiffer
f6f83508d0 Merge pull request #538 from srauscher/doc
doc: remove duplicate article in getting_started.rst
2015-10-30 17:26:13 +01:00
Stefan Rauscher
a56d252cba doc: remove duplicate article in getting_started.rst 2015-10-30 16:55:57 +01:00
Matthias Schiffer
99b7ed0080 Merge pull request #527 from freifunk-gluon/modules
Generate opkg repo for kernel modules
2015-10-30 14:15:04 +01:00
Matthias Schiffer
4b120deaee build: improve handling of repository signing keys 2015-10-30 14:08:29 +01:00
Matthias Schiffer
cbe66e9388 build: add make modules make target
`make modules` will generate a opkg repository containing kernel modules
matching the kernel of the Gluon images.
2015-10-29 18:44:00 +01:00
Matthias Schiffer
53a7cf31f9 build: add GLUON_OUTPUTDIR, move GLUON_IMAGEDIR default below it
We'll soon have other output besides the images, having a single directory
for all output makes sense.
2015-10-29 18:44:00 +01:00
Matthias Schiffer
515dfa2b50 Increment LINUX_RELEASE
The upstream builds always use LINUX_RELEASE=1. By setting it to 2 we
ensure that our modules are always preferred as long as our kernel version
is at least as high as the upstream one.
2015-10-29 18:44:00 +01:00
Matthias Schiffer
cb404a944b build: remove vermagic hack
As the Gluon kernel won't be compatible with the OpenWrt upstream anymore,
we don't need the vermagic hack anymore.
2015-10-29 18:44:00 +01:00
Matthias Schiffer
e730b60c93 Merge pull request #536 from FreifunkMD/doc
doc: remove double opening next_node line in site.conf example
2015-10-29 14:50:27 +01:00
Alexander Dahl
47dee86d8f doc: remove double opening next_node line in site.conf example
I guess this is some copy and paste mistake which makes the example an
invalid site.conf. In my case merging the changes of the example into
our actual site.conf lead to an error because this line was merged to.
2015-10-29 14:33:24 +01:00
Matthias Schiffer
86bd5a1da5 docs: improve wired mesh documentation
Fixes #376
2015-10-28 19:59:51 +01:00
Matthias Schiffer
412e1ef147 gluon-core: fix removal of "OpenWrt" default WLAN interface
Fixes #534
2015-10-28 17:06:29 +01:00
Matthias Schiffer
172ad68134 node: add python/host to HOST_BUILD_DEPENDS as well 2015-10-28 01:15:03 +01:00
Matthias Schiffer
0717ce007d Update OpenWrt and Gluon packages 2015-10-28 00:50:53 +01:00
Matthias Schiffer
74a6556f9c docs: releases/v2015.2: update site migration guide 2015-10-28 00:03:07 +01:00
Matthias Schiffer
6061b0874a build: fix manifest generation for model aliases 2015-10-27 22:44:03 +01:00
Matthias Schiffer
3ddcf50b80 Drop htmode field from config, always use HT20
Fixes #487
2015-10-27 01:57:10 +01:00
Matthias Schiffer
3647cf1d18 Remove leftover file from gluon-radio-config 2015-10-27 01:57:10 +01:00
Matthias Schiffer
9b46a05de7 Merge pull request #450 from freifunk-gluon/status-page
gluon-status-page: new status page
2015-10-26 22:55:00 +01:00
Matthias Schiffer
557a073dc7 gluon-mesh-batman-adv-core/gluon-luci-portconfig: fix configuration of br-client ifname with multiple interfaces in lan_ifname
There are a few devices on which lan_ifname contains multiple interface
names separated by spaces.
2015-10-26 22:29:44 +01:00
Nils Schneider
84b6374970 gluon-client-bridge: basic br-client config and wireless AP
This package provides br-client and sets up a wireless AP interface for
clients.
2015-10-26 21:14:32 +01:00
Matthias Schiffer
22130e84e8 Merge gluon-radio-config into gluon-core
gluon-radio-config contained only a single file. The code has been adjusted
to allow creating a Gluon configuration without WLAN support by removing
the wifi24 and wifi5 sections from site.conf.
2015-10-26 20:59:56 +01:00
Matthias Schiffer
3d862afb17 Update OpenWrt base 2015-10-26 19:02:12 +01:00
Matthias Schiffer
400613cb8b libuecc: update to v6 2015-10-25 17:32:30 +01:00
Matthias Schiffer
fa9496f2f7 Update OpenWrt packages 2015-10-25 17:21:13 +01:00
Tarnatos
320967477e docs: add TL-WR841 v10 to device list 2015-10-23 11:00:23 +02:00
Matthias Schiffer
fe0fbcf2d5 ar71xx: fix ath79_soc_rev value for QCA9531 ver. 2
ath9k expects to get revision id 2 for the QCA9531 ver. 2 rev. 0. This
fixes the very low TX power on some devices like the TP-LINK
TL-WR841ND v10.

As ath79_soc_rev is only used to get the revision number to ath9k on the
QCA9533, just set it to the expected value on the ver. 2.
2015-10-22 13:58:08 +02:00
Matthias Schiffer
563f9afcc0 ar71xx-generic: remove BROKEN check for TP-LINK CPE210/510 v1.1 2015-10-17 15:14:27 +02:00
Matthias Schiffer
3b4f154445 build: use symlinks instead of copies when multiple devices use identical images 2015-10-16 19:11:36 +02:00
Matthias Schiffer
162c4b0cdd Update CPE210/510 v1.1 support patches
Some more cleanup.
2015-10-16 01:20:16 +02:00
Matthias Schiffer
53211b5b46 Replace gluon-cron by micrond 2015-10-15 23:52:30 +02:00
Matthias Schiffer
f2dd9ff6ac Update Gluon packages 2015-10-15 23:52:22 +02:00
Matthias Schiffer
d0a78ea8ba Merge branch 'opkg' 2015-10-15 22:28:41 +02:00
Matthias Schiffer
45d1d04ae3 Merge branch 'simple-tc' 2015-10-15 22:28:32 +02:00
Matthias Schiffer
cad2e8e4b7 ar71xx-generic: add support for CPE210/220/510/520 v1.1 (untested) 2015-10-15 22:03:20 +02:00
Matthias Schiffer
f292ba1d7a ar71xx-generic: TL-WR841N/ND v10: remove BROKEN check 2015-10-15 12:17:24 +02:00
Matthias Schiffer
2fefdeee63 gluon-mesh-batman-adv-core: neighbours.d/wifi: output empty object instead of empty list when there are no neighbours on an interface 2015-10-15 02:42:28 +02:00
Matthias Schiffer
26682b24b3 Replace gluon-simple-tc by non-Gluon-specific simple-tc
The Gluon-specific functions of the gluon-simple-tc package are moved to
gluon-mesh-vpn-fastd.
2015-10-15 02:38:47 +02:00
Matthias Schiffer
9f6009469b Update Gluon modules 2015-10-15 02:38:37 +02:00
Jan-Philipp Litza
daa15290ab gluon-announce: Remove now unused collect.lua
The file promotes the probably unnecessary re-execution of the announce
scripts. Instead, gluon-announced should be queried using

    gluon-neighbour-info -d ::1 -p 1001 -t0 -r nodeinfo

if both gluon-announced and gluon-neighbour-info are present. But to not
depend on any of those, no script for this one-liner is provided.
2015-10-15 01:49:20 +02:00
Jan-Philipp Litza
bae6519279 gluon-alfred/gluon-status-page: Query gluon-announced
By not executing all scripts from gluon.announce themselves, both should
be considerably faster and lighter on RAM usage.
2015-10-15 01:49:20 +02:00
Jan-Philipp Litza
d2ff7d5c22 gluon-neighbour-info: Add -l and -c parameter, make event type for -s configurable 2015-10-15 01:49:20 +02:00
Matthias Schiffer
3725f7bca3 Merge remote-tracking branch 'origin/announce.d' 2015-10-15 01:31:05 +02:00
Matthias Schiffer
d5c334af6d gluon-core: replace opkg site configuration to make it more flexible
The new options allow specifying custom repositories and are evaluated
in an upgrade script, not during build.
2015-10-14 02:57:29 +02:00
Matthias Schiffer
69d18cc9e9 build: update opkg config generation to match upstream 2015-10-13 22:00:47 +02:00
Matthias Schiffer
0abe7fe4e5 Merge pull request #517 from freifunkMUC/feature/ubiquiti-air-gateway
Add support for Ubiquity Air Gateway
2015-10-13 19:17:28 +02:00
Matthias Schiffer
55b7b05db3 ar71xx-generic: disable WHR-HP-G300N profile because of image size issues 2015-10-13 01:34:40 +02:00
Nils Schneider
e01e99c5f4 Merge pull request #519 from freifunk-gluon/gw_sel_class
gluon-mesh-batman-adv-core: make gateway selection class configurable
2015-10-12 21:50:23 +02:00
Matthias Schiffer
b46d4fd537 gluon-mesh-batman-adv-core: make gateway selection class configurable
Fixes #401
2015-10-12 21:49:02 +02:00
Nils Schneider
9dffb1284f gluon-announce(d): preload functions, collectgarbage
By calling collectgarbage() at various places I was able to reduce heap
usage by ~270kb.
2015-10-12 20:54:03 +02:00
Nils Schneider
435ded0c60 gluon-announce: build a tree of functions first
collect_dir() will now pre-load all files and return a function that will
collect all information.
2015-10-12 20:54:03 +02:00
Franz Pletz
23933b6842 Add support for Ubiquity Air Gateway 2015-10-12 15:27:43 +02:00
A.Kasper
b88c9f7877 kernel: add kernel modules for rtl8150 and rtl8152 based usb-to-ethernet converters
This patch adds the kernel modules to for the very common Realtek RTL8150 and Realtek 8152 based USB-to-Ethernet converters.
After this patch the following packages can be added to targets (or site.mk):
kmod-usb-net-rtl8150
kmod-usb-net-rtl8152

The modules are already available in openwrt trunk, but not in Chaos Calmer. This patch is just a temporary backport.
The modules are needed for Futros with additional USB-Ethernet-Interface and VMs with dedicated USB-NIC
2015-10-12 11:56:35 +02:00
Matthias Schiffer
a22c808634 Merge pull request #466 from kb-light/11s-mesh-dev
gluon-mesh-batman-adv-core: prepare for 802.11s mesh
2015-10-11 23:01:08 +02:00
Matthias Schiffer
12f9df7e86 gluon-config-mode-core: don't throw error when no config mode modules are installed
The expert mode can still be useful without any cohfig mode modules.
2015-10-11 21:19:28 +02:00
Matthias Schiffer
fca6cb817f Fix Buffalo WZR-600DHP support.
Use the same image for sysupgrade on WZR-HP-AG300H and WZR-600DHP, but use
different factory images.
2015-10-11 21:08:57 +02:00
Matthias Schiffer
6d92fcb50e Make Gluon/OpenWrt profile mapping more flexible
Add an optional third argument to the GluonProfile macro while contains the
OpenWrt profile name. This allows creating different Gluon profiles (with
different image names etc.) from the same OpenWrt profile.
2015-10-11 21:07:33 +02:00
Matthias Schiffer
cd751b8b9e Revert "ar71xx: remove WZR-600DHP from Buffalo WZR-HP-AG300H/WZR-600DHP model name string for now"
This reverts commit 8ad3c88179.
2015-10-11 20:56:53 +02:00
Matthias Schiffer
8ad3c88179 ar71xx: remove WZR-600DHP from Buffalo WZR-HP-AG300H/WZR-600DHP model name string for now
We can't use the same image for these two devices, so as a workaround,
remove ZR-600DHP from the name for now, so the autoupdater can work and
users aren't confused.
2015-10-11 20:30:15 +02:00
Matthias Schiffer
05f146f817 Validate section names from site.conf in various packages 2015-10-11 19:34:14 +02:00
Matthias Schiffer
fddbc1df2e base-files: add /etc/profile.d support 2015-10-11 18:14:08 +02:00
Matthias Schiffer
ffc7baf9fb ar71xx: add support for TP-LINK TL-WR841N/ND v10 (untested) 2015-10-11 18:07:05 +02:00
Matthias Schiffer
ed3d1294ca Merge pull request #481 from freifunk-gluon/rej-features
contributing: mention "rejected features" wiki page
2015-10-11 17:55:08 +02:00
Matthias Schiffer
f71a72c440 Merge pull request #513 from brueggemann/master
Add support for WHR-HP-G300N
2015-10-11 17:29:14 +02:00
Matthias Schiffer
3e884a9df7 Merge pull request #516 from freifunkMUC/feature/tp-link-wa901nd-v1
Add support for TP-Link TL-WA901ND v1
2015-10-11 17:27:04 +02:00
Franz Pletz
61cb226523 Add support for TP-Link TL-WA901ND v1 2015-10-11 10:59:04 +02:00
brueggemann
fda7995827 Add support for WHR-HP-G300N 2015-10-09 14:06:06 +02:00
Matthias Schiffer
1270b75be9 Merge pull request #512 from rubo77/patch-5
gluon-luci-private-wifi: typo seperaten
2015-10-09 12:22:43 +02:00
Ruben Barkow
06a2b2b1d1 gluon-luci-private-wifi: typo seperaten 2015-10-09 11:59:12 +02:00
Matthias Schiffer
0c7d0cdb91 Update modules 2015-10-08 23:13:28 +02:00
Matthias Schiffer
0f91fa6fa8 scripts/patch.sh: apply patches in a loop instead of a single git am command
Using a loop makes the script a bit nicer, and it works around a git bug
corrupting patch dates when multiple patches are applied at once.
2015-10-08 23:11:44 +02:00
Matthias Schiffer
4b3090f809 Merge branch 'master' of github.com:freifunk-gluon/gluon 2015-10-08 22:32:38 +02:00
Matthias Schiffer
74059c8940 Merge pull request #491 from ffac/target-xen_domu
Add support for x86-xen_domu target
2015-10-08 22:32:25 +02:00
Matthias Schiffer
3ced929698 Update Gluon packages 2015-10-08 22:30:16 +02:00
Matthias Schiffer
98542b015d i18n: s/noeud/nœud/ 2015-10-08 22:16:25 +02:00
Matthias Schiffer
8d71044aaf docs: site-example/i18n: fix encoding of french translation 2015-10-08 22:16:25 +02:00
Nils Schneider
a48495a7c7 Merge pull request #500 from freifunk-gluon/sigtest
contrib/sigtest.sh - testing signature
2015-10-08 22:11:47 +02:00
Matthias Schiffer
595e337d9a x86: include kmod-forcedeth into generic and 64 subtargets 2015-10-08 13:21:50 +02:00
Matthias Schiffer
9640e66005 Merge pull request #448 from ff3l/french
Französische Übersetzung
2015-09-23 09:45:15 +09:00
Matthias Schiffer
57a3016148 Update OpenWrt base 2015-09-22 20:53:49 +09:00
kb-light
955dc886a8 gluon-mesh-batman-adv-core: prepare for 802.11s mesh
keep macfilter and maclist config after fw-update
2015-09-22 10:48:09 +02:00
Matthias Schiffer
46f996b4f0 Update modules
This also takes us past the OpenWrt 15.05 final release.
2015-09-21 21:02:31 +09:00
Steffen Möller
68459dab00 contrib/sigtest.sh - testing signature 2015-09-19 15:31:07 +02:00
Ronny Trommer
3f72e682c5 Update build dependency documentation
Build requires Python 2 and libssl-dev
2015-09-19 15:15:00 +02:00
Jan-Philipp Litza
d3063ed2e1 Merge pull request #493 from rubo77/patch-4
docs: Suggest MTU 1280 to circumvent Kabel Deutschland problems
2015-09-19 15:05:59 +02:00
Jan-Philipp Litza
2a0ca129d2 Merge pull request #494 from rubo77/patch-5
docs: Suggest peer limit 1 instead of 2
2015-09-19 15:05:55 +02:00
srauscher
16888d214d Add french translation 2015-09-17 07:28:09 +02:00
Ruben Barkow
0035aa2989 docs: Suggest MTU 1280 to circumvent Kabel Deutschland problems 2015-09-14 11:47:51 +02:00
Ruben Barkow
be49f755c7 docs: Suggest peer limit 1 instead of 2 2015-09-14 11:46:46 +02:00
Nils Schneider
a6a281f545 Merge pull request #497 from rubo77/patch-6
CONTRIBUTING.md: Typo "everybode"
2015-09-14 11:42:58 +02:00
Ruben Barkow
439f00d576 Typo "everybode" 2015-09-14 11:40:10 +02:00
Michael Rüttgers
f03ccf86d6 Add support for x86-xen_domu target
Config for rootfs and grub is not needed anymore (https://dev.openwrt.org/ticket/18074)

Config file not needed anymore (set implicitly by gluon now)

Avoid empty vars
2015-09-14 09:10:50 +02:00
Nils Schneider
71cdd65f30 Merge pull request #495 from aeickho/patch-4
add: info for 802.11s interface (mac)
2015-09-13 14:37:41 +02:00
Alex
b465504ae8 add: info for 802.11s interface
additional information for commit 2a93c58042
2015-09-13 14:32:53 +02:00
Nils Schneider
2a9d7d82cb contributing: mention "rejected features" wiki page 2015-09-12 18:52:04 +02:00
Matthias Schiffer
a71ab2fb72 Get rid of rpcd
LuCI's authentication won't work without rpcd, but we aren't using the
authentication anyways. Users who need it can just install rpcd explicitly.

Fixes #452
2015-09-06 01:37:42 +02:00
Matthias Schiffer
2ca4010714 Merge remote-tracking branch 'origin/status-page-api' 2015-09-05 18:56:58 +02:00
Nils Schneider
014f5751c8 gluon-status-page-api: increase uhttp.max_requests to 32
Now that the status page api has been rewritten in C CPU load and memory
usage is much lower. Also, nodes with both ibss and 11s mesh and dual
band wifi may require up to 9 connections for a single client, thus the
previous limit of 12 seemed a little low.
2015-09-05 12:11:35 +02:00
Nils Schneider
8be372a590 gluon-status-page-api: rewrite stations in C 2015-09-05 12:11:33 +02:00
Nils Schneider
4b8f6c9835 gluon-status-page-api: rewrite neighbours-batadv in C 2015-09-05 11:47:44 +02:00
Nils Schneider
431ac81407 gluon-status-page-api: split API from gluon-status-page
This will make it easier to replace the API with C programs.
2015-09-05 11:47:44 +02:00
Matthias Schiffer
d19b05e7b7 Merge remote-tracking branch 'origin/br-client-ifname-list' 2015-09-04 21:13:08 +02:00
Nils Schneider
5e5dc5ab18 gluon-status-page: new status page 2015-09-04 20:50:18 +02:00
Nils Schneider
34752c7e0b br-client: convert option ifname to list ifname
Convert option ifname in br-client to use a list instead. This
simplifies adding and remove interfaces:

uci:add_to_set("network", "client", "ifname", "eth0")
uci:remove_from_set("network", "client", "ifname", "eth0")

An option ifname will be automatically converted to a list when
performing an upgrade.

Packages affected: gluon-mesh-batman-adv-core, gluon-luci-portconfig
2015-09-04 20:31:53 +02:00
Nils Schneider
7c6703d84b luci.model.uci: add add_to_set / remove_from_set 2015-09-04 20:31:53 +02:00
Matthias Schiffer
faba9efb88 Merge branch 'jsonc-sink' of https://github.com/FreifunkBremen/gluon 2015-09-04 17:15:58 +02:00
Jan-Philipp Litza
961e6cc1c0 Add sink support to luci-lib-jsonc and use it where needed 2015-09-04 12:27:45 +02:00
Nils Schneider
96033758ab Merge pull request #473 from FreifunkBremen/batctl-if-lua
Don't fork batctl from announce scripts
2015-09-04 11:40:00 +02:00
Matthias Schiffer
e3d89ee8c4 ath9k: add HSR tuner support for UniFi Outdoor Plus 2015-09-03 23:51:19 +02:00
Matthias Schiffer
f0a6400d5d Refresh OpenWrt patches 2015-09-03 22:03:46 +02:00
Matthias Schiffer
d2909270a7 Merge remote-tracking branch 'origin/odhpc6c-minor-fixes' 2015-09-03 20:59:31 +02:00
Nils Schneider
40a1a3c16c odhcp6c: minor fixes 2015-09-03 18:07:48 +02:00
Jan-Philipp Litza
bccf4f7b21 gluon-mesh-batman-adv-core: Add lua code for iface listing, don't fork 2015-09-03 16:33:13 +02:00
Matthias Schiffer
3599d8912b Merge branch 'slim-down-lua-scripts' of https://github.com/FreifunkBremen/gluon 2015-09-03 15:29:27 +02:00
Matthias Schiffer
501affad08 Revert "mac80211: backport from trunk r46760"
This reverts commit 91b3c1d371.
2015-09-03 15:24:51 +02:00
Matthias Schiffer
740e8b67c5 Revert "ar71xx: fix TP-LINK TL-WR941ND v6 support"
This reverts commit 6da1677d92.
2015-09-03 15:24:42 +02:00
Nils Schneider
21935ffc81 gluon-status-page: set html encoding to utf-8 2015-09-02 21:19:41 +02:00
Jan-Philipp Litza
339a6c9959 Remove dependencies on luci.util (and partly nixio.fs) from announce scripts 2015-09-02 13:17:59 +02:00
Matthias Schiffer
6da1677d92 ar71xx: fix TP-LINK TL-WR941ND v6 support 2015-09-01 22:14:57 +02:00
Matthias Schiffer
91b3c1d371 mac80211: backport from trunk r46760 2015-09-01 22:14:57 +02:00
Matthias Schiffer
280ea8d9ba Update OpenWrt base 2015-09-01 22:14:57 +02:00
Nils Schneider
7f5c3e433b Merge pull request #462 from FreifunkBremen/contribution-guidelines
RFC: Add contribution guidelines
2015-08-31 21:15:26 +02:00
Nils Schneider
cf13db52b6 Merge pull request #463 from FreifunkBremen/jsonc-fix-memleak
Add patch "luci-lib-jsonc: Fix memory leak in stringify"
2015-08-31 20:01:41 +02:00
Jan-Philipp Litza
8e670bd3fd Add patch "luci-lib-jsonc: Fix memory leak in stringify" 2015-08-31 19:56:00 +02:00
Jan-Philipp Litza
c6b551aeeb Add contribution guidelines 2015-08-31 19:34:43 +02:00
Matthias Schiffer
f5bef2ab01 docs: site-example/i18n/de.po: fix typo 2015-08-31 00:45:52 +02:00
Matthias Schiffer
a25d00ddce Merge branch 'feature-optional-thekey' of https://github.com/FreifunkBremen/gluon 2015-08-31 00:42:54 +02:00
Matthias Schiffer
d97586dd89 Merge branch 'announce-separate-frequencies' of https://github.com/FreifunkBremen/gluon 2015-08-30 23:53:36 +02:00
Matthias Schiffer
58306fd1c9 Merge pull request #459 from FreifunkBremen/docs-empty-msgstr
Warn of empty msgstr in translations, hint at using comments
2015-08-30 23:53:08 +02:00
Jan-Philipp Litza
89a9d8138c gluon-mesh-batman-adv-core: Announce client count by frequency 2015-08-30 23:39:45 +02:00
Jan-Philipp Litza
222fd94ca7 docs: Warn of empty msgstr in translations, hint at using comments 2015-08-30 23:03:48 +02:00
Jan-Philipp Litza
eb590bdc12 gluon-config-mode-mesh-vpn: Move display of key to translations
When rebooting the node in config mode, currently the fastd key is
forcefully displayed in a fixed format. This is confusing in communities
where fastd accepts all keys and no key submission is needed.
Furthermore, some communities might want to personalize the display of
the key (see #387).

This patch moves the displaying <div> from the package's lua file to the
translation files of the sample site configuration and mentiones the
change in the release notes.
2015-08-30 21:55:29 +02:00
Jan-Philipp Litza
15a80aaffd Switch from luci-lib-json to luci-lib-jsonc
Apart from replacing a patch for the former by two patches for latter,
this involved minimal adaptations of the lua scripts in the following
packages:

* gluon-announce
* gluon-announced
* gluon-mesh-batman-adv-core
* gluon-status-page
2015-08-30 21:05:13 +02:00
Matthias Schiffer
4405f39869 Merge remote-tracking branch 'origin/radio-config' 2015-08-29 02:36:38 +02:00
Nils Schneider
ac439b8b64 Update modules 2015-08-29 02:10:32 +02:00
Matthias Schiffer
3dbe4bc80f Update modules 2015-08-28 19:31:41 +02:00
Matthias Schiffer
0f427af474 Avoid build dependency on libopenssl 2015-08-28 10:48:41 +02:00
kb-light
753c1f9e2a gluon-status-page: handle 11s interfaces 2015-08-23 23:19:28 +02:00
Nils Schneider
5cd17b9b9b Update modules 2015-08-19 21:36:00 +02:00
Nils Schneider
6906ef9de6 gluon-radvd: use uradvd 2015-08-19 21:20:50 +02:00
Nils Schneider
177086b881 gluon-radio-config: basic wireless configuration
Split basic radio configuration from gluon-mesh-batman-adv as this will
be required for virtually any wireless mesh protocol.

This package takes care of setting:

  - wireless channel,
  - htmode and
  - regulatory domain

gluon-mesh-batman-adv-core depends on this package.
2015-08-18 11:41:14 +02:00
Nils Schneider
bd56af3bab docs: introduce per-package documentation
Documentation for packages should be placed in docs/packages/
and be added to docs/index.rst.
2015-08-16 14:57:48 +02:00
Matthias Schiffer
a1071bc5d4 Update modules 2015-08-13 20:27:07 +02:00
Matthias Schiffer
d432a0a214 alfred: not only wait for the interface, but also a link-local address 2015-08-09 18:13:45 +02:00
Matthias Schiffer
0f928b08d5 docs: import v2015.1.2 release notes and list of supported devices 2015-08-09 14:56:03 +02:00
Matthias Schiffer
5cc6e820ea Fix TL-MR3220 v2 image generation
This broke due to a recent OpenWrt update.
2015-08-07 20:56:43 +02:00
Matthias Schiffer
4b23674393 base-files: default_postinst: propagate the real postinst return code
Fixes site.conf checks.
2015-08-07 18:50:03 +02:00
Matthias Schiffer
86773d7628 gluon-luci-wifi-config: add support for new WLAN configuration 2015-08-07 18:36:13 +02:00
Matthias Schiffer
26c6a787f6 Merge remote-tracking branch 'origin/flexible-wifi' 2015-08-07 17:45:23 +02:00
Matthias Schiffer
11bffa59db Update routing packages
This also updates batman-adv & alfred to 2015.1
2015-08-06 22:31:28 +02:00
Matthias Schiffer
aaac89c762 Update OpenWrt & LuCI packages 2015-08-06 22:01:10 +02:00
Matthias Schiffer
397d56e317 batman-adv: fix patch ordering 2015-08-06 21:42:48 +02:00
Matthias Schiffer
b408e1c99e batman-adv: decrease maximum fragment size
This should workaround batman-adv's inability to deal with different MTUs
which need fragmentation.

Fixes #435
2015-08-06 21:31:46 +02:00
Matthias Schiffer
be9182d377 Backport some QCA953x fixes
This might improve stability on the TL-WR841 v9.
2015-08-06 19:24:37 +02:00
Matthias Schiffer
5f55e4c084 Merge remote-tracking branch 'origin/fix-wan-dnsmasq' 2015-08-06 16:43:35 +02:00
Matthias Schiffer
912ab30d3a Update OpenWrt base 2015-08-06 16:37:23 +02:00
Matthias Schiffer
b4b16c31bf Merge pull request #434 from kokel/wr710n-v2
Add support for TP-Link TL-WR710N v2
2015-08-06 16:36:46 +02:00
Kokel
8ccb173992 Add support for TP-Link TL-WR710N v2
Tested-by: @kokel
2015-08-06 16:21:40 +02:00
Nils Schneider
2a93c58042 mesh-batadv-core: introduce 11s mesh, refactor wireless config
This is a site.conf-breaking change in regard to the wireless config.
Make sure to read http://gluon.readthedocs.org/en/latest/user/site.html
and update your site.conf accordingly!

Support for 802.11s mesh interfaces has been added. Gluon now supports
three interface types: ap, ibss and mesh. All of them are now optional
and may be configured independently in site.conf.

A sample site.conf may look like this:

    wifi24 = {
            channel = 1,
            htmode = 'HT40+',
            ap = {
                    ssid = 'luebeck.freifunk.net',
            },
            ibss = {
                    ssid = '02:d1:11:37:fc:38',
                    bssid = '02:d1:11:37:fc:38',
                    mcast_rate = 12000,
            },
            mesh = {
                    id = 'ffhl-mesh',
                    mcast_rate = 12000,
            },
    },
2015-08-04 23:05:29 +02:00
Nils Schneider
d9df118686 gluon-wan-dnsmasq: fix usage of libpacketmark
Using service_start requires exporting of environment variables.

Fixes #397
2015-08-04 22:51:40 +02:00
Jan-Philipp Litza
4e5b3354d2 gluon-mesh-batman-adv-core: Only announce valid IPv6 addresses
The nodeinfo/network/addresses announcement included deprecated and
tentative addresses, which it clearly shouldn't as the host doesn't want
to be contacted on those addresses. They are now filtered out.
2015-08-04 00:11:45 +02:00
Matthias Schiffer
bf2f4880fa Merge pull request #428 from oakey-dev/patch-2
TP-Link TL-WA701ND v2: remove BROKEN
2015-08-03 18:25:29 +02:00
Neal Oakey
3f2f37f098 TP-Link TL-WA701ND v2: remove BROKEN 2015-07-30 15:11:39 +02:00
Matthias Schiffer
75cebd236d hostapd: prevent channel switch for 5GHz
hostapd would switch the primary and secondary channel on 5GHz networks in
certain circumstances, completely breaking the adhoc interfaces of the WLAN
adapter (they would lose their configuration).

As a temporary fix, disable this channel switch function.
2015-07-27 20:45:33 +02:00
Nils Schneider
56e7753035 check_site: allow subcheck to be nil in need_table() 2015-07-25 21:02:24 +02:00
Nils Schneider
03ed475a42 openwrt/mac80211: set mcast-rate for mesh point interfaces 2015-07-24 21:54:41 +02:00
Matthias Schiffer
1195760cb6 ath10k: update Candelatech firmware to v14 2015-07-23 02:27:04 +02:00
Matthias Schiffer
dfcac0aaa5 ar71xx: fix wndr3700_board_detect for some NETGEAR WNDR3700v2 2015-07-23 01:41:25 +02:00
Matthias Schiffer
6f1989d43a ar71xx-generic: also provide images for the Ubiquiti Loco, Picostation and Rocket M
While the images are the same that are used for the Bullet M, adding these
copies will help users choose the correct image for their device.
2015-07-21 15:43:56 +02:00
Matthias Schiffer
bb869b800e ar71xx-generic: add images for TL-WR940N
These are identical to the TL-WR941ND (and identify as TL-WR941ND
internally).
2015-07-21 15:42:13 +02:00
Matthias Schiffer
508dca41eb Update DEFAULT_OPKG_REPO to 15.05-rc3 2015-07-18 21:22:21 +02:00
Matthias Schiffer
48054fc943 Add update-vermagic make target 2015-07-18 21:21:06 +02:00
Matthias Schiffer
f6498e8773 Update modules 2015-07-18 18:02:13 +02:00
Matthias Schiffer
303712d4b4 brcm2708: don't use gzip -k 2015-07-17 20:53:19 +02:00
Matthias Schiffer
2eb59ddec0 Add support for sunxi target and BananaPi profile (untested) 2015-07-16 23:07:10 +02:00
Matthias Schiffer
cee83c60c0 brcm2708: add sysupgrade support 2015-07-15 22:06:01 +02:00
Matthias Schiffer
3335fc6c53 Merge pull request #417 from FreifunkMD/doc
doc: remove "probability" from site doc (was removed in v2014.3)
2015-07-14 11:20:46 +02:00
Alexander Dahl
7be180d419 doc: remove "probability" from site doc (was removed in v2014.3)
see: http://gluon.readthedocs.org/en/latest/releases/v2014.3.html

Signed-off-by: Alexander Dahl <alex@netz39.de>
2015-07-14 11:07:52 +02:00
Matthias Schiffer
9b2d4a3535 Update OpenWrt base 2015-07-13 16:11:35 +02:00
Matthias Schiffer
8434686085 build: implicitly configure board and subtarget options
The file targets/$GLUON_TARGET/config becomes optional, as many targets
only used it to set the board and subtarget.

Also fix targets without subtarget.
2015-07-12 22:38:41 +02:00
Matthias Schiffer
d4c6b31454 ar71xx-generic: remove unneeded CONFIG_TARGET_ROOTFS_JFFS2 option
This default to n now by default
2015-07-12 22:09:15 +02:00
Matthias Schiffer
7d7c093007 brcm2708-bcm2708/-bcm2709: remove unnecessary package list
These packages are included by OpenWrt by default on this target and don't
need to be specified manually.
2015-07-12 18:46:30 +02:00
Matthias Schiffer
88ed124d5e Merge remote-tracking branch 'origin/on-link' 2015-07-12 18:23:08 +02:00
Matthias Schiffer
71be522c02 Update gluon packages 2015-07-12 18:21:13 +02:00
Matthias Schiffer
aa33a94ea7 Merge pull request #411 from FreifunkBremen/feature-neighbour-info-timeout
gluon-neighbour-info: Support sub-second timeout
2015-07-12 16:42:28 +02:00
Matthias Schiffer
e878155601 gluon-luci-admin: fix setting the password
This was broken due to the switch to Chaos Calmer.
2015-07-12 16:31:00 +02:00
Matthias Schiffer
34e0451e45 gluon-mesh-batman-adv-core: unconditionally set the WAN MAC address
This fixes MAC address conflicts on devices which use the eth0 as primary
address.
2015-07-11 18:27:35 +02:00
Matthias Schiffer
f5764a4a7b gluon-mesh-batman-adv-core: adjust rssid config to renamed WLAN interfaces
This should fix the signal strength indicators on the TP-Link CPE210/510.
2015-07-10 20:58:46 +02:00
Matthias Schiffer
efbc88ddba Update modules 2015-07-10 20:34:11 +02:00
Matthias Schiffer
d386ccdcf8 Always use eth0 address as primary address on x86 and brcm2708
These targets don't have a WLAN adapter by default, so it doesn't make
sense to default to the phy0 address.
2015-07-10 20:22:53 +02:00
Matthias Schiffer
cb40f149f3 Add support for brcm2708-bcm2708 and -bcm2709 targets
Original patch by @MPW1412
2015-07-10 19:38:41 +02:00
Matthias Schiffer
07d338919c build: copy all regular files from KERNEL_BUILD_DIR to BOARD_KDIR
Fixes build for brcm2708 targets
2015-07-10 18:16:39 +02:00
Matthias Schiffer
170741bf1c Restore README.md
It seems to have been deleted accidentially.
2015-07-10 18:16:39 +02:00
Jan-Philipp Litza
9f91a5f841 gluon-neighbour-info: Support sub-second timeout 2015-07-09 20:18:11 +02:00
Matthias Schiffer
961d82e37f Add x86-64 target 2015-07-09 01:20:21 +02:00
Matthias Schiffer
d8a6c16da2 x86-generic: add kmod-e1000e network driver 2015-07-09 01:20:21 +02:00
Nils Schneider
1c4b179dd2 gluon-config-mode-geo-location: translate "altitude" to "Höhe" 2015-07-08 23:18:42 +02:00
Nils Schneider
b91115e8f1 Merge pull request #409 from hwhw/master
Do not use error() in gluon-neighbour-info
2015-07-06 09:41:03 +02:00
Hans-Werner Hilse
66060cf08a gluon-neighbour-info: Do not use error()
error() is a glibc specific function and should not be used in
code meant to be portable.
2015-07-06 09:37:22 +02:00
Matthias Schiffer
1f3e66cf14 Update OpenWrt base 2015-07-04 17:22:40 +02:00
Neal Oakey
99fbafdf0c TP-Link TL-WA830RE v2: remove BROKEN 2015-07-04 17:03:21 +02:00
Matthias Schiffer
0c6101a7ac Update modules 2015-07-02 00:20:12 +02:00
Matthias Schiffer
9cff74b5a4 Update gluon packages 2015-07-01 23:17:49 +02:00
Matthias Schiffer
514f14863b Add support for TP-Link TL-WA801N/ND v1
Tested-by: @RubenKelevra
2015-07-01 17:17:38 +02:00
Nils Schneider
6ced715e13 Merge pull request #371 from freifunk-gluon/status-page-api
gluon-status-page: API
2015-06-29 17:33:04 +02:00
Nils Schneider
4f8ce12325 uhttpd: set max_requests to 12
This limits the number of concurrent users to 2 or 3 (approx. 4 connections per
user), greatly reducing DoS potential.
2015-06-29 12:03:01 +02:00
Nils Schneider
28668c8c52 gluon-status-page: API 2015-06-29 12:03:01 +02:00
Matthias Schiffer
372335e742 Update modules 2015-06-26 00:59:23 +02:00
Matthias Schiffer
bccfc0419e Add support for TP-LINK TL-WR740N/TL-WR741ND
The TL-WR741ND will identify itself as a TL-WR740N/ND as well. This is fine as
the images are identical anyways.
2015-06-21 23:01:58 +02:00
Matthias Schiffer
370544f3b4 Update OpenWrt base and packages 2015-06-21 21:10:45 +02:00
Matthias Schiffer
0df337fbe4 Fix routing from node to mesh
Recent changes in the routing configuration of OpenWrt broke source address
selection, sometimes leading to the node trying to contact other addresses in
the mesh network from the next-node address.

Revert the problematic commits until this has been solved upstream.
2015-06-21 05:57:23 +02:00
Matthias Schiffer
b5d01f81df Remove oldpackages opkg.conf entry
The oldpackages repo has been dropped for Chaos Calmer.
2015-06-20 22:20:53 +02:00
Matthias Schiffer
c2d4c49020 Update modules 2015-06-19 14:32:38 +02:00
Matthias Schiffer
094721f862 Update OpenWrt base 2015-06-18 20:10:55 +02:00
Matthias Schiffer
449a18f834 docs: releases/v2015.1.1 2015-06-18 02:47:49 +02:00
Matthias Schiffer
86ba583f46 Update modules 2015-06-18 02:40:18 +02:00
Matthias Schiffer
d42a7b9184 Merge pull request #396 from freifunk-gluon/empty-json-objects
gluon-announce, ...: don't output empty lists where not appropriate
2015-06-16 22:25:12 +02:00
Matthias Schiffer
d15e7118ea Update modules 2015-06-16 17:04:58 +02:00
Matthias Schiffer
8e87d84120 Update default opkg repo to 15.05-rc2 2015-06-16 00:58:18 +02:00
Matthias Schiffer
68a3b5f394 gluon-announce, ...: don't output empty lists where not appropriate
Always output empty objects or nothing at all where objects are expected, but
no elements exist.

Also remove a few unneeded "requires", a few basic modules are provided by
announce.lua by default.
2015-06-15 21:17:00 +02:00
Matthias Schiffer
d37f3619ce Switch to OpenWrt 15.05 release branch 2015-06-15 19:34:26 +02:00
Matthias Schiffer
6c378d1726 batman-adv: refresh no_rebroadcast patch to apply to 2015.0 cleanly 2015-06-15 12:37:38 +02:00
Matthias Schiffer
3422f6f72b Switch openwrt-routing module to master branch
This updates batman-adv to 2015.0.
2015-06-10 19:40:06 +02:00
Matthias Schiffer
de0b59754d luci-lib-json: ignore null keys to allow encoding empty objects 2015-06-10 11:10:38 +02:00
Matthias Schiffer
4b01ecce7c Update modules 2015-06-10 11:01:25 +02:00
Matthias Schiffer
bf0f1cd53f Update OpenWrt base and packages
This also fixes the TL-WA830RE v1 model name.
2015-06-05 17:38:26 +02:00
Matthias Schiffer
06cffbdde8 Update modules 2015-06-04 20:12:45 +02:00
Matthias Schiffer
e6c00c1ad7 build: ensure prereq has been run at the beginning of prepare-tmpinfo 2015-05-28 02:45:19 +02:00
Matthias Schiffer
317478e2b7 gluon-mesh-batman-adv-core: don't break network configuration on upgrades with mesh_on_lan=true 2015-05-28 01:44:25 +02:00
Nils Schneider
a42db7a71f gluon-luci-admin: fix translation of "Export Mode"
Export Mode -> Expert Mode
2015-05-22 11:51:32 +02:00
Matthias Schiffer
b21109f551 Update gluon packages 2015-05-22 02:05:47 +02:00
Matthias Schiffer
ab10be9f50 We're on Chaos Calmer now 2015-05-22 01:09:19 +02:00
Matthias Schiffer
63165e80a7 Merge branch 'wa830re-v10' of https://github.com/freifunk-darmstadt/gluon 2015-05-21 01:28:45 +02:00
Matthias Schiffer
8332a49b78 docs: change version to 2015.1+ 2015-05-21 01:06:25 +02:00
Florian Klink
b3f44325c4 add support for TP-LINK TL-WA830RE v1.0
final image name is shown as tp-link-tl-wa830re-v10

primary mac is the one printed on the case
2015-05-21 00:49:14 +02:00
Nils Schneider
2164893616 gluon-radvd: on-link flag
By introducing a new option -a in addition to -p this patch allows
controlling the on-link flag of announcements.

A prefix specified using -a will have the on-link flag set to zero
while a prefix specified using -p will retain its behaviour (i.e.
on-link flag set).

Example:

    gluon-radvd -i local-node -p 2001:db8:aaaa:/64 -a 2001:db8:bbbb::/64

This will announce 2001:db8:aaaa::/64 with the on-link flag set and
2001:db8:bbbb::/64 with the flag unset.
2015-05-08 21:46:12 +02:00
1046 changed files with 44879 additions and 50821 deletions

3
.ecrc Normal file
View File

@ -0,0 +1,3 @@
{
"Exclude": ["docs/_build"]
}

67
.editorconfig Normal file
View File

@ -0,0 +1,67 @@
# Top-most EditorConfig file
root = true
[*]
end_of_line = lf
insert_final_newline = true
indent_style = tab
charset = utf-8
[Dockerfile]
indent_style = space
indent_size = 4
[/patches/**]
indent_style = unset
indent_size = unset
[*.c]
[*.css]
[*.dia]
indent_style = space
indent_size = 2
[*.h]
[*.html]
[*.js]
[*{.json,.ecrc}]
indent_style = space
indent_size = 2
[*.lua]
[{Makefile,*.mk}]
indent_style = unset
[*.md]
indent_style = space
indent_size = 4
[*.pl]
[*.py]
indent_style = space
indent_size = 4
[*.rst]
indent_style = space
indent_size = 2
[*.sh]
[*.yml]
indent_style = space
indent_size = 2
[CMakeLists.txt]
indent_style = space
indent_size = 2
[{docs,contrib/ci}/*site*/**/*.conf]
indent_style = space
indent_size = 2

71
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@ -0,0 +1,71 @@
---
name: Bug report
about: Report a bug in a recent version of Gluon
label: bug
---
<!--
Please carefully fill out the questionnaire below to help improve the
timely triaging of issues. Walk through the questions below and use
them as an inspiration for what information you can provide.
Make use of codeblocks (three backticks before and after) where
appropriate (configuration excerpts, log output, etc.). Example:
```
your code goes here
```
You can use the "Preview" tab to check how your issue is going to look
before you actually send it in.
Thank you for taking the time to report a bug with the Gluon project.
-->
### Bug report
**What is the problem?**
<!--
- What is not working as expected?
- How is it misbehaving?
- When did the problem first start showing up?
- What were you doing when you first noticed the problem?
- On which devices (vendor, model and revision) is it misbehaving?
- Does the issue appear on multiple devices or targets?
-->
**What is the expected behaviour?**
<!--
- How do you think it should work instead?
- Did it work like that before?
-->
**Gluon Version:**
<!--
Please provide a usable Git reference before applying custom patches:
By using a Git reference:
$ git describe --always
v2018.2-17-g3abadc28
Or the URL to the relevant Gluon commit
https://github.com/freifunk-gluon/gluon/commit/<commit hash here>
-->
**Site Configuration:**
<!--
Please provide the URL to your site configuration repository and the
explicit commit used to build the firmware experiencing the problem.
Additionally excerpts of problem-related configuration parts are
often helpful.
-->
**Custom patches:**
<!--
Be upfront about any custom patches you have applied to your Gluon build, as they might
be part of your problem.
-->

12
.github/dependabot.yml vendored Normal file
View File

@ -0,0 +1,12 @@
# Docs: <https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/customizing-dependency-updates>
version: 2
updates:
- package-ecosystem: github-actions
directory: /
schedule: {interval: monthly}
- package-ecosystem: pip
directory: /docs/
schedule: {interval: monthly}

237
.github/filters.yml vendored Normal file
View File

@ -0,0 +1,237 @@
{
"ath79-generic": [
"targets/ath79-generic",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
],
"ath79-nand": [
"targets/ath79-nand",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
],
"ath79-mikrotik": [
"targets/ath79-mikrotik",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk",
"targets/mikrotik.inc"
],
"bcm27xx-bcm2708": [
"targets/bcm27xx-bcm2708",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk",
"targets/bcm27xx.inc"
],
"bcm27xx-bcm2709": [
"targets/bcm27xx-bcm2709",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk",
"targets/bcm27xx.inc"
],
"ipq40xx-generic": [
"targets/ipq40xx-generic",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
],
"ipq40xx-mikrotik": [
"targets/ipq40xx-mikrotik",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk",
"targets/mikrotik.inc"
],
"ipq806x-generic": [
"targets/ipq806x-generic",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
],
"lantiq-xrx200": [
"targets/lantiq-xrx200",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
],
"lantiq-xway": [
"targets/lantiq-xway",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
],
"mediatek-mt7622": [
"targets/mediatek-mt7622",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
],
"mpc85xx-p1010": [
"targets/mpc85xx-p1010",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
],
"mpc85xx-p1020": [
"targets/mpc85xx-p1020",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
],
"ramips-mt7620": [
"targets/ramips-mt7620",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
],
"ramips-mt7621": [
"targets/ramips-mt7621",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
],
"ramips-mt76x8": [
"targets/ramips-mt76x8",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
],
"realtek-rtl838x": [
"targets/realtek-rtl838x",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
],
"rockchip-armv8": [
"targets/rockchip-armv8",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
],
"sunxi-cortexa7": [
"targets/sunxi-cortexa7",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
],
"x86-generic": [
"targets/x86-generic",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk",
"targets/x86.inc"
],
"x86-geode": [
"targets/x86-geode",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
],
"x86-legacy": [
"targets/x86-legacy",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk",
"targets/x86.inc"
],
"x86-64": [
"targets/x86-64",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk",
"targets/x86.inc",
"contrib/ci/minimal-site/**",
"package/**"
],
"bcm27xx-bcm2710": [
"targets/bcm27xx-bcm2710",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk",
"targets/bcm27xx.inc"
],
"mvebu-cortexa9": [
"targets/mvebu-cortexa9",
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk"
]
}

59
.github/labeler.yml vendored Normal file
View File

@ -0,0 +1,59 @@
---
"3. topic: babel":
- package/gluon-l3roamd/**
- package/gluon-mesh-babel/**
- package/gluon-mmfd/**
"3. topic: batman-adv":
- docs/package/gluon-mesh-batman-adv*
- package/gluon-alfred/**
- package/gluon-cient-bridge/**
- package/gluon-mesh-batman-adv/**
- package/libbatadv/**
"3. topic: build":
- Makefile
- scripts/**
"3. topic: config-mode":
- docs/dev/web/config-mode.rst
- docs/package/gluon-config-mode-*
- packge/gluon-config-mode-*/**
- package/gluon-web*/**
"3. topic: continous integration":
- .github/workflows/*
- contrib/actions/**
- contrib/ci/**
"3. topic: docs":
- docs/**
"3. topic: fastd":
- docs/features/fastd*
- package/gluon-mesh-vpn-fastd/**
"3. topic: firewall":
- package/**/*-firewall
- package/gluon-ebtables-*/**
"3. topic: hardware":
- package/gluon-core/luasrc/lib/gluon/upgrade/010-primary-mac
- package/gluon-core/luasrc/usr/lib/lua/gluon/platform.lua
- targets/*
"3. topic: multidomain":
- docs/features/multidomain*
- docs/multidomain-site-example/**
- package/gluon-config-mode-domain-select/**
- package/gluon-scheduled-domain-switch/**
"3. topic: package":
- package/**
"3. topic: respondd":
- package/**/*respondd*
- package/gluon-respondd/**
"3. topic: status-page":
- package/gluon-status-page/**
"3. topic: tests":
- tests/**
"3. topic: tunneldigger":
- package/gluon-mesh-vpn-tunneldigger/**
"3. topic: wireguard":
- package/gluon-mesh-vpn-wireguard/**
"3. topic: wireless":
- package/gluon-mesh-wireless-sae/**
- package/gluon-private-wifi/**
- package/gluon-web-private-wifi/**
- package/gluon-web-wifi-config/**
- package/gluon-wireless-encryption/**

20
.github/workflows/backport.yml vendored Normal file
View File

@ -0,0 +1,20 @@
name: Backport
on:
pull_request_target:
types: [closed, labeled]
permissions:
contents: write # so it can comment
pull-requests: write # so it can create pull requests
jobs:
backport:
name: Backport Pull Request
if: github.repository_owner == 'freifunk-gluon' && github.event.pull_request.merged == true && (github.event_name != 'labeled' || startsWith('backport', github.event.label.name))
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Create backport PRs
uses: korthout/backport-action@v1.2.0
with:
# Config README: https://github.com/korthout/backport-action#backport-action
pull_description: |-
Automatic backport to `${target_branch}`, triggered by a label in #${pull_number}.

29
.github/workflows/build-docs.yml vendored Normal file
View File

@ -0,0 +1,29 @@
name: Build Documentation
on:
push:
paths:
- 'docs/**'
- '.github/workflows/build-docs.yml'
pull_request:
types: [opened, synchronize, reopened]
paths:
- 'docs**/'
- '.github/workflows/build-docs.yml'
permissions:
contents: read
jobs:
build-documentation:
name: docs
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install Dependencies
run: sudo pip3 install sphinx-rtd-theme
- name: Build documentation
run: make -C docs html
- name: Archive build output
uses: actions/upload-artifact@v3
with:
name: docs_output
path: docs/_build/html

61
.github/workflows/build-gluon.yml vendored Normal file
View File

@ -0,0 +1,61 @@
name: Build Gluon
on:
push:
branches:
- master
- next*
- v20*
pull_request:
types: [opened, synchronize, reopened]
permissions:
contents: read
jobs:
changed:
permissions:
contents: read # for dorny/paths-filter to fetch a list of changed files
pull-requests: read # for dorny/paths-filter to read pull requests
runs-on: ubuntu-latest
outputs:
targets: ${{ steps.filter.outputs.changes }}
steps:
- uses: actions/checkout@v3
# Filter targets based on changed files
- uses: dorny/paths-filter@v2
id: filter
with:
filters: .github/filters.yml
build_firmware:
needs: changed
if: ${{ needs.changed.outputs.targets != '[]' && needs.changed.outputs.targets != '' }}
strategy:
fail-fast: false
matrix:
# Read back changed targets to create build matrix
target: ${{ fromJSON(needs.changed.outputs.targets) }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install Dependencies
run: sudo contrib/actions/install-dependencies.sh
- name: Build
run: contrib/actions/run-build.sh ${{ matrix.target }}
- name: Archive build logs
if: ${{ !cancelled() }}
uses: actions/upload-artifact@v3
with:
name: ${{ matrix.target }}_logs
path: openwrt/logs
- name: Archive build output
uses: actions/upload-artifact@v3
with:
name: ${{ matrix.target }}_output
path: output

30
.github/workflows/check-patches.yml vendored Normal file
View File

@ -0,0 +1,30 @@
---
name: Check patches
on:
push:
paths:
- 'modules'
- 'patches/**'
- '.github/workflows/check-patches.yml'
pull_request:
types: [opened, synchronize, reopened]
paths:
- 'modules'
- 'patches/**'
- '.github/workflows/check-patches.yml'
permissions:
contents: read
jobs:
check-patches:
name: Check patches
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Refresh patches
run: make refresh-patches GLUON_SITEDIR="contrib/ci/minimal-site"
- name: Show diff
run: git status; git diff
- name: Patch status
run: git diff-files --quiet

21
.github/workflows/labels.yml vendored Normal file
View File

@ -0,0 +1,21 @@
name: "Label PRs"
on:
# only execute base branch actions
pull_request_target:
permissions:
contents: read
jobs:
labels:
permissions:
contents: read # for actions/labeler to determine modified files
pull-requests: write # for actions/labeler to add labels to PRs
runs-on: ubuntu-latest
if: github.repository_owner == 'freifunk-gluon'
steps:
- uses: actions/labeler@v4
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
sync-labels: true

54
.github/workflows/lint.yml vendored Normal file
View File

@ -0,0 +1,54 @@
name: Lint
on:
push:
pull_request:
types: [opened, synchronize, reopened]
permissions:
contents: read
jobs:
lua:
name: Lua
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install Dependencies
run: sudo apt-get -y update && sudo apt-get -y install lua-check
- name: Install example site
run: ln -s ./docs/site-example ./site
- name: Lint Lua code
run: make lint-lua
sh:
name: Shell
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install Dependencies
run: sudo apt-get -y update && sudo apt-get -y install shellcheck
- name: Install example site
run: ln -s ./docs/site-example ./site
- name: Lint shell code
run: make lint-sh
editorconfig:
name: Editorconfig
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install Dependencies
run: sudo apt install curl tar
- name: Install editorconfig-checker
env:
VERSION: 2.7.0
OS: linux
ARCH: amd64
run: |
curl -O -L -C - https://github.com/editorconfig-checker/editorconfig-checker/releases/download/$VERSION/ec-$OS-$ARCH.tar.gz
tar xzf ec-$OS-$ARCH.tar.gz
sudo mv ./bin/ec-$OS-$ARCH /usr/bin/editorconfig-checker
sudo chmod +x /usr/bin/editorconfig-checker
- name: Install example site
run: ln -s ./docs/site-example ./site
- name: Lint editorconfig
run: make lint-editorconfig

11
.gitignore vendored
View File

@ -1,7 +1,10 @@
*~
/build
/images
/site
/openwrt
/output
/site
/tmp
/packages
/modules.local
.bash_history
.subversion
.wget-hsts
/.scmversion

119
.luacheckrc Normal file
View File

@ -0,0 +1,119 @@
codes = true
std = "min"
self = false
read_globals = {
"getfenv",
"setfenv",
"unpack",
}
include_files = {
"**/*.lua",
"package/**/luasrc/**/*",
"targets/*",
"package/features",
}
exclude_files = {
"**/*.mk",
}
files["package/**/check_site.lua"] = {
read_globals = {
"alternatives",
"extend",
"in_domain",
"in_site",
"value",
"need",
"need_alphanumeric_key",
"need_array",
"need_array_elements_exclusive",
"need_array_of",
"need_boolean",
"need_chanlist",
"need_domain_name",
"need_number",
"need_number_range",
"need_one_of",
"need_string",
"need_string_array",
"need_string_array_match",
"need_string_match",
"need_table",
"need_value",
"obsolete",
"table_keys",
"this_domain",
},
}
files["package/**/luasrc/lib/gluon/config-mode/*"] = {
globals = {
"MultiListValue",
"DynamicList",
"Flag",
"Form",
"i18n",
"ListValue",
"renderer.render",
"renderer.render_string",
"Section",
"TextValue",
"_translate",
"translate",
"translatef",
"Value",
"Element",
},
}
files["package/**/luasrc/lib/gluon/**/controller/*"] = {
read_globals = {
"_",
"alias",
"call",
"entry",
"model",
"node",
"template",
},
}
files["package/**/luasrc/lib/gluon/ebtables/*"] = {
read_globals = {
"chain",
"rule",
},
max_line_length = false,
}
files["targets/*"] = {
read_globals = {
"class",
"config",
"defaults",
"device",
"env",
"exec",
"exec_capture",
"exec_capture_raw",
"exec_raw",
"factory_image",
"include",
"istrue",
"no_opkg",
"packages",
"sysupgrade_image",
"try_config",
},
}
files["package/features"] = {
read_globals = {
"_",
"feature",
"when",
},
}

20
.readthedocs.yml Normal file
View File

@ -0,0 +1,20 @@
# .readthedocs.yaml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
# Required
version: 2
# Build documentation in the docs/ directory with Sphinx
sphinx:
configuration: docs/conf.py
# Optionally set the version of Python and requirements required to build your docs
python:
install:
- requirements: docs/requirements.txt
build:
os: ubuntu-22.04
tools:
python: "3.8"

30
.woodpecker.yml Normal file
View File

@ -0,0 +1,30 @@
workspace:
base: /build
#clone:
# git:
# image: woodpeckerci/plugin-git
# settings:
# recursive: true
pipeline:
build-${TARGET}:
image: "ubuntu:latest"
pull: true
environment:
- input_version=v2022.1.4
- GLUON_SITEDIR=../site
- FORCE_UNSAFE_CONFIGURE=1
- GLUON_TARGET=${TARGET}
- GLUON_DEPRECATED=1
commands:
- echo ${TARGET}
# - git config --global init.defaultBranch main
# - sed -i 's/install/install file/' contrib/actions/install-dependencies.sh
# - sh contrib/actions/install-dependencies.sh
# - sh contrib/actions/run-build.sh ${TARGET}
matrix:
TARGET:
- ath79-generic
- x86-64

53
CONTRIBUTING.md Normal file
View File

@ -0,0 +1,53 @@
Contribution Guidelines
=======================
Because Gluon is such a universal software package that is used by several
different communities with different expectations and requirements, it is both
essential and difficult to have contributions from the communities. While they
are sometimes necessary to adapt Gluon to the needs of the communities, they
also have to be adaptable enough to fit as many needs as possible. On the other
hands, very special needs are better addressed in [packages] in community
repositories, because the Gluon maintainers would not use or test them and
thus couldn't do their "job" of maintaining them.
To ease the work for the maintainers and to reduce the frustration of
contributors, please adhere to the following guidelines:
Discuss first, build later
--------------------------
If you have some non-trivial enhancement like a new package, some modification
of what is announced by a node, it is often best to first discuss the precise
solution first. The maintainers might have hints as to how a solution could be
implemented easiest, point out solutions how the same thing can already be done
using other parts or why the proposed change breaks other parts of the system.
They might even refuse the idea altogether - after all, they have to sleep well
after merging the changes, too.
The preferred way to discuss is in the IRC channel ([#gluon] on irc.hackint.org)
or on the [mailing list], however, you can also open a new issue on GitHub to
discuss there. We maintain a [list of rejected features] and we'd like to
kindly ask you to review it first. In general, looking for duplicates may save
you some time.
Develop on top of master
------------------------
If you are not developing something specific to a release (like for example a
security fix to a feature that got completely rewritten since the release),
develop it on top of the master branch. New features and even feature changes
aren't usually backported to old releases, but will be included in the upcoming
release, which will be built from master.
Use descriptive commit messages
-------------------------------
If you modify a single package, start the first line of your commit message
with the package name followed by a colon. The first line should be enough to
identify the commit a week later and still know roughly what it did. If you
fix some bug, detail in the remaining commit message exactly how it could be
triggered and what you did to fix it. If in question, have a glance at the
existing commit messages to get the idea.
[packages]: https://gluon.readthedocs.io/en/latest/user/site.html#packages
[#gluon]: https://webirc.hackint.org/#gluon
[mailing list]: mailto:gluon@luebeck.freifunk.net
[list of rejected features]: https://github.com/freifunk-gluon/gluon/issues?q=label%3A%222.+status%3A+rejected%22

11
LICENSE
View File

@ -1,7 +1,7 @@
The code of Project Gluon may be distributed under the following terms, unless
noted otherwise in indiviual files or subtrees.
noted otherwise in individual files or subtrees.
Copyright (c) 2013, Project Gluon
Copyright (c) Project Gluon
All rights reserved.
Redistribution and use in source and binary forms, with or without
@ -25,9 +25,10 @@ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
OpenWRT is licensed under the terms of the GNU General Public License Version 2,
which can be found under openwrt/LICENSE after the openwrt submodule has been
obtained. This applies to the following submodules:
OpenWrt is licensed under the terms of the GNU General Public License Version 2,
which can be found at openwrt/LICENSE after the OpenWrt repository has been
obtained. This applies to the following repositories:
* openwrt
* packages/openwrt
* packages/routing

552
Makefile
View File

@ -4,411 +4,233 @@ LC_ALL:=C
LANG:=C
export LC_ALL LANG
empty:=
space:= $(empty) $(empty)
.SHELLFLAGS = -ec
GLUONMAKE_EARLY = $(SUBMAKE) -C $(GLUON_ORIGOPENWRTDIR) -f $(GLUONDIR)/Makefile GLUON_TOOLS=0
GLUONMAKE = $(SUBMAKE) -C $(GLUON_OPENWRTDIR) -f $(GLUONDIR)/Makefile
# check for spaces & resolve possibly relative paths
define mkabspath
ifneq (1,$(words [$($(1))]))
$$(error $(1) must not contain spaces)
endif
override $(1) := $(abspath $($(1)))
endef
ifneq ($(OPENWRT_BUILD),1)
escape = '$(subst ','\'',$(1))'
GLUONDIR:=${CURDIR}
GLUON_SITEDIR ?= site
$(eval $(call mkabspath,GLUON_SITEDIR))
include $(GLUONDIR)/include/gluon.mk
ifeq ($(realpath $(GLUON_SITEDIR)/site.mk),)
$(error No site configuration was found. Please check out a site configuration to $(GLUON_SITEDIR))
endif
TOPDIR:=$(GLUON_ORIGOPENWRTDIR)
export TOPDIR
include $(GLUON_SITEDIR)/site.mk
GLUON_RELEASE ?= $(error GLUON_RELEASE not set. GLUON_RELEASE can be set in site.mk or on the command line)
GLUON_DEPRECATED ?= 0
ifneq ($(GLUON_BRANCH),)
$(warning *** Warning: GLUON_BRANCH has been deprecated, please set GLUON_AUTOUPDATER_BRANCH and GLUON_AUTOUPDATER_ENABLED instead.)
GLUON_AUTOUPDATER_BRANCH ?= $(GLUON_BRANCH)
GLUON_AUTOUPDATER_ENABLED ?= 1
endif
GLUON_AUTOUPDATER_ENABLED ?= 0
# initialize (possibly already user set) directory variables
GLUON_TMPDIR ?= tmp
GLUON_OUTPUTDIR ?= output
GLUON_IMAGEDIR ?= $(GLUON_OUTPUTDIR)/images
GLUON_PACKAGEDIR ?= $(GLUON_OUTPUTDIR)/packages
GLUON_DEBUGDIR ?= $(GLUON_OUTPUTDIR)/debug
GLUON_TARGETSDIR ?= targets
GLUON_PATCHESDIR ?= patches
$(eval $(call mkabspath,GLUON_TMPDIR))
$(eval $(call mkabspath,GLUON_OUTPUTDIR))
$(eval $(call mkabspath,GLUON_IMAGEDIR))
$(eval $(call mkabspath,GLUON_PACKAGEDIR))
$(eval $(call mkabspath,GLUON_TARGETSDIR))
$(eval $(call mkabspath,GLUON_PATCHESDIR))
GLUON_VERSION := $(shell scripts/getversion.sh '.')
GLUON_SITE_VERSION := $(shell scripts/getversion.sh '$(GLUON_SITEDIR)')
GLUON_MULTIDOMAIN ?= 0
GLUON_AUTOREMOVE ?= 0
GLUON_DEBUG ?= 0
GLUON_MINIFY ?= 1
# Can be overridden via environment/command line/... to use the Gluon
# build system for non-Gluon builds
define GLUON_BASE_FEEDS ?=
src-link gluon_base ../../package
endef
GLUON_VARS = \
GLUON_VERSION GLUON_SITE_VERSION \
GLUON_RELEASE GLUON_REGION GLUON_MULTIDOMAIN GLUON_AUTOREMOVE GLUON_DEBUG GLUON_MINIFY GLUON_DEPRECATED \
GLUON_DEVICES GLUON_TARGETSDIR GLUON_PATCHESDIR GLUON_TMPDIR GLUON_IMAGEDIR GLUON_PACKAGEDIR GLUON_DEBUGDIR \
GLUON_SITEDIR GLUON_AUTOUPDATER_BRANCH GLUON_AUTOUPDATER_ENABLED GLUON_LANGS GLUON_BASE_FEEDS \
GLUON_TARGET BOARD SUBTARGET
unexport $(GLUON_VARS)
GLUON_ENV = $(foreach var,$(GLUON_VARS),$(var)=$(call escape,$($(var))))
show-release:
@echo '$(GLUON_RELEASE)'
update: FORCE
$(GLUONDIR)/scripts/update.sh
$(GLUONDIR)/scripts/patch.sh
patch: FORCE
$(GLUONDIR)/scripts/patch.sh
unpatch: FORCE
$(GLUONDIR)/scripts/unpatch.sh
@
export $(GLUON_ENV)
scripts/update.sh
scripts/patch.sh
scripts/feeds.sh
update-patches: FORCE
$(GLUONDIR)/scripts/update.sh
$(GLUONDIR)/scripts/update-patches.sh
$(GLUONDIR)/scripts/patch.sh
@
export $(GLUON_ENV)
scripts/update.sh
scripts/update-patches.sh
scripts/patch.sh
-include $(TOPDIR)/include/host.mk
refresh-patches: FORCE
@
export $(GLUON_ENV)
scripts/update.sh
scripts/patch.sh
scripts/update-patches.sh
_SINGLE=export MAKEFLAGS=$(space);
update-feeds: FORCE
@$(GLUON_ENV) scripts/feeds.sh
override OPENWRT_BUILD=1
override GLUON_TOOLS=1
GREP_OPTIONS=
export OPENWRT_BUILD GLUON_TOOLS GREP_OPTIONS
update-modules: FORCE
@scripts/update-modules.sh
-include $(TOPDIR)/include/debug.mk
-include $(TOPDIR)/include/depends.mk
include $(GLUONDIR)/include/toplevel.mk
update-ci: FORCE
@$(GLUON_ENV) scripts/update-ci.sh
GLUON_TARGETS :=
include $(GLUONDIR)/targets/targets.mk
CheckTarget := [ -n '$(GLUON_TARGET)' -a -n '$(GLUON_TARGET_$(GLUON_TARGET)_BOARD)' -a -n '$(GLUON_TARGET_$(GLUON_TARGET)_SUBTARGET)' ] \
|| (echo -e 'Please set GLUON_TARGET to a valid target. Gluon supports the following targets:$(subst $(space),\n * ,$(GLUON_TARGETS))'; false)
CheckExternal := test -d $(GLUON_ORIGOPENWRTDIR) || (echo 'You don'"'"'t seem to have obtained the external repositories needed by Gluon; please call `make update` first!'; false)
prepare-target: FORCE
@$(CheckExternal)
@$(CheckTarget)
+@$(GLUONMAKE_EARLY) prepare-target
all: prepare-target
+@$(GLUONMAKE) prepare
+@$(GLUONMAKE) images
prepare: prepare-target
+@$(GLUONMAKE) $@
clean download images: FORCE
@$(CheckExternal)
@$(CheckTarget)
+@$(GLUONMAKE_EARLY) maybe-prepare-target
+@$(GLUONMAKE) $@
toolchain/% package/% target/% image/%: FORCE
@$(CheckExternal)
@$(CheckTarget)
+@$(GLUONMAKE_EARLY) maybe-prepare-target
+@$(GLUONMAKE) $@
manifest: FORCE
@[ -n '$(GLUON_BRANCH)' ] || (echo 'Please set GLUON_BRANCH to create a manifest.'; false)
@echo '$(GLUON_PRIORITY)' | grep -qE '^([0-9]*\.)?[0-9]+$$' || (echo 'Please specify a numeric value for GLUON_PRIORITY to create a manifest.'; false)
@$(CheckExternal)
( \
echo 'BRANCH=$(GLUON_BRANCH)' && \
echo 'DATE=$(shell $(GLUON_ORIGOPENWRTDIR)/staging_dir/host/bin/lua $(GLUONDIR)/scripts/rfc3339date.lua)' && \
echo 'PRIORITY=$(GLUON_PRIORITY)' && \
echo \
) > $(GLUON_BUILDDIR)/$(GLUON_BRANCH).manifest.tmp
+($(foreach GLUON_TARGET,$(GLUON_TARGETS), \
( [ ! -e $(BOARD_BUILDDIR)/prepared ] || ( $(GLUONMAKE) manifest GLUON_TARGET='$(GLUON_TARGET)' V=s$(OPENWRT_VERBOSE) ) ) && \
) :)
mkdir -p $(GLUON_IMAGEDIR)/sysupgrade
mv $(GLUON_BUILDDIR)/$(GLUON_BRANCH).manifest.tmp $(GLUON_IMAGEDIR)/sysupgrade/$(GLUON_BRANCH).manifest
dirclean : FORCE
for dir in build_dir dl staging_dir tmp; do \
rm -rf $(GLUON_ORIGOPENWRTDIR)/$$dir; \
done
rm -rf $(GLUON_BUILDDIR) $(GLUON_IMAGEDIR)
else
TOPDIR=${CURDIR}
export TOPDIR
include rules.mk
include $(GLUONDIR)/include/gluon.mk
include $(INCLUDE_DIR)/host.mk
include $(INCLUDE_DIR)/depends.mk
include $(INCLUDE_DIR)/subdir.mk
include package/Makefile
include tools/Makefile
include toolchain/Makefile
include target/Makefile
PROFILES :=
PROFILE_PACKAGES :=
define Profile
$(eval $(call Profile/Default))
$(eval $(call Profile/$(1)))
define GluonTarget
gluon_target := $(1)$$(if $(2),-$(2))
GLUON_TARGETS += $$(gluon_target)
GLUON_TARGET_$$(gluon_target)_BOARD := $(1)
GLUON_TARGET_$$(gluon_target)_SUBTARGET := $(2)
endef
define GluonProfile
PROFILES += $(1)
PROFILE_PACKAGES += $(filter-out -%,$(2) $(GLUON_$(1)_SITE_PACKAGES))
GLUON_$(1)_DEFAULT_PACKAGES := $(2)
GLUON_$(1)_FACTORY_SUFFIX := -squashfs-factory
GLUON_$(1)_SYSUPGRADE_SUFFIX := -squashfs-sysupgrade
GLUON_$(1)_FACTORY_EXT := .bin
GLUON_$(1)_SYSUPGRADE_EXT := .bin
GLUON_$(1)_MODELS :=
endef
define GluonProfileFactorySuffix
GLUON_$(1)_FACTORY_SUFFIX := $(2)
GLUON_$(1)_FACTORY_EXT := $(3)
endef
define GluonProfileSysupgradeSuffix
GLUON_$(1)_SYSUPGRADE_SUFFIX := $(2)
GLUON_$(1)_SYSUPGRADE_EXT := $(3)
endef
define GluonModel
GLUON_$(1)_MODELS += $(3)
GLUON_$(1)_MODEL_$(3) := $(2)
endef
include $(GLUON_TARGETSDIR)/targets.mk
include $(GLUONDIR)/targets/targets.mk
include $(GLUONDIR)/targets/$(GLUON_TARGET)/profiles.mk
OPENWRTMAKE = $(MAKE) -C openwrt
BOARD := $(GLUON_TARGET_$(GLUON_TARGET)_BOARD)
override SUBTARGET := $(GLUON_TARGET_$(GLUON_TARGET)_SUBTARGET)
target_prepared_stamp := $(BOARD_BUILDDIR)/target-prepared
gluon_prepared_stamp := $(BOARD_BUILDDIR)/prepared
SUBTARGET := $(GLUON_TARGET_$(GLUON_TARGET)_SUBTARGET)
include $(INCLUDE_DIR)/target.mk
define CheckTarget
if [ -z '$(BOARD)' ]; then
echo 'Please set GLUON_TARGET to a valid target. Gluon supports the following targets:'
for target in $(GLUON_TARGETS); do
echo " * $$target"
done
exit 1
fi
endef
define CheckSite
if ! GLUON_SITEDIR='$(GLUON_SITEDIR)' GLUON_SITE_CONFIG='$(1).conf' $(LUA) -e 'assert(dofile("scripts/site_config.lua")(os.getenv("GLUON_SITE_CONFIG")))'; then
echo 'Your site configuration ($(1).conf) did not pass validation'
exit 1
fi
endef
prereq: FORCE
+$(NO_TRACE_MAKE) prereq
gluon-tools: FORCE
+$(GLUONMAKE_EARLY) tools/sed/install
+$(GLUONMAKE_EARLY) package/lua/host/install
prepare-tmpinfo: FORCE
mkdir -p tmp/info
$(_SINGLE)$(NO_TRACE_MAKE) -j1 -r -s -f include/scan.mk SCAN_TARGET="packageinfo" SCAN_DIR="package" SCAN_NAME="package" SCAN_DEPS="$(TOPDIR)/include/package*.mk $(TOPDIR)/overlay/*/*.mk" SCAN_EXTRA=""
$(_SINGLE)$(NO_TRACE_MAKE) -j1 -r -s -f include/scan.mk SCAN_TARGET="targetinfo" SCAN_DIR="target/linux" SCAN_NAME="target" SCAN_DEPS="profiles/*.mk $(TOPDIR)/include/kernel*.mk $(TOPDIR)/include/target.mk" SCAN_DEPTH=2 SCAN_EXTRA="" SCAN_MAKEOPTS="TARGET_BUILD=1"
for type in package target; do \
f=tmp/.$${type}info; t=tmp/.config-$${type}.in; \
[ "$$t" -nt "$$f" ] || ./scripts/metadata.pl $${type}_config "$$f" > "$$t" || { rm -f "$$t"; echo "Failed to build $$t"; false; break; }; \
done
[ tmp/.config-feeds.in -nt tmp/.packagefeeds ] || ./scripts/feeds feed_config > tmp/.config-feeds.in
./scripts/metadata.pl package_mk tmp/.packageinfo > tmp/.packagedeps || { rm -f tmp/.packagedeps; false; }
./scripts/metadata.pl package_feeds tmp/.packageinfo > tmp/.packagefeeds || { rm -f tmp/.packagefeeds; false; }
touch $(TOPDIR)/tmp/.build
feeds: FORCE
rm -rf $(TOPDIR)/package/feeds
mkdir $(TOPDIR)/package/feeds
[ ! -f $(GLUON_SITEDIR)/modules ] || . $(GLUON_SITEDIR)/modules && for feed in $$GLUON_SITE_FEEDS; do ln -s ../../../packages/$$feed $(TOPDIR)/package/feeds/$$feed; done
ln -s ../../../package $(TOPDIR)/package/feeds/gluon
. $(GLUONDIR)/modules && for feed in $$GLUON_FEEDS; do ln -s ../../../packages/$$feed $(TOPDIR)/package/feeds/module_$$feed; done
+$(GLUONMAKE_EARLY) prepare-tmpinfo
config: FORCE
+$(NO_TRACE_MAKE) scripts/config/conf OPENWRT_BUILD=0
+$(GLUONMAKE) prepare-tmpinfo
( \
cat $(GLUONDIR)/include/config $(GLUONDIR)/targets/$(GLUON_TARGET)/config; \
echo 'CONFIG_BUILD_SUFFIX="gluon-$(GLUON_TARGET)"'; \
echo '$(patsubst %,CONFIG_PACKAGE_%=m,$(sort $(filter-out -%,$(GLUON_DEFAULT_PACKAGES) $(GLUON_SITE_PACKAGES) $(PROFILE_PACKAGES))))' \
| sed -e 's/ /\n/g'; \
echo '$(patsubst %,CONFIG_GLUON_LANG_%=y,$(GLUON_LANGS))' \
| sed -e 's/ /\n/g'; \
) > $(BOARD_BUILDDIR)/config.tmp
scripts/config/conf --defconfig=$(BOARD_BUILDDIR)/config.tmp Config.in
mv .config $(BOARD_BUILDDIR)/config
echo 'CONFIG_ALL_KMODS=y' >> $(BOARD_BUILDDIR)/config.tmp
scripts/config/conf --defconfig=$(BOARD_BUILDDIR)/config.tmp Config.in
mv .config $(BOARD_BUILDDIR)/config-allmods
cp $(BOARD_BUILDDIR)/config .config
prepare-target: FORCE
rm $(GLUON_OPENWRTDIR)/tmp || true
mkdir -p $(GLUON_OPENWRTDIR)/tmp
for dir in build_dir dl staging_dir; do \
mkdir -p $(GLUON_ORIGOPENWRTDIR)/$$dir; \
done
for link in build_dir config Config.in dl include Makefile package rules.mk scripts staging_dir target toolchain tools; do \
ln -sf $(GLUON_ORIGOPENWRTDIR)/$$link $(GLUON_OPENWRTDIR); \
list-targets: FORCE
@for target in $(GLUON_TARGETS); do
echo "$$target"
done
+$(GLUONMAKE_EARLY) feeds
+$(GLUONMAKE_EARLY) gluon-tools
+$(GLUONMAKE) config
touch $(target_prepared_stamp)
lint: lint-editorconfig lint-lua lint-sh
$(target_prepared_stamp):
+$(GLUONMAKE_EARLY) prepare-target
lint-editorconfig: FORCE
@scripts/lint-editorconfig.sh
maybe-prepare-target: $(target_prepared_stamp)
lint-lua: FORCE
@scripts/lint-lua.sh
$(BUILD_DIR)/.prepared: Makefile
@mkdir -p $$(dirname $@)
@touch $@
$(toolchain/stamp-install): $(tools/stamp-install)
$(package/stamp-compile): $(package/stamp-cleanup)
lint-sh: FORCE
@scripts/lint-sh.sh
clean: FORCE
+$(SUBMAKE) clean
rm -f $(gluon_prepared_stamp)
LUA := openwrt/staging_dir/hostpkg/bin/lua
$(LUA):
+@
scripts/module_check.sh
[ -e openwrt/.config ] || $(OPENWRTMAKE) defconfig
$(OPENWRTMAKE) tools/install
$(OPENWRTMAKE) package/lua/host/compile
export SHA512SUM := $(GLUONDIR)/scripts/sha512sum.sh
config: $(LUA) FORCE
+@
download: FORCE
+$(SUBMAKE) tools/download
+$(SUBMAKE) toolchain/download
+$(SUBMAKE) package/download
+$(SUBMAKE) target/download
toolchain: $(toolchain/stamp-install) $(tools/stamp-install)
include $(INCLUDE_DIR)/kernel.mk
kernel: FORCE
+$(NO_TRACE_MAKE) -C $(TOPDIR)/target/linux/$(BOARD) -f $(GLUONDIR)/include/Makefile.target $(LINUX_DIR)/.image TARGET_BUILD=1
+$(NO_TRACE_MAKE) -C $(TOPDIR)/target/linux/$(BOARD) -f $(GLUONDIR)/include/Makefile.target $(LINUX_DIR)/.modules TARGET_BUILD=1
packages: $(package/stamp-compile)
$(_SINGLE)$(SUBMAKE) -r package/index
prepare-image: FORCE
rm -rf $(BOARD_KDIR)
mkdir -p $(BOARD_KDIR)
cp $(KERNEL_BUILD_DIR)/vmlinux $(KERNEL_BUILD_DIR)/vmlinux.elf $(BOARD_KDIR)/
+$(SUBMAKE) -C $(TOPDIR)/target/linux/$(BOARD)/image -f $(GLUONDIR)/include/Makefile.image prepare KDIR="$(BOARD_KDIR)"
prepare: FORCE
@$(STAGING_DIR_HOST)/bin/lua $(GLUONDIR)/package/gluon-core/files/usr/lib/lua/gluon/site_config.lua \
|| (echo 'Your site configuration did not pass validation.'; false)
mkdir -p $(GLUON_IMAGEDIR) $(BOARD_BUILDDIR)
echo 'src packages file:../openwrt/bin/$(BOARD)/packages' > $(BOARD_BUILDDIR)/opkg.conf
+$(GLUONMAKE) toolchain
+$(GLUONMAKE) kernel
+$(GLUONMAKE) packages
+$(GLUONMAKE) prepare-image
echo "$(GLUON_RELEASE)" > $(gluon_prepared_stamp)
$(gluon_prepared_stamp):
+$(GLUONMAKE) prepare
include $(INCLUDE_DIR)/package-ipkg.mk
# override variables from rules.mk
PACKAGE_DIR = $(GLUON_OPENWRTDIR)/bin/$(BOARD)/packages
PROFILE_BUILDDIR = $(BOARD_BUILDDIR)/profiles/$(PROFILE)
PROFILE_KDIR = $(PROFILE_BUILDDIR)/kernel
BIN_DIR = $(PROFILE_BUILDDIR)/images
TARGET_DIR = $(PROFILE_BUILDDIR)/root
PREPARED_RELEASE = $$(cat $(gluon_prepared_stamp))
IMAGE_PREFIX = gluon-$(GLUON_SITE_CODE)-$(PREPARED_RELEASE)
OPKG:= \
IPKG_TMP="$(TMP_DIR)/ipkgtmp" \
IPKG_INSTROOT="$(TARGET_DIR)" \
IPKG_CONF_DIR="$(TMP_DIR)" \
IPKG_OFFLINE_ROOT="$(TARGET_DIR)" \
$(STAGING_DIR_HOST)/bin/opkg \
-f $(BOARD_BUILDDIR)/opkg.conf \
--cache $(TMP_DIR)/dl \
--offline-root $(TARGET_DIR) \
--force-postinstall \
--add-dest root:/ \
--add-arch all:100 \
--add-arch $(ARCH_PACKAGES):200
EnableInitscript = ! grep -q '\#!/bin/sh /etc/rc.common' $(1) || bash ./etc/rc.common $(1) enable
enable_initscripts: FORCE
cd $(TARGET_DIR) && ( export IPKG_INSTROOT=$(TARGET_DIR); \
$(foreach script,$(wildcard $(TARGET_DIR)/etc/init.d/*), \
$(call EnableInitscript,$(script)); \
) : \
scripts/module_check.sh
$(CheckTarget)
$(foreach conf,site $(patsubst $(GLUON_SITEDIR)/%.conf,%,$(wildcard $(GLUON_SITEDIR)/domains/*.conf)),\
$(call CheckSite,$(conf)); \
)
# Generate package list
$(eval $(call merge-lists,INSTALL_PACKAGES,DEFAULT_PACKAGES GLUON_DEFAULT_PACKAGES GLUON_SITE_PACKAGES GLUON_$(PROFILE)_DEFAULT_PACKAGES GLUON_$(PROFILE)_SITE_PACKAGES))
package_install: FORCE
$(OPKG) update
$(OPKG) install $(PACKAGE_DIR)/libc_*.ipk
$(OPKG) install $(PACKAGE_DIR)/kernel_*.ipk
$(OPKG) install $(INSTALL_PACKAGES)
+$(GLUONMAKE) enable_initscripts
rm -f $(TARGET_DIR)/usr/lib/opkg/lists/* $(TARGET_DIR)/tmp/opkg.lock
ifeq ($(GLUON_OPKG_CONFIG),1)
include $(INCLUDE_DIR)/version.mk
endif
opkg_config: FORCE
cp $(GLUON_OPENWRTDIR)/package/system/opkg/files/opkg.conf $(TARGET_DIR)/etc/opkg.conf
for d in base luci packages routing telephony management oldpackages; do \
echo "src/gz %n_$$d %U/$$d" >> $(TARGET_DIR)/etc/opkg.conf; \
done
$(VERSION_SED) $(TARGET_DIR)/etc/opkg.conf
$(OPENWRTMAKE) prepare-tmpinfo
$(GLUON_ENV) $(LUA) scripts/target_config.lua > openwrt/.config
$(OPENWRTMAKE) defconfig
$(GLUON_ENV) $(LUA) scripts/target_config_check.lua
image: FORCE
rm -rf $(TARGET_DIR) $(BIN_DIR) $(PROFILE_KDIR)
mkdir -p $(TARGET_DIR) $(BIN_DIR) $(TARGET_DIR)/tmp $(GLUON_IMAGEDIR)/factory $(GLUON_IMAGEDIR)/sysupgrade
cp -r $(BOARD_KDIR) $(PROFILE_KDIR)
+$(GLUONMAKE) package_install
+$(GLUONMAKE) opkg_config GLUON_OPKG_CONFIG=1
$(call Image/mkfs/prepare)
$(_SINGLE)$(NO_TRACE_MAKE) -C $(TOPDIR)/target/linux/$(BOARD)/image install TARGET_BUILD=1 IB=1 IMG_PREFIX=gluon \
PROFILE="$(PROFILE)" KDIR="$(PROFILE_KDIR)" TARGET_DIR="$(TARGET_DIR)" BIN_DIR="$(BIN_DIR)" TMP_DIR="$(TMP_DIR)"
$(foreach model,$(GLUON_$(PROFILE)_MODELS), \
$(if $(GLUON_$(PROFILE)_SYSUPGRADE_EXT), \
rm -f $(GLUON_IMAGEDIR)/sysupgrade/gluon-*-$(model)-sysupgrade$(GLUON_$(PROFILE)_SYSUPGRADE_EXT) && \
cp $(BIN_DIR)/gluon-$(GLUON_$(PROFILE)_MODEL_$(model))$(GLUON_$(PROFILE)_SYSUPGRADE_SUFFIX)$(GLUON_$(PROFILE)_SYSUPGRADE_EXT) $(GLUON_IMAGEDIR)/sysupgrade/$(IMAGE_PREFIX)-$(model)-sysupgrade$(GLUON_$(PROFILE)_SYSUPGRADE_EXT) && \
) \
$(if $(GLUON_$(PROFILE)_FACTORY_EXT), \
rm -f $(GLUON_IMAGEDIR)/factory/gluon-*-$(model)$(GLUON_$(PROFILE)_FACTORY_EXT) && \
cp $(BIN_DIR)/gluon-$(GLUON_$(PROFILE)_MODEL_$(model))$(GLUON_$(PROFILE)_FACTORY_SUFFIX)$(GLUON_$(PROFILE)_FACTORY_EXT) $(GLUON_IMAGEDIR)/factory/$(IMAGE_PREFIX)-$(model)$(GLUON_$(PROFILE)_FACTORY_EXT) && \
) \
) :
image/%: $(gluon_prepared_stamp)
+$(GLUONMAKE) image PROFILE="$(patsubst image/%,%,$@)" V=s$(OPENWRT_VERBOSE)
call_image/%: FORCE
+$(GLUONMAKE) $(patsubst call_image/%,image/%,$@)
images: $(patsubst %,call_image/%,$(PROFILES)) ;
manifest: FORCE
( \
cd $(GLUON_IMAGEDIR)/sysupgrade; \
$(foreach profile,$(PROFILES), \
$(foreach model,$(GLUON_$(profile)_MODELS), \
file="$(IMAGE_PREFIX)-$(model)-sysupgrade$(GLUON_$(profile)_SYSUPGRADE_EXT)"; \
[ -e "$$file" ] && echo '$(model)' "$(PREPARED_RELEASE)" "$$($(SHA512SUM) "$$file")" "$$file"; \
) \
) : \
) >> $(GLUON_BUILDDIR)/$(GLUON_BRANCH).manifest.tmp
container: FORCE
@scripts/container.sh
.PHONY: all images prepare clean gluon-tools manifest
all: config
+@
$(GLUON_ENV) $(LUA) scripts/clean_output.lua
$(OPENWRTMAKE)
$(GLUON_ENV) $(LUA) scripts/copy_output.lua
endif
clean download: config
+@$(OPENWRTMAKE) $@
dirclean: FORCE
+@
[ -e openwrt/.config ] || $(OPENWRTMAKE) defconfig
$(OPENWRTMAKE) dirclean
rm -rf $(GLUON_TMPDIR) $(GLUON_OUTPUTDIR)
manifest: $(LUA) FORCE
@
[ '$(GLUON_AUTOUPDATER_BRANCH)' ] || (echo 'Please set GLUON_AUTOUPDATER_BRANCH to create a manifest.'; false)
echo '$(GLUON_PRIORITY)' | grep -qE '^([0-9]*\.)?[0-9]+$$' || (echo 'Please specify a numeric value for GLUON_PRIORITY to create a manifest.'; false)
scripts/module_check.sh
(
export $(GLUON_ENV)
echo 'BRANCH=$(GLUON_AUTOUPDATER_BRANCH)'
echo "DATE=$$($(LUA) scripts/rfc3339date.lua)"
echo 'PRIORITY=$(GLUON_PRIORITY)'
echo
for target in $(GLUON_TARGETS); do
$(LUA) scripts/generate_manifest.lua "$$target"
done
) > 'tmp/$(GLUON_AUTOUPDATER_BRANCH).manifest.tmp'
mkdir -p '$(GLUON_IMAGEDIR)/sysupgrade'
mv 'tmp/$(GLUON_AUTOUPDATER_BRANCH).manifest.tmp' '$(GLUON_IMAGEDIR)/sysupgrade/$(GLUON_AUTOUPDATER_BRANCH).manifest'
FORCE: ;
.PHONY: FORCE
.NOTPARALLEL:
.ONESHELL:

View File

@ -1,35 +1,49 @@
Documentation (incomplete at this time, contribute if you can!) may be found at
http://gluon.readthedocs.org/
[![Build Gluon](https://github.com/freifunk-gluon/gluon/actions/workflows/build-gluon.yml/badge.svg?branch=master)](https://github.com/freifunk-gluon/gluon/actions/workflows/build-gluon.yml)
[![License](https://img.shields.io/badge/License-BSD%202--Clause-orange.svg)](https://opensource.org/license/bsd-2-clause/)
[![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/freifunk-gluon/gluon?sort=semver)](https://github.com/freifunk-gluon/gluon/releases/latest)
# Gluon
Gluon is a firmware framework to build preconfigured OpenWrt images for public mesh networks.
## Getting started
We have a huge amount of documentation over at https://gluon.readthedocs.io/.
If you're new to Gluon and ready to get your feet wet, have a look at the
[Getting Started Guide](http://gluon.readthedocs.org/en/latest/user/getting_started.html).
[Getting Started Guide](https://gluon.readthedocs.io/en/latest/user/getting_started.html).
**Gluon IRC channel: `#gluon` in [hackint](http://hackint.org/)**
Gluon's developers frequent an IRC chatroom at [#gluon](ircs://irc.hackint.org/#gluon)
on [hackint](https://hackint.org/). There is also a [webchat](https://webirc.hackint.org/#irc://irc.hackint.org/#gluon)
that allows for uncomplicated access from within your browser. This channel is also available as a bridged Matrix Room at [#gluon:hackint.org](https://matrix.to/#/#gluon:hackint.org).
## Issues & Feature requests
Before opening an issue make sure to read check whether any existing issues
Before opening an issue, make sure to check whether any existing issues
(open or closed) match. If you're suggesting a new feature, drop by on IRC or
our mailinglist to discuss it first.
We maintain a [Roadmap](https://github.com/freifunk-gluon/gluon/wiki/Roadmap) for
the future development of Gluon.
## Use a release!
Please refrain from using the master branch for anything else but development purposes!
Use the most recent release instead. You can list all relaseses by running `git branch -a`
and switch to one by running `git checkout v2015.1 && make update`.
Please refrain from using the `master` branch for anything else but development purposes!
Use the most recent release instead. You can list all releases by running `git tag`
and switch to one by running `git checkout v2022.1 && make update`.
If you're using the autoupdater, do not autoupdate nodes with anything but releases.
If you upgrade using random master commits the nodes *will break* eventually.
If you upgrade using random master commits the nodes *might break* eventually.
## Mailinglist
To subscribe to the list, send a message to:
gluon-subscribe@luebeck.freifunk.net
gluon+subscribe@luebeck.freifunk.net
To remove your address from the list, just send a message to
the address in the `List-Unsubscribe` header of any list
message. If you haven't changed addresses since subscribing,
you can also send a message to:
gluon-unsubscribe@luebeck.freifunk.net
gluon+unsubscribe@luebeck.freifunk.net

View File

@ -0,0 +1,53 @@
#!/usr/bin/env python3
# Update target filters using
# make update-ci
import re
import os
import sys
import json
# these changes trigger rebuilds on all targets
common = [
"modules",
"Makefile",
"patches/**",
"scripts/**",
"targets/generic",
"targets/targets.mk",
]
# these changes are only built on x86-64
extra = [
"contrib/ci/minimal-site/**",
"package/**"
]
_filter = dict()
# INCLUDE_PATTERN matches:
# include '...'
# include "..."
# include("...")
# include('...')
INCLUDE_PATTERN = "^\\s*include *\\(? *[\"']([^\"']+)[\"']"
# construct filters map from stdin
for target in sys.stdin:
target = target.strip()
_filter[target] = [
f"targets/{target}"
] + common
target_file = os.path.join(os.environ['GLUON_TARGETSDIR'], target)
with open(target_file) as f:
includes = re.findall(INCLUDE_PATTERN, f.read(), re.MULTILINE)
_filter[target].extend([f"targets/{i}" for i in includes])
if target == "x86-64":
_filter[target].extend(extra)
# print filters to stdout in json format, because json is stdlib and yaml compatible.
print(json.dumps(_filter, indent=2))

View File

@ -0,0 +1,8 @@
#!/bin/sh
set -e
apt-get -y update
apt-get -y install git build-essential python3 gawk unzip libncurses5-dev zlib1g-dev libssl-dev libelf-dev wget rsync time qemu-utils
apt-get -y clean
rm -rf /var/lib/apt/lists/*

13
contrib/actions/run-build.sh Executable file
View File

@ -0,0 +1,13 @@
#!/bin/sh
set -e
export BROKEN=1
export GLUON_AUTOREMOVE=1
export GLUON_DEPRECATED=1
export GLUON_SITEDIR="contrib/ci/minimal-site"
export GLUON_TARGET="$1"
export BUILD_LOG=1
make update
make -j2 V=s

View File

@ -0,0 +1 @@
../../../docs/site-example/i18n/

View File

@ -0,0 +1 @@
../../../docs/site-example/modules

View File

@ -0,0 +1,180 @@
-- This is an example site configuration for Gluon v2022.1
--
-- Take a look at the documentation located at
-- https://gluon.readthedocs.io/ for details.
--
-- This configuration will not work as is. You're required to make
-- community specific changes to it!
{
-- Used for generated hostnames, e.g. freifunk-abcdef123456. (optional)
-- hostname_prefix = 'freifunk-',
-- Name of the community.
site_name = 'Continuous Integration',
-- Shorthand of the community.
site_code = 'ci',
-- 32 bytes of random data, encoded in hexadecimal
-- This data must be unique among all sites and domains!
-- Can be generated using: echo $(hexdump -v -n 32 -e '1/1 "%02x"' </dev/urandom)
domain_seed = 'e9608c4ff338b920992d629190e9ff11049de1dfc3f299eac07792dfbcda341c',
-- Prefixes used within the mesh.
-- prefix6 is required, prefix4 can be omitted if next_node.ip4
-- is not set.
prefix4 = '10.0.0.0/20',
prefix6 = 'fd::/64',
-- Timezone of your community.
-- See https://openwrt.org/docs/guide-user/base-system/system_configuration#time_zones
timezone = 'CET-1CEST,M3.5.0,M10.5.0/3',
-- List of NTP servers in your community.
-- Must be reachable using IPv6!
-- ntp_servers = {'1.ntp.services.ffxx'},
-- Wireless regulatory domain of your community.
regdom = 'DE',
-- Wireless configuration for 2.4 GHz interfaces.
wifi24 = {
-- Wireless channel.
channel = 1,
-- ESSIDs used for client network.
ap = {
ssid = 'gluon-ci-ssid',
-- disabled = true, -- (optional)
-- Configuration for a backward compatible OWE network below.
owe_ssid = 'owe.gluon-ci-ssid', -- (optional - SSID for OWE client network)
owe_transition_mode = true, -- (optional - enables transition-mode - requires ssid as well as owe_ssid)
},
mesh = {
-- Adjust these values!
id = 'ueH3uXjdp', -- usually you don't want users to connect to this mesh-SSID, so use a cryptic id that no one will accidentally mistake for the client WiFi
mcast_rate = 12000,
-- disabled = true, -- (optional)
},
},
-- Wireless configuration for 5 GHz interfaces.
-- This should be equal to the 2.4 GHz variant, except
-- for channel.
wifi5 = {
channel = 44,
outdoor_chanlist = '100-140',
ap = {
ssid = 'gluon-ci-ssid',
},
mesh = {
-- Adjust these values!
id = 'ueH3uXjdp',
mcast_rate = 12000,
},
},
mesh = {
vxlan = true,
batman_adv = {
routing_algo = 'BATMAN_IV',
},
},
-- The next node feature allows clients to always reach the node it is
-- connected to using a known IP address.
next_node = {
-- anycast IPs of all nodes
-- name = { 'nextnode.location.community.example.org', 'nextnode', 'nn' },
ip4 = '10.0.0.1',
ip6 = 'fd::1',
},
-- Options specific to routing protocols (optional)
-- mesh = {
-- Options specific to the batman-adv routing protocol (optional)
-- batman_adv = {
-- Gateway selection class (optional)
-- The default class 20 is based on the link quality (TQ) only,
-- class 1 is calculated from both the TQ and the announced bandwidth
-- gw_sel_class = 1,
-- },
-- },
mesh_vpn = {
-- enabled = true,
fastd = {
-- Refer to https://fastd.readthedocs.io/en/latest/ to better understand
-- what these options do.
-- List of crypto-methods to use.
methods = {'salsa2012+umac'},
mtu = 1312,
-- configurable = true,
-- syslog_level = 'warn',
groups = {
backbone = {
-- Limit number of connected peers to reduce bandwidth.
limit = 1,
-- List of peers.
peers = {
},
-- Optional: nested peer groups
-- groups = {
-- backbone_sub = {
-- ...
-- },
-- ...
-- },
},
-- Optional: additional peer groups, possibly with other limits
-- backbone2 = {
-- ...
-- },
},
},
bandwidth_limit = {
-- The bandwidth limit can be enabled by default here.
enabled = false,
-- Default upload limit (kbit/s).
egress = 200,
-- Default download limit (kbit/s).
ingress = 3000,
},
},
autoupdater = {
-- Default branch (optional), can be overridden by setting GLUON_AUTOUPDATER_BRANCH when building.
-- Set GLUON_AUTOUPDATER_ENABLED to enable the autoupdater by default for newly installed nodes.
branch = 'stable',
-- List of branches. You may define multiple branches.
branches = {
stable = {
name = 'stable',
-- List of mirrors to fetch images from. IPv6 required!
mirrors = {'http://1.updates.services.ffhl/stable/sysupgrade'},
-- Number of good signatures required.
-- Have multiple maintainers sign your build and only
-- accept it when a sufficient number of them have
-- signed it.
good_signatures = 0,
-- List of public keys of maintainers.
pubkeys = {
},
},
},
},
}

View File

@ -0,0 +1 @@
../../../docs/site-example/site.mk

1
contrib/ci/olsr-site/i18n Symbolic link
View File

@ -0,0 +1 @@
../minimal-site/i18n

View File

@ -0,0 +1 @@
../minimal-site/modules

View File

@ -0,0 +1,176 @@
-- This is an example site configuration for Gluon v2022.1
--
-- Take a look at the documentation located at
-- https://gluon.readthedocs.io/ for details.
--
-- This configuration will not work as is. You're required to make
-- community specific changes to it!
{
-- Used for generated hostnames, e.g. freifunk-abcdef123456. (optional)
-- hostname_prefix = 'freifunk-',
-- Name of the community.
site_name = 'Continuous Integration',
-- Shorthand of the community.
site_code = 'ci',
-- 32 bytes of random data, encoded in hexadecimal
-- This data must be unique among all sites and domains!
-- Can be generated using: echo $(hexdump -v -n 32 -e '1/1 "%02x"' </dev/urandom)
domain_seed = 'e9608c4ff338b920992d629190e9ff11049de1dfc3f299eac07792dfbcda341c',
-- Prefixes used by clients within the mesh.
-- prefix6 is required, prefix4 can be omitted if next_node.ip4
-- is not set.
prefix6 = 'fdff:cafe:cafe:cafe::/64',
-- Prefixes used by nodes within the mesh
node_prefix6 = 'fdff:cafe:cafe:cafe::/64',
-- Timezone of your community.
-- See https://openwrt.org/docs/guide-user/base-system/system_configuration#time_zones
timezone = 'CET-1CEST,M3.5.0,M10.5.0/3',
-- List of NTP servers in your community.
-- Must be reachable using IPv6!
-- ntp_servers = {'1.ntp.services.ffxx'},
-- Wireless regulatory domain of your community.
regdom = 'DE',
-- Wireless configuration for 2.4 GHz interfaces.
wifi24 = {
-- Wireless channel.
channel = 1,
-- ESSIDs used for client network.
ap = {
ssid = 'gluon-ci-ssid',
-- disabled = true, -- (optional)
-- Configuration for a backward compatible OWE network below.
owe_ssid = 'owe.gluon-ci-ssid', -- (optional - SSID for OWE client network)
owe_transition_mode = true, -- (optional - enables transition-mode - requires ssid as well as owe_ssid)
},
mesh = {
-- Adjust these values!
id = 'ueH3uXjdp', -- usually you don't want users to connect to this mesh-SSID, so use a cryptic id that no one will accidentally mistake for the client WiFi
mcast_rate = 12000,
-- disabled = true, -- (optional)
},
},
-- Wireless configuration for 5 GHz interfaces.
-- This should be equal to the 2.4 GHz variant, except
-- for channel.
wifi5 = {
channel = 44,
outdoor_chanlist = '100-140',
ap = {
ssid = 'gluon-ci-ssid',
-- disabled = true, -- (optional)
-- Configuration for a backward compatible OWE network below.
owe_ssid = 'owe.gluon-ci-ssid', -- (optional - SSID for OWE client network)
owe_transition_mode = true, -- (optional - enables transition-mode - requires ssid as well as owe_ssid)
},
mesh = {
-- Adjust these values!
id = 'ueH3uXjdp',
mcast_rate = 12000,
},
},
-- The next node feature allows clients to always reach the node it is
-- connected to using a known IP address.
next_node = {
-- anycast IPs of all nodes
name = { 'nextnode.location.community.example.org', 'nextnode', 'nn' },
ip4 = '10.0.0.1',
ip6 = 'fd::1',
},
-- Options specific to routing protocols (optional)
mesh = {
vxlan = true,
olsrd = {},
},
mesh_vpn = {
-- enabled = true,
fastd = {
-- Refer to https://fastd.readthedocs.io/en/latest/ to better understand
-- what these options do.
-- List of crypto-methods to use.
methods = {'salsa2012+umac'},
mtu = 1312,
-- configurable = true,
-- syslog_level = 'warn',
groups = {
backbone = {
-- Limit number of connected peers to reduce bandwidth.
limit = 1,
-- List of peers.
peers = {
},
-- Optional: nested peer groups
-- groups = {
-- backbone_sub = {
-- ...
-- },
-- ...
-- },
},
-- Optional: additional peer groups, possibly with other limits
-- backbone2 = {
-- ...
-- },
},
},
bandwidth_limit = {
-- The bandwidth limit can be enabled by default here.
enabled = false,
-- Default upload limit (kbit/s).
egress = 200,
-- Default download limit (kbit/s).
ingress = 3000,
},
},
autoupdater = {
-- Default branch (optional), can be overridden by setting GLUON_AUTOUPDATER_BRANCH when building.
-- Set GLUON_AUTOUPDATER_ENABLED to enable the autoupdater by default for newly installed nodes.
branch = 'stable',
-- List of branches. You may define multiple branches.
branches = {
stable = {
name = 'stable',
-- List of mirrors to fetch images from. IPv6 required!
mirrors = {'http://1.updates.services.ffhl/stable/sysupgrade'},
-- Number of good signatures required.
-- Have multiple maintainers sign your build and only
-- accept it when a sufficient number of them have
-- signed it.
good_signatures = 0,
-- List of public keys of maintainers.
pubkeys = {
},
},
},
},
}

View File

@ -0,0 +1,57 @@
## gluon site.mk makefile example
## GLUON_FEATURES
# Specify Gluon features/packages to enable;
# Gluon will automatically enable a set of packages
# depending on the combination of features listed
GLUON_FEATURES := \
autoupdater \
ebtables-filter-multicast \
ebtables-filter-ra-dhcp \
ebtables-limit-arp \
mesh-olsrd \
mesh-vpn-fastd \
respondd \
status-page \
web-advanced \
web-wizard
GLUON_FEATURES_standard := \
wireless-encryption-wpa3
## GLUON_SITE_PACKAGES
# Specify additional Gluon/OpenWrt packages to include here;
# A minus sign may be prepended to remove a packages from the
# selection that would be enabled by default or due to the
# chosen feature flags
GLUON_SITE_PACKAGES := iwinfo
## DEFAULT_GLUON_RELEASE
# version string to use for images
# gluon relies on
# opkg compare-versions "$1" '>>' "$2"
# to decide if a version is newer or not.
DEFAULT_GLUON_RELEASE := 0.6+exp$(shell date '+%Y%m%d')
# Variables set with ?= can be overwritten from the command line
## GLUON_RELEASE
# call make with custom GLUON_RELEASE flag, to use your own release version scheme.
# e.g.:
# $ make images GLUON_RELEASE=23.42+5
# would generate images named like this:
# gluon-ff%site_code%-23.42+5-%router_model%.bin
GLUON_RELEASE ?= $(DEFAULT_GLUON_RELEASE)
# Default priority for updates.
GLUON_PRIORITY ?= 0
# Region code required for some images; supported values: us eu
GLUON_REGION ?= eu
# Languages to include
GLUON_LANGS ?= en de

44
contrib/depdot.sh Executable file
View File

@ -0,0 +1,44 @@
#!/bin/bash
# Script to output the dependency graph of Gluon's packages
# Limitations:
# * Works only if directory names and package names are the same (true for all Gluon packages)
# * Doesn't show dependencies through virtual packages correctly
set -e
shopt -s nullglob
pushd "$(dirname "$0")/.." >/dev/null
escape_name() {
echo -n "_$1" | tr -c '[:alnum:]' _
}
print_node () {
echo "$(escape_name "$1") [label=\"$1\", shape=box];"
}
print_dep() {
echo "$(escape_name "$1") -> $(escape_name "$2");"
}
echo 'digraph G {'
for makefile in ./package/*/Makefile; do
dir="$(dirname "$makefile")"
package="$(basename "$dir")"
deps=$(grep -w DEPENDS "$makefile" | cut -d= -f2 | tr -d +)
print_node "$package"
for dep in $deps; do
print_node "$dep"
print_dep "$package" "$dep"
done
done | sort -u
popd >/dev/null
echo '}'

36
contrib/docker/Dockerfile Normal file
View File

@ -0,0 +1,36 @@
FROM debian:bullseye-slim
ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y --no-install-recommends \
ca-certificates \
file \
git \
python3 \
build-essential \
gawk \
unzip \
libncurses5-dev \
zlib1g-dev \
libssl-dev \
libelf-dev \
wget \
rsync \
time \
qemu-utils \
ecdsautils \
lua-check \
shellcheck \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
RUN mkdir /tmp/ec &&\
wget -O /tmp/ec/ec-linux-amd64.tar.gz https://github.com/editorconfig-checker/editorconfig-checker/releases/download/2.7.0/ec-linux-amd64.tar.gz &&\
tar -xvzf /tmp/ec/ec-linux-amd64.tar.gz &&\
mv bin/ec-linux-amd64 /usr/local/bin/editorconfig-checker &&\
rm -rf /tmp/ec
RUN useradd -d /gluon gluon
USER gluon
VOLUME /gluon
WORKDIR /gluon

128
contrib/i18n-scan.pl Executable file
View File

@ -0,0 +1,128 @@
#!/usr/bin/perl
use strict;
use warnings;
use Text::Balanced qw(extract_bracketed extract_delimited extract_tagged);
@ARGV >= 1 || die "Usage: $0 <source directory>\n";
my %stringtable;
sub dec_lua_str
{
my $s = shift;
$s =~ s/[\s\n]+/ /g;
$s =~ s/\\n/\n/g;
$s =~ s/\\t/\t/g;
$s =~ s/\\(.)/$1/g;
$s =~ s/^ //;
$s =~ s/ $//;
return $s;
}
sub dec_tpl_str
{
my $s = shift;
$s =~ s/-$//;
$s =~ s/[\s\n]+/ /g;
$s =~ s/^ //;
$s =~ s/ $//;
$s =~ s/\\/\\\\/g;
return $s;
}
if( open F, "find @ARGV -type f '(' -name '*.html' -o -name '*.lua' ')' |" )
{
while( defined( my $file = readline F ) )
{
chomp $file;
if( open S, "< $file" )
{
local $/ = undef;
my $raw = <S>;
close S;
my $text = $raw;
while( $text =~ s/ ^ .*? (?:translate|translatef|_) [\n\s]* \( /(/sgx )
{
( my $code, $text ) = extract_bracketed($text, q{('")});
$code =~ s/\\\n/ /g;
$code =~ s/^\([\n\s]*//;
$code =~ s/[\n\s]*\)$//;
my $res = "";
my $sub = "";
if( $code =~ /^['"]/ )
{
while( defined $sub )
{
( $sub, $code ) = extract_delimited($code, q{'"}, q{\s*(?:\.\.\s*)?});
if( defined $sub && length($sub) > 2 )
{
$res .= substr $sub, 1, length($sub) - 2;
}
else
{
undef $sub;
}
}
}
elsif( $code =~ /^(\[=*\[)/ )
{
my $stag = quotemeta $1;
my $etag = $stag;
$etag =~ s/\[/]/g;
( $res ) = extract_tagged($code, $stag, $etag);
$res =~ s/^$stag//;
$res =~ s/$etag$//;
}
$res = dec_lua_str($res);
$stringtable{$res}++ if $res;
}
$text = $raw;
while( $text =~ s/ ^ .*? <% -? [:_] /<%/sgx )
{
( my $code, $text ) = extract_tagged($text, '<%', '%>');
if( defined $code )
{
$code = dec_tpl_str(substr $code, 2, length($code) - 4);
$stringtable{$code}++;
}
}
}
}
close F;
}
if( open C, "| msgcat -" )
{
printf C "msgid \"\"\nmsgstr \"Content-Type: text/plain; charset=UTF-8\"\n\n";
foreach my $key ( sort keys %stringtable )
{
if( length $key )
{
$key =~ s/"/\\"/g;
printf C "msgid \"%s\"\nmsgstr \"\"\n\n", $key;
}
}
close C;
}

View File

@ -1,11 +1,13 @@
#!/bin/bash
set -e
# Script to list all upgrade scripts in a clear manner
# Limitations:
# * Does only show scripts of packages whose `files' directory represent the whole image filesystem (which are all Gluon packages)
# * Does only show scripts of packages whose `files'/`luasrc' directories represent the whole image filesystem (which are all Gluon packages)
SUFFIX=files/lib/gluon/upgrade
SUFFIX1=files/lib/gluon/upgrade
SUFFIX2=luasrc/lib/gluon/upgrade
shopt -s nullglob
@ -26,7 +28,7 @@ fi
pushd "$(dirname "$0")/.." >/dev/null
find ./package packages -name Makefile | while read makefile; do
find ./package packages -name Makefile | grep -v '^packages/packages/' | while read -r makefile; do
dir="$(dirname "$makefile")"
pushd "$dir" >/dev/null
@ -35,10 +37,12 @@ find ./package packages -name Makefile | while read makefile; do
dirname="$(dirname "$dir" | cut -d/ -f 3-)"
package="$(basename "$dir")"
for file in "${SUFFIX}"/*; do
echo "${GREEN}$(basename "${file}")${RESET}" "(${BLUE}${repo}${RESET}/${dirname}${dirname:+/}${RED}${package}${RESET}/${SUFFIX})"
for file in "${SUFFIX1}"/* "${SUFFIX2}"/*; do
basename="$(basename "${file}")"
suffix="$(dirname "${file}")"
printf "%s\t%s\n" "${basename}" "${BLUE}${repo}${RESET}/${dirname}${dirname:+/}${RED}${package}${RESET}/${suffix}/${GREEN}${basename}${RESET}"
done
popd >/dev/null
done | sort
done | sort | cut -f2-
popd >/dev/null

149
contrib/push_pkg.sh Executable file
View File

@ -0,0 +1,149 @@
#!/bin/sh
set -e
topdir="$(realpath "$(dirname "${0}")/../openwrt")"
# defaults to qemu run script
ssh_host=localhost
build_only=0
preserve_config=1
print_help() {
echo "$0 [OPTIONS] PACAKGE_DIR [PACKAGE_DIR] ..."
echo ""
echo " -h print this help"
echo " -r HOST use a remote machine as target machine. By default if this"
echo " option is not given, push_pkg.sh will use a locally"
echo " running qemu instance started by run_qemu.sh."
echo " -p PORT use PORT as ssh port (default is 22)"
echo " -b build only, do not push"
echo " -P do not preserve /etc/config. By default, if a package"
echo " defines a config file in /etc/config, this config file"
echo " will be preserved. If you specify this flag, the package"
echo " default will be installed instead."
echo ""
echo ' To change gluon variables, run e.g. "make config GLUON_MINIFY=0"'
echo ' because then the gluon logic will be triggered, and openwrt/.config'
echo ' will be regenerated. The variables from openwrt/.config are already'
echo ' automatically used for this script.'
echo
}
while getopts "p:r:hbP" opt
do
case $opt in
P) preserve_config=0;;
p) ssh_port="${OPTARG}";;
r) ssh_host="${OPTARG}"; [ -z "$ssh_port" ] && ssh_port=22;;
b) build_only=1;;
h) print_help; exit 0;;
*) ;;
esac
done
shift $(( OPTIND - 1 ))
[ -z "$ssh_port" ] && ssh_port=2223
if [ "$build_only" -eq 0 ]; then
remote_info=$(ssh -p "${ssh_port}" "root@${ssh_host}" '
source /etc/os-release
printf "%s\\t%s\\n" "$OPENWRT_BOARD" "$OPENWRT_ARCH"
')
REMOTE_OPENWRT_BOARD="$(echo "$remote_info" | cut -f 1)"
REMOTE_OPENWRT_ARCH="$(echo "$remote_info" | cut -f 2)"
# check target
if ! grep -q "CONFIG_TARGET_ARCH_PACKAGES=\"${REMOTE_OPENWRT_ARCH}\"" "${topdir}/.config"; then
echo "Configured OpenWrt Target is not matching with the target machine!" 1>&2
echo
printf "%s" " Configured architecture: " 1>&2
grep "CONFIG_TARGET_ARCH_PACKAGES" "${topdir}/.config" 1>&2
echo "Target machine architecture: ${REMOTE_OPENWRT_ARCH}" 1>&2
echo 1>&2
echo "To switch the local with the run with the corresponding GLUON_TARGET:" 1>&2
echo " make GLUON_TARGET=... config" 1>&2
exit 1
fi
fi
if [ $# -lt 1 ]; then
echo ERROR: Please specify a PACKAGE_DIR. For example:
echo
echo " \$ $0 package/gluon-core"
exit 1
fi
while [ $# -gt 0 ]; do
pkgdir="$1"; shift
echo "Package: ${pkgdir}"
if ! [ -f "${pkgdir}/Makefile" ]; then
echo "ERROR: ${pkgdir} does not contain a Makefile"
exit 1
fi
if ! grep -q BuildPackage "${pkgdir}/Makefile"; then
echo "ERROR: ${pkgdir}/Makefile does not contain a BuildPackage command"
exit 1
fi
opkg_packages="$(make TOPDIR="${topdir}" -C "${pkgdir}" DUMP=1 | awk '/^Package: / { print $2 }')"
search_package() {
find "$2" -name "$1_*.ipk" -printf '%f\n'
}
make TOPDIR="${topdir}" -C "${pkgdir}" clean
make TOPDIR="${topdir}" -C "${pkgdir}" compile
if [ "$build_only" -eq 1 ]; then
continue
fi
# IPv6 addresses need brackets around the ${ssh_host} for scp!
if echo "${ssh_host}" | grep -q :; then
BL=[
BR=]
fi
for pkg in ${opkg_packages}; do
for feed in "${topdir}/bin/packages/${REMOTE_OPENWRT_ARCH}/"*/ "${topdir}/bin/targets/${REMOTE_OPENWRT_BOARD}/packages/"; do
printf "%s" "searching ${pkg} in ${feed}: "
filename=$(search_package "${pkg}" "${feed}")
if [ -n "${filename}" ]; then
echo found!
break
else
echo not found
fi
done
if [ "$preserve_config" -eq 0 ]; then
opkg_flags=" --force-maintainer"
fi
# shellcheck disable=SC2029
if [ -n "$filename" ]; then
scp -O -P "${ssh_port}" "$feed/$filename" "root@${BL}${ssh_host}${BR}:/tmp/${filename}"
ssh -p "${ssh_port}" "root@${ssh_host}" "
set -e
echo Running opkg:
opkg install --force-reinstall ${opkg_flags} '/tmp/${filename}'
rm '/tmp/${filename}'
gluon-reconfigure
"
else
# Some packages (e.g. procd-seccomp) seem to contain BuildPackage commands
# which do not generate *.ipk files. Till this point, I am not aware why
# this is happening. However, dropping a warning if the corresponding
# *.ipk is not found (maybe due to other reasons as well), seems to
# be more reasonable than aborting. Before this commit, the command
# has failed.
echo "Warning: ${pkg}*.ipk not found! Ignoring." 1>&2
fi
done
done

15
contrib/run_qemu.sh Executable file
View File

@ -0,0 +1,15 @@
#!/bin/sh
# Note: You can exit the qemu instance by first pressing "CTRL + a" then "c".
# Then you enter the command mode of qemu and can exit by typing "quit".
qemu-system-x86_64 \
-d 'cpu_reset' \
-enable-kvm \
-gdb tcp::1234 \
-nographic \
-netdev user,id=wan,hostfwd=tcp::2223-10.0.2.15:22 \
-device virtio-net-pci,netdev=wan,addr=0x06,id=nic1 \
-netdev user,id=lan,hostfwd=tcp::6080-192.168.1.1:80,hostfwd=tcp::2222-192.168.1.1:22,net=192.168.1.100/24 \
-device virtio-net-pci,netdev=lan,addr=0x05,id=nic2 \
"$@"

View File

@ -1,6 +1,8 @@
#!/bin/sh
if [ $# -eq 0 -o "-h" = "$1" -o "-help" = "$1" -o "--help" = "$1" ]; then
set -e
if [ $# -ne 2 ] || [ "-h" = "$1" ] || [ "--help" = "$1" ] || [ ! -r "$1" ] || [ ! -r "$2" ]; then
cat <<EOHELP
Usage: $0 <secret> <manifest>
@ -13,7 +15,7 @@ The script may be performed multiple times to the same document
to indicate an approval by multiple developers.
See also
* edcsautils on https://github.com/tcatm/ecdsautils
* ecdsautils on https://github.com/freifunk-gluon/ecdsautils
EOHELP
exit 1
@ -25,16 +27,29 @@ manifest="$2"
upper="$(mktemp)"
lower="$(mktemp)"
awk "BEGIN { sep=0 }
/^---\$/ { sep=1; next }
{ if(sep==0) print > \"$upper\";
else print > \"$lower\"}" \
"$manifest"
trap 'rm -f "$upper" "$lower"' EXIT
awk 'BEGIN {
sep = 0
}
/^---$/ {
sep = 1;
next
}
{
if(sep == 0) {
print > "'"$upper"'"
} else {
print > "'"$lower"'"
}
}' "$manifest"
ecdsasign "$upper" < "$SECRET" >> "$lower"
cat "$upper" > "$manifest"
echo --- >> "$manifest"
cat "$lower" >> "$manifest"
rm -f "$upper" "$lower"
(
cat "$upper"
echo ---
cat "$lower"
) > "$manifest"

50
contrib/sigtest.sh Executable file
View File

@ -0,0 +1,50 @@
#!/bin/sh
if [ $# -eq 0 ] || [ "-h" = "$1" ] || [ "-help" = "$1" ] || [ "--help" = "$1" ]; then
cat <<EOHELP
Usage: $0 <public> <signed manifest>
sigtest.sh checks if a manifest is signed by the public key <public>. There is
no output, success or failure is indicated via the return code.
See also:
* ecdsautils in https://github.com/freifunk-gluon/ecdsautils
* https://gluon.readthedocs.io/en/latest/features/autoupdater.html
EOHELP
exit 1
fi
public="$1"
manifest="$2"
upper="$(mktemp)"
lower="$(mktemp)"
ret=1
awk 'BEGIN {
sep = 0
}
/^---$/ {
sep = 1;
next
}
{
if(sep == 0) {
print > "'"$upper"'"
} else {
print > "'"$lower"'"
}
}' "$manifest"
while read -r line
do
if ecdsaverify -s "$line" -p "$public" "$upper"; then
ret=0
break
fi
done < "$lower"
rm -f "$upper" "$lower"
exit $ret

View File

@ -1,177 +1,19 @@
# Makefile for Sphinx documentation
# Minimal makefile for Sphinx documentation
#
# You can set these variables from the command line.
SPHINXOPTS =
SPHINXOPTS = -W --keep-going
SPHINXBUILD = sphinx-build
PAPER =
SOURCEDIR = .
BUILDDIR = _build
# User-friendly check for sphinx-build
ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1)
$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/)
endif
# Internal variables.
PAPEROPT_a4 = -D latex_paper_size=a4
PAPEROPT_letter = -D latex_paper_size=letter
ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
# the i18n builder cannot share the environment and doctrees with the others
I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
# Put it first so that "make" without argument is like "make help".
help:
@echo "Please use \`make <target>' where <target> is one of"
@echo " html to make standalone HTML files"
@echo " dirhtml to make HTML files named index.html in directories"
@echo " singlehtml to make a single large HTML file"
@echo " pickle to make pickle files"
@echo " json to make JSON files"
@echo " htmlhelp to make HTML files and a HTML help project"
@echo " qthelp to make HTML files and a qthelp project"
@echo " devhelp to make HTML files and a Devhelp project"
@echo " epub to make an epub"
@echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
@echo " latexpdf to make LaTeX files and run them through pdflatex"
@echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx"
@echo " text to make text files"
@echo " man to make manual pages"
@echo " texinfo to make Texinfo files"
@echo " info to make Texinfo files and run them through makeinfo"
@echo " gettext to make PO message catalogs"
@echo " changes to make an overview of all changed/added/deprecated items"
@echo " xml to make Docutils-native XML files"
@echo " pseudoxml to make pseudoxml-XML files for display purposes"
@echo " linkcheck to check all external links for integrity"
@echo " doctest to run all doctests embedded in the documentation (if enabled)"
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
clean:
rm -rf $(BUILDDIR)/*
.PHONY: help Makefile
html:
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
dirhtml:
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
singlehtml:
$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
@echo
@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
pickle:
$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
@echo
@echo "Build finished; now you can process the pickle files."
json:
$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
@echo
@echo "Build finished; now you can process the JSON files."
htmlhelp:
$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
@echo
@echo "Build finished; now you can run HTML Help Workshop with the" \
".hhp project file in $(BUILDDIR)/htmlhelp."
qthelp:
$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
@echo
@echo "Build finished; now you can run "qcollectiongenerator" with the" \
".qhcp project file in $(BUILDDIR)/qthelp, like this:"
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/Gluon.qhcp"
@echo "To view the help file:"
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/Gluon.qhc"
devhelp:
$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
@echo
@echo "Build finished."
@echo "To view the help file:"
@echo "# mkdir -p $$HOME/.local/share/devhelp/Gluon"
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/Gluon"
@echo "# devhelp"
epub:
$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
@echo
@echo "Build finished. The epub file is in $(BUILDDIR)/epub."
latex:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo
@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
@echo "Run \`make' in that directory to run these through (pdf)latex" \
"(use \`make latexpdf' here to do that automatically)."
latexpdf:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo "Running LaTeX files through pdflatex..."
$(MAKE) -C $(BUILDDIR)/latex all-pdf
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
latexpdfja:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo "Running LaTeX files through platex and dvipdfmx..."
$(MAKE) -C $(BUILDDIR)/latex all-pdf-ja
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
text:
$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
@echo
@echo "Build finished. The text files are in $(BUILDDIR)/text."
man:
$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
@echo
@echo "Build finished. The manual pages are in $(BUILDDIR)/man."
texinfo:
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
@echo
@echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
@echo "Run \`make' in that directory to run these through makeinfo" \
"(use \`make info' here to do that automatically)."
info:
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
@echo "Running Texinfo files through makeinfo..."
make -C $(BUILDDIR)/texinfo info
@echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
gettext:
$(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
@echo
@echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
changes:
$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
@echo
@echo "The overview file is in $(BUILDDIR)/changes."
linkcheck:
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
@echo
@echo "Link check complete; look for any errors in the above output " \
"or in $(BUILDDIR)/linkcheck/output.txt."
doctest:
$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
@echo "Testing of doctests in the sources finished, look at the " \
"results in $(BUILDDIR)/doctest/output.txt."
xml:
$(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml
@echo
@echo "Build finished. The XML files are in $(BUILDDIR)/xml."
pseudoxml:
$(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml
@echo
@echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

10
docs/_static/css/custom.css vendored Normal file
View File

@ -0,0 +1,10 @@
/*
This fixes the vertical position of list markers when the first
element in the <li> is a <pre> block
Scrolling inside the <pre> block is still working as expected
*/
.rst-content pre.literal-block,
.rst-content div[class^='highlight'] pre {
overflow: visible;
}

View File

@ -1,261 +1,188 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#
# Gluon documentation build configuration file, created by
# sphinx-quickstart on Wed Jan 29 00:45:53 2014.
# Configuration file for the Sphinx documentation builder.
#
# This file is execfile()d with the current directory set to its
# containing dir.
#
# Note that not all possible configuration values are present in this
# autogenerated file.
#
# All configuration values have a default; values that are commented out
# serve to show the default.
# This file does only contain a selection of the most common options. For a
# full list see the documentation:
# http://www.sphinx-doc.org/en/master/config
import sys
import os
# -- Path setup --------------------------------------------------------------
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
#sys.path.insert(0, os.path.abspath('.'))
#
# import os
# import sys
# sys.path.insert(0, os.path.abspath('.'))
# -- General configuration ------------------------------------------------
# -- Project information -----------------------------------------------------
project = 'Gluon'
copyright = 'Project Gluon'
author = 'Project Gluon'
# The short X.Y version
version = '2022.1'
# The full version, including alpha/beta/rc tags
release = version
# -- General configuration ---------------------------------------------------
# If your documentation needs a minimal Sphinx version, state it here.
#needs_sphinx = '1.0'
#
# needs_sphinx = '1.0'
# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = [
'sphinx.ext.mathjax',
]
# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']
# The suffix of source filenames.
# The suffix(es) of source filenames.
# You can specify multiple suffix as a list of string:
#
# source_suffix = ['.rst', '.md']
source_suffix = '.rst'
# The encoding of source files.
#source_encoding = 'utf-8-sig'
# The master toctree document.
master_doc = 'index'
# General information about the project.
project = 'Gluon'
copyright = '2015, Project Gluon'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
# The short X.Y version.
version = '2015.1'
# The full version, including alpha/beta/rc tags.
release = '2015.1'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#language = None
# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
#today = ''
# Else, today_fmt is used as the format for a strftime call.
#today_fmt = '%B %d, %Y'
#
# This is also used if you do content translation via gettext catalogs.
# Usually you set "language" from the command line for these cases.
language = 'en'
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
exclude_patterns = ['_build']
# The reST default role (used for this markup: `text`) to use for all
# documents.
#default_role = None
# If true, '()' will be appended to :func: etc. cross-reference text.
#add_function_parentheses = True
# If true, the current module name will be prepended to all description
# unit titles (such as .. function::).
#add_module_names = True
# If true, sectionauthor and moduleauthor directives will be shown in the
# output. They are ignored by default.
#show_authors = False
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']
# The name of the Pygments (syntax highlighting) style to use.
pygments_style = 'sphinx'
pygments_style = None
# A list of ignored prefixes for module index sorting.
#modindex_common_prefix = []
# Don't highlight code blocks unless requested explicitly
highlight_language = 'none'
# If true, keep warnings as "system message" paragraphs in the built documents.
#keep_warnings = False
# Ignore links to the config mode, as well as anchors on on hackint, which are
# used to mark channel names and do not exist. Regular links are not effected.
linkcheck_ignore = [
'http://192.168.1.1',
'https://webirc.hackint.org/#'
]
# -- Options for HTML output ----------------------------------------------
# -- Options for HTML output -------------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
#html_theme = 'default'
#
html_theme = 'sphinx_rtd_theme'
# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# documentation.
#html_theme_options = {}
# Add any paths that contain custom themes here, relative to this directory.
#html_theme_path = []
# The name for this set of Sphinx documents. If None, it defaults to
# "<project> v<release> documentation".
#html_title = None
# A shorter title for the navigation bar. Default is the same as html_title.
#html_short_title = None
# The name of an image file (relative to this directory) to place at the top
# of the sidebar.
#html_logo = None
# The name of an image file (within the static path) to use as favicon of the
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
# pixels large.
#html_favicon = None
#
# html_theme_options = {}
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
#html_static_path = ['_static']
#
html_static_path = ['_static']
# Add any extra paths that contain custom files (such as robots.txt or
# .htaccess) here, relative to this directory. These files are copied
# directly to the root of the documentation.
#html_extra_path = []
# Custom sidebar templates, must be a dictionary that maps document names
# to template names.
#
# The default sidebars (for documents that don't match any pattern) are
# defined by theme itself. Builtin themes are using these templates by
# default: ``['localtoc.html', 'relations.html', 'sourcelink.html',
# 'searchbox.html']``.
#
# html_sidebars = {}
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
# using the given strftime format.
#html_last_updated_fmt = '%b %d, %Y'
# These paths are either relative to html_static_path
# or fully qualified paths (eg. https://...)
html_css_files = ['css/custom.css']
# If true, SmartyPants will be used to convert quotes and dashes to
# typographically correct entities.
#html_use_smartypants = True
# Custom sidebar templates, maps document names to template names.
#html_sidebars = {}
# Additional templates that should be rendered to pages, maps page names to
# template names.
#html_additional_pages = {}
# If false, no module index is generated.
#html_domain_indices = True
# If false, no index is generated.
#html_use_index = True
# If true, the index is split into individual pages for each letter.
#html_split_index = False
# If true, links to the reST sources are added to the pages.
#html_show_sourcelink = True
# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
#html_show_sphinx = True
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
#html_show_copyright = True
# If true, an OpenSearch description file will be output, and all pages will
# contain a <link> tag referring to it. The value of this option must be the
# base URL from which the finished HTML is served.
#html_use_opensearch = ''
# This is the file name suffix for HTML files (e.g. ".xhtml").
#html_file_suffix = None
# -- Options for HTMLHelp output ---------------------------------------------
# Output file base name for HTML help builder.
htmlhelp_basename = 'Gluondoc'
# -- Options for LaTeX output ---------------------------------------------
# -- Options for LaTeX output ------------------------------------------------
latex_elements = {
# The paper size ('letterpaper' or 'a4paper').
#'papersize': 'letterpaper',
# The paper size ('letterpaper' or 'a4paper').
#
# 'papersize': 'letterpaper',
# The font size ('10pt', '11pt' or '12pt').
#'pointsize': '10pt',
# The font size ('10pt', '11pt' or '12pt').
#
# 'pointsize': '10pt',
# Additional stuff for the LaTeX preamble.
#'preamble': '',
# Additional stuff for the LaTeX preamble.
#
# 'preamble': '',
# Latex figure (float) alignment
#
# 'figure_align': 'htbp',
}
# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title,
# author, documentclass [howto, manual, or own class]).
latex_documents = [
('index', 'Gluon.tex', 'Gluon Documentation',
'Project Gluon', 'manual'),
(master_doc, 'Gluon.tex', 'Gluon Documentation',
'Project Gluon', 'manual'),
]
# The name of an image file (relative to this directory) to place at the top of
# the title page.
#latex_logo = None
# For "manual" documents, if this is true, then toplevel headings are parts,
# not chapters.
#latex_use_parts = False
# If true, show page references after internal links.
#latex_show_pagerefs = False
# If true, show URL addresses after external links.
#latex_show_urls = False
# Documents to append as an appendix to all manuals.
#latex_appendices = []
# If false, no module index is generated.
#latex_domain_indices = True
# -- Options for manual page output ---------------------------------------
# -- Options for manual page output ------------------------------------------
# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
man_pages = [
('index', 'gluon', 'Gluon Documentation',
['Project Gluon'], 1)
(master_doc, 'gluon', 'Gluon Documentation',
[author], 1)
]
# If true, show URL addresses after external links.
#man_show_urls = False
# -- Options for Texinfo output -------------------------------------------
# -- Options for Texinfo output ----------------------------------------------
# Grouping the document tree into Texinfo files. List of tuples
# (source start file, target name, title, author,
# dir menu entry, description, category)
texinfo_documents = [
('index', 'Gluon', 'Gluon Documentation',
'Project Gluon', 'Gluon', 'One line description of project.',
'Miscellaneous'),
(master_doc, 'Gluon', 'Gluon Documentation',
author, 'Gluon', 'One line description of project.',
'Miscellaneous'),
]
# Documents to append as an appendix to all manuals.
#texinfo_appendices = []
# If false, no module index is generated.
#texinfo_domain_indices = True
# -- Options for Epub output -------------------------------------------------
# How to display URL addresses: 'footnote', 'no', or 'inline'.
#texinfo_show_urls = 'footnote'
# Bibliographic Dublin Core info.
epub_title = project
# If true, do not generate a @detailmenu in the "Top" node's menu.
#texinfo_no_detailmenu = False
# The unique identifier of the text. This can be a ISBN number
# or the project homepage.
#
# epub_identifier = ''
# A unique identification for the text.
#
# epub_uid = ''
# A list of files that should not be packed into the epub file.
epub_exclude_files = ['search.html']

View File

@ -15,10 +15,15 @@ The `main repo`_ does have issues enabled.
IRC
---
Gluon's developers frequent `#gluon on hackint`_. You're welcome to join us!
Gluon's developers frequent the IRC chatroom `#gluon`_ on `hackint`_.
There is a `webchat`_ that allows for easy access from within your
webbrowser. You're welcome to join us!
.. _#gluon on hackint: irc://irc.hackint.org/#gluon
.. _#gluon: ircs://irc.hackint.org/#gluon
.. _hackint: https://hackint.org/
.. _webchat: https://webirc.hackint.org/#irc://irc.hackint.org/#gluon
.. _working-with-repositories:
Working with repositories
-------------------------
@ -28,36 +33,53 @@ rerun
::
make update
make update
`make update` also applies the patches that can be found in the directories found in
`patches`; the resulting branch will be called `patched`, while the commit specified in `modules`
can be refered to by the branch `base`.
can be referred to by the branch `base`.
::
make unpatch
sets the repositories to the `base` branch,
::
make patch
re-applies the patches by resetting the `patched` branch to `base` and calling `git am`
for the patch files. Calling `make` or a similar command after calling `make unpatch`
is generally not a good idea.
After new patches have been commited on top of the patched branch (or existing commits
After new patches have been committed on top of the `patched` branch (or existing commits
since the base commit have been edited or removed), the patch directories can be regenerated
using
::
make update-patches
make update-patches
If applying a patch fails because you have changed the base commit, the repository will be reset to the old `patched` branch
and you can try rebasing it onto the new `base` branch yourself and after that call `make update-patches` to fix the problem.
Always call `make update-patches` after making changes to a module repository as `make update` will overwrite your
commits, making `git reflog` the only way to recover them!
::
make refresh-patches
In order to refresh patches when updating feeds or the OpenWrt base, `make refresh-patches` applies and updates all of their patches without installing feed packages to the OpenWrt build system.
This command speeds up the maintenance of updating OpenWrt and feeds.
Development Guidelines
----------------------
Lua should be used instead of sh whenever sensible. The following criteria
should be considered:
- Is the script doing more than just executing external commands? if so, use Lua
- Is the script parsing/editing json-data? If so, use Lua for speed
- When using sh, use jsonfilter instead of json_* functions for speed
Code formatting may sound like a topic for the pedantic, however it helps if
the code in the project is formatted in the same way. The following basic rules
apply:
- use tabs instead of spaces
- trailing whitespaces must be eliminated
- files need to end with a final newline
- newlines need to have Unix line endings (lf)
To that end we provide a ``.editorconfig`` configuration, which is supported by most
of the editors out there.
If you add Lua scripts to gluon, check formatting with ``luacheck``.

104
docs/dev/build.rst Normal file
View File

@ -0,0 +1,104 @@
Build system
============
This page explains internals of the Gluon build system. It is currently very
incomplete; please contribute if you can!
Feed management
---------------
Rather that relying on the *feed.conf* mechanism of OpenWrt directly, Gluon
manages its feeds (*"modules"*) using a collection of scripts. This solution was
selected for multiple reasons:
- Feeds lists from Gluon base and the site repository are combined
- Patchsets are applied to downloaded feed repositories automatically
The following variables specifically affect the feed management:
GLUON_FEEDS
List of base feeds; defined in file *modules* in Gluon base
GLUON_SITE_FEED
List of site feeds; defined in file *modules* in site config
\*_REPO, \*_BRANCH, \*_COMMIT
Git repository URL, branch and
commit ID of the feeds to use. The branch name may be omitted; the default
branch will be used in this case.
GLUON_BASE_FEEDS
Additional feed definitions to be added to *feeds.conf*
verbatim. By default, this contains a reference to the Gluon base packages;
when using the Gluon build system to build a non-Gluon system, the variable
can be set to the empty string.
Helper scripts
--------------
Several tasks of the build process have been separated from the Makefile into
external scripts, which are stored in the *scripts* directory. This was done to
ease maintenance of these scripts and the Makefile, by avoiding a lot of escaping.
These scripts are either bash or Lua scripts that run on the build system.
default_feeds.sh
Defines the constant ``DEFAULT_FEEDS`` with the names of all feeds listed in
*openwrt/feeds.conf.default*. This script is only used as an include by other
scripts.
feeds.sh
Creates the *openwrt/feeds.conf* file from ``FEEDS`` and ``DEFAULT_FEEDS``. The
feeds from ``FEEDS`` are linked to the matching subfolder of *packages/* and not
explicitly defined feeds of ``DEFAULT_FEEDS`` are setup as dummy (src-dummy).
This *openwrt/feeds.conf* is used to reinstall all packages of all feeds with
the *openwrt/scripts/feeds* tool.
modules.sh
Defines the constants ``GLUON_MODULES`` and ``FEEDS`` by reading the *modules*
files of the Gluon repository root and the site configuration. The returned
variables look like:
- ``FEEDS``: "*feedA feedB ...*"
- ``GLUON_MODULES``: "*openwrt packages/feedA packages/feedB ...*"
This script is only used as an include by other scripts.
patch.sh
(Re-)applies the patches from the *patches* directory to all ``GLUON_MODULES``
and checks out the files to the filesystem.
This is done for each repo by:
- creating a temporary clone of the repo to patch
- only branch *base* is used
- applying all patches via *git am* on top of this temporary *base* branch
- this branch is named *patched*
- copying the temporary clone to the *openwrt* (for OpenWrt Base) or
*packages* (for feeds) folder
- *git fetch* is used with the temporary clone as source
- *git checkout* is called to update the filesystem
- updating all git submodules
This solution with a temporary clone ensures that the timestamps of checked
out files are not changed by any intermediate patch steps, but only when
updating the checkout with the final result. This avoids triggering unnecessary
rebuilds.
update.sh
Sets up a working clone of the ``GLUON_MODULES`` (external repos) from the external
source and installs it into *packages/* directory. It simply tries to set the *base*
branch of the cloned repo to the correct commit. If this fails it fetches the
upstream branch and tries again to set the local *base* branch.
getversion.sh
Used to determine the version numbers of the repositories of Gluon and the
site configuration, to be included in the built firmware images as
*/lib/gluon/gluon-version* and */lib/gluon/site-version*.
By default, this uses ``git describe`` to generate a version number based
on the last git tag. This can be overridden by putting a file called
*.scmversion* into the root of the respective repositories.
A command like ``rm -f .scmversion; echo "$(./scripts/getversion.sh .)" > .scmversion``
can be used before applying local patches to ensure that the reported
version numbers refer to an upstream commit ID rather than an arbitrary
local one after ``git am``.

View File

@ -1,92 +0,0 @@
Config Mode
===========
As of 2014.4 `gluon-config-mode` consists of several modules.
gluon-config-mode-core
This modules provides the core functionality for the config mode.
All modules must depend on it.
gluon-config-mode-hostname
Provides a hostname field.
gluon-config-mode-autoupdater
Informs whether the autoupdater is enabled.
gluon-config-mode-mesh-vpn
Allows toggling of mesh-vpn-fastd and setting a bandwidth limit.
gluon-config-mode-geo-location
Enables the user to set the geographical location of the node.
gluon-config-mode-contact-info
Adds a field where the user can provide contact information.
In order to get a config mode close to the one found in 2014.3.x you may add
these modules to your `site.mk`:
gluon-config-mode-hostname,
gluon-config-mode-autoupdater,
gluon-config-mode-mesh-vpn,
gluon-config-mode-geo-location,
gluon-config-mode-contact-info
Writing Config Mode Modules
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Config mode modules are located at `/lib/gluon/config-mode/wizard` and
`/lib/gluon/config-mode/reboot`. Modules are named like `0000-name.lua` and
are executed in lexical order. If you take the standard set of modules, the
order is, for wizard modules:
- 0050-autoupdater-info
- 0100-hostname
- 0300-mesh-vpn
- 0400-geo-location
- 0500-contact-info
While for reboot modules it is:
- 0100-mesh-vpn
- 0900-msg-reboot
Wizards
-------
Wizard modules return a UCI section. A simple module capable of changing the
hostname might look like this::
local cbi = require "luci.cbi"
local uci = luci.model.uci.cursor()
local M = {}
function M.section(form)
local s = form:section(cbi.SimpleSection, nil, nil)
local o = s:option(cbi.Value, "_hostname", "Hostname")
o.value = uci:get_first("system", "system", "hostname")
o.rmempty = false
o.datatype = "hostname"
end
function M.handle(data)
uci:set("system", uci:get_first("system", "system"), "hostname", data._hostname)
uci:save("system")
uci:commit("system")
end
return M
Reboot page
-----------
Reboot modules return a function that will be called when the page is to be
rendered or nil (i.e. the module is skipped)::
if no_hello_world_today then
return nil
else
return function ()
luci.template.render_string("Hello World!")
end
end

51
docs/dev/debugging.rst Normal file
View File

@ -0,0 +1,51 @@
Debugging
=========
.. _dev-debugging-kernel-oops:
Kernel Oops
-----------
Sometimes a running Linux kernel detects an error during runtime that can't
be corrected.
This usually generates a stack trace that points to the location in the code
that caused the oops.
Linux kernels in Gluon (and OpenWrt) are stripped.
That means they do not contain any debug symbols.
On one hand this leads to a smaller binary and faster loading times on the
target.
On the other hand this means that in a case of a stack trace the unwinder
can only print memory locations and no further debugging information.
Gluon stores a compressed kernel with debug symbols for every target
in the directory `output/debug/`.
These kernels should be kept along with the images as long as the images
are in use.
This allows the developer to analyse a stack trace later.
Decoding Stacktraces
....................
The tooling is contained in the kernel source tree in the file
`decode_stacktrace.sh <https://github.com/torvalds/linux/blob/master/scripts/decode_stacktrace.sh>`__.
This file and the needed source tree are available in the directory: ::
openwrt/build_dir/target-<architecture>/linux-<architecture>/linux-<version>/
.. note::
Make sure to use a kernel tree that matches the version and patches
that was used to build the kernel.
If in doubt just re-build the images for the target.
Some more information on how to use this tool can be found at
`LWN <https://lwn.net/Articles/592724/>`__.
Obtaining Stacktraces
.....................
On many targets stack traces can be read from the following
location after reboot: ::
/sys/kernel/debug/crashlog

View File

@ -1,95 +1,238 @@
Adding support for new hardware
===============================
Adding hardware support
=======================
This page will give a short overview on how to add support
for new hardware to Gluon.
Hardware requirements
---------------------
Having an ath9k (or ath10k) based WLAN adapter is highly recommended,
Having an ath9k, ath10k or mt76 based WLAN adapter is highly recommended,
although other chipsets may also work. VAP (multiple SSID) support
is a requirement. At the moment, Gluon's scripts can't handle devices
without WLAN adapters (although such environments may also be interesting,
e.g. for automated testing in virtual machines).
with simultaneous AP + Mesh Point (802.11s) operation is required.
.. _hardware-adding-profiles:
Device checklist
----------------
The description of pull requests adding device support must include the
`device integration checklist
<https://github.com/freifunk-gluon/gluon/wiki/Device-Integration-checklist>`_.
The checklist ensures that core functionality of Gluon is well supported on the
device.
Adding profiles
---------------
The vast majority of devices with ath9k WLAN uses the ar71xx target of OpenWrt.
If the hardware you want to add support for is also ar71xx, adding a new profile
is enough.
.. _device-class-definition:
Profiles are defined in ``targets/<target>-<subtarget>/profiles.mk``. There are two macros
used to define which images are generated: ``GluonProfile`` and ``GluonModel``. The following examples
are taken from ``profiles.mk`` of the ``ar71xx-generic`` target::
Device classes
--------------
All supported hardware is categorized into "device classes". This allows to
adjust the feature set of Gluon to the different hardware's capabilities via
``site.mk`` without having to list individual devices.
$(eval $(call GluonProfile,TLWR1043))
$(eval $(call GluonModel,TLWR1043,tl-wr1043nd-v1-squashfs,tp-link-tl-wr1043n-nd-v1))
$(eval $(call GluonModel,TLWR1043,tl-wr1043nd-v2-squashfs,tp-link-tl-wr1043n-nd-v2))
There are currently two devices classes defined: "standard" and "tiny". The
"tiny" class contains all devices that do not meet the following requirements:
The ``GluonProfile`` macro takes at least one parameter, the profile name as it is
defined in the Makefiles of OpenWrt (``openwrt/target/linux/<target>/<subtarget>/profiles/*``
and ``openwrt/target/linux/<target>/image/Makefile``). If the target you are on doesn't define
profiles (e.g. on x86), just add a single profile called ``Generic`` or similar.
- At least 7 MiB of usable firmware space
- At least 64 MiB of RAM (128MiB for devices with ath10k radio)
It may optionally take a second parameter which defines additional packages to include for the profile
(e.g. ath10k). The additional packages defined in ``openwrt/target/linux/<target>/<subtarget>/profiles/*``
aren't used.
Target configuration
--------------------
Gluon's hardware support is based on OpenWrt's. For each supported target,
a configuration file exists at ``targets/<target>-<subtarget>`` (or just
``target/<target>`` for targets without subtargets) that contains all
Gluon-specific settings for the target. The generic configuration
``targets/generic`` contains settings that affect all targets.
The ``GluonModel`` macro takes three parameters: The profile name, the suffix of the image file
generated by OpenWrt (without the file extension), and the final image name of the Gluon image.
The final image name must be the same that is returned by the following command.
All targets must be listed in ``target/targets.mk``.
::
The target configuration language is based on Lua, so Lua's syntax for variables
and control structures can be used.
lua -e 'print(require("platform_info").get_image_name())'
Device definitions
~~~~~~~~~~~~~~~~~~
To configure a device to be built for Gluon, the ``device`` function is used.
In the simplest case, only two arguments are passed, for example:
.. code-block:: lua
This is just so the autoupdater can work. The command has to be executed _on_ the target (eg. the hardware router with a flashed image). So you'll first have to build an image with a guessed name, and afterwards build a new, correctly named image. On targets which aren't supported by the autoupdater,
``require("platform_info").get_image_name()`` will just return ``nil`` and the final image name
may be defined arbitrarily.
device('tp-link-tl-wdr3600-v1', 'tplink_tl-wdr3600-v1')
On devices with multiple WLAN adapters, care must also be taken that the primary MAC address is
configured correctly. ``/lib/gluon/core/sysconfig/primary_mac`` should contain the MAC address which
can be found on a label on most hardware; if it does not, ``/lib/gluon/upgrade/core/initial/001-sysconfig``
in ``gluon-core`` might need a fix. (There have also been cases in which the address was incorrect
even on devices with only one WLAN adapter, in these cases an OpenWrt bug was the cause).
The first argument is the device name in Gluon, which is part of the output
image filename, and must correspond to the model string looked up by the
autoupdater. The second argument is the corresponding device profile name in
OpenWrt, as found in ``openwrt/target/linux/<target>/image/*``.
Adding support for new hardware targets
---------------------------------------
Adding a new target is much more complex than adding a new profile. There are two basic steps
required for adding a new target:
A table of additional settings can be passed as a third argument:
Adjust packages
'''''''''''''''
One package that definitely needs adjustments for every new target added is ``lua-platform-info``. Just
start with a copy of an existing platform info script, adjust it for the new target, and add the new target
to the list of supported targets in the package Makefile.
.. code-block:: lua
On many targets, Gluon's network setup scripts (mainly in the packages ``gluon-core`` and ``gluon-mesh-batman-adv-core``)
won't run correctly without some adjustments, so better double check that everything is fine there (and the files
``primary_mac``, ``lan_ifname`` and ``wan_ifname`` in ``/lib/gluon/core/sysconfig/`` contain sensible values).
device('ubiquiti-edgerouter-x', 'ubnt_edgerouter-x', {
factory = false,
packages = {'-hostapd-mini'},
manifest_aliases = {
'ubnt-erx',
},
})
Add support to the build system
'''''''''''''''''''''''''''''''
A directory for the new target must be created under ``targets``, and it must be added
to ``targets/targets.mk``. In the new target directory, three files must be created:
The supported additional settings are described in the following sections.
* config
* profiles.mk
* vermagic
Suffixes and extensions
~~~~~~~~~~~~~~~~~~~~~~~
For many targets, OpenWrt generates images with the suffixes
``-squashfs-factory.bin`` and ``-squashfs-sysupgrade.bin``. For devices with
different image names, is it possible to override the suffixes and extensions
using the settings ``factory``, ``factory_ext``, ``sysupgrade`` and
``sysupgrade_ext``, for example:
The file ``config`` can be used to add additional, target-specific options to the OpenWrt config. It
must at least select the correct target and subtarget. For ``profiles.mk``, see :ref:`hardware-adding-profiles`.
.. code-block:: lua
The files ``vermagic`` must have the correct content so kernel modules from the upstream repositories
can be installed without dependency issues. The OpenWrt version a Gluon release is based on is defined by the upstream package repo URL in ``include/gluon.mk``
(in the variable ``CONFIG_VERSION_REPO``); at the time this documentation was written, this was ``barrier_breaker/14.07``; whenever
the package repo is updated, all ``vermagic`` files must be updated as well.
{
factory = '-squashfs-combined',
factory_ext = '.img.gz',
sysupgrade = '-squashfs-combined',
sysupgrade_ext = '.img.gz',
}
The content is a hash which is part of the version number of the kernel package. So in the case of ``ar71xx-generic`` on
``barrier_breaker``, we look for the kernel package in the directory ``https://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/generic/packages/base/``.
As the kernel package is called ``kernel_3.10.49-1-0114c71ed85677c9c1e4911437af4743_ar71xx.ipk``, the correct ``vermagic`` string
is ``0114c71ed85677c9c1e4911437af4743``.
Only settings that differ from the defaults need to be passed. ``factory`` and
``sysupgrade`` can be set to ``false`` when no such images exist.
After this, is should be sufficient to call ``make GLUON_TARGET=<target>-<subtarget>`` to build the images for the new target.
For some device types, there are multiple factory images with different
extensions. ``factory_ext`` can be set to a table of strings to account for this
case:
.. code-block:: lua
{
factory_ext = {'.img.gz', '.vmdk', '.vdi'},
}
TODO: Extra images
Aliases and manifest aliases
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sometimes multiple devices exist that use the same OpenWrt images. To make it
easier to find these images, the ``aliases`` setting can be used to define
additional device names. Gluon will create symlinks for these names in the
image output directory.
.. code-block:: lua
device('aruba-ap-303', 'aruba_ap-303', {
factory = false,
aliases = {'aruba-instant-on-ap11'},
})
The aliased name will also be added to the autoupdate manifest, allowing upgrade
images to be found under the different name on targets that perform model name
detection at runtime.
It is also possible to add alternative names to the autoupdater manifest without
creating a symlink by using ``manifest_aliases`` instead of ``aliases``, which
should be done when the alternative name does not refer to a separate device.
This is particularly useful to allow the autoupdater to work when the model name
changed between Gluon versions.
Package lists
~~~~~~~~~~~~~
Gluon generates lists of packages that are installed in all images based on a
default list and the features and packages specified in the site configuration.
In addition, OpenWrt defines additional per-device package lists. These lists
may be modified in Gluon's device definitions, for example to include additional
drivers and firmware, or to remove unneeded software. Packages to remove are
prefixed with a ``-`` character.
For many ath10k-based devices, this is used to replace the "CT" variant of
ath10k with the mainline-based version:
.. code-block:: lua
local ATH10K_PACKAGES_QCA9880 = {
'kmod-ath10k',
'-kmod-ath10k-ct',
'-kmod-ath10k-ct-smallbuffers',
'ath10k-firmware-qca988x',
'-ath10k-firmware-qca988x-ct',
}
device('openmesh-a40', 'openmesh_a40', {
packages = ATH10K_PACKAGES_QCA9880,
factory = false,
})
This example also shows how to define a local variable, allowing the package
list to be reused for multiple devices.
Device flags
~~~~~~~~~~~~
The settings ``class``, ``deprecated`` or ``broken`` should be set according to
the device support status. The default values are as follows:
.. code-block:: lua
{
class = 'standard',
deprecated = false,
broken = false,
}
- Device classes are described in :ref:`device-class-definition`
- Broken devices are untested or do not meet our requirements as given by the
device checklist
- Deprecated devices are slated for removal in a future Gluon version due to
hardware constraints
Global settings
~~~~~~~~~~~~~~~
There is a number of directives that can be used outside of a ``device()``
definition:
- ``include('filename')``: Include another file with global settings
- ``config(key, value)``: Set a config symbol in OpenWrt's ``.config``. Value
may be a string, number, boolean, or nil. Booleans and nil are used for
tristate symbols, where nil sets the symbol to ``m``.
- ``try_config(key, value)``: Like ``config()``, but do not fail if setting
the symbol is not possible (usually because its dependencies are not met)
- ``packages { 'package1', '-package2', ... }``: Define a list of packages to
add or remove for all devices of a target. Package lists passed to multiple
calls of ``packages`` will be aggregated.
- ``defaults { key = value, ... }``: Set default values for any of the
additional settings that can be passed to ``device()``.
Helper functions
~~~~~~~~~~~~~~~~
The following helpers can be used in the target configuration:
- ``env.KEY`` allows to access environment variables
- ``istrue(value)`` returns true if the passed string is a positive number
(often used with ``env``, for example ``if istrue(env.GLUON_DEBUG) then ...``)
Hardware support in packages
----------------------------
In addition to the target configuration files, some device-specific changes may
be required in packages.
gluon-core
~~~~~~~~~~
- ``/lib/gluon/upgrade/010-primary-mac``: Override primary MAC address selection
Usually, the primary (label) MAC address is defined in OpenWrt's Device Trees.
For devices or targets where this is not the case, it is possible to specify
what interface to take the primary MAC address from in ``010-primary-mac``.
- ``/lib/gluon/upgrade/020-interfaces``: Override LAN/WAN interface assignment
On PoE-powered devices, the PoE input port should be "WAN".
- ``/usr/lib/lua/gluon/platform.lua``: Contains a list of outdoor devices
gluon-setup-mode
~~~~~~~~~~~~~~~~
- ``/lib/gluon/upgrade/320-setup-ifname``: Contains a list of devices that use
the WAN port for the config mode
On PoE-powered devices, the PoE input port should be used for the config
mode. This is handled correctly by default for outdoor devices listed in
``platform.lua``.
libplatforminfo
~~~~~~~~~~~~~~~
When adding support for a new target to Gluon, it may be necessary to adjust
libplatforminfo to define how autoupdater image names are derived from the
model name.

View File

@ -1,88 +0,0 @@
Internationalization support
============================
General guidelines
------------------
* All config mode packages must be fully translatable, with complete English and German texts.
* All new expert mode packages be fully translatable. English texts are required, German texts recommended.
* Existing expert mode packages should be made translatable as soon as possible.
* The "message IDs" (which are the arguments to the ``translate`` function) should be the
English texts.
i18n support in LuCI
--------------------
Internationalization support can be found in the ``luci.i18n`` package.
Strings are translated using the ``i18n.translate`` and ``i18n.translatef`` functions
(``translate`` for static strings, ``translatef`` for printf-like formatted string).
Example from the ``gluon-config-mode-geo-location`` package::
local i18n = require "luci.i18n"
o = s:option(cbi.Flag, "_location", i18n.translate("Show node on the map"))
Adding translation templates to Gluon packages
----------------------------------------------
The i18n support is based on the standard gettext system. For each translatable package,
a translation template with extension ``.pot`` can be created using the ``i18n-scan.pl``
script from the LuCI repository::
cd package/gluon-config-mode-geo-location
mkdir i18n
cd i18n
../../../packages/luci/build/i18n-scan.pl ../files > gluon-config-mode-geo-location.pot
The entries in the template can be reordered after the generation if desirable. Lots of standard
translations like "Cancel" are already available in the LuCI base translation file (see
``packages/luci/po/templates/base.pot``) and can be removed from the template.
In addition, some additions to the Makefile must be made. Instead of OpenWrt's default package.mk,
the Gluon version ``$(GLUONDIR)/include/package.mk`` must be used. The i18n files must be installed
and PKG_CONFIG_DEPENDS must be added::
...
include $(GLUONDIR)/include/package.mk
PKG_CONFIG_DEPENDS += $(GLUON_I18N_CONFIG)
...
define Build/Compile
$(call GluonBuildI18N,gluon-config-mode-geo-location,i18n)
endef
define Package/gluon-config-mode-geo-location/install
...
$(call GluonInstallI18N,gluon-config-mode-geo-location,$(1))
endef
...
Adding translations
-------------------
A new translation file for a template can be added using the ``msginit`` command::
cd package/gluon-config-mode-geo-location/i18n
msginit -l de
This will create the file ``de.po`` in which the translations can be added.
The translation file can be updated to a new template version using the ``msgmerge`` command::
msgmerge -U de.po gluon-config-mode-geo-location.pot
After the merge, the translation file should be checked for "fuzzy matched" entries where
the original English texts have changed. All entries from the the translation file should be
translated in the ``.po`` file (or removed from it, so the original English texts are displayed
instead).
Adding support for new languages
--------------------------------
A list of all languages supported by LuCI can be found in the ``include/package.mk`` file of
the Gluon repository. Adding translations for these languages is straightforward using the ``msginit``
command.
For other languages, support must be added tu LuCI first, which constitutes completely translating
the ``base.pot``. Please contact the upstream LuCI maintainers if you'd like to do this.

View File

@ -0,0 +1,18 @@
MAC addresses
=============
Many devices don't have enough unique MAC addresses assigned by the vendor
(in batman-adv, each mesh interface needs an own MAC address that must be unique
mesh-wide).
Gluon tries to solve this issue by using a hash of the primary MAC address as a
45 bit MAC address prefix. The resulting 8 addresses are used as follows:
* 0: client0; WAN
* 1: mesh0
* 2: owe0
* 3: wan_radio0 (private WLAN); batman-adv primary address
* 4: client1; LAN
* 5: mesh1
* 6: owe1
* 7: wan_radio1 (private WLAN); mesh VPN

214
docs/dev/packages.rst Normal file
View File

@ -0,0 +1,214 @@
Package development
###################
Gluon packages are OpenWrt packages and follow the same rules described at https://openwrt.org/docs/guide-developer/packages.
Development workflow
====================
When you are developing packages, it often happens that you iteratively want to deploy
and verify the state your development. There are two ways to verify your changes:
1)
One way is to rebuild the complete firmware, flash it, configure it and verify your
development then. This usually takes at least a few minutes to get your changes
working so you can test them. Especially if you iterate a lot, this becomes tedious.
2)
Another way is to rebuild only the package you are currently working on and
to deploy this package to your test system. Here not even a reboot is required.
This makes iterating relatively fast. Your test system could be real hardware or
even a qemu in most cases.
Gluon provides scripts to enhance workflow 2). Here is an example illustrating
the workflow using these scripts:
.. code-block:: shell
# start a local qemu instance
contrib/run_qemu.sh output/images/factory/[...]-x86-64.img
# apply changes to the desired package
vi package/gluon-ebtables/files/etc/init.d/gluon-ebtables
# rebuild and push the package to the qemu instance
contrib/push_pkg.sh package/gluon-ebtables/
# test your changes
...
# do more changes
...
# rebuild and push the package to the qemu instance
contrib/push_pkg.sh package/gluon-ebtables/
# test your changes
...
(and so on...)
# see help of the script for more information
contrib/push_pkg.sh -h
...
Features of ``push_pkg.sh``:
* Works with compiled and non-compiled packages.
* This means it can be used in the development of C-code, Lua-Code and mostly any other code.
* Works with native OpenWrt and Gluon packages.
* Pushes to remote machines or local qemu instances.
* Pushes multiple packages in in one call if desired.
* Performs site.conf checks.
Implementation details of ``push_pkg.sh``:
* First, the script builds an opkg package using the OpenWrt build system.
* This package is pushed to a *target machine* using scp:
* By default the *target machine* is a locally running x86 qemu started using ``run_qemu.sh``.
* The *target machine* can also be remote machine. (See the cli switch ``-r``)
* Remote machines are not limited to a specific architecture. All architectures supported by gluon can be used as remote machines.
* Finally opkg is used to install/update the packages in the target machine.
* While doing this, it will not override ``/etc/config`` with package defaults by default. (See the cli switch ``-P``).
* While doing this, opkg calls the ``check_site.lua`` from the package as post_install script to validate the ``site.conf``. This means that the ``site.conf`` of the target machine is used for this validation.
Note that:
* ``push_pkg.sh`` does neither build nor push dependencies of the packages automatically. If you want to update dependencies, you must explicitly specify them to be pushed.
* If you add new packages, you must run ``make update config GLUON_TARGET=...``.
* You can change the gluon target of the target machine via ``make config GLUON_TARGET=...``.
* If you want to update the ``site.conf`` of the target machine, use ``push_pkg.sh package/gluon-site/``.
* Sometimes when things break, you can heal them by compiling a package with its dependencies: ``cd openwrt; make package/gluon-ebtables/clean; make package/gluon-ebtables/compile; cd ..``.
* You can exit qemu by pressing ``CTRL + a`` and ``c`` afterwards.
Gluon package makefiles
=======================
As many packages share the same or a similar structure, Gluon provides a ``package/gluon.mk`` that
can be included for common definitions. This file replaces OpenWrt's ``$(INCLUDE_DIR)/package.mk``;
it is usually included as ``include ../gluon.mk`` from Gluon core packages, or as
``include $(TOPDIR)/../package/gluon.mk`` from feeds.
Provided macros
***************
* *GluonBuildI18N* (arguments: *<source directory>*)
Converts the *.po* files for all enabled languages from the given source directory to
the binary *.lmo* format and stores them in ``$(PKG_BUILD_DIR)/i18n``.
* *GluonInstallI18N*
Install *.lmo* files from ``$(PKG_BUILD_DIR)/i18n`` to ``/lib/gluon/web/i18n`` in the
package install directory.
* *GluonSrcDiet* (arguments: *<source directory>*, *<destination directory>*)
Copies a directory tree, processing all files in it using *LuaSrcDiet*. The directory
tree should only contain Lua files.
* *GluonCheckSite* (arguments: *<source file>*)
Intended to be used in a package postinst script. It will use the passed Lua
snippet to verify package-specific site configuration.
* *BuildPackageGluon* (replaces *BuildPackage*)
Extends the *Package/<name>* definition with common defaults, sets the package
install script to the common *Gluon/Build/Install*, and automatically creates
a postinst script using *GluonCheckSite* if a ``check_site.lua`` is found in the
package directory.
Default build steps
*******************
These defaults greatly reduce the boilerplate in each package, but they can also
be confusing because of the many implicit behaviors depending on files in the
package directory. If any part of *Gluon/Build/Compile* or *Gluon/Build/Install*
does not work as intended for a package, the compile and install steps can
always be replaced or extended.
*Build/Compile* is set to *Gluon/Build/Compile* by default, which will
* run OpenWrt standard default commands (*Build/Compile/Default*) if a ``src/Makefile``
or ``src/CMakeLists.txt`` is found
* run *GluonSrcDiet* on all files in the ``luasrc`` directory
* run *GluonBuildI18N* if a ``i18n`` directory is found
*Package/<name>* defaults to *Gluon/Build/Install* for packages defined using
*BuildPackageGluon*, which will
* copy all files from ``$(PKG_INSTALL_DIR)`` into the package if ``$(PKG_INSTALL)`` is 1
* copy all files from ``files`` into the package
* copy all Lua files built from ``luasrc`` into the package
* installs ``$(PKG_BUILD_DIR)/respondd.so`` to ``/usr/lib/respondd/$(PKG_NAME).so`` if ``src/respondd.c`` exists
* installs compiled i18n *.lmo* files
Feature flags
=============
Feature flags provide a convenient way to define package selections without
making it necessary to list each package explicitly. The list of features to
enable for a Gluon build is set by the *GLUON_FEATURES* variable in *site.mk*.
The main feature flag definition file is ``package/features``, but each package
feed can provide additional definitions in a file called ``features`` at the root
of the feed repository.
Each flag *$flag* will include the package the name *gluon-$flag* by default.
The feature definition file can modify the package selection by adding or removing
packages when certain combinations of flags are set.
Feature definitions use Lua syntax. Two basic functions are defined:
* *feature(name, pkgs)*: Defines a new feature. *feature()* expects a feature
(flag) name and a list of packages to add or remove when the feature is
enabled.
* Defining a feature using *feature* replaces the default definition of
just including *gluon-$flag*.
* A package is removed when the package name is prefixed with a ``-`` (after
the opening quotation mark).
* *when(expr, pkgs)*: Adds or removes packages when a given logical expression
of feature flags is satisfied.
* *expr* is a logical expression composed of feature flag names (each prefixed
with an underscore before the opening quotation mark), logical operators
(*and*, *or*, *not*) and parentheses.
* Referencing a feature flag in *expr* has no effect on the default handling
of the flag. When no *feature()* entry for a flag exists, it will still
add *gluon-$flag* by default.
* *pkgs* is handled as for *feature()*.
Example::
feature('web-wizard', {
'gluon-config-mode-hostname',
'gluon-config-mode-geo-location',
'gluon-config-mode-contact-info',
'gluon-config-mode-outdoor',
})
when(_'web-wizard' and (_'mesh-vpn-fastd' or _'mesh-vpn-tunneldigger'), {
'gluon-config-mode-mesh-vpn',
})
feature('no-radvd', {
'-gluon-radvd',
})
This will
* disable the inclusion of the (non-existent) packages *gluon-web-wizard* and *gluon-no-radvd* when their
corresponding feature flags appear in *GLUON_FEATURES*
* enable four additional config mode packages when the *web-wizard* feature is enabled
* enable *gluon-config-mode-mesh-vpn* when both *web-wizard* and one
of *mesh-vpn-fastd* and *mesh-vpn-tunneldigger* are enabled
* disable the *gluon-radvd* package when *gluon-no-radvd* is enabled

36
docs/dev/site_library.rst Normal file
View File

@ -0,0 +1,36 @@
gluon.site library
==================
The *gluon.site* library allows convenient access to the site configuration
from Lua scripts. Example:
.. code-block:: lua
local site = require 'gluon.site'
print(site.wifi24.ap.ssid())
The *site* object in this example does not directly represent the *site.conf* data structure;
instead, it is wrapped in a way that makes it more convenient to access deeply nested elements.
To access the underlying values, they must be unwrapped using the function call notation
(the ``()`` after ``site.wifi24.ap.ssid`` in the example).
The wrapper objects have two advantages over simple Lua tables:
* Accessing non-existing values is never an error: ``site.wifi24.ap.ssid()`` will simply
return *nil* if ``site.wifi24`` or ``site.wifi24.ap`` do not exist
* Default values: A default value can be passed to the unwrapping function call:
.. code-block:: lua
print(site.wifi24.ap.ssid('Default'))
will return *'Default'* instead of *nil* when the value is unset.
Note that *nil* values and unset values are equivalent in Lua.
A simple way to access the whole site configuration as a simple table
is to unwrap the top-level site object:
.. code-block:: lua
local site_table = site()

View File

@ -6,7 +6,7 @@ Basics
After each sysupgrade (including the initial installation), Gluon will execute all scripts
under ``/lib/gluon/upgrade``. These scripts' filenames usually begin with a 3-digit number
specifying the order of execution.
specifying the order of execution. Note that the script files need to be executable.
To get an overview of the ordering of all scripts of all packages, the helper script ``contrib/lsupgrade.sh``
in the Gluon repository can be used, which will print all upgrade scripts' filenames and directories. If executed
@ -16,17 +16,15 @@ Best practices
--------------
* Most upgrade scripts are written in Lua. This allows using lots of helper functions provided
by LuCi and Gluon, e.g. to access the site configuration or edit UCI configuration files.
by Gluon, e.g. to access the site configuration or edit UCI configuration files.
* Whenever possible, scripts shouldn't check if they are running for the first time, but just edit configuration
files to achive a valid configuration (without overwriting configuration changes made by the user where desirable).
files to achieve a valid configuration (without overwriting configuration changes made by the user where desirable).
This allows using the same code to create the initial configuration and upgrade configurations on upgrades.
* If it is unavoidable to run different code during the initial installation, the ``sysconfig.gluon_version`` variable
can be checked. This variable in ``nil`` during the initial installation and contains the previously install Gluon
version otherwise. The package ``gluon-legacy`` (which is responsible for upgrades from the old firmwares of
Hamburg/Kiel/Lübeck) uses the special value ``legacy``; other packages should handle this value just as any other
string.
can be checked. This variable is ``nil`` during the initial installation and contains the previously installed Gluon
version otherwise.
Script ordering
---------------

View File

@ -1,16 +1,22 @@
WAN support
===========
Uplink support
==============
As the WAN port of a node will be connected to a user's private network, it
is essential that the node only uses the WAN when it is absolutely necessary.
There are two cases in which the WAN port is used:
* Mesh VPN (package ``gluon-mesh-vpn-fastd``
* Mesh VPN (package ``gluon-mesh-vpn-fastd``)
* DNS to resolve the VPN servers' addresses (package ``gluon-wan-dnsmasq``)
After the VPN connection has been established, the node should be able to reach
the mesh's DNS servers and use these for all other name resolution.
If a device has only a single Ethernet port (or group of ports), it will be
used as an uplink port even when it is not labelled as "WAN" by default. This
behavior can be controlled using the ``interfaces.single.default_roles``
site.conf option. It is also possible to alter the interface assignment after
installation by modifying ``/etc/config/gluon`` and running
``gluon-reconfigure``.
Routing tables
~~~~~~~~~~~~~~
@ -46,4 +52,4 @@ so the WAN DNS servers aren't leaked to the primary DNS daemon.
*libpacketmark* is used to make the secondary DNS daemon send its requests over the WAN interface.
The package ``gluon-mesh-vpn-fastd`` provides an iptables rule which will redirect all DNS requests from processes running
with the primary group ``gluon-fastd`` to ``127.0.0.1:54``, thus making fastd use the secondary DNS daemon.
with the primary group ``gluon-mesh-vpn`` to ``127.0.0.1:54``, thus making fastd use the secondary DNS daemon.

View File

@ -0,0 +1,82 @@
Config Mode
===========
The `Config Mode` consists of several modules that provide a range of different
configuration options:
gluon-config-mode-core
This modules provides the core functionality for the config mode.
All modules must depend on it.
gluon-config-mode-hostname
Provides a hostname field.
gluon-config-mode-autoupdater
Informs whether the autoupdater is enabled.
gluon-config-mode-mesh-vpn
Allows toggling of mesh-vpn-fastd and setting a bandwidth limit.
gluon-config-mode-geo-location
Enables the user to set the geographical location of the node.
gluon-config-mode-contact-info
Adds a field where the user can provide contact information.
Writing Config Mode modules
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Config mode modules are located at ``/lib/gluon/config-mode/wizard`` and
``/lib/gluon/config-mode/reboot``. Modules are named like ``0000-name.lua`` and
are executed in lexical order. In the standard package set, the
order is, for wizard modules:
- 0050-autoupdater-info
- 0100-hostname
- 0300-mesh-vpn
- 0400-geo-location
- 0500-contact-info
The reboot module order is:
- 0100-mesh-vpn
- 0900-msg-reboot
All modules are run in the gluon-web model context and have access to the same
variables as "full" gluon-web modules.
Wizards
-------
Wizard modules must return a function that is provided with the wizard form and an
UCI cursor. The function can create configuration sections in the form:
.. code-block:: lua
return function(form, uci)
local s = form:section(Section)
local o = s:option(Value, "hostname", "Hostname")
o.default = uci:get_first("system", "system", "hostname")
o.datatype = "hostname"
function o:write(data)
uci:set("system", uci:get_first("system", "system"), "hostname", data)
end
return {'system'}
end
The function may return a table of UCI packages to commit after the individual
fields' `write` methods have been executed. This is done to avoid committing the
packages repeatedly when multiple wizard modules modify the same package.
Reboot page
-----------
Reboot modules are simply executed when the reboot page is
rendered:
.. code-block:: lua
renderer.render_string("Hello World!")

124
docs/dev/web/controller.rst Normal file
View File

@ -0,0 +1,124 @@
Controllers
===========
Controllers live in the ``controller`` subdirectory of a gluon-web application
(``/lib/gluon/config-mode/controller`` for the config mode,
``/lib/gluon/status-page/controller`` for the status page). They define which pages ("routes")
exist under the application base URL, and what code is run when these pages are requested.
Controller scripts usually start with a *package* declaration, followed by calls
to the *entry* function, which each define one route:
.. code-block:: lua
package 'gluon-web-admin'
entry({"admin"}, alias("admin", "info"), _("Advanced settings"), 10)
entry({"admin", "info"}, template("admin/info"), _("Information"), 1)
*package* defines the translation namespace for the titles of the defined
pages as well as the referenced views and models. The entry function expects 4
arguments:
- `path`: Components of the path to define a route for.
The above example defines routes for the paths ``admin`` and ``admin/info``.
- `target`: Dispatcher for the route. See the following section for details.
- `title`: Page title (also used in navigation). The underscore function is used
to mark the strings as translatable for ``i18n-scan.pl``.
- `order`: Sort index in navigation (defaults to 100)
Navigation indexes are automatically generated for each path level. Pages can be
hidden from the navigation by setting the `hidden` property of the node object
returned by `entry`:
.. code-block:: lua
entry({"hidden"}, alias("foo"), _("I'm hidden!")).hidden = true
Dispatchers
-----------
- *alias* (*path*, ...): Redirects to a different page. The path components are
passed as individual arguments.
- *call* (*func*, ...): Runs a Lua function for custom request handling. The given
function is called with the HTTP object and the template renderer as first
two arguments, followed by all additional arguments passed to `call`.
- *template* (*view*): Renders the given view. See :doc:`view`.
- *model* (*name*): Displays and evaluates a form as defined by the given model. See the
:doc:`model` page for an explanation of gluon-web models.
.. _web-controller-http:
The HTTP object
---------------
The HTTP object provides information about the HTTP requests and allows to add
data to the reply. Using it directly is rarely necessary when gluon-web
models and views are used.
Useful functions:
- *getenv* (*key*): Returns a value from the CGI environment passed by the webserver.
- *formvalue* (*key*): Returns a value passed in a query string or in the content
of a POST request. If multiple values with the same name have been passed, only
the first is returned.
- *formvaluetable* (*key*): Similar to *formvalue*, but returns a table of all
values for the given key.
- *status* (*code*, *message*): Writes the HTTP status to the reply. Has no effect
if a status has already been sent or non-header data has been written.
- *header* (*key*, *value*): Adds an HTTP header to the reply to be sent to
the client. Has no effect when non-header data has already been written.
- *prepare_content* (*mime*): Sets the *Content-Type* header to the given MIME
type
- *write* (*data*, ...): Sends the given data to the client. If headers have not
been sent, it will be done before the data is written.
HTTP functions are called in method syntax, for example:
.. code-block:: lua
http:write('Output!')
.. _web-controller-template-renderer:
The template renderer
---------------------
The template renderer allows to render templates (views). The most useful functions
are:
- *render* (*view*, *scope*, *pkg*): Renders the given view, optionally passing a table
with additional variables to make available in the template. The passed package
defines the translation namespace.
- *render_string* (*str*, *scope*, *pkg*): Same as *render*, but the template is passed
directly instead of being loaded from the view directory.
The renderer functions are called in property syntax, for example:
.. code-block:: lua
renderer.render('layout')
Differences from LuCI
---------------------
- Controllers must not use the *module* function to define a Lua module (*gluon-web*
will set up a proper environment for each controller itself)
- Entries are defined at top level, not inside an *index* function
- The *alias* dispatcher triggers an HTTP redirect instead of directly running
the dispatcher of the aliased route.
- The *call* dispatcher is passed a function instead of a string with a function
name.
- The *cbi* dispatcher of LuCI has been renamed to *model*.
- The HTTP POST handler support the multipart/form-data encoding only, so
``enctype="multipart/form-data"`` must be included in all *<form>* HTML
elements.
- Other dispatchers like *form* are not provided.

109
docs/dev/web/i18n.rst Normal file
View File

@ -0,0 +1,109 @@
Internationalization support
============================
General guidelines
------------------
* All config mode packages must be fully translatable, with complete English and German texts.
* All new expert mode packages must be fully translatable. English texts are required.
* German translations are recommended. Other supported languages, especially French, are
nice-to-have, but not required. If you don't know a language well, rather leave the translation
blank, so it is obvious that there is no proper translation yet.
* Existing expert mode packages should be made translatable as soon as possible.
* The "message IDs" (which are the arguments to the *translate* function) should be the
English texts.
i18n support in Gluon
---------------------
Internationalization support is available in all components (models, view and
controllers) of *gluon-web*-based packages. Strings are translated using the *translate*,
*_translate* and *translatef* functions (*translate* for static strings, *translatef*
for printf-like formatted string; *_translate* works the same as *translate*, but
will return *nil* instead of the original string when no translation is available).
In views, the special tags ``<%:...%>`` can be used to translate the contained string.
Example from the *gluon-config-mode-geo-location* package:
.. code-block:: lua
local share_location = s:option(Flag, "location", translate("Show node on the map"))
Note that translations are *namespaced*: each package will only use its own
translation strings by default. For this purpose, the package name must by
specified in a package's controller. It is possible to access a different
translation package using the *i18n* function from models and view, which is
necessary when strings from the site configuration are used, or packages do not
have their own controller (which is the case for config mode wizard components).
.. code-block:: lua
local site_i18n = i18n 'gluon-site'
local msg = site_i18n._translate('gluon-config-mode:welcome')
Adding translation templates to Gluon packages
----------------------------------------------
The i18n support is based on the standard gettext system. For each translatable package,
a translation template with extension ``.pot`` can be created using the *i18n-scan.pl*
script in the ``contrib`` directory:
.. code-block:: sh
cd package/gluon-web-mesh-vpn-fastd
mkdir i18n
cd i18n
../../../contrib/i18n-scan.pl ../files ../luasrc > gluon-web-mesh-vpn-fastd.pot
The same command can be run again to update the template.
In addition, the Makefile must be adjusted. Instead of OpenWrt's default *package.mk*,
the Gluon version (``../gluon.mk`` for core packages) must be used. The i18n files must be installed
and PKG_CONFIG_DEPENDS must be added::
...
include ../gluon.mk
PKG_CONFIG_DEPENDS += $(GLUON_I18N_CONFIG)
...
define Build/Compile
$(call GluonBuildI18N,gluon-web-mesh-vpn-fastd,i18n)
endef
define Package/gluon-web-mesh-vpn-fastd/install
...
$(call GluonInstallI18N,gluon-web-mesh-vpn-fastd,$(1))
endef
...
Adding translations
-------------------
A new translation file for a template can be added using the *msginit* command:
.. code-block:: sh
cd package/gluon-web-mesh-vpn-fastd/i18n
msginit -l de
This will create the file *de.po* in which the translations can be added.
The translation file can be updated to a new template version using the *msgmerge* command:
.. code-block:: sh
msgmerge -U de.po gluon-web-mesh-vpn-fastd.pot
After the merge, the translation file should be checked for "fuzzy matched" entries where
the original English texts have changed. All entries from the translation file should be
translated in the *.po* file (or removed from it, so the original English texts are displayed
instead).
Adding support for new languages
--------------------------------
A list of all languages supported by *gluon-web* can be found in ``package/gluon.mk``.
New languages just need to be added to *GLUON_SUPPORTED_LANGS*, and a human-readable
language name must be defined.

153
docs/dev/web/model.rst Normal file
View File

@ -0,0 +1,153 @@
Models
======
Models are defined in the ``model`` subdirectory of a gluon-web application
(``/lib/gluon/config-mode/model`` for the config mode; the status
page does not use any models). Model support is not part of the gluon-web core
anymore, but is provided by the *gluon-web-model* package.
Each model defines one or more forms to display on a page, and how the submitted
form data is handled.
Let's start with an example:
.. code-block:: lua
local f = Form(translate('Hostname'))
local s = f:section(Section)
local o = s:option(Value, 'hostname', translate('Hostname'))
o.default = uci:get_first('system', 'system', 'hostname')
function o:write(data)
uci:set('system', uci:get_first('system', 'system'), 'hostname', data)
uci:commit('system')
end
return f
The toplevel element of a model is always a *Form*, but it is also possible for
a model to return multiple forms, which are displayed one below the other.
A *Form* has one or more *Sections*, and each *Section* has different types
of options.
All of these elements have an *id*, which is used to identify them in the HTML
form and handlers. If no ID is given, numerical IDs will be assigned automatically,
but using explicitly named elements is often advisable (and it is required if a
form does not always include the same elements, i.e., some forms, sections or
options are added conditionally). IDs are hierarchical, so in the above example,
the *Value* would get the ID ``1.1.hostname`` (value *hostname* in first section
of first form).
Classes and methods
-------------------
- *Form* (*title*, *description*, *id*)
- *Form:section* (*type*, *title*, *description*, *id*)
Creates a new section of the given type (usually *Section*).
- *Form:write* ()
Is called after the form has been submitted (but only if the data is valid). It
is called last (after all options' *write* methods) and is usually used
to commit changed UCI packages.
The default implementation of *write* doesn't do anything, but it can be
overridden.
- *Section* (usually instantiated through *Form:section*)
- *Section:option* (*type*, *id*, *title*, *description*)
Creates a new option of the given type. Option types:
- *Value*: simple text entry
- *TextValue*: multiline text field
- *ListValue*: radio buttons or dropdown selection
- *DynamicList*: variable number of text entry fields
- *Flag*: checkbox
Most option types share the same properties and methods:
- *default*: default value
- *optional*: value may be empty
- *datatype*: one of the types described in :ref:`web-model-datatypes`
By default (when *datatype* is *nil*), all values are accepted.
- *state*: has one of the values *FORM_NODATA*, *FORM_VALID* and *FORM_INVALID*
when read in a form handler
An option that has not been submitted because of its dependencies will have
the state *FORM_NODATA*, *FORM_INVALID* if the submitted value is not valid
according to the set *datatype*, and *FORM_VALID* otherwise.
- *data*: can be read in form handlers to get the submitted value
- *depends* (*self*, *option*, *value*): adds a dependency on another option
The option will only be shown when the passed option has the given value. This
is mainly useful when the other value is a *Flag* or *ListValue*.
- *depends* (*self*, *deps*): adds a dependency on multiple other options
*deps* must be a table with options as keys and values as values. The option
will only be shown when all passed options have the corresponding values.
Multiple alternative dependencies can be added by calling *depends* repeatedly.
- *value* (*self*, *value*, *text*): adds a choice to a *ListValue*
- *write* (*self*, *data*): is called with the submitted value when all form data is valid.
Does not do anything by default, but can be overridden.
The *default* value, the *value* argument to *depends* and the output *data* always have
the same type, which is usually a string (or *nil* for optional values). Exceptions
are:
- *Flag* uses boolean values
- *DynamicList* uses a table of strings
Despite its name, the *datatype* setting does not affect the returned value type,
but only defines a validator the check the submitted value with.
For a more complete example that actually makes use of most of these features,
have a look at the model of the *gluon-web-network* package.
.. _web-model-datatypes:
Data types
----------
- *integer*: an integral number
- *uinteger*: an integral number greater than or equal to zero
- *float*: a number
- *ufloat*: a number greater than or equal to zero
- *ipaddr*: an IPv4 or IPv6 address
- *ip4addr*: an IPv4 address
- *ip6addr*: an IPv6 address
- *wpakey*: a string usable as a WPA key (either between 8 and 63 characters, or 64 hex digits)
- *range* (*min*, *max*): a number in the given range (inclusive)
- *min* (*min*): a number greater than or equal to the given minimum
- *max* (*max*): a number less than or equal to the given maximum
- *irange* (*min*, *max*): an integral number in the given range (inclusive)
- *imin* (*min*): an integral number greater than or equal to the given minimum
- *imax* (*max*): an integral number less than or equal to the given maximum
- *minlength* (*min*): a string with the given minimum length
- *maxlength* (*max*): a string with the given maximum length
Differences from LuCI
---------------------
- LuCI's *SimpleForm* and *SimpleSection* are called *Form* and *Section*, respectively
- Is it not possible to add options to a *Form* directly, a *Section* must always
be created explicitly
- Many of LuCI's CBI classes have been removed, most importantly the *Map*
- The *rmempty* option attribute does not exist, use *optional* instead
- Only the described data types are supported
- Form handlers work completely differently (in particular, a *Form*'s *handle*
method should usually not be overridden in *gluon-web*)

60
docs/dev/web/view.rst Normal file
View File

@ -0,0 +1,60 @@
Views
=====
The template parser reads views from the ``view`` subdirectory of a
gluon-web application (``/lib/gluon/config-mode/view`` for the config mode,
``lib/gluon/status-page/view`` for the status page).
Writing own views should usually be avoided in favour of using :doc:`model`
with their predefined views.
Views are partial HTML pages, with additional template tags that allow
to embed Lua code and translation strings. The following tags are defined:
- ``<%`` ... ``%>`` evaluates the enclosed Lua expression.
- ``<%|`` ... ``%>`` evaluates the enclosed Lua expression and prints its value.
- ``<%=`` ... ``%>`` evaluates the enclosed Lua expression and prints its value
*without escaping HTML entities*. This is useful when the value contains HTML code.
- ``<%+`` ... ``%>`` includes another template.
- ``<%:`` ... ``%>`` translates the enclosed string using the loaded i18n catalog.
- ``<%_`` ... ``%>`` translates the enclosed string *without escaping HTML entities*
in the translation. This only makes sense when the i18n catalog contains HTML code.
- ``<%#`` ... ``%>`` is a comment.
All of these also come in the whitespace-stripping variants ``<%-`` and ``-%>`` that
remove all whitespace before or after the tag.
Complex combinations of HTML and Lua code are possible, for example:
.. code-block:: text
<div>
<% if foo then %>
Content
<% end %>
</div>
Variables and functions
-----------------------
Many call sites define additional variables (for example, model templates can
access the model as *self* and a unique element ID as *id*), but the following
variables and functions should always be available for the embedded Lua code:
- *renderer*: :ref:`web-controller-template-renderer`
- *http*: :ref:`web-controller-http`
- *request*: Table containing the path components of the current page
- *url* (*path*): returns the URL for the given path, which is passed as a table of path components.
- *attr* (*key*, *value*): Returns a string of the form ``key="value"``
(with a leading space character before the key).
*value* is converted to a string (tables are serialized as JSON) and HTML entities
are escaped. Returns an empty string when *value* is *nil* or *false*.
- *include* (*template*): Includes another template.
- *node* (*path*, ...): Returns the controller node for the given page (passed as
one argument per path component).
Use ``node(unpack(request))`` to get the node for the current page.
- *pcdata* (*str*): Escapes HTML entities in the passed string.
- *urlencode* (*str*): Escapes the passed string for use in an URL.
- *translate*, *_translate*, *translatef* and *i18n*: see :doc:`i18n`

View File

@ -1,163 +0,0 @@
Announcing Node Information
===========================
Gluon is capable of announcing information about each node to the mesh
and to neighbouring nodes. This allows nodes to learn each others hostname,
IP addresses, location, software versions and various other information.
Format of collected data
------------------------
Information to be announced is currently split into two categories:
nodeinfo
In this category (mostly) static information is collected. If
something is unlikely to change without human intervention it should be
put here.
statistics
This category holds fast changing data, like traffic counters, uptime,
system load or the selected gateway.
Both categories will have a ``node_id`` key by default. It should be used to
match data from *statistics* to *nodeinfo*.
Accessing Node Information
--------------------------
There are two packages responsible for distribution of the information. For
one, information is distributed across the mesh using alfred_. Information
between neighbouring nodes is exchanged using `gluon-announced`.
.. _alfred: http://www.open-mesh.org/projects/alfred
alfred (mesh bound)
~~~~~~~~~~~~~~~~~~~
The package ``gluon-alfred`` is required for this to work.
Using alfred both categories are distributed within the mesh. In order to
retrieve the data you'll need both a local alfred daemon and alfred-json_
installed. Please note that at least one alfred daemon is required to run as
`master`.
.. _alfred-json: https://github.com/tcatm/alfred-json
`nodeinfo` is distributed as alfred datatype `158`, while `statistics` uses
`159`. Both are compressed using GZip (alfred-json can handle the decompression).
In order to retrieve statistics data you could run:
::
# alfred-json -z -r 159
{
"f8:d1:11:7e:97:dc": {
"processes": {
"total": 55,
"running": 2
},
"idletime": 30632.290000000001,
"uptime": 33200.07,
"memory": {
"free": 1660,
"cached": 8268,
"total": 29212,
"buffers": 2236
},
"node_id": "f8d1117e97dc",
"loadavg": 0.01
},
"90:f6:52:3e:b9:50": {
"processes": {
"total": 58,
"running": 2
},
"idletime": 28047.470000000001,
"uptime": 33307.849999999999,
"memory": {
"free": 2364,
"cached": 7168,
"total": 29212,
"buffers": 1952
},
"node_id": "90f6523eb950",
"loadavg": 0.34000000000000002
}
}
You can find more information about alfred in its README_.
.. _README: http://www.open-mesh.org/projects/alfred/repository/revisions/master/entry/README
gluon-announced
~~~~~~~~~~~~~~~
`gluon-announced` allows querying neighbouring nodes for their `nodeinfo`.
It is a daemon listening on the multicast address ``ff02::2:1001`` on
UDP port 1001 on the bare mesh interfaces.
gluon-neighbour-info
~~~~~~~~~~~~~~~~~~~~
A programm called `gluon-neighbour-info` has been developed to retrieve
information from neighbours.
::
gluon-neighbour-info -i wlan0 \
-p 1001 -d ff02:0:0:0:0:0:2:1001 \
-r nodeinfo
On optional timeout may be specified, e.g. `-t 5` (default: 3 seconds).
Adding a fact
-------------
To add a fact just add a file to either ``/lib/gluon/announce/nodeinfo.d/`` or
``/lib/gluon/announce/statistics.d/``.
The file must contain a lua script and its name will become the key for the
resulting JSON object. A simple script adding a ``hostname`` field might look
like this:
::
return uci:get_first('system', 'system', 'hostname')
The directory structure will be converted to a JSON object, i.e. you may
create subdirectories. So, if the directories look like this
::
.
├── hardware
│   └── model
├── hostname
├── network
│   └── mac
├── node_id
└── software
└── firmware
the resulting JSON would become:
::
# /lib/gluon/announce/announce.lua nodeinfo
{
"hardware" : {
"model" : "TP-Link TL-MR3420 v1"
},
"hostname" : "mr3420-test",
"network" : {
"mac" : "90:f6:52:82:06:02"
},
"node_id" : "90f652820602",
"software" : {
"firmware" : {
"base" : "gluon-v2014.2-32-ge831099",
"release" : "0.4.1+0-exp20140720"
}
}
}

View File

@ -8,7 +8,7 @@ If you select this package, add a list of authorized keys to ``site.conf`` like
{
authorized_keys = { 'ssh-rsa AAA.... user1@host',
'ssh-rsa AAA.... user2@host },
'ssh-rsa AAA.... user2@host' },
hostname_prefix = ...
...

View File

@ -7,33 +7,69 @@ Building Images
---------------
By default, the autoupdater is disabled (as it is usually not helpful to have unexpected updates
during development), but it can be enabled by setting the variable GLUON_BRANCH when building
to override the default branch set in the set in the site configuration.
during development), but it can be enabled by setting the variable ``GLUON_AUTOUPDATER_ENABLED`` to ``1`` when building.
It is also possible to override the default branch during build using the variable ``GLUON_AUTOUPDATER_BRANCH``.
If a default branch is set neither in *site.conf* nor via ``GLUON_AUTOUPDATER_BRANCH``, the default branch is
implementation-defined. Currently, the branch with the first name in alphabetical order is chosen.
A manifest file for the updater can be generated with `make manifest`. A signing script (using
ecdsautils) can by found in the `contrib` directory. When creating the manifest, ``GLUON_PRIORITY`` can
be set on the command line, or it can be taken from the ``site.mk``.
``ecdsautils``) can be found in the `contrib` directory. When creating the manifest, the
``PRIORITY`` value may be defined by setting ``GLUON_PRIORITY`` on the command line or in ``site.mk``.
The priority defines the maximum number of days that may pass between releasing an update and installation
of the images. The update probability with start at 0 after the release time mentioned in the manifest
and then slowly rise to 1 after the number of days given by the priority has passed.
``GLUON_PRIORITY`` defines the maximum number of days that may pass between releasing an update and installation
of the images. The update probability will start at 0 after the release time declared in the manifest file
by the variable DATE and then slowly rise up to 1 when ``GLUON_PRIORITY`` days have passed. The autoupdater checks
for updates hourly (at a random minute of the hour), but usually only updates during its run between
4am and 5am, except when the whole ``GLUON_PRIORITY`` days and another 24 hours have passed.
The priority may be an integer or a decimal fraction.
``GLUON_PRIORITY`` may be an integer or a decimal fraction.
If ``GLUON_RELEASE`` is passed to ``make`` explicitly or it is generated dynamically
in ``site.mk``, care must be taken to pass the same ``GLUON_RELEASE`` to ``make manifest``,
as otherwise the generated manifest will be incomplete.
Manifest format
------------------------
The manifest starts with a short header, followed by the list of firmwares and signatures.
The header contains the following information:
.. code-block:: sh
BRANCH=stable
DATE=2020-10-07 00:00:00+02:00
PRIORITY=7
- ``BRANCH`` is the autoupdater branch name that needs to match the nodes configuration.
- ``DATE`` specifies when the time period for the update begins. Nodes will do their regular update during a random minute
between 4:00 and 4:59 am. Nodes might not always have a reliable NTP synchronization, which is why a fallback mechanism
exists, that checks for an update, and will execute if ``DATE`` is at least 24h in the past.
- ``PRIORITY`` can be configured as ``GLUON_PRIORITY`` when generating the manifest or in ``site.mk``, and defines
the number of days over which the update should be stretched out after ``DATE``. Nodes will calculate a probability
based on the time left to determine when to update.
Automated nightly builds
------------------------
A fully automated nightly build could use the following commands:
::
.. code-block:: sh
git pull
(cd site && git pull)
# git -C site pull
make update
make clean
make -j5 GLUON_TARGET=ar71xx-generic GLUON_BRANCH=experimental
make manifest GLUON_BRANCH=experimental
contrib/sign.sh $SECRETKEY images/sysupgrade/experimental.manifest
make clean GLUON_TARGET=ath79-generic
NUM_CORES_PLUS_ONE=$(expr $(nproc) + 1)
make -j$NUM_CORES_PLUS_ONE GLUON_TARGET=ath79-generic GLUON_RELEASE=$GLUON_RELEASE \
GLUON_AUTOUPDATER_BRANCH=experimental GLUON_AUTOUPDATER_ENABLED=1
make manifest GLUON_RELEASE=$GLUON_RELEASE GLUON_AUTOUPDATER_BRANCH=experimental
contrib/sign.sh $SECRETKEY output/images/sysupgrade/experimental.manifest
rm -rf /where/to/put/this/experimental
cp -r images /where/to/put/this/experimental
cp -r output/images /where/to/put/this/experimental
Infrastructure
@ -59,16 +95,20 @@ The server must be available via IPv6.
Command Line
------------
These commands can be used on a node.
These commands can be used on a node:
::
# Update with some probability
autoupdater
# Update with some probability
autoupdater
::
# Force update check, even when the updater is disabled
autoupdater -f
# Force update check, even when the updater is disabled
autoupdater -f
::
# If fallback is true the updater will perform an update only if the timespan
# PRIORITY days (as defined in the manifest) and another 24h have passed
autoupdater --fallback

View File

@ -14,10 +14,13 @@ Activating Config Mode
----------------------
Config Mode is automatically entered at the first boot. You can re-enter
Config Mode by pressing and holding the RESET/WPS button for about three
seconds. The device should reboot (all LEDs will turn of briefly) and
Config Mode by pressing and holding the RESET/WPS/DECT button for about three
seconds. The device should reboot (all LEDs will turn off briefly) and
Config Mode will be available.
If you have access to the console of the node, there is the
``gluon-enter-setup-mode`` command, which reboots a node into Config Mode.
Port Configuration
------------------

View File

@ -0,0 +1,51 @@
DNS caching
===========
User experience may be greatly improved when dns is accelerated. Also, it
seems like a good idea to keep the number of packages being exchanged
between node and gateway as small as possible. In order to do this, a
DNS cache may be used on a node. The dnsmasq instance listening on port
53 on the node will be reconfigured to answer requests, use a list of
upstream servers and a specific cache size if the options listed below are
added to site.conf. Upstream servers are the DNS servers which are normally
used by the nodes to resolve hostnames (e.g. gateways/supernodes).
There are the following settings:
servers
cacheentries
To use the node's DNS server, both options should be set. The node will cache at
most 'cacheentries' many DNS records in RAM. The 'servers' list will be used to
resolve the received DNS queries if the request cannot be answered from
cache. Gateways should announce the "next node" address via DHCP and RDNSS (if
any). Note that not setting 'servers' here will lead to DNS not working: Once
the gateways all announce the "next node" address for DNS, there is no way for
nodes to automatically determine DNS servers. They have to be baked into the
firmware.
If these settings do not exist, the cache is not initialized and RAM usage will
not increase.
When next_node.name is set, an A record and an AAAA record for the
next-node IP address are placed in the dnsmasq configuration. This means that
the content of next_node.name may be resolved even without upstream connectivity.
It is suggested to use the same name as the DNS server provides:
e.g. nextnode.location.community.example.org (This way the name also works if a
client uses static DNS Servers). Hint: If next_node.name does not contain a dot
some browsers would open the searchpage instead.
::
dns = {
cacheentries = 5000,
servers = { '2001:db8::1', },
},
next_node = {
name = { 'nextnode.location.community.example.org', 'nextnode', 'nn' },
ip6 = '2001:db8:8::1',
ip4 = '198.51.100.1',
}
Each cache entry will occupy about 90 bytes of RAM.

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

View File

@ -1,18 +0,0 @@
Mesh on WAN
===========
It's possible to enable the mesh on the WAN port like this::
uci set network.mesh_wan.auto=1
uci commit
It may also be disabled again by running::
uci set network.mesh_wan.auto=0
uci commit
site.conf
---------
The optional option ``mesh_on_wan`` may be set to ``true`` (``false`` is the
default) to enable meshing on the WAN port without further configuration.

View File

@ -0,0 +1,139 @@
Node monitoring
===============
Gluon is capable of announcing information about each node to the mesh
and to neighbouring nodes. This allows nodes to learn each others hostname,
IP addresses, location, software versions and various other information.
Format of collected data
------------------------
Information to be announced is currently split into three categories:
nodeinfo
In this category (mostly) static information is collected. If
something is unlikely to change without human intervention it should be
put here.
statistics
This category holds fast changing data, like traffic counters, uptime,
system load or the selected gateway.
neighbours
`neighbours` contains information about all neighbouring nodes of all
interfaces. This data can be used to determine the network topology.
All categories will have a ``node_id`` key. It should be used to
relate data of different categories.
Accessing Node Information
--------------------------
There are two packages responsible for distribution of the information. For
one, information is distributed across the mesh using alfred_. Information
between neighbouring nodes is exchanged using `gluon-respondd`.
.. _alfred: https://www.open-mesh.org/projects/alfred
alfred (mesh bound)
~~~~~~~~~~~~~~~~~~~
The package ``gluon-alfred`` is required for this to work.
Using alfred both categories are distributed within the mesh. In order to
retrieve the data you'll need both a local alfred daemon and alfred-json_
installed. Please note that at least one alfred daemon is required to run as
`master`.
.. _alfred-json: https://github.com/ffnord/alfred-json
The following data types are used:
* `nodeinfo`: 158
* `statistics`: 159
* `neighbours`: 160
All data is compressed using GZip (alfred-json can handle the decompression).
In order to retrieve statistics data you could run:
::
# alfred-json -z -r 159
{
"f8:d1:11:7e:97:dc": {
"processes": {
"total": 55,
"running": 2
},
"idletime": 30632.290000000001,
"uptime": 33200.07,
"memory": {
"free": 1660,
"cached": 8268,
"total": 29212,
"buffers": 2236
},
"node_id": "f8d1117e97dc",
"loadavg": 0.01
},
"90:f6:52:3e:b9:50": {
"processes": {
"total": 58,
"running": 2
},
"idletime": 28047.470000000001,
"uptime": 33307.849999999999,
"memory": {
"free": 2364,
"cached": 7168,
"total": 29212,
"buffers": 1952
},
"node_id": "90f6523eb950",
"loadavg": 0.34000000000000002
}
}
You can find more information about alfred in its README_.
.. _README: https://git.open-mesh.org/alfred.git/blob_plain/refs/heads/master:/README.rst
gluon-respondd
~~~~~~~~~~~~~~
`gluon-respondd` allows querying neighbouring nodes for their information.
It is a daemon listening on the multicast address ``ff02::2:1001`` on
UDP port 1001 on the mesh interface and on the multicast address
``ff05::2:1001`` on the `br-client` interface. Unicast
requests are supported as well.
The supported requests are:
* ``nodeinfo``, ``statistics``, ``neighbours``: Returns the data of single category uncompressed.
* ``GET nodeinfo``, ...: Returns the data of one or multiple categories (separated by spaces)
compressed using the `deflate` algorithm (without a gzip header). The data may
be decompressed using zlib and many zlib bindings using -15 as the window size parameter.
gluon-neighbour-info
~~~~~~~~~~~~~~~~~~~~
The program `gluon-neighbour-info` can be used to retrieve
information from other nodes.
::
gluon-neighbour-info -i bat0 \
-p 1001 -d ff05:0:0:0:0:0:2:1001 \
-r nodeinfo
An optional timeout may be specified, e.g. `-t 5` (default: 3 seconds). See
the usage information printed by ``gluon-neighbour-info -h`` for more information
about the supported arguments.
Adding a data provider
----------------------
To add a provider, you need to install a shared object into ``/lib/gluon/respondd``.
For more information, refer to the `respondd README <https://github.com/freifunk-gluon/packages/blob/master/net/respondd/README.md>`_
and have a look the existing providers.

View File

@ -0,0 +1,274 @@
Multidomain Support
===================
Preamble
--------
There comes a time when a mesh network grows past sensible boundaries.
As broadcast traffic grows, mesh networks experience scaling issues and
using them becomes very unpleasant. An approach to solve this follows
the well-known “divide and conquer” paradigm and splits a large network
into multiple smaller networks. These smaller networks start with a
dedicated layer 2 network each, which are interconnected via their
gateways by layer 3 routing. Gluon is already field-tested handling a
single domain and the multidomain feature allows for the reconfiguration
of key parameters that decide which domain a node participates in,
without the need of a distinct set of firmware images for each mesh domain.
Overview
--------
Multidomain support allows to build a single firmware with multiple,
switchable domain configurations. The nomenclature is as follows:
- ``site``: an aggregate over multiple domains
- ``domain``: mesh network with connectivity parameters that prevent
accidental bridging with other domains
- ``domain code``: unique domain identifier
- ``domain name``: pretty name for a domain code
By default Gluon builds firmware with a single domain embedded into
``site.conf``. To use multiple domains, enable it in ``site.mk``:
::
GLUON_MULTIDOMAIN=1
In the site repository, create the ``domains/`` directory, which will
hold your domain configurations. Each domain configuration file is named
after its primary ``domain_code``, additional domain codes and names are
supported.
::
site/
|-- site.conf
|-- site.mk
|-- i18n/
|-- domains/
|-- alpha_centauri.conf
|-- beta_centauri.conf
|-- gamma_centauri.conf
The domain configuration ``alpha_centauri.conf`` could look like this.
::
{
domain_names = {
alpha_centauri = 'Alpha Centauri'
},
-- more domain specific config follows below
}
In this example “Alpha Centauri” is the user-visible ``domain_name`` for the
domain_code ``alpha_centauri``. Also note that the domain code
``alpha_centauri`` matches the filename ``alpha_centauri.conf``.
Additional domain codes/names can be added to ``domain_names``, which
are treated as aliases for the their domain configuration. Aliases can
be used to offer more fine-grained and well-recognizable domain choices
to users. Having multiple aliases on a single domain is a helpful
precursor to splitting the domain into even smaller blocks.
Furthermore you have to specify the ``default_domain`` in the ``site.conf``.
This domain is applied in following cases:
- When the config mode is skipped.
- When a domain is removed in a new firmware release, the default_domain
will be chosen then.
- When a user selects a wrong domain code via uci.
Please note, that this value is saved to uci, so changing the `default_domain`
value in the `site.conf` in a new firmware release only affects the actual
domain of a router, if and only if one of the above conditions matches.
Switching the domain
--------------------
Via commandline
^^^^^^^^^^^^^^^
::
gluon-switch-domain 'newdomaincode'
When the node is not in config mode, ``gluon-switch-domain`` will automatically
reboot the node by default. This can be suppressed by passing ``--no-reboot``::
gluon-switch-domain --no-reboot 'newdomaincode'
Switching the domain without reboot is currently **experimental**.
Via config mode
^^^^^^^^^^^^^^^
To allow switching the domain via config mode, add ``config-mode-domain-select``
to GLUON_FEATURES in site.mk.
|image0|
Allowed site variables
----------------------
Internally the site variables are merged from the ``site.conf`` and the
selected ``domain.conf``, so the most variables are also allowed in
``site.conf`` and in ``domain.conf``. But there are some exceptions,
which do not make sense in a domain or site specific way. The following
sections give an overview over variables that are only usable in either
site or domain context.
site.conf only variables
^^^^^^^^^^^^^^^^^^^^^^^^
- Used in as initial default values, when the firmware was just flashed
and/or the config mode is skipped, so they do not make sense in a
domain specific way:
- authorized_keys
- default_domain
- poe_passthrough
- interfaces.*.default_roles
- setup_mode.skip
- autoupdater.branch
- mesh_vpn.enabled
- mesh_vpn.pubkey_privacy
- mesh_vpn.bandwidth_limit
- mesh_vpn.bandwidth_limit.enabled
- mesh_vpn.bandwidth_limit.ingress
- mesh_vpn.bandwidth_limit.egress
- Variables that influence the appearance of the config mode,
domain-independent because they are relevant before a domain was selected.
- config_mode.geo_location.show_altitude
- config_mode.hostname.optional
- config_mode.remote_login
- config_mode.remote_login.show_password_form
- config_mode.remote_login.min_password_length
- hostname_prefix
- mesh_vpn.fastd.configurable
- roles.default
- roles.list
- Specific to a firmware build itself:
- site_code
- site_name
- autoupdater.branches.*.name
- autoupdater.branches.*.good_signatures
- autoupdater.branches.*.pubkeys
- We simply do not see any reason, why these variables could be helpful
in a domain specific way:
- mesh_vpn.fastd.syslog_level
- timezone
- regdom
domain.conf only variables
^^^^^^^^^^^^^^^^^^^^^^^^^^
- Obviously:
- domain_names
- a table of domain codes to domain names
``domain_names = { foo = 'Foo Domain', bar = 'Bar Domain', baz = 'Baz Domain' }``
- hide_domain
- prevents a domain name(s) from appearing in config mode, either
boolean or array of domain codes
- ``true``, ``false``
- ``{ 'foo', 'bar' }``
- Because each domain is considered a separate layer 2 network, these
values should be different in each domain:
- next_node.ip4
- next_node.ip6
- next_node.name
- prefix6
- prefix4
- extra_prefixes6
- To prevent accidental bridging of different domains, all meshing
technologies should be separated:
- domain_seed (wired mesh)
- must be a random value used to derive the vxlan id for wired meshing
- wifi*.mesh.id
- mesh_vpn.fastd.groups.*.peers.remotes
- mesh_vpn.fastd.groups.*.peers.key
- mesh_vpn.tunneldigger.brokers
- Clients consider WiFi networks sharing the same ESSID as if they were
the same L2 network and try to reconfirm and reuse previous
addressing. If multiple neighbouring domains shared the same ESSID,
the roaming experience of clients would degrade.
- wifi*.ap.ssid
- Some values should be only set in legacy domains and not in new domains.
- mesh.vxlan
- By default, this value is `true`. It should be only set to `false`
for one legacy domain, since vxlan prevents accidental wired
merges of domains. For old domains this value is still available
to keep compatibility between all nodes in one domain.
- next_node.mac
- For new domains, the default value should be used, since there is
no need for a special mac (or domain specific mac). For old domains
this value is still available to keep compatibility between all
nodes in one domain.
Example config
--------------
site.mk
^^^^^^^
.. literalinclude:: ../multidomain-site-example/site.mk
:language: makefile
site.conf
^^^^^^^^^
.. literalinclude:: ../multidomain-site-example/site.conf
:language: lua
domains/alpha_centauri.conf
^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../multidomain-site-example/domains/alpha_centauri.conf
:language: lua
i18n/en.po
^^^^^^^^^^
.. literalinclude:: ../multidomain-site-example/i18n/en.po
:language: po
i18n/de.po
^^^^^^^^^^
.. literalinclude:: ../multidomain-site-example/i18n/de.po
:language: po
modules
^^^^^^^
.. literalinclude:: ../multidomain-site-example/modules
:language: makefile
.. |image0| image:: multidomain_configmode.gif

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

View File

@ -1,20 +1,33 @@
Private WLAN
============
It is possible to set up a private WLAN that bridges the WAN port and is seperated from the mesh network.
Please note that you should not enable ``mesh_on_wan`` simultaneously.
It is possible to set up a private WLAN that bridges the uplink port and is separated from the mesh network.
Please note that you should not enable Wired Mesh on the uplink port at the same time.
The private WLAN can be enabled through the config mode if the package ``gluon-luci-private-wifi`` is installed.
The private WLAN is encrypted using WPA2 by default. On devices with enough flash and a supported radio,
WPA3 or WPA2/WPA3 mixed-mode can be used instead of WPA2. For this to work, the ``wireless-encryption-wpa3``
feature has to be added to ``GLUON_FEATURES``.
It is recommended to enable IEEE 802.11w management frame protection for WPA2/WPA3 networks, however this
can lead to connectivity problems for older clients. In this case, management frame protection can be
made optional or completely disabled in the advanced settings tab.
The private WLAN can be enabled through the config mode if the package ``gluon-web-private-wifi`` is installed.
You may also enable a private WLAN using the command line::
uci set wireless.wan_radio0=wifi-iface
uci set wireless.wan_radio0.device=radio0
uci set wireless.wan_radio0.network=wan
uci set wireless.wan_radio0.mode=ap
uci set wireless.wan_radio0.encryption=psk2
uci set wireless.wan_radio0.ssid="$SSID"
uci set wireless.wan_radio0.key="$KEY"
uci set wireless.wan_radio0.disabled=0
RID=0
SSID="privateWLANname"
KEY="yoursecret1337password"
uci set wireless.wan_radio$RID=wifi-iface
uci set wireless.wan_radio$RID.device=radio$RID
uci set wireless.wan_radio$RID.network=wan
uci set wireless.wan_radio$RID.mode=ap
uci set wireless.wan_radio$RID.encryption=psk2
uci set wireless.wan_radio$RID.ssid="$SSID"
uci set wireless.wan_radio$RID.key="$KEY"
uci set wireless.wan_radio$RID.disabled=0
uci set wireless.wan_radio$RID.macaddr=$(lua -e "print(require('gluon.util').generate_mac(3+4*$RID))")
uci commit
wifi

View File

@ -2,8 +2,8 @@ Roles
=====
It is possible to define a set of roles you want to distinguish at backend side. One node can own one
role which it will announce via alfred inside the mesh. This will make it easier to differentiate
nodes when parsing alfred data. E.g to count only **normal** nodes and not the gateways
role which it will announce via respondd/announced inside the mesh. This will make it easier to differentiate
nodes when parsing respondd data. E.g to count only **normal** nodes and not the gateways
or servers (nodemap). A lot of things are possible.
For this the section ``roles`` in ``site.conf`` is needed::
@ -11,22 +11,24 @@ For this the section ``roles`` in ``site.conf`` is needed::
roles = {
default = 'node',
list = {
node = 'Normal Node',
test = 'Test Node',
backbone = 'Backbone Node',
service = 'Service Node',
'node',
'test',
'backbone',
'service',
},
},
The strings to display in the web interface are configured per language in the
``i18n/en.po``, ``i18n/de.po``, etc. files of the site repository using message IDs like
``gluon-web-node-role:role:node`` and ``gluon-web-node-role:role:backbone``.
The value of ``default`` is the role every node will initially own. This value should be part of ``list`` as well.
If you want node owners to change the defined roles via config-mode you can add the package
``gluon-luci-node-role`` to your ``site.mk``. Then, you can select one of the defined roles from a dropdown list
where the right-handed value is the one which is displayed and the left-handed key the one which is configured into
the system.
``gluon-web-node-role`` to your ``site.mk``.
The role is saved in ``gluon-node-info.system.role``. To change the role using command line do::
uci set gluon-node-info.system.role="$ROLE"
uci set gluon-node-info.@system[0].role="$ROLE"
uci commit
Please replace ``$ROLE`` by the role you want the node to own.

212
docs/features/vpn.rst Normal file
View File

@ -0,0 +1,212 @@
Mesh VPN
========
Gluon integrates several layer 2 tunneling protocols to
allow connections between local meshes through the internet.
Protocol handlers
^^^^^^^^^^^^^^^^^
There are currently three protocol handlers which can be selected
via ``GLUON_FEATURES`` in ``site.mk``:
mesh-vpn-fastd
""""""""""""""
fastd is a lightweight userspace tunneling daemon that
implements cipher suites that are specifically designed
to work well on embedded devices. It offers encryption
and authentication.
The primary drawback of fastd's encrypted connection modes
is the necessary context switches when forwarding packets.
A kernel-supported L2TPv3 offloading option is available to
work around the context-switching bottleneck, but it comes
at the cost of losing the ability to protect tunnel connections
against eavesdropping or manipulation.
mesh-vpn-tunneldigger
"""""""""""""""""""""
Tunneldigger always uses L2TPv3, generally achieving the same
performance as fastd with the ``null@l2tp`` method, but offering
no security.
Tunneldigger's primary drawback is the lack of IPv6 support.
It also provides less configurability than fastd.
mesh-vpn-wireguard
""""""""""""""""""
WireGuard is an encrypted in-kernel tunneling protocol that
provides encrypted transmission and at the same time offers
high throughput.
fastd
^^^^^
.. _VPN fastd methods:
Methods
"""""""
fastd offers various different connection "methods" with different
security properties that can be configured in the site configuration.
The following methods are currently recommended:
- ``salsa2012+umac``: Encrypted + authenticated
- ``null+salsa2012+umac``: Unencrypted, authenticated
- ``null@l2tp``: Unencrypted, unauthenticated
Multiple methods can be listed in ``site.conf``. The first listed method
supported by both the node and its peer will be used.
The use of the ``null@l2tp`` method with offloading enabled can provide a
considerable performance gain, especially on weaker embedded hardware.
For L2TP offloading, the ``mesh-vpn-fastd-l2tp`` feature needs to be enabled in
``site.mk``.
.. _vpn-gateway-configuration:
Gateway / Supernode Configuration
"""""""""""""""""""""""""""""""""
When only using the ``null`` or ``null@l2tp`` methods without offloading,
simply add these methods to the front of the method list. ``null@l2tp``
should always appear before ``null`` in the configuration when both are enabled.
fastd v22 or newer is needed for the ``null@l2tp`` method.
It is often not necessary to enable L2TP offloading on supernodes for
performance reasons. Nodes using offloading can communicate with supernodes that
don't use offloading as long as both use the ``null@l2tp`` method.
.. _vpn-gateway-configuration-offloading:
Offloading on Gateways / Supernodes
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To enable L2TP offloading on the supornodes, it is recommended to study the
fastd documentation section pertaining to the `offload configuration option
<https://fastd.readthedocs.io/en/stable/manual/config.html#option-offload>`_.
However, the important changes to the fastd config on your Supernode are:
- | Set ``mode multitap;``
| Every peer gets their own interface.
- | Replace ``interface "foo":`` with ``interface "peer-%k";``
| ``%k`` is substituted for a portion of the peers public key.
- | Set ``offload l2tp yes;``
| This tells fastd to use the l2tp kernel module.
- | Set ``persist interface no;``
| This tells fastd to only keep interfaces around while the connection is active.
Note that in ``multitap`` mode, which is required when using L2TP offloading,
fastd will create one interface per peer on the supernode's. This allows
offloading the L2TP forwarding into the kernel space. But this also means added
complexity with regards to handling those interfaces.
There are two main options on how you can handle this:
- create ``on up`` and ``on down`` hooks
- to handle interface setup and destruction
- preferably using the async keyword, so hooks are not blocking fastd
- use a daemon like systemd-networkd
Examples for both options can be found in the
`Wiki <https://github.com/freifunk-gluon/gluon/wiki/fastd-l2tp-offloading-on-supernodes>`_.
Configurable Method
"""""""""""""""""""
From the site configuration, fastd can be allowed to offer
toggleable encryption in the config mode with the intent to
increase throughput.
There is also an older unprotected method ``null``. Use of the newer
``null@l2tp`` method is generally recommended over ``null``, as the
performance gains provided by the latter (compared to the encrypted
and authenticated methods) are very small.
Site configuration
~~~~~~~~~~~~~~~~~~
1)
Add the feature ``web-mesh-vpn-fastd`` in ``site.mk``
2)
Set ``mesh_vpn.fastd.configurable = true`` in ``site.conf``
3)
Optionally, add ``null@l2tp`` to the ``mesh_vpn.fastd.methods`` table if you want
"Performance mode" as default (not recommended)
Config Mode
~~~~~~~~~~~
The resulting firmware will allow users to choose between secure (encrypted) and fast (unencrypted) transport.
.. image:: fastd_mode.gif
To confirm whether the correct cipher is being used, the log output
of fastd can be checked using ``logread``.
WireGuard
^^^^^^^^^
In order to support WireGuard in Gluon, a few technologies are glued together.
**VXLAN:** As Gluon typically relies on batman-adv, the Mesh VPN has to provide
OSI Layer 2 transport. But WireGuard is an OSI Layer 3 tunneling protocol, so
additional technology is necessary here. For this, we use VXLAN. In short, VXLAN
is a well-known technology to encapsulate ethernet packages into IP packages.
You can think of it as kind of similar to VLAN, but on a different layer. Here,
we use VXLAN to transport batman-adv traffic over WireGuard.
**wgpeerselector**: To connect all gluon nodes to each other, it is common to
create a topology where each gluon node is connected to one of the available
gateways via Mesh VPN respectively. To achieve this, the gluon node should be
able to select a random gateway to connect to. But such "random selection of a
peer" is not implemented in WireGuard by default. WireGuard only knows static
peers. Therefore the *wgpeerselector* has been developed. It randomly selects a
gateway, tries to establish a connection, and if it fails, tries to connect
to the next gateway. This approach has several advantages, such as load
balancing VPN connection attempts and avoiding problems with offline gateways.
More information about the wgpeerselector and its algorithm can be found
`here <https://github.com/freifunk-gluon/packages/blob/master/net/wgpeerselector/README.md>`__.
On the gluon node both VXLAN and the wgpeerselector are well integrated and no
explicit configuration of those tools is necessary, once the general WireGuard
support has been configured.
Attention must by paid to time synchronization. As WireGuard
performs checks on timestamps in order to avoid replay attacks, time must
be synchronized before the Mesh VPN connection is established. This means that
the NTP servers specified in your site.conf must be publicly available (and not
only through the mesh). Be aware that if you fail this, you may not directly see
negative effects. Only when a previously connected node reboots the effect
comes into play, as the gateway still knows about the old timestamp of the gluon
node.
gluon-mesh-vpn-key-translate
""""""""""""""""""""""""""""
Many communities already possess a collection of active fastd-keys when they
plan migrating their community to WireGuard.
These public keys known on the server-side can be derived into their WireGuard
equivalent using `gluon-mesh-vpn-key-translate <https://github.com/AiyionPrime/gluon-mesh-vpn-key-translate>`__.
The routers do the necessary reencoding of the private key seamlessly
when updating firmware from fastd to the WireGuard variant.
Gateway / Supernode Configuration
"""""""""""""""""""""""""""""""""
On the gateway side, a software called *wireguard-vxlan-glue* is necessary. It
is a small daemon that dynamically adds and removes forwarding rules for VXLAN
interfaces, so traffic is sent correctly into the WireGuard interface. Thereby
the forwarding rules are only installed if a client is connected, so
unnecessary traffic in the kernel is avoided. The source can be found
`here <https://github.com/freifunkh/wireguard-vxlan-glue/>`__.

View File

@ -0,0 +1,133 @@
Wired mesh (Mesh-on-WAN/LAN)
############################
In addition to meshing over WLAN and VPN, it is also possible to
configure wired meshing over the LAN or WAN ports. This allows
nodes to be connected directly or over wireless bridges.
Mesh-on-WAN can be enabled in addition to the mesh VPN, so multiple nodes
in the same local network that is used as VPN uplink can also mesh directly.
Enabling Mesh-on-WAN should be avoided if the local network is also bridged with
a WLAN access point, as meshing over batman-adv causes large amounts of
multicast traffic, which will take up a lot of airtime.
Enabling Mesh-on-LAN replaces the normal "client network" function
of the LAN ports, as client network ports may never be connected (so care must be taken to always
enable Mesh-on-LAN before connecting two nodes' LAN ports).
Wired mesh encapsulation
************************
Since version 2018.1, Gluon supports encapsulating wired mesh traffic in
`VXLAN <https://en.wikipedia.org/wiki/Virtual_Extensible_LAN>`_, a new standard with
use cases similar to VLANs, but a much greater ID space of 24bit; in addition, VXLAN
packets pass through VLAN-aware switches without any special configuration.
Encapsulating mesh traffic has two advantages:
* By using a different VXLAN ID for each site and mesh domain, accidental
wired mesh connections between nodes of different domains will be prevented.
This has special importance when nodes migrate between domains automatically,
as currently possible through different site-specific packages.
* While batman-adv traffic does not interact with non-mesh traffic in the same wired
network in any way (so Gluon nodes can mesh over existing wired networks), this is
not the case for layer 3 mesh protocols like Babel. Encapsulating the traffic allows
to distinguish mesh traffic from unrelated packets.
As enabling VXLAN encapsulation will prevent wired mesh communication with old nodes
that do not support VXLAN yet, VXLANs can be enabled per-domain using the site configuration
setting *mesh.vxlan*. VXLAN is enabled by default in multidomain setups; in single-domain
site configurations, the *mesh.vxlan* setting is mandatory. We recommend to enable
VXLAN encapsulation in all new sites and domains.
Non-encapsulated ("legacy") wired meshing will be removed in a future Gluon release.
We cannot give a concrete timeframe for the removal yet; a missing prerequisite is the
implementation of a robust migration path for existing deployments.
Configuration
*************
Both Mesh-on-WAN and Mesh-on-LAN can be configured on the "Network" page
of the *Advanced settings* (if the package ``gluon-web-network`` is installed).
It is also possible to enable Mesh-on-WAN and Mesh-on-LAN by default by adding
the ``mesh`` role to the ``interfaces.*.default_roles`` options in your
:ref:`site.conf<user-site-interfaces>`.
.. _wired-mesh-commandline:
Commandline
===========
Starting with release 2022.1, the wired network configuration is rebuilt from ``/etc/config/gluon``
upon each ``gluon-reconfigure``.
Therefore the network configuration is overwritten at least with every firmware upgrade.
Every interface has a list of roles assigned to it which can be ``client``, ``mesh`` or ``uplink``.
When the client role is assigned to an interface in combination with other roles
(like 'client', 'mesh' in the Mesh-on-LAN example below), the other roles take
precedence, enabling mesh but not client in the previous example.
The setup/config-mode interface is every interface with the role ``client`` which makes removing
it from interfaces not only unnecessary, but generally unrecommended.
In order to make persistent changes to the router's configuration it's necessary to:
* change the sections in ``/etc/config/gluon`` e.g. using uci (see examples below)
* call ``gluon-reconfigure`` to re-generate ``/etc/config/network``
* apply the networking changes, either through executing ``service network restart`` or by performing a ``reboot``
Enable Mesh-on-WAN::
uci add_list gluon.iface_wan.role='mesh'
uci commit gluon
Disable Mesh-on-WAN::
uci del_list gluon.iface_wan.role='mesh'
uci commit gluon
Enable Mesh-on-LAN::
uci add_list gluon.iface_lan.role='mesh'
uci commit gluon
Disable Mesh-on-LAN::
uci del_list gluon.iface_lan.role='mesh'
uci commit gluon
For devices with a single interface, instead of `iface_lan` and `iface_wan` configuration is
done with `iface_single`.
Enable Mesh-on-Single::
uci add_list gluon.iface_single.role='mesh'
uci commit gluon
Disable Mesh-on-Single::
uci del_list gluon.iface_single.role='mesh'
uci commit gluon
Furthermore it is possible to make use of 802.1Q VLAN.
The following statements would create a VLAN with id 8 on ``eth0`` and join the mesh network with it::
uci set gluon.iface_lan_vlan8=interface
uci set gluon.iface_lan_vlan8.name='eth0.8'
uci add_list gluon.iface_lan_vlan8.role='mesh'
uci commit gluon
Other VLAN-interfaces could be configured on the same parent interface in order to have
all three roles available on ``eth0`` without having them interfere with each other.
This feature comes in especially handy for the persistent configuration of virtual machines
as offloader for bigger installations.
A ``reboot`` is not sufficient to apply an altered configuration; calling ``gluon-reconfigure`` before is
mandatory in order for changes to take effect.
Please note that this configuration has changed in Gluon 2022.1. Using
the old commands on 2022.1 and later will break the corresponding options
in the *Advanced settings*.

View File

@ -0,0 +1,26 @@
WLAN configuration
==================
Gluon allows to configure 2.4GHz and 5GHz radios independently. The configuration
may include one or both of the two networks "client" (AP mode) and "mesh" (802.11s
mode), which can be used simultaneously. See :doc:`../user/site` for details on the
configuration.
Upgrade behaviour
-----------------
For each of these networks, the site configuration may define a `disabled` flag (by
default, all configured networks are enabled). This flag is merely a default setting,
on upgrades the existing setting is always retained (as this setting may have been changed
by the user). This means that it is not possible to enable or disable an existing network
configurations during upgrades.
During upgrades the wifi channel of the 2.4GHz and 5GHz radio will be restored to the channel
configured in the site.conf. The channel width will be reset to Gluon's default. If you need to preserve
these settings during upgrades you can configure this via the uci section ``gluon-core.wireless``::
uci set gluon.wireless.preserve_channels='1'
When channels should be preserved, toggling the outdoor mode will have no effect on the channel settings.
Therefore, the Outdoor mode settings won't be displayed in config mode.
Keep in mind that nodes running wifi interfaces on custom channels can't mesh with default nodes anymore!

View File

@ -1,165 +1,85 @@
Welcome to Gluon
================
Gluon is a modular framework for creating OpenWrt-based firmwares for wireless mesh nodes.
Several Freifunk communities in Germany use Gluon as the foundation of their Freifunk firmwares.
Gluon is a modular framework for creating OpenWrt-based firmware images for wireless mesh nodes.
Several Freifunk communities in Germany use Gluon as the foundation of their Freifunk firmware.
User Documentation
------------------
.. toctree::
:maxdepth: 2
:caption: User Documentation
:maxdepth: 2
user/getting_started
user/site
user/x86
user/faq
Features
--------
user/getting_started
user/site
user/supported_devices
user/x86
user/faq
user/mtu
.. toctree::
:maxdepth: 2
:caption: Features
:maxdepth: 2
features/configmode
features/autoupdater
features/private-wlan
features/mesh-on-wan
features/announce
features/authorized-keys
features/roles
Developer Documentation
-----------------------
features/configmode
features/autoupdater
features/wlan-configuration
features/private-wlan
features/wired-mesh
features/dns-cache
features/monitoring
features/multidomain
features/authorized-keys
features/roles
features/vpn
.. toctree::
:maxdepth: 2
:caption: Developer Documentation
:maxdepth: 2
dev/basics
dev/hardware
dev/upgrade
dev/configmode
dev/wan
dev/i18n
Releases
--------
dev/basics
dev/hardware
dev/packages
dev/upgrade
dev/uplink
dev/mac_addresses
dev/site_library
dev/build
dev/debugging
.. toctree::
:maxdepth: 1
:caption: gluon-web Reference
:maxdepth: 1
releases/v2015.1
releases/v2014.4
releases/v2014.3.1
releases/v2014.3
dev/web/controller
dev/web/model
dev/web/view
dev/web/i18n
dev/web/config-mode
.. toctree::
:caption: Packages
:maxdepth: 1
Supported Devices & Architectures
---------------------------------
package/gluon-client-bridge
package/gluon-config-mode-domain-select
package/gluon-ebtables-filter-multicast
package/gluon-ebtables-filter-ra-dhcp
package/gluon-ebtables-limit-arp
package/gluon-ebtables-source-filter
package/gluon-hoodselector
package/gluon-logging
package/gluon-mesh-batman-adv
package/gluon-mesh-wireless-sae
package/gluon-radv-filterd
package/gluon-scheduled-domain-switch
package/gluon-web-admin
package/gluon-web-logging
ar71xx-generic
^^^^^^^^^^^^^^
.. toctree::
:caption: Releases
:maxdepth: 1
* Allnet
- ALL0315N
* Buffalo
- WZR-HP-AG300H / WZR-600DHP
- WZR-HP-G450H
* D-Link
- DIR-825 (B1)
- DIR-615 (C1)
* GL-Inet
- 6408A (v1)
- 6416A (v1)
* Linksys
- WRT160NL
* Netgear
- WNDR3700 (v1, v2)
- WNDR3800
- WNDRMAC (v2)
* TP-Link
- CPE210 (v1)
- CPE220 (v1)
- CPE510 (v1)
- CPE520 (v1)
- TL-MR3020 (v1)
- TL-MR3040 (v1, v2)
- TL-MR3220 (v1, v2)
- TL-MR3420 (v1, v2)
- TL-WA701N/ND (v1)
- TL-WA750RE (v1)
- TL-WA801N/ND (v2)
- TL-WA850RE (v1)
- TL-WA860RE (v1)
- TL-WA901N/ND (v2, v3)
- TL-WDR3500 (v1)
- TL-WDR3600 (v1)
- TL-WDR4300 (v1)
- TL-WR1043N/ND (v1, v2)
- TL-WR703N (v1)
- TL-WR710N (v1)
- TL-WR740N (v1, v3, v4)
- TL-WR741N/ND (v1, v2, v4)
- TL-WR743N/ND (v1, v2)
- TL-WR841N/ND (v3, v5, v7, v8, v9)
- TL-WR842N/ND (v1, v2)
- TL-WR941N/ND (v2, v3, v4, v5)
- TL-WR2543N/ND (v1)
* Ubiquiti
- Bullet M2
- Nanostation M2
- Nanostation M XW
- Loco M XW
- Picostation M2
- Rocket M2
- UniFi AP
- UniFi AP Pro
- UniFi AP Outdoor
ar71xx-nand
^^^^^^^^^^^
* Netgear
- WNDR3700 (v4)
- WNDR4300 (v1)
mpc85xx-generic
^^^^^^^^^^^^^^^
* TP-Link
- TL-WDR4900 (v1)
x86-generic
^^^^^^^^^^^
* x86-generic
* x86-virtualbox
* x86-vmware
See also: :doc:`user/x86`
x86-kvm_guest
^^^^^^^^^^^^^
* x86-kvm
See also: :doc:`user/x86`
releases/index
License
-------
@ -171,5 +91,4 @@ See LICENCE_
Indices and tables
==================
* :ref:`genindex`
* :ref:`search`

View File

@ -0,0 +1,68 @@
{
-- multiple codes/names can be defined, the first one is the primary name
-- additional aliases can be defined
domain_names = {
alpha_centauri = 'Alpha Centauri',
rigil_kentaurus = 'Rigil Kentaurus',
proxima_centauri = 'Proxima Centauri',
},
-- 32 byte random data in hexadecimal encoding
-- This data must be unique among all sites and domains!
-- Can be generated using: echo $(hexdump -v -n 32 -e '1/1 "%02x"' </dev/urandom)
domain_seed = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
-- unique network prefixes per domain
prefix4 = '10.xxx.0.0/20',
prefix6 = 'fdxx:xxxx:xxxx:xxxx::/64',
next_node = {
ip4 = '10.xxx.yyy.zzz',
ip6 = 'fdxx:xxxx:xxxx:xxxx::xxxx',
},
wifi24 = {
ap = {
ssid = "alpha-centauri.example.org",
channel = 1,
},
mesh = {
id = 'ueH3uXjdp', -- usually you don't want users to connect to this mesh-SSID, so use a cryptic id that no one will accidentally mistake for the client WiFi
},
},
wifi5 = {
ap = {
ssid = "alpha-centauri.example.org",
channel = 44,
},
mesh = {
id = 'ueH3uXjdp',
},
},
mesh = {
batman_adv = {
routing_algo = 'BATMAN_IV',
},
},
mesh_vpn = {
fastd = {
groups = {
backbone = {
peers = {
peer1 = {
key = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
remotes = {'"peer1.example.org" port xxxxx'},
},
peer2 = {
key = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
remotes = {'"peer2.example.org" port xxxxx'},
},
},
},
},
},
},
}

View File

@ -0,0 +1 @@
../site-example/i18n/

View File

@ -0,0 +1 @@
../site-example/modules

View File

@ -0,0 +1,52 @@
{
site_name = 'Centauri Mesh',
site_code = 'centauri',
default_domain = 'alpha_centauri',
timezone = 'CET-1CEST,M3.5.0,M10.5.0/3',
ntp_server = {'ntp1.example.org', 'ntp2.example.org'},
regdom = 'DE',
wifi24 = {
mesh = {
mcast_rate = 12000,
},
},
wifi5 = {
mesh = {
mcast_rate = 12000,
},
},
mesh_vpn = {
fastd = {
methods = {'salsa2012+umac'},
mtu = 1312,
},
bandwidth_limit = {
enabled = false,
egress = 200, -- kbit/s
ingress = 3000, -- kbit/s
},
},
autoupdater = {
branch = 'stable',
branches = {
stable = {
name = 'stable',
mirrors = {'http://update.example.org/stable/sysupgrade'},
good_signatures = 2,
pubkeys = {
'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', -- Alice
'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', -- Bob
'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', -- Mary
},
},
},
},
}

View File

@ -0,0 +1,60 @@
## gluon site.mk makefile example
## GLUON_FEATURES
# Specify Gluon features/packages to enable;
# Gluon will automatically enable a set of packages
# depending on the combination of features listed
GLUON_FEATURES := \
autoupdater \
ebtables-filter-multicast \
ebtables-filter-ra-dhcp \
ebtables-limit-arp \
mesh-batman-adv-15 \
mesh-vpn-fastd \
respondd \
status-page \
web-advanced \
web-wizard
## GLUON_MULTIDOMAIN
# Build gluon with multidomain support.
GLUON_MULTIDOMAIN=1
## GLUON_SITE_PACKAGES
# Specify additional Gluon/LEDE packages to include here;
# A minus sign may be prepended to remove a packages from the
# selection that would be enabled by default or due to the
# chosen feature flags
GLUON_SITE_PACKAGES := iwinfo
## DEFAULT_GLUON_RELEASE
# version string to use for images
# gluon relies on
# opkg compare-versions "$1" '>>' "$2"
# to decide if a version is newer or not.
DEFAULT_GLUON_RELEASE := 0.6+exp$(shell date '+%Y%m%d')
# Variables set with ?= can be overwritten from the command line
## GLUON_RELEASE
# call make with custom GLUON_RELEASE flag, to use your own release version scheme.
# e.g.:
# $ make images GLUON_RELEASE=23.42+5
# would generate images named like this:
# gluon-ff%site_code%-23.42+5-%router_model%.bin
GLUON_RELEASE ?= $(DEFAULT_GLUON_RELEASE)
# Default priority for updates.
GLUON_PRIORITY ?= 0
# Region code required for some images; supported values: us eu
GLUON_REGION ?= eu
# Languages to include
GLUON_LANGS ?= en de

View File

@ -0,0 +1,11 @@
gluon-client-bridge
===================
This package provides a bridge (*br-client*) for connecting clients. It will
also setup a wireless interface, provided it is configured in *site.conf*.
site.conf
---------
wifi24.ap.ssid / wifi5.ap.ssid
SSID for the client network

View File

@ -0,0 +1,19 @@
gluon-config-mode-domain-select
===============================
This package provides a drop-down list for the config mode to select the domain
the node will be placed in. If the selection has changed the upgrade scripts in
``/lib/gluon/upgrade/`` are triggered to update the nodes configuration.
Hiding domains could be useful for default or testing domains, which should not
be accidentally selected by a node operator.
domains/\*.conf
---------------
hide_domain \: optional (defaults to false)
- ``false`` shows this domain in drop-down list
- ``true`` hides this domain
Example::
hide_domain = true

View File

@ -0,0 +1,30 @@
gluon-ebtables-filter-multicast
===============================
The *gluon-ebtables-filter-multicast* package filters out various kinds of
non-essential multicast traffic, as this traffic often constitutes a
disproportionate burden on the mesh network. Unfortunately, this breaks many useful services
(Avahi, Bonjour chat, ...), but this seems unavoidable, as the current Avahi implementation is
optimized for small local networks and causes too much traffic in large mesh networks.
The multicast packets are filtered between the nodes' client bridge (*br-client*) and mesh
interface (*bat0*) on output.
The following packet types are considered essential and aren't filtered:
* ARP (except requests for/replies from 0.0.0.0)
* DHCP, DHCPv6
* ICMPv6 (except Echo Requests (ping) and Node Information Queries (RFC4620)
* IGMP
In addition, the following packet types are allowed to allow experimentation with
layer 3 routing protocols.
* Babel
* OSPF
* RIPng
The following packet types are also allowed:
* BitTorrent Local Peer Discovery (it seems better to have local peers for BitTorrent than sending everything through the internet)

View File

@ -0,0 +1,13 @@
gluon-ebtables-filter-ra-dhcp
=============================
The *gluon-ebtables-filter-ra-dhcp* package tries to prevent common
misconfigurations (i.e. connecting the client interface of a Gluon
node to a private network) from causing issues for either of the
networks.
The rules are the following:
* DHCP requests, DHCPv6 requests and Router Solicitations may only be sent from clients to the mesh, but aren't forwarded
from the mesh to clients
* DHCP replies, DHCPv6 replies and Router Advertisements from clients aren't forwarded to the mesh

View File

@ -0,0 +1,29 @@
gluon-ebtables-limit-arp
========================
The *gluon-ebtables-limit-arp* package adds filters to limit the
amount of ARP requests client devices are allowed to send into the
mesh.
The limits per client device, identified by its MAC address, are
6 packets per minute and 1 per second per node in total.
A burst of up to 50 ARP requests is allowed until the rate-limiting
takes effect (see ``--limit-burst`` in ``ebtables(8)``).
Furthermore, ARP requests for a target IP already present in the
batman-adv DAT cache are excluded from rate-limiting, in regard
to both counting and filtering, as batman-adv will be able
to respond locally without a burden for the mesh. Therefore, this
limiter should not affect popular target IP addresses, like those
of gateways or nameservers.
However it mitigates the impact on the mesh when a larger range of
its IPv4 subnet is being scanned, which would otherwise result in
a significant amount of ARP chatter, even for unused IP addresses.
This package is installed by default if the selected routing
feature is *mesh-batman-adv-15*.
It can be unselected via::
GLUON_SITE_PACKAGES := \
-gluon-ebtables-limit-arp

View File

@ -0,0 +1,33 @@
gluon-ebtables-source-filter
============================
The *gluon-ebtables-source-filter* package adds an additional layer-2 filter
ruleset to prevent unreasonable traffic entering the network via the nodes.
Unreasonable means traffic entering the mesh via a node which source IP does
not belong to the configured IP space.
You may first check if there is a certain proportion of unreasonable traffic,
before adding this package to the firmware image. Furthermore, you should not
use this package if some kind of gateway or upstream network is provided by
a device connected to the client port.
site.conf
---------
prefix4 : optional
- IPv4 subnet
prefix6 :
- IPv6 subnet
extra_prefixes6 : optional
- list of additional IPv6 subnets
Example::
prefix4 = '198.51.100.0/21',
prefix6 = '2001:db8:8::/64',
extra_prefixes6 = {
'2001:db8:9::/64',
'2001:db8:100::/60',
},

Binary file not shown.

After

Width:  |  Height:  |  Size: 291 KiB

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/PR-SVG-20010719/DTD/svg10.dtd">
<svg width="13cm" height="9cm" viewBox="348 138 253 169" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g>
<rect style="fill: #ffffff" x="389" y="164" width="158" height="115"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 1; stroke: #000000" x="389" y="164" width="158" height="115"/>
</g>
<text font-size="12.7998" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="348" y="150">
<tspan x="348" y="150">53.22,</tspan>
<tspan x="348" y="166">8.09 #</tspan>
</text>
<text font-size="12.7998" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="545" y="288">
<tspan x="545" y="288"># 53.36,</tspan>
<tspan x="545" y="304"> 8.32</tspan>
</text>
</svg>

After

Width:  |  Height:  |  Size: 996 B

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,133 @@
gluon-hoodselector
==================
This package provides an automated way to continuously select the correct
domain based on the geolocation of a node. The purpose of Hoodselector is to
automatically detect in which domain the node is located based on its
geolocation settings. Therefore domains are required to have bounding boxes,
defined as polygons or rectangles. Based on this information Hoodselector will
select a domain from the list of known domains and migrate towards it without
requiring a reboot. This package therefore provides a scalable and
decentralized approach to automatic domain selection.
Background information
----------------------
The main problem of the Nordwest Freifunk community was the quickly rising
number of nodes in the network. This indirectly affected the stability of the
network, because the noise inside the network, e.g. management traffic from
the batman-adv protocol, was rising, too. Inside the community there were some
ideas like building separate firmwares for each region. This solution would
cause issues with splitting regions again and nodes scattered among regions
which belong to a different region. Therefore we decided to develop a
dynamic and decentralized management of regions called domains.
The Hoodselector's task is to choose the "right" domains in an intelligent way
and to hold the network together and accessible.
A domain is defined by geostationary fixed shapes by using longitude & latitude
in combination with the domain configuration system. Below you can see a visual
example of a regional domain:
.. figure:: ./gluon-hoodselector-domainmap.jpeg
:alt: Regional domains visualized as shapes defined by latitude & longitude
© OpenStreetMap contributors
Behaviour
------------------
The following is an abstract state diagram which gives an overview
of the process:
.. image:: ./gluon-hoodselector.svg
The sequence of this diagram reflects the priority of its running modes.
Each mode will be explained separately below.
geolocation mode
^^^^^^^^^^^^^^^^
This mode will only be entered when a node has location coordinates set.
Nodes with a position will set their domain based on it.
The node will skip to the next mode when the node (a) has no position or
(b) its position is not within any of the defined bounding boxes.
default domain mode
^^^^^^^^^^^^^^^^^^^
This mode will be entered if no other mode before fits.
It provides a fallback to the default domain.
Domain shapes
-------------
There are two types of domains: the unique default one without a defined shape
and others which contain shapes.
* **default domain**
The default domain doesn't hold any shapes and represents the inverted area of
all other shapes held by other domains with geo coordinates. It will only be
entered if a node could not be matched to a geo domain. A suggested approach is
to define the "old" network as default domain and gradually migrate nodes from
there to geo domains.
* **geo domains**
A geo domain contains shapes, which are described by three dimensional arrays
and represents the geographical size of the domain. There are two possible
definitions of these shapes. The first one is using rectangles so that only
two coordinates per box are needed to define it (see below for an
example). The second one uses polygons which can have multiple edges.
Each domain can hold multiple shapes.
.. image:: ./gluon-hoodselector-rectangle-example.svg
site.conf
---------
The designer of the shapes must always ensure that no overlapping polygons
between domains will be created or else the order in the domain list will
become relevant. If for example domain A and B overlap, Hoodselector
would, for that overlapping area, only ever reach domain A, but never domain B.
Here is an example of a rectangular definition of a shape:
Example::
hoodselector = {
shapes = {
{
{
lat = 53.128,
lon = 8.187
},
{
lat = 53.163,
lon = 8.216
},
},
},
},
Here is an example of a shape defined by a triangle:
Example::
hoodselector = {
shapes = {
{
{
lat = 53.128,
lon = 8.187
},
{
lat = 53.163,
lon = 8.216
},
{
lat = 53.196,
lon = 8.194
},
},
},
},
This package is incompatible with :doc:`gluon-config-mode-domain-select`.

View File

@ -0,0 +1,291 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="863pt" height="411pt" viewBox="0 0 863 411" version="1.1">
<defs>
<g>
<symbol overflow="visible" id="glyph0-0">
<path style="stroke:none;" d="M 0.640625 2.265625 L 0.640625 -9.015625 L 7.03125 -9.015625 L 7.03125 2.265625 Z M 1.359375 1.546875 L 6.328125 1.546875 L 6.328125 -8.296875 L 1.359375 -8.296875 Z M 1.359375 1.546875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-1">
<path style="stroke:none;" d="M 1.25 -9.328125 L 2.515625 -9.328125 L 2.515625 -1.0625 L 7.0625 -1.0625 L 7.0625 0 L 1.25 0 Z M 1.25 -9.328125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-2">
<path style="stroke:none;" d="M 3.921875 -6.1875 C 3.304688 -6.1875 2.816406 -5.945312 2.453125 -5.46875 C 2.097656 -4.988281 1.921875 -4.332031 1.921875 -3.5 C 1.921875 -2.65625 2.097656 -1.992188 2.453125 -1.515625 C 2.804688 -1.035156 3.296875 -0.796875 3.921875 -0.796875 C 4.535156 -0.796875 5.019531 -1.035156 5.375 -1.515625 C 5.726562 -2.003906 5.90625 -2.664062 5.90625 -3.5 C 5.90625 -4.320312 5.726562 -4.972656 5.375 -5.453125 C 5.019531 -5.941406 4.535156 -6.1875 3.921875 -6.1875 Z M 3.921875 -7.171875 C 4.921875 -7.171875 5.703125 -6.84375 6.265625 -6.1875 C 6.835938 -5.539062 7.125 -4.644531 7.125 -3.5 C 7.125 -2.351562 6.835938 -1.453125 6.265625 -0.796875 C 5.703125 -0.140625 4.921875 0.1875 3.921875 0.1875 C 2.910156 0.1875 2.117188 -0.140625 1.546875 -0.796875 C 0.984375 -1.453125 0.703125 -2.351562 0.703125 -3.5 C 0.703125 -4.644531 0.984375 -5.539062 1.546875 -6.1875 C 2.117188 -6.84375 2.910156 -7.171875 3.921875 -7.171875 Z M 3.921875 -7.171875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-3">
<path style="stroke:none;" d="M 4.390625 -3.515625 C 3.460938 -3.515625 2.816406 -3.40625 2.453125 -3.1875 C 2.097656 -2.976562 1.921875 -2.617188 1.921875 -2.109375 C 1.921875 -1.703125 2.050781 -1.378906 2.3125 -1.140625 C 2.582031 -0.898438 2.953125 -0.78125 3.421875 -0.78125 C 4.054688 -0.78125 4.566406 -1.003906 4.953125 -1.453125 C 5.335938 -1.910156 5.53125 -2.515625 5.53125 -3.265625 L 5.53125 -3.515625 Z M 6.671875 -4 L 6.671875 0 L 5.53125 0 L 5.53125 -1.0625 C 5.269531 -0.632812 4.941406 -0.316406 4.546875 -0.109375 C 4.160156 0.0859375 3.679688 0.1875 3.109375 0.1875 C 2.390625 0.1875 1.816406 -0.015625 1.390625 -0.421875 C 0.972656 -0.828125 0.765625 -1.363281 0.765625 -2.03125 C 0.765625 -2.820312 1.023438 -3.414062 1.546875 -3.8125 C 2.078125 -4.21875 2.867188 -4.421875 3.921875 -4.421875 L 5.53125 -4.421875 L 5.53125 -4.53125 C 5.53125 -5.0625 5.351562 -5.46875 5 -5.75 C 4.65625 -6.039062 4.171875 -6.1875 3.546875 -6.1875 C 3.140625 -6.1875 2.75 -6.140625 2.375 -6.046875 C 2 -5.953125 1.632812 -5.8125 1.28125 -5.625 L 1.28125 -6.671875 C 1.695312 -6.835938 2.101562 -6.960938 2.5 -7.046875 C 2.894531 -7.128906 3.28125 -7.171875 3.65625 -7.171875 C 4.675781 -7.171875 5.429688 -6.90625 5.921875 -6.375 C 6.421875 -5.851562 6.671875 -5.0625 6.671875 -4 Z M 6.671875 -4 "/>
</symbol>
<symbol overflow="visible" id="glyph0-4">
<path style="stroke:none;" d="M 5.8125 -5.9375 L 5.8125 -9.71875 L 6.953125 -9.71875 L 6.953125 0 L 5.8125 0 L 5.8125 -1.046875 C 5.570312 -0.628906 5.265625 -0.316406 4.890625 -0.109375 C 4.523438 0.0859375 4.082031 0.1875 3.5625 0.1875 C 2.71875 0.1875 2.03125 -0.148438 1.5 -0.828125 C 0.96875 -1.503906 0.703125 -2.394531 0.703125 -3.5 C 0.703125 -4.59375 0.96875 -5.476562 1.5 -6.15625 C 2.03125 -6.832031 2.71875 -7.171875 3.5625 -7.171875 C 4.082031 -7.171875 4.523438 -7.066406 4.890625 -6.859375 C 5.265625 -6.660156 5.570312 -6.351562 5.8125 -5.9375 Z M 1.890625 -3.5 C 1.890625 -2.644531 2.0625 -1.976562 2.40625 -1.5 C 2.757812 -1.019531 3.238281 -0.78125 3.84375 -0.78125 C 4.457031 -0.78125 4.9375 -1.019531 5.28125 -1.5 C 5.632812 -1.976562 5.8125 -2.644531 5.8125 -3.5 C 5.8125 -4.34375 5.632812 -5.003906 5.28125 -5.484375 C 4.9375 -5.960938 4.457031 -6.203125 3.84375 -6.203125 C 3.238281 -6.203125 2.757812 -5.960938 2.40625 -5.484375 C 2.0625 -5.003906 1.890625 -4.34375 1.890625 -3.5 Z M 1.890625 -3.5 "/>
</symbol>
<symbol overflow="visible" id="glyph0-5">
<path style="stroke:none;" d=""/>
</symbol>
<symbol overflow="visible" id="glyph0-6">
<path style="stroke:none;" d="M 6.65625 -5.65625 C 6.9375 -6.164062 7.273438 -6.546875 7.671875 -6.796875 C 8.078125 -7.046875 8.550781 -7.171875 9.09375 -7.171875 C 9.820312 -7.171875 10.382812 -6.914062 10.78125 -6.40625 C 11.175781 -5.894531 11.375 -5.164062 11.375 -4.21875 L 11.375 0 L 10.21875 0 L 10.21875 -4.1875 C 10.21875 -4.851562 10.097656 -5.347656 9.859375 -5.671875 C 9.628906 -6.003906 9.269531 -6.171875 8.78125 -6.171875 C 8.1875 -6.171875 7.710938 -5.972656 7.359375 -5.578125 C 7.015625 -5.179688 6.84375 -4.640625 6.84375 -3.953125 L 6.84375 0 L 5.6875 0 L 5.6875 -4.1875 C 5.6875 -4.863281 5.566406 -5.363281 5.328125 -5.6875 C 5.097656 -6.007812 4.734375 -6.171875 4.234375 -6.171875 C 3.648438 -6.171875 3.179688 -5.96875 2.828125 -5.5625 C 2.484375 -5.164062 2.3125 -4.628906 2.3125 -3.953125 L 2.3125 0 L 1.15625 0 L 1.15625 -7 L 2.3125 -7 L 2.3125 -5.90625 C 2.582031 -6.332031 2.898438 -6.648438 3.265625 -6.859375 C 3.628906 -7.066406 4.0625 -7.171875 4.5625 -7.171875 C 5.070312 -7.171875 5.503906 -7.039062 5.859375 -6.78125 C 6.222656 -6.519531 6.488281 -6.144531 6.65625 -5.65625 Z M 6.65625 -5.65625 "/>
</symbol>
<symbol overflow="visible" id="glyph0-7">
<path style="stroke:none;" d="M 1.203125 -7 L 2.359375 -7 L 2.359375 0 L 1.203125 0 Z M 1.203125 -9.71875 L 2.359375 -9.71875 L 2.359375 -8.265625 L 1.203125 -8.265625 Z M 1.203125 -9.71875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-8">
<path style="stroke:none;" d="M 7.015625 -4.21875 L 7.015625 0 L 5.875 0 L 5.875 -4.1875 C 5.875 -4.851562 5.742188 -5.347656 5.484375 -5.671875 C 5.222656 -6.003906 4.835938 -6.171875 4.328125 -6.171875 C 3.703125 -6.171875 3.207031 -5.972656 2.84375 -5.578125 C 2.488281 -5.179688 2.3125 -4.640625 2.3125 -3.953125 L 2.3125 0 L 1.15625 0 L 1.15625 -7 L 2.3125 -7 L 2.3125 -5.90625 C 2.59375 -6.332031 2.914062 -6.648438 3.28125 -6.859375 C 3.65625 -7.066406 4.085938 -7.171875 4.578125 -7.171875 C 5.378906 -7.171875 5.984375 -6.921875 6.390625 -6.421875 C 6.804688 -5.921875 7.015625 -5.1875 7.015625 -4.21875 Z M 7.015625 -4.21875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-9">
<path style="stroke:none;" d="M 5.671875 -6.796875 L 5.671875 -5.703125 C 5.347656 -5.867188 5.007812 -5.992188 4.65625 -6.078125 C 4.300781 -6.160156 3.9375 -6.203125 3.5625 -6.203125 C 3 -6.203125 2.570312 -6.113281 2.28125 -5.9375 C 2 -5.769531 1.859375 -5.507812 1.859375 -5.15625 C 1.859375 -4.882812 1.957031 -4.671875 2.15625 -4.515625 C 2.363281 -4.367188 2.773438 -4.226562 3.390625 -4.09375 L 3.78125 -4 C 4.601562 -3.832031 5.1875 -3.585938 5.53125 -3.265625 C 5.875 -2.941406 6.046875 -2.5 6.046875 -1.9375 C 6.046875 -1.28125 5.785156 -0.757812 5.265625 -0.375 C 4.753906 0 4.050781 0.1875 3.15625 0.1875 C 2.78125 0.1875 2.390625 0.148438 1.984375 0.078125 C 1.578125 0.00390625 1.144531 -0.101562 0.6875 -0.25 L 0.6875 -1.4375 C 1.113281 -1.21875 1.53125 -1.050781 1.9375 -0.9375 C 2.351562 -0.832031 2.765625 -0.78125 3.171875 -0.78125 C 3.710938 -0.78125 4.128906 -0.875 4.421875 -1.0625 C 4.710938 -1.25 4.859375 -1.507812 4.859375 -1.84375 C 4.859375 -2.15625 4.753906 -2.394531 4.546875 -2.5625 C 4.335938 -2.726562 3.875 -2.890625 3.15625 -3.046875 L 2.765625 -3.140625 C 2.046875 -3.285156 1.53125 -3.515625 1.21875 -3.828125 C 0.90625 -4.140625 0.75 -4.566406 0.75 -5.109375 C 0.75 -5.765625 0.976562 -6.269531 1.4375 -6.625 C 1.90625 -6.988281 2.570312 -7.171875 3.4375 -7.171875 C 3.851562 -7.171875 4.25 -7.140625 4.625 -7.078125 C 5 -7.015625 5.347656 -6.921875 5.671875 -6.796875 Z M 5.671875 -6.796875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-10">
<path style="stroke:none;" d="M 2.34375 -8.984375 L 2.34375 -7 L 4.71875 -7 L 4.71875 -6.109375 L 2.34375 -6.109375 L 2.34375 -2.3125 C 2.34375 -1.738281 2.421875 -1.367188 2.578125 -1.203125 C 2.734375 -1.046875 3.050781 -0.96875 3.53125 -0.96875 L 4.71875 -0.96875 L 4.71875 0 L 3.53125 0 C 2.644531 0 2.03125 -0.164062 1.6875 -0.5 C 1.351562 -0.832031 1.1875 -1.4375 1.1875 -2.3125 L 1.1875 -6.109375 L 0.34375 -6.109375 L 0.34375 -7 L 1.1875 -7 L 1.1875 -8.984375 Z M 2.34375 -8.984375 "/>
</symbol>
<symbol overflow="visible" id="glyph0-11">
<path style="stroke:none;" d="M 1.203125 -9.71875 L 2.359375 -9.71875 L 2.359375 0 L 1.203125 0 Z M 1.203125 -9.71875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-12">
<path style="stroke:none;" d="M 0.703125 -7 L 6.171875 -7 L 6.171875 -5.953125 L 1.84375 -0.921875 L 6.171875 -0.921875 L 6.171875 0 L 0.546875 0 L 0.546875 -1.046875 L 4.875 -6.078125 L 0.703125 -6.078125 Z M 0.703125 -7 "/>
</symbol>
<symbol overflow="visible" id="glyph0-13">
<path style="stroke:none;" d="M 5.8125 -3.578125 C 5.8125 -4.410156 5.640625 -5.054688 5.296875 -5.515625 C 4.953125 -5.972656 4.46875 -6.203125 3.84375 -6.203125 C 3.226562 -6.203125 2.75 -5.972656 2.40625 -5.515625 C 2.0625 -5.054688 1.890625 -4.410156 1.890625 -3.578125 C 1.890625 -2.753906 2.0625 -2.113281 2.40625 -1.65625 C 2.75 -1.195312 3.226562 -0.96875 3.84375 -0.96875 C 4.46875 -0.96875 4.953125 -1.195312 5.296875 -1.65625 C 5.640625 -2.113281 5.8125 -2.753906 5.8125 -3.578125 Z M 6.953125 -0.875 C 6.953125 0.320312 6.6875 1.207031 6.15625 1.78125 C 5.632812 2.363281 4.828125 2.65625 3.734375 2.65625 C 3.328125 2.65625 2.945312 2.625 2.59375 2.5625 C 2.238281 2.507812 1.890625 2.421875 1.546875 2.296875 L 1.546875 1.171875 C 1.890625 1.359375 2.222656 1.492188 2.546875 1.578125 C 2.878906 1.671875 3.21875 1.71875 3.5625 1.71875 C 4.3125 1.71875 4.875 1.519531 5.25 1.125 C 5.625 0.726562 5.8125 0.132812 5.8125 -0.65625 L 5.8125 -1.234375 C 5.570312 -0.816406 5.265625 -0.503906 4.890625 -0.296875 C 4.523438 -0.0976562 4.082031 0 3.5625 0 C 2.707031 0 2.015625 -0.328125 1.484375 -0.984375 C 0.960938 -1.640625 0.703125 -2.503906 0.703125 -3.578125 C 0.703125 -4.660156 0.960938 -5.53125 1.484375 -6.1875 C 2.015625 -6.84375 2.707031 -7.171875 3.5625 -7.171875 C 4.082031 -7.171875 4.523438 -7.066406 4.890625 -6.859375 C 5.265625 -6.648438 5.570312 -6.34375 5.8125 -5.9375 L 5.8125 -7 L 6.953125 -7 Z M 6.953125 -0.875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-14">
<path style="stroke:none;" d="M 7.1875 -3.78125 L 7.1875 -3.21875 L 1.90625 -3.21875 C 1.957031 -2.425781 2.195312 -1.820312 2.625 -1.40625 C 3.050781 -1 3.644531 -0.796875 4.40625 -0.796875 C 4.84375 -0.796875 5.269531 -0.847656 5.6875 -0.953125 C 6.101562 -1.066406 6.515625 -1.226562 6.921875 -1.4375 L 6.921875 -0.359375 C 6.515625 -0.179688 6.09375 -0.046875 5.65625 0.046875 C 5.21875 0.140625 4.78125 0.1875 4.34375 0.1875 C 3.21875 0.1875 2.328125 -0.132812 1.671875 -0.78125 C 1.023438 -1.4375 0.703125 -2.320312 0.703125 -3.4375 C 0.703125 -4.582031 1.007812 -5.488281 1.625 -6.15625 C 2.25 -6.832031 3.085938 -7.171875 4.140625 -7.171875 C 5.078125 -7.171875 5.816406 -6.863281 6.359375 -6.25 C 6.910156 -5.644531 7.1875 -4.820312 7.1875 -3.78125 Z M 6.046875 -4.125 C 6.035156 -4.75 5.859375 -5.25 5.515625 -5.625 C 5.171875 -6 4.71875 -6.1875 4.15625 -6.1875 C 3.507812 -6.1875 2.992188 -6.003906 2.609375 -5.640625 C 2.222656 -5.285156 2 -4.78125 1.9375 -4.125 Z M 6.046875 -4.125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-15">
<path style="stroke:none;" d="M 6.25 -6.734375 L 6.25 -5.65625 C 5.914062 -5.832031 5.585938 -5.960938 5.265625 -6.046875 C 4.941406 -6.140625 4.613281 -6.1875 4.28125 -6.1875 C 3.53125 -6.1875 2.945312 -5.953125 2.53125 -5.484375 C 2.125 -5.015625 1.921875 -4.351562 1.921875 -3.5 C 1.921875 -2.644531 2.125 -1.976562 2.53125 -1.5 C 2.945312 -1.03125 3.53125 -0.796875 4.28125 -0.796875 C 4.613281 -0.796875 4.941406 -0.835938 5.265625 -0.921875 C 5.585938 -1.015625 5.914062 -1.148438 6.25 -1.328125 L 6.25 -0.265625 C 5.925781 -0.117188 5.59375 -0.0078125 5.25 0.0625 C 4.90625 0.144531 4.539062 0.1875 4.15625 0.1875 C 3.09375 0.1875 2.25 -0.144531 1.625 -0.8125 C 1.007812 -1.476562 0.703125 -2.375 0.703125 -3.5 C 0.703125 -4.632812 1.015625 -5.53125 1.640625 -6.1875 C 2.273438 -6.84375 3.132812 -7.171875 4.21875 -7.171875 C 4.570312 -7.171875 4.914062 -7.132812 5.25 -7.0625 C 5.59375 -6.988281 5.925781 -6.878906 6.25 -6.734375 Z M 6.25 -6.734375 "/>
</symbol>
<symbol overflow="visible" id="glyph0-16">
<path style="stroke:none;" d="M 2.3125 -1.046875 L 2.3125 2.65625 L 1.15625 2.65625 L 1.15625 -7 L 2.3125 -7 L 2.3125 -5.9375 C 2.5625 -6.351562 2.867188 -6.660156 3.234375 -6.859375 C 3.597656 -7.066406 4.039062 -7.171875 4.5625 -7.171875 C 5.40625 -7.171875 6.09375 -6.832031 6.625 -6.15625 C 7.15625 -5.476562 7.421875 -4.59375 7.421875 -3.5 C 7.421875 -2.394531 7.15625 -1.503906 6.625 -0.828125 C 6.09375 -0.148438 5.40625 0.1875 4.5625 0.1875 C 4.039062 0.1875 3.597656 0.0859375 3.234375 -0.109375 C 2.867188 -0.316406 2.5625 -0.628906 2.3125 -1.046875 Z M 6.234375 -3.5 C 6.234375 -4.34375 6.054688 -5.003906 5.703125 -5.484375 C 5.359375 -5.960938 4.882812 -6.203125 4.28125 -6.203125 C 3.664062 -6.203125 3.179688 -5.960938 2.828125 -5.484375 C 2.484375 -5.003906 2.3125 -4.34375 2.3125 -3.5 C 2.3125 -2.644531 2.484375 -1.976562 2.828125 -1.5 C 3.179688 -1.019531 3.664062 -0.78125 4.28125 -0.78125 C 4.882812 -0.78125 5.359375 -1.019531 5.703125 -1.5 C 6.054688 -1.976562 6.234375 -2.644531 6.234375 -3.5 Z M 6.234375 -3.5 "/>
</symbol>
<symbol overflow="visible" id="glyph0-17">
<path style="stroke:none;" d="M 1.375 -1.59375 L 2.6875 -1.59375 L 2.6875 0 L 1.375 0 Z M 1.375 -1.59375 "/>
</symbol>
<symbol overflow="visible" id="glyph0-18">
<path style="stroke:none;" d="M 7.015625 -7 L 4.5 -3.59375 L 7.15625 0 L 5.796875 0 L 3.765625 -2.75 L 1.71875 0 L 0.375 0 L 3.09375 -3.65625 L 0.59375 -7 L 1.953125 -7 L 3.8125 -4.5 L 5.671875 -7 Z M 7.015625 -7 "/>
</symbol>
<symbol overflow="visible" id="glyph0-19">
<path style="stroke:none;" d="M 4.75 -9.71875 L 4.75 -8.765625 L 3.65625 -8.765625 C 3.238281 -8.765625 2.945312 -8.679688 2.78125 -8.515625 C 2.625 -8.347656 2.546875 -8.046875 2.546875 -7.609375 L 2.546875 -7 L 4.4375 -7 L 4.4375 -6.109375 L 2.546875 -6.109375 L 2.546875 0 L 1.390625 0 L 1.390625 -6.109375 L 0.296875 -6.109375 L 0.296875 -7 L 1.390625 -7 L 1.390625 -7.484375 C 1.390625 -8.265625 1.570312 -8.832031 1.9375 -9.1875 C 2.300781 -9.539062 2.875 -9.71875 3.65625 -9.71875 Z M 4.75 -9.71875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-20">
<path style="stroke:none;" d="M 2.515625 -8.296875 L 2.515625 -1.03125 L 4.046875 -1.03125 C 5.328125 -1.03125 6.265625 -1.320312 6.859375 -1.90625 C 7.460938 -2.488281 7.765625 -3.410156 7.765625 -4.671875 C 7.765625 -5.921875 7.460938 -6.835938 6.859375 -7.421875 C 6.265625 -8.003906 5.328125 -8.296875 4.046875 -8.296875 Z M 1.25 -9.328125 L 3.84375 -9.328125 C 5.65625 -9.328125 6.984375 -8.953125 7.828125 -8.203125 C 8.671875 -7.453125 9.09375 -6.273438 9.09375 -4.671875 C 9.09375 -3.066406 8.664062 -1.882812 7.8125 -1.125 C 6.96875 -0.375 5.644531 0 3.84375 0 L 1.25 0 Z M 1.25 -9.328125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-21">
<path style="stroke:none;" d="M 5.265625 -5.921875 C 5.128906 -5.992188 4.984375 -6.046875 4.828125 -6.078125 C 4.679688 -6.117188 4.519531 -6.140625 4.34375 -6.140625 C 3.6875 -6.140625 3.179688 -5.925781 2.828125 -5.5 C 2.484375 -5.082031 2.3125 -4.476562 2.3125 -3.6875 L 2.3125 0 L 1.15625 0 L 1.15625 -7 L 2.3125 -7 L 2.3125 -5.90625 C 2.5625 -6.332031 2.878906 -6.648438 3.265625 -6.859375 C 3.648438 -7.066406 4.117188 -7.171875 4.671875 -7.171875 C 4.753906 -7.171875 4.84375 -7.164062 4.9375 -7.15625 C 5.03125 -7.144531 5.132812 -7.128906 5.25 -7.109375 Z M 5.265625 -5.921875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-22">
<path style="stroke:none;" d="M 1.09375 -2.765625 L 1.09375 -7 L 2.234375 -7 L 2.234375 -2.8125 C 2.234375 -2.144531 2.363281 -1.644531 2.625 -1.3125 C 2.882812 -0.976562 3.269531 -0.8125 3.78125 -0.8125 C 4.40625 -0.8125 4.894531 -1.007812 5.25 -1.40625 C 5.613281 -1.800781 5.796875 -2.34375 5.796875 -3.03125 L 5.796875 -7 L 6.953125 -7 L 6.953125 0 L 5.796875 0 L 5.796875 -1.078125 C 5.515625 -0.648438 5.191406 -0.332031 4.828125 -0.125 C 4.460938 0.0820312 4.035156 0.1875 3.546875 0.1875 C 2.742188 0.1875 2.132812 -0.0625 1.71875 -0.5625 C 1.300781 -1.0625 1.09375 -1.796875 1.09375 -2.765625 Z M 1.09375 -2.765625 "/>
</symbol>
<symbol overflow="visible" id="glyph0-23">
<path style="stroke:none;" d="M 1.25 -9.328125 L 7.15625 -9.328125 L 7.15625 -8.265625 L 2.515625 -8.265625 L 2.515625 -5.5 L 6.953125 -5.5 L 6.953125 -4.4375 L 2.515625 -4.4375 L 2.515625 -1.0625 L 7.265625 -1.0625 L 7.265625 0 L 1.25 0 Z M 1.25 -9.328125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-24">
<path style="stroke:none;" d="M 6.84375 -9.015625 L 6.84375 -7.796875 C 6.363281 -8.023438 5.910156 -8.191406 5.484375 -8.296875 C 5.066406 -8.410156 4.660156 -8.46875 4.265625 -8.46875 C 3.578125 -8.46875 3.046875 -8.332031 2.671875 -8.0625 C 2.296875 -7.800781 2.109375 -7.425781 2.109375 -6.9375 C 2.109375 -6.519531 2.234375 -6.207031 2.484375 -6 C 2.734375 -5.789062 3.203125 -5.625 3.890625 -5.5 L 4.65625 -5.34375 C 5.59375 -5.15625 6.285156 -4.835938 6.734375 -4.390625 C 7.179688 -3.941406 7.40625 -3.335938 7.40625 -2.578125 C 7.40625 -1.671875 7.101562 -0.984375 6.5 -0.515625 C 5.894531 -0.046875 5.007812 0.1875 3.84375 0.1875 C 3.394531 0.1875 2.921875 0.132812 2.421875 0.03125 C 1.929688 -0.0703125 1.414062 -0.21875 0.875 -0.40625 L 0.875 -1.71875 C 1.394531 -1.425781 1.898438 -1.207031 2.390625 -1.0625 C 2.878906 -0.914062 3.363281 -0.84375 3.84375 -0.84375 C 4.5625 -0.84375 5.113281 -0.984375 5.5 -1.265625 C 5.894531 -1.546875 6.09375 -1.953125 6.09375 -2.484375 C 6.09375 -2.941406 5.953125 -3.296875 5.671875 -3.546875 C 5.390625 -3.804688 4.925781 -4.003906 4.28125 -4.140625 L 3.515625 -4.28125 C 2.578125 -4.46875 1.894531 -4.757812 1.46875 -5.15625 C 1.050781 -5.5625 0.84375 -6.117188 0.84375 -6.828125 C 0.84375 -7.660156 1.132812 -8.3125 1.71875 -8.78125 C 2.300781 -9.257812 3.101562 -9.5 4.125 -9.5 C 4.5625 -9.5 5.003906 -9.457031 5.453125 -9.375 C 5.910156 -9.300781 6.375 -9.179688 6.84375 -9.015625 Z M 6.84375 -9.015625 "/>
</symbol>
</g>
</defs>
<g id="surface2229">
<rect x="0" y="0" width="863" height="411" style="fill:rgb(100%,100%,100%);fill-opacity:1;stroke:none;"/>
<path style="fill:none;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 5.118086 6.441094 L 9.277656 6.466289 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 9.276094 6.716289 L 9.777656 6.469219 L 9.279023 6.216289 Z M 9.276094 6.716289 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 15.924336 6.487969 C 15.924336 7.765703 14.559492 8.801445 12.876094 8.801445 C 11.1925 8.801445 9.827656 7.765703 9.827656 6.487969 C 9.827656 5.210234 11.1925 4.174492 12.876094 4.174492 C 14.559492 4.174492 15.924336 5.210234 15.924336 6.487969 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-1" x="176.851562" y="68.529405"/>
<use xlink:href="#glyph0-2" x="183.796007" y="68.529405"/>
<use xlink:href="#glyph0-3" x="191.573785" y="68.529405"/>
<use xlink:href="#glyph0-4" x="199.351562" y="68.529405"/>
<use xlink:href="#glyph0-5" x="207.407118" y="68.529405"/>
<use xlink:href="#glyph0-4" x="211.573785" y="68.529405"/>
<use xlink:href="#glyph0-2" x="219.62934" y="68.529405"/>
<use xlink:href="#glyph0-6" x="227.407118" y="68.529405"/>
<use xlink:href="#glyph0-3" x="239.907118" y="68.529405"/>
<use xlink:href="#glyph0-7" x="247.684896" y="68.529405"/>
<use xlink:href="#glyph0-8" x="251.296007" y="68.529405"/>
<use xlink:href="#glyph0-9" x="259.351562" y="68.529405"/>
</g>
<path style="fill:none;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 15.949141 6.487969 L 17.296992 6.487969 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 17.296992 6.737969 L 17.796992 6.487969 L 17.296992 6.237969 Z M 17.296992 6.737969 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<path style=" stroke:none;fill-rule:evenodd;fill:rgb(0%,100%,0%);fill-opacity:1;" d="M 69.898438 0 L 147.648438 0 L 147.648438 14.898438 L 69.898438 14.898438 Z M 69.898438 0 "/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-7" x="69.898438" y="11.88878"/>
<use xlink:href="#glyph0-8" x="73.509549" y="11.88878"/>
<use xlink:href="#glyph0-7" x="81.565104" y="11.88878"/>
<use xlink:href="#glyph0-10" x="85.176215" y="11.88878"/>
<use xlink:href="#glyph0-7" x="90.176215" y="11.88878"/>
<use xlink:href="#glyph0-3" x="93.787326" y="11.88878"/>
<use xlink:href="#glyph0-11" x="101.565104" y="11.88878"/>
<use xlink:href="#glyph0-7" x="105.176215" y="11.88878"/>
<use xlink:href="#glyph0-12" x="108.787326" y="11.88878"/>
<use xlink:href="#glyph0-3" x="115.453993" y="11.88878"/>
<use xlink:href="#glyph0-10" x="123.231771" y="11.88878"/>
<use xlink:href="#glyph0-7" x="128.231771" y="11.88878"/>
<use xlink:href="#glyph0-2" x="131.842882" y="11.88878"/>
<use xlink:href="#glyph0-8" x="139.62066" y="11.88878"/>
</g>
<path style=" stroke:none;fill-rule:evenodd;fill:rgb(0%,100%,0%);fill-opacity:1;" d="M 324.351562 0 L 439.453125 0 L 439.453125 14.898438 L 324.351562 14.898438 Z M 324.351562 0 "/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-13" x="324.691406" y="11.88878"/>
<use xlink:href="#glyph0-14" x="332.746962" y="11.88878"/>
<use xlink:href="#glyph0-2" x="340.52474" y="11.88878"/>
<use xlink:href="#glyph0-11" x="348.302517" y="11.88878"/>
<use xlink:href="#glyph0-2" x="351.913628" y="11.88878"/>
<use xlink:href="#glyph0-15" x="359.691406" y="11.88878"/>
<use xlink:href="#glyph0-3" x="366.635851" y="11.88878"/>
<use xlink:href="#glyph0-10" x="374.413628" y="11.88878"/>
<use xlink:href="#glyph0-7" x="379.413628" y="11.88878"/>
<use xlink:href="#glyph0-2" x="383.02474" y="11.88878"/>
<use xlink:href="#glyph0-8" x="390.802517" y="11.88878"/>
<use xlink:href="#glyph0-5" x="398.858073" y="11.88878"/>
<use xlink:href="#glyph0-6" x="403.02474" y="11.88878"/>
<use xlink:href="#glyph0-2" x="415.52474" y="11.88878"/>
<use xlink:href="#glyph0-4" x="423.302517" y="11.88878"/>
<use xlink:href="#glyph0-14" x="431.358073" y="11.88878"/>
</g>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 24.205195 6.487969 C 24.205195 7.495391 22.781758 8.311992 21.026094 8.311992 C 19.270234 8.311992 17.846992 7.495391 17.846992 6.487969 C 17.846992 5.480742 19.270234 4.664141 21.026094 4.664141 C 22.781758 4.664141 24.205195 5.480742 24.205195 6.487969 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-13" x="339.851562" y="68.529405"/>
<use xlink:href="#glyph0-14" x="347.907118" y="68.529405"/>
<use xlink:href="#glyph0-2" x="355.684896" y="68.529405"/>
<use xlink:href="#glyph0-5" x="363.462674" y="68.529405"/>
<use xlink:href="#glyph0-16" x="367.62934" y="68.529405"/>
<use xlink:href="#glyph0-2" x="375.684896" y="68.529405"/>
<use xlink:href="#glyph0-9" x="383.462674" y="68.529405"/>
<use xlink:href="#glyph0-17" x="390.12934" y="68.529405"/>
<use xlink:href="#glyph0-5" x="394.296007" y="68.529405"/>
<use xlink:href="#glyph0-14" x="398.462674" y="68.529405"/>
<use xlink:href="#glyph0-18" x="406.240451" y="68.529405"/>
<use xlink:href="#glyph0-7" x="413.740451" y="68.529405"/>
<use xlink:href="#glyph0-9" x="417.351562" y="68.529405"/>
<use xlink:href="#glyph0-10" x="424.018229" y="68.529405"/>
</g>
<path style="fill:none;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 24.204609 6.467266 L 29.831758 6.430352 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 29.83332 6.680352 L 30.331758 6.427031 L 29.830195 6.180352 Z M 29.83332 6.680352 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-19" x="484.898438" y="56.88878"/>
<use xlink:href="#glyph0-3" x="489.342882" y="56.88878"/>
<use xlink:href="#glyph0-11" x="497.12066" y="56.88878"/>
<use xlink:href="#glyph0-9" x="500.731771" y="56.88878"/>
<use xlink:href="#glyph0-14" x="507.398438" y="56.88878"/>
</g>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 24.225312 13.150078 C 24.225312 14.040703 22.781172 14.762773 20.999922 14.762773 C 19.218672 14.762773 17.774531 14.040703 17.774531 13.150078 C 17.774531 12.259453 19.218672 11.537383 20.999922 11.537383 C 22.781172 11.537383 24.225312 12.259453 24.225312 13.150078 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-13" x="334.875" y="201.771593"/>
<use xlink:href="#glyph0-14" x="342.930556" y="201.771593"/>
<use xlink:href="#glyph0-10" x="350.708333" y="201.771593"/>
<use xlink:href="#glyph0-5" x="355.708333" y="201.771593"/>
<use xlink:href="#glyph0-13" x="359.875" y="201.771593"/>
<use xlink:href="#glyph0-14" x="367.930556" y="201.771593"/>
<use xlink:href="#glyph0-2" x="375.708333" y="201.771593"/>
<use xlink:href="#glyph0-20" x="383.486111" y="201.771593"/>
<use xlink:href="#glyph0-2" x="393.208333" y="201.771593"/>
<use xlink:href="#glyph0-6" x="400.986111" y="201.771593"/>
<use xlink:href="#glyph0-3" x="413.486111" y="201.771593"/>
<use xlink:href="#glyph0-7" x="421.263889" y="201.771593"/>
<use xlink:href="#glyph0-8" x="424.875" y="201.771593"/>
</g>
<path style="fill:none;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 21.018867 8.336602 L 21.00832 10.987969 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 20.75832 10.986992 L 21.006367 11.487969 L 21.25832 10.988945 Z M 20.75832 10.986992 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-10" x="391.898438" y="129.88878"/>
<use xlink:href="#glyph0-21" x="396.898438" y="129.88878"/>
<use xlink:href="#glyph0-22" x="402.176215" y="129.88878"/>
<use xlink:href="#glyph0-14" x="410.231771" y="129.88878"/>
</g>
<path style="fill:none;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 20.999922 14.786797 L 20.999922 16.078789 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 20.749922 16.078789 L 20.999922 16.578789 L 21.249922 16.078789 Z M 20.749922 16.078789 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<path style="fill:none;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 23.262812 11.97957 L 31.010469 7.972539 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 31.125312 8.194609 L 31.454609 7.742852 L 30.895625 7.750469 Z M 31.125312 8.194609 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 24.1925 18.224883 C 24.1925 19.106523 22.763203 19.821172 21.000117 19.821172 C 19.237031 19.821172 17.807734 19.106523 17.807734 18.224883 C 17.807734 17.343438 19.237031 16.628789 21.000117 16.628789 C 22.763203 16.628789 24.1925 17.343438 24.1925 18.224883 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-9" x="335.582031" y="303.267687"/>
<use xlink:href="#glyph0-14" x="342.248698" y="303.267687"/>
<use xlink:href="#glyph0-10" x="350.026476" y="303.267687"/>
<use xlink:href="#glyph0-5" x="355.026476" y="303.267687"/>
<use xlink:href="#glyph0-13" x="359.193142" y="303.267687"/>
<use xlink:href="#glyph0-14" x="367.248698" y="303.267687"/>
<use xlink:href="#glyph0-2" x="375.026476" y="303.267687"/>
<use xlink:href="#glyph0-20" x="382.804253" y="303.267687"/>
<use xlink:href="#glyph0-2" x="392.526476" y="303.267687"/>
<use xlink:href="#glyph0-6" x="400.304253" y="303.267687"/>
<use xlink:href="#glyph0-3" x="412.804253" y="303.267687"/>
<use xlink:href="#glyph0-7" x="420.582031" y="303.267687"/>
<use xlink:href="#glyph0-8" x="424.193142" y="303.267687"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-19" x="479.898438" y="130.13878"/>
<use xlink:href="#glyph0-3" x="484.342882" y="130.13878"/>
<use xlink:href="#glyph0-11" x="492.12066" y="130.13878"/>
<use xlink:href="#glyph0-9" x="495.731771" y="130.13878"/>
<use xlink:href="#glyph0-14" x="502.398438" y="130.13878"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-10" x="393.898438" y="248.13878"/>
<use xlink:href="#glyph0-21" x="398.898438" y="248.13878"/>
<use xlink:href="#glyph0-22" x="404.176215" y="248.13878"/>
<use xlink:href="#glyph0-14" x="412.231771" y="248.13878"/>
</g>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 23.212227 22.674883 C 23.212227 23.28582 22.221797 23.780938 21.000117 23.780938 C 19.778242 23.780938 18.787812 23.28582 18.787812 22.674883 C 18.787812 22.064141 19.778242 21.568828 21.000117 21.568828 C 22.221797 21.568828 23.212227 22.064141 23.212227 22.674883 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-23" x="371.832031" y="392.267687"/>
<use xlink:href="#glyph0-18" x="379.887587" y="392.267687"/>
<use xlink:href="#glyph0-7" x="387.387587" y="392.267687"/>
<use xlink:href="#glyph0-10" x="390.998698" y="392.267687"/>
</g>
<path style="fill:none;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 21.000117 19.846367 L 21.000117 21.019023 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 20.750117 21.019023 L 21.000117 21.519023 L 21.250117 21.019023 Z M 20.750117 21.019023 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 5.094062 6.431133 C 5.094062 7.086211 4.363398 7.617266 3.462031 7.617266 C 2.560664 7.617266 1.83 7.086211 1.83 6.431133 C 1.83 5.776055 2.560664 5.245 3.462031 5.245 C 4.363398 5.245 5.094062 5.776055 5.094062 6.431133 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-24" x="17.59375" y="67.392687"/>
<use xlink:href="#glyph0-10" x="25.649306" y="67.392687"/>
<use xlink:href="#glyph0-3" x="30.649306" y="67.392687"/>
<use xlink:href="#glyph0-21" x="38.427083" y="67.392687"/>
<use xlink:href="#glyph0-10" x="43.704861" y="67.392687"/>
</g>
<path style=" stroke:none;fill-rule:evenodd;fill:rgb(0%,100%,0%);fill-opacity:1;" d="M 574.574219 0.300781 L 712.023438 0.300781 L 712.023438 15.199219 L 574.574219 15.199219 Z M 574.574219 0.300781 "/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-4" x="574.84375" y="12.185655"/>
<use xlink:href="#glyph0-14" x="582.899306" y="12.185655"/>
<use xlink:href="#glyph0-19" x="590.677083" y="12.185655"/>
<use xlink:href="#glyph0-3" x="595.121528" y="12.185655"/>
<use xlink:href="#glyph0-22" x="602.899306" y="12.185655"/>
<use xlink:href="#glyph0-11" x="610.954861" y="12.185655"/>
<use xlink:href="#glyph0-10" x="614.565972" y="12.185655"/>
<use xlink:href="#glyph0-5" x="619.565972" y="12.185655"/>
<use xlink:href="#glyph0-4" x="623.732639" y="12.185655"/>
<use xlink:href="#glyph0-2" x="631.788194" y="12.185655"/>
<use xlink:href="#glyph0-6" x="639.565972" y="12.185655"/>
<use xlink:href="#glyph0-3" x="652.065972" y="12.185655"/>
<use xlink:href="#glyph0-7" x="659.84375" y="12.185655"/>
<use xlink:href="#glyph0-8" x="663.454861" y="12.185655"/>
<use xlink:href="#glyph0-5" x="671.510417" y="12.185655"/>
<use xlink:href="#glyph0-6" x="675.677083" y="12.185655"/>
<use xlink:href="#glyph0-2" x="688.177083" y="12.185655"/>
<use xlink:href="#glyph0-4" x="695.954861" y="12.185655"/>
<use xlink:href="#glyph0-14" x="704.010417" y="12.185655"/>
</g>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 37.710859 6.402812 C 37.710859 7.414922 36.069844 8.23543 34.04543 8.23543 C 32.021016 8.23543 30.38 7.414922 30.38 6.402812 C 30.38 5.390508 32.021016 4.57 34.04543 4.57 C 36.069844 4.57 37.710859 5.390508 37.710859 6.402812 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-9" x="585.921875" y="66.822374"/>
<use xlink:href="#glyph0-14" x="592.588542" y="66.822374"/>
<use xlink:href="#glyph0-10" x="600.366319" y="66.822374"/>
<use xlink:href="#glyph0-5" x="605.366319" y="66.822374"/>
<use xlink:href="#glyph0-4" x="609.532986" y="66.822374"/>
<use xlink:href="#glyph0-14" x="617.588542" y="66.822374"/>
<use xlink:href="#glyph0-19" x="625.366319" y="66.822374"/>
<use xlink:href="#glyph0-3" x="629.810764" y="66.822374"/>
<use xlink:href="#glyph0-22" x="637.588542" y="66.822374"/>
<use xlink:href="#glyph0-11" x="645.644097" y="66.822374"/>
<use xlink:href="#glyph0-10" x="649.255208" y="66.822374"/>
<use xlink:href="#glyph0-20" x="654.255208" y="66.822374"/>
<use xlink:href="#glyph0-2" x="663.977431" y="66.822374"/>
<use xlink:href="#glyph0-6" x="671.755208" y="66.822374"/>
<use xlink:href="#glyph0-3" x="684.255208" y="66.822374"/>
<use xlink:href="#glyph0-7" x="692.032986" y="66.822374"/>
<use xlink:href="#glyph0-8" x="695.644097" y="66.822374"/>
</g>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 44.962227 6.300078 C 44.962227 6.91082 43.971797 7.406133 42.750117 7.406133 C 41.528242 7.406133 40.537812 6.91082 40.537812 6.300078 C 40.537812 5.689141 41.528242 5.194023 42.750117 5.194023 C 43.971797 5.194023 44.962227 5.689141 44.962227 6.300078 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-23" x="806.832031" y="64.767687"/>
<use xlink:href="#glyph0-18" x="814.887587" y="64.767687"/>
<use xlink:href="#glyph0-7" x="822.387587" y="64.767687"/>
<use xlink:href="#glyph0-10" x="825.998698" y="64.767687"/>
</g>
<path style="fill:none;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 37.735273 6.359258 L 39.988984 6.3325 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.05;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 39.991914 6.5825 L 40.488789 6.326641 L 39.985859 6.082695 Z M 39.991914 6.5825 " transform="matrix(20,0,0,20,-36.1,-65.11875)"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 36 KiB

View File

@ -0,0 +1,37 @@
gluon-logging
=============
The *gluon-logging* package allows to configure a remote syslog server that
will receive the systems log output that is also visible when calling ``logread``
from a terminal.
It supports both IPv4 and IPv6 endpoints over UDP and TCP.
Note: The syslog mechanism is incapable of providing a complete log as network
access is required to send out log messages and ``logd`` does not buffer and resend
older log messages even though they might be available in ``logread``.
This package conflicts with ``gluon-web-logging`` as it will overwrite the
user-given syslog server on every upgrade.
site.conf
---------
syslog.ip : required
- Destination address of the remote syslog server
syslog.port : optional
- Destination port of the remote syslog server
- Defaults to 514
syslog.proto : optional
- Protocol to transport syslog frames in, can be either ``tcp`` or ``udp``
- Defaults to UDP
Example::
syslog = {
ip = "2001:db8::1",
port = 514,
proto = "udp",
},

View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" version="1.1" width="931.48547" height="370.93994" id="svg4059" inkscape:version="0.48.1 r9760" sodipodi:docname="bat_v2_black.svg" inkscape:export-filename="/mnt/pandem0nium/pub/incoming/bat_logo_v2/bat_v2_black.png" inkscape:export-xdpi="90" inkscape:export-ydpi="90" style="display:inline">
<sodipodi:namedview pagecolor="#000000" bordercolor="#666666" borderopacity="1" objecttolerance="10" gridtolerance="10" guidetolerance="10" inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-width="956" inkscape:window-height="1173" id="namedview9" showgrid="false" inkscape:zoom="0.88204281" inkscape:cx="466.24453" inkscape:cy="37.028713" inkscape:window-x="1920" inkscape:window-y="0" inkscape:window-maximized="0" inkscape:current-layer="layer2" fit-margin-top="0" fit-margin-left="0" fit-margin-right="0" fit-margin-bottom="0" inkscape:snap-nodes="true"/>
<defs id="defs4061"/>
<metadata id="metadata4064">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title/>
</cc:Work>
</rdf:RDF>
</metadata>
<g inkscape:groupmode="layer" id="layer3" inkscape:label="outline" style="display:none" transform="translate(6.26672, 5.9375)">
<path style="color:#000000;fill:#ffffff;stroke:none;stroke-width:4.27199984;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" d="m 483.25,-3.21875 c -6.08901,48.631979 -35.33662,91.011416 -69.21578,124.91707 -21.83485,21.38244 -47.03966,39.44335 -75.34672,51.17668 5.57969,-19.28428 1.04687,-40.97874 -11.5,-56.59375 2.45626,-29.914047 0.68927,-59.992978 -2.5,-89.78125 -15.98198,19.265018 -27.7684,41.544355 -37.5,64.5 -12.24825,-3.17862 -25.72651,-2.402049 -37.71875,0.46875 C 239.88593,74.102096 226.47693,59.077996 210.625,47.0625 c -3.34092,23.469062 -2.56561,47.559048 0.25,70.875 -6.69043,8.82966 -11.26059,19.42531 -12.0625,30.53125 -1.92921,1.3424 -3.05608,3.45019 -4.6875,0.40625 -20.84238,-21.1131 -32.59851,-48.84198 -44.9375,-75.34375 -14.85679,72.96988 -54.000466,137.54014 -93.508574,199.57505 -20.539303,31.20908 -42.388201,61.40672 -64.085176,91.86245 8.08014534,2.26279 14.376322,-5.17296 21.382238,-7.84546 48.067949,-26.0431 95.020242,-57.97999 149.805262,-67.65454 7.73822,-1.18656 15.65228,-1.74501 23.53125,-1.625 -0.16141,-13.91977 12.35539,-25.87856 26.40625,-24.625 13.02151,-0.10475 25.24921,5.06339 36.71875,10.84375 3.0761,-8.90096 9.56834,-15.98034 17.8125,-20.25 15.98458,27.53202 46.28592,42.98776 75.65932,52.75163 10.28498,3.53684 21.92146,5.33208 32.02818,7.49837 -0.72852,8.29742 2.55832,18.64745 11.71875,20.5625 7.84288,-6.18411 13.7902,-15.27395 22.59202,-19.68372 10.89918,-0.79379 21.80373,-2.64611 32.18923,-5.97253 8.1863,6.12253 18.23881,13.28825 29.03125,9.78125 0.2397,-7.80979 -2.17974,-15.60208 -1.25,-23.34375 14.60652,-14.33722 28.49903,-29.6116 39.75,-46.65625 -31.89112,0.19103 -65.39001,-1.50716 -93.6875,-17.375 12.63668,-0.24322 25.04624,3.36048 36.09375,9.40625 26.41279,-12.24594 57.54458,-3.79641 80.97725,11.3725 5.86994,3.60205 11.37305,7.64719 16.46025,12.19 36.58823,-16.89113 78.56629,-15.82385 118.11934,-12.20623 88.66214,9.36494 173.26796,44.12384 247.50566,92.70623 3.41963,1.85442 7.16209,2.95892 10.78125,4.40625 -11.75164,-20.6658 -29.05422,-37.32743 -43.5,-56.125 C 818.67884,217.58496 746.42668,149.41496 664.49937,94.602513 607.29452,55.830775 546.38636,22.78003 483.5625,-5.9375 c -0.10417,0.90625 -0.20833,1.8125 -0.3125,2.71875 z" id="path3993-5" inkscape:connector-curvature="0"/>
</g>
<g inkscape:groupmode="layer" id="layer2" inkscape:label="batman-adv" style="display:inline" transform="translate(6.26672, 5.9375)">
<g style="display:inline" transform="translate(-51.5312, -495.768)" id="layer1">
<path d="m 538.40625,495.76769 c -8.05674,66.9338 -77.31603,151.94452 -154.9375,179.84375 3.27747,-7.40037 5.09375,-15.49392 5.09375,-24 0,-14.42887 -5.21809,-27.70021 -13.96875,-38.3125 1.97025,-21.96404 1.77421,-48.67721 -1.375,-80.59375 -13.0022,16.9579 -23.30307,37.7663 -32.15625,58.78125 -6.27289,-1.8029 -12.93745,-2.78125 -19.84375,-2.78125 -7.73405,0 -15.17627,1.22854 -22.09375,3.46875 -7.42014,-13.90647 -17.47037,-28.11748 -33.78125,-41.59375 -2.4998,23.48832 -1.59267,44.90394 1.6875,63.65625 -8.2866,10.45096 -13.63544,23.35979 -12.0986,32.68414 -4.42484,0.36051 -5.23536,4.01016 -5.31948,6.88419 -19.28312,-16.49687 -32.60091,-39.15698 -47.58192,-72.16208 -13.26705,58.98947 -53.37139,142.16702 -150.5,273.75 61.55905,-33.2251 123.79671,-75.61843 182.8125,-75.78125 4.05468,-25.33145 30.1327,-32.48291 64.65625,-15.15625 4.05331,-9.20658 11.84907,-15.85762 21.59375,-20.21875 12.89223,29.16757 60.06405,56.23506 110.53125,61.78125 -2.71475,10.31567 2.48339,19.28096 6.03125,19.90625 L 457.25,806.89269 c 12.40469,-0.59384 24.70147,-2.7024 36.40625,-6.5625 8.39362,6.41285 17.71829,12.37841 24.1875,10.96875 l -1.71875,-21.125 c 13.74684,-14.03964 23.51218,-23.14064 36.6879,-41.69749 -37.60849,-0.0334 -70.29254,-4.68998 -97.84415,-24.05251 14.31376,-2.87534 30.90137,-1.2243 48.09375,7.71875 48.64496,-20.64584 97.96875,23.25 97.96875,23.25 59.36547,-28.55091 217.47867,-17.57755 366.6875,81.8125 -81.50891,-100.35408 -186.3503,-229.51108 -429.3125,-341.4375 z" id="path3993" style="color:#000000;fill:#000000;stroke:none;stroke-width:4.27199984;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" inkscape:export-filename="/home/sven/dokumente/bat_logo_v2.png" inkscape:export-xdpi="90" inkscape:export-ydpi="90" inkscape:connector-curvature="0" sodipodi:nodetypes="ccscccscccccccccccccccccccccc"/>
<path d="m 287.37698,691.21665 6.32487,6.0769 42.42641,-3.28299 4.04061,-10.85914 -6.08375,5.31015 -38.85662,6.0495 z" id="path4001" style="color:#000000;fill:#ffffff;stroke:none;stroke-width:1.77165353;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccccc"/>
<path d="m 304.03798,658.90775 c 3.73562,-7.35256 3.37257,-7.75354 27.47128,-14.84657 15.15993,-4.46206 30.11288,-9.25782 32.38025,-2.07348 l 18.53034,-4.86774 0.54842,3.1737 -18.32114,6.49226 c -3.7905,21.99567 -3.66551,19.92566 -20.7106,21.97074 -27.63928,3.31618 -30.32837,6.17704 -39.39348,-6.06083 l -7.32361,1.01015 c -3.77481,8.34177 -0.87651,8.42602 -25.47706,7.6321 -16.18663,-0.52238 -14.20261,-0.23719 -17.22819,-15.14996 -1.35304,-6.66902 -0.33802,-7.91117 21.30347,-5.15085 17.50983,2.23334 17.19396,1.76122 21.20894,8.92319 z" id="path4003" style="color:#000000;fill:#ffffff;stroke:none;stroke-width:1.77165353;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" inkscape:connector-curvature="0" sodipodi:nodetypes="csccccsccssscc"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 7.2 KiB

View File

@ -0,0 +1,246 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/PR-SVG-20010719/DTD/svg10.dtd">
<svg width="28cm" height="12cm" viewBox="239 289 551 223" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="Background">
<g>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 713.614 347.58 L 713.54,345.719 L 713.283,343.858 L 712.804,342.03 L 712.142,340.201 L 711.258,338.34 L 710.264,336.545 L 709.013,334.781 L 707.614,333.051 L 706.104,331.321 L 704.337,329.688 L 702.46,328.056 L 700.398,326.521 L 698.153,324.986 L 695.797,323.55 L 693.294,322.146 L 690.606,320.84 L 687.845,319.566 L 684.974,318.391 L 681.955,317.281 L 678.826,316.269 L 675.587,315.289 L 672.237,314.473 L 668.887,313.657 L 665.39,312.971 L 661.819,312.351 L 658.248,311.828 L 654.604,311.404 L 650.922,311.11 L 647.204,310.849 L 643.45,310.718 L 639.695,310.653 L 639.695,310.653 L 635.977,310.718 L 632.185,310.849 L 628.504,311.11 L 624.822,311.404 L 621.141,311.828 L 617.57,312.351 L 614,312.971 L 610.539,313.657 L 607.116,314.473 L 603.839,315.289 L 600.6,316.269 L 597.508,317.281 L 594.452,318.391 L 591.581,319.566 L 588.783,320.84 L 586.096,322.146 L 583.592,323.55 L 581.236,324.986 L 578.991,326.521 L 576.929,328.056 L 575.052,329.688 L 573.322,331.321 L 571.739,333.051 L 570.414,334.781 L 569.162,336.545 L 568.131,338.34 L 567.248,340.201 L 566.659,342.03 L 566.18,343.858 L 565.849,345.719 L 565.812,347.58 L 565.812,347.58 L 565.849,349.474 L 566.18,351.335 L 566.659,353.196 L 567.248,355.024 L 568.131,356.853 L 569.162,358.649 L 570.414,360.412 L 571.739,362.175 L 573.322,363.873 L 575.052,365.505 L 576.929,367.138 L 578.991,368.705 L 581.236,370.207 L 583.592,371.643 L 586.096,373.047 L 588.783,374.386 L 591.581,375.594 L 594.452,376.835 L 597.508,377.945 L 600.6,378.957 L 603.839,379.871 L 607.116,380.753 L 610.539,381.536 L 614,382.222 L 617.57,382.842 L 621.141,383.365 L 624.822,383.757 L 628.504,384.083 L 632.185,384.377 L 635.977,384.475 L 639.695,384.508 L 639.695,384.508 L 643.45,384.475 L 647.204,384.377 L 650.922,384.083 L 654.604,383.757 L 658.248,383.365 L 661.819,382.842 L 665.39,382.222 L 668.887,381.536 L 672.237,380.753 L 675.587,379.871 L 678.826,378.957 L 681.955,377.945 L 684.974,376.835 L 687.845,375.594 L 690.606,374.386 L 693.294,373.047 L 695.797,371.643 L 698.153,370.207 L 700.398,368.705 L 702.46,367.138 L 704.337,365.505 L 706.104,363.873 L 707.614,362.175 L 709.013,360.412 L 710.264,358.649 L 711.258,356.853 L 712.142,355.024 L 712.804,353.196 L 713.283,351.335 L 713.54,349.474 L 713.614,347.58z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 597.765 366.974 L 597.692,365.113 L 597.434,363.252 L 597.139,361.424 L 596.624,359.563 L 595.961,357.734 L 595.152,355.939 L 594.194,354.176 L 593.164,352.445 L 591.986,350.715 L 590.66,349.082 L 589.225,347.45 L 587.642,345.915 L 585.875,344.381 L 584.071,342.944 L 582.157,341.54 L 580.095,340.234 L 578.034,338.961 L 575.751,337.785 L 573.469,336.675 L 571.039,335.696 L 568.61,334.683 L 566.07,333.802 L 563.419,333.051 L 560.769,332.365 L 558.045,331.745 L 555.284,331.223 L 552.486,330.798 L 549.651,330.504 L 546.854,330.243 L 543.982,330.08 L 541.111,330.047 L 541.111,330.047 L 538.239,330.08 L 535.368,330.243 L 532.497,330.504 L 529.699,330.798 L 526.864,331.223 L 524.104,331.745 L 521.416,332.365 L 518.766,333.051 L 516.152,333.802 L 513.612,334.683 L 511.109,335.696 L 508.753,336.675 L 506.397,337.785 L 504.188,338.961 L 502.09,340.234 L 500.028,341.54 L 498.114,342.944 L 496.273,344.381 L 494.543,345.915 L 492.997,347.45 L 491.524,349.082 L 490.236,350.715 L 489.021,352.445 L 487.954,354.176 L 487.033,355.939 L 486.223,357.734 L 485.561,359.563 L 485.082,361.424 L 484.714,363.252 L 484.493,365.113 L 484.42,366.974 L 484.42,366.974 L 484.493,368.868 L 484.714,370.729 L 485.082,372.59 L 485.561,374.419 L 486.223,376.247 L 487.033,378.043 L 487.954,379.806 L 489.021,381.536 L 490.236,383.267 L 491.524,384.899 L 492.997,386.532 L 494.543,388.066 L 496.273,389.601 L 498.114,391.038 L 500.028,392.442 L 502.09,393.748 L 504.188,394.988 L 506.397,396.164 L 508.753,397.339 L 511.109,398.351 L 513.612,399.265 L 516.152,400.18 L 518.766,400.931 L 521.416,401.616 L 524.104,402.237 L 526.864,402.726 L 529.699,403.151 L 532.497,403.477 L 535.368,403.771 L 538.239,403.869 L 541.111,403.902 L 541.111,403.902 L 543.982,403.869 L 546.854,403.771 L 549.651,403.477 L 552.486,403.151 L 555.284,402.726 L 558.045,402.237 L 560.769,401.616 L 563.419,400.931 L 566.07,400.18 L 568.61,399.265 L 571.039,398.351 L 573.469,397.339 L 575.751,396.164 L 578.034,394.988 L 580.095,393.748 L 582.157,392.442 L 584.071,391.038 L 585.875,389.601 L 587.642,388.066 L 589.225,386.532 L 590.66,384.899 L 591.986,383.267 L 593.164,381.536 L 594.194,379.806 L 595.152,378.043 L 595.961,376.247 L 596.624,374.419 L 597.139,372.59 L 597.434,370.729 L 597.692,368.868 L 597.765,366.974z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 526.312 404.685 L 526.275,403.151 L 526.165,401.616 L 525.907,400.082 L 525.576,398.58 L 525.097,397.143 L 524.545,395.641 L 523.956,394.172 L 523.257,392.768 L 522.447,391.364 L 521.527,390.025 L 520.533,388.752 L 519.465,387.446 L 518.324,386.205 L 517.109,384.997 L 515.784,383.887 L 514.422,382.842 L 513.023,381.765 L 511.55,380.818 L 509.968,379.904 L 508.348,379.055 L 506.691,378.304 L 504.961,377.586 L 503.231,376.965 L 501.427,376.41 L 499.586,375.888 L 497.746,375.496 L 495.868,375.104 L 493.917,374.876 L 492.003,374.68 L 490.126,374.582 L 488.175,374.517 L 488.175,374.517 L 486.223,374.582 L 484.272,374.68 L 482.358,374.876 L 480.481,375.104 L 478.566,375.496 L 476.689,375.888 L 474.885,376.41 L 473.118,376.965 L 471.314,377.586 L 469.584,378.304 L 467.928,379.055 L 466.308,379.904 L 464.762,380.818 L 463.252,381.765 L 461.854,382.842 L 460.492,383.887 L 459.203,384.997 L 457.951,386.205 L 456.81,387.446 L 455.743,388.752 L 454.749,390.025 L 453.902,391.364 L 453.092,392.768 L 452.393,394.172 L 451.73,395.641 L 451.178,397.143 L 450.773,398.58 L 450.442,400.082 L 450.147,401.616 L 450,403.151 L 450,404.685 L 450,404.685 L 450,406.155 L 450.147,407.689 L 450.442,409.191 L 450.773,410.693 L 451.178,412.227 L 451.73,413.664 L 452.393,415.101 L 453.092,416.537 L 453.902,417.941 L 454.749,419.28 L 455.743,420.586 L 456.81,421.859 L 457.951,423.1 L 459.203,424.275 L 460.492,425.385 L 461.854,426.463 L 463.252,427.54 L 464.762,428.455 L 466.308,429.369 L 467.928,430.218 L 469.584,431.001 L 471.314,431.72 L 473.118,432.34 L 474.885,432.895 L 476.689,433.385 L 478.566,433.809 L 480.481,434.168 L 482.358,434.462 L 484.272,434.625 L 486.223,434.723 L 488.175,434.789 L 488.175,434.789 L 490.126,434.723 L 492.003,434.625 L 493.917,434.462 L 495.868,434.168 L 497.746,433.809 L 499.586,433.385 L 501.427,432.895 L 503.231,432.34 L 504.961,431.72 L 506.691,431.001 L 508.348,430.218 L 509.968,429.369 L 511.55,428.455 L 513.023,427.54 L 514.422,426.463 L 515.784,425.385 L 517.109,424.275 L 518.324,423.1 L 519.465,421.859 L 520.533,420.586 L 521.527,419.28 L 522.447,417.941 L 523.257,416.537 L 523.956,415.101 L 524.545,413.664 L 525.097,412.227 L 525.576,410.693 L 525.907,409.191 L 526.165,407.689 L 526.275,406.155 L 526.312,404.685z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 587.936 433.711 L 587.9,432.046 L 587.642,430.414 L 587.237,428.748 L 586.758,427.116 L 586.096,425.516 L 585.323,423.916 L 584.329,422.349 L 583.298,420.814 L 582.046,419.378 L 580.721,417.876 L 579.212,416.439 L 577.629,415.101 L 575.935,413.762 L 574.095,412.423 L 572.144,411.215 L 570.082,410.04 L 567.91,408.962 L 565.628,407.885 L 563.309,406.938 L 560.879,405.991 L 558.339,405.175 L 555.762,404.391 L 553.112,403.706 L 550.424,403.085 L 547.663,402.563 L 544.829,402.139 L 542.031,401.747 L 539.16,401.42 L 536.288,401.224 L 533.38,401.094 L 530.435,401.061 L 530.435,401.061 L 527.527,401.094 L 524.656,401.224 L 521.711,401.42 L 518.876,401.747 L 516.005,402.139 L 513.244,402.563 L 510.483,403.085 L 507.759,403.706 L 505.108,404.391 L 502.568,405.175 L 500.028,405.991 L 497.599,406.938 L 495.243,407.885 L 492.997,408.962 L 490.825,410.04 L 488.764,411.215 L 486.812,412.423 L 484.972,413.762 L 483.242,415.101 L 481.659,416.439 L 480.149,417.876 L 478.787,419.378 L 477.609,420.814 L 476.542,422.349 L 475.548,423.916 L 474.738,425.516 L 474.149,427.116 L 473.597,428.748 L 473.229,430.414 L 473.008,432.046 L 472.934,433.711 L 472.934,433.711 L 473.008,435.344 L 473.229,437.009 L 473.597,438.641 L 474.149,440.274 L 474.738,441.874 L 475.548,443.474 L 476.542,445.073 L 477.609,446.608 L 478.787,448.077 L 480.149,449.514 L 481.659,450.95 L 483.242,452.322 L 484.972,453.693 L 486.812,454.999 L 488.764,456.207 L 490.825,457.35 L 492.997,458.46 L 495.243,459.505 L 497.599,460.484 L 500.028,461.431 L 502.568,462.247 L 505.108,463.031 L 507.759,463.684 L 510.483,464.304 L 513.244,464.827 L 516.005,465.284 L 518.876,465.708 L 521.711,466.002 L 524.656,466.198 L 527.527,466.329 L 530.435,466.329 L 530.435,466.329 L 533.38,466.329 L 536.288,466.198 L 539.16,466.002 L 542.031,465.708 L 544.829,465.284 L 547.663,464.827 L 550.424,464.304 L 553.112,463.684 L 555.762,463.031 L 558.339,462.247 L 560.879,461.431 L 563.309,460.484 L 565.628,459.505 L 567.91,458.46 L 570.082,457.35 L 572.144,456.207 L 574.095,454.999 L 575.935,453.693 L 577.629,452.322 L 579.212,450.95 L 580.721,449.514 L 582.046,448.077 L 583.298,446.608 L 584.329,445.073 L 585.323,443.474 L 586.096,441.874 L 586.758,440.274 L 587.237,438.641 L 587.642,437.009 L 587.9,435.344 L 587.936,433.711z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 725.946 450.591 L 725.799,448.6 L 725.505,446.608 L 724.916,444.682 L 724.142,442.755 L 723.185,440.829 L 722.007,438.968 L 720.608,437.139 L 718.989,435.278 L 717.148,433.483 L 715.16,431.752 L 712.915,430.087 L 710.559,428.455 L 707.982,426.855 L 705.258,425.32 L 702.276,423.851 L 699.257,422.48 L 696.018,421.141 L 692.631,419.9 L 689.171,418.757 L 685.489,417.68 L 681.771,416.668 L 677.906,415.786 L 673.967,414.937 L 669.881,414.219 L 665.795,413.566 L 661.598,413.044 L 657.401,412.587 L 653.058,412.26 L 648.824,412.032 L 644.443,411.836 L 640.1,411.836 L 640.1,411.836 L 635.756,411.836 L 631.412,412.032 L 627.105,412.26 L 622.835,412.587 L 618.564,413.044 L 614.405,413.566 L 610.282,414.219 L 606.269,414.937 L 602.256,415.786 L 598.465,416.668 L 594.673,417.68 L 591.065,418.757 L 587.568,419.9 L 584.218,421.141 L 580.979,422.48 L 577.887,423.851 L 574.978,425.32 L 572.254,426.855 L 569.641,428.455 L 567.248,430.087 L 565.039,431.752 L 563.088,433.483 L 561.247,435.278 L 559.628,437.139 L 558.229,438.968 L 557.014,440.829 L 556.057,442.755 L 555.247,444.682 L 554.695,446.608 L 554.363,448.6 L 554.253,450.591 L 554.253,450.591 L 554.363,452.485 L 554.695,454.477 L 555.247,456.403 L 556.057,458.362 L 557.014,460.288 L 558.229,462.149 L 559.628,463.978 L 561.247,465.839 L 563.088,467.635 L 565.039,469.365 L 567.248,471.03 L 569.641,472.728 L 572.254,474.263 L 574.978,475.797 L 577.887,477.234 L 580.979,478.67 L 584.218,479.976 L 587.568,481.217 L 591.065,482.36 L 594.673,483.47 L 598.465,484.417 L 602.256,485.331 L 606.269,486.147 L 610.282,486.866 L 614.405,487.551 L 618.564,488.041 L 622.835,488.498 L 627.105,488.857 L 631.412,489.086 L 635.756,489.282 L 640.1,489.282 L 640.1,489.282 L 644.443,489.282 L 648.824,489.086 L 653.058,488.857 L 657.401,488.498 L 661.598,488.041 L 665.795,487.551 L 669.881,486.866 L 673.967,486.147 L 677.906,485.331 L 681.771,484.417 L 685.489,483.47 L 689.171,482.36 L 692.631,481.217 L 696.018,479.976 L 699.257,478.67 L 702.276,477.234 L 705.258,475.797 L 707.982,474.263 L 710.559,472.728 L 712.915,471.03 L 715.16,469.365 L 717.148,467.635 L 718.989,465.839 L 720.608,463.978 L 722.007,462.149 L 723.185,460.288 L 724.142,458.362 L 724.916,456.403 L 725.505,454.477 L 725.799,452.485 L 725.946,450.591z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 773.582 361.228 L 773.545,359.791 L 773.324,358.289 L 772.919,356.82 L 772.477,355.384 L 771.815,353.98 L 771.078,352.543 L 770.158,351.139 L 769.091,349.768 L 767.949,348.462 L 766.698,347.123 L 765.262,345.85 L 763.716,344.609 L 762.096,343.466 L 760.292,342.291 L 758.452,341.213 L 756.427,340.201 L 754.366,339.157 L 752.23,338.242 L 749.948,337.393 L 747.629,336.577 L 745.273,335.826 L 742.77,335.141 L 740.23,334.52 L 737.653,333.965 L 735.002,333.475 L 732.352,333.149 L 729.628,332.757 L 726.903,332.496 L 724.106,332.333 L 721.345,332.235 L 718.547,332.169 L 718.547,332.169 L 715.712,332.235 L 712.951,332.333 L 710.154,332.496 L 707.43,332.757 L 704.742,333.149 L 702.055,333.475 L 699.441,333.965 L 696.828,334.52 L 694.288,335.141 L 691.784,335.826 L 689.392,336.577 L 687.109,337.393 L 684.827,338.242 L 682.692,339.157 L 680.63,340.201 L 678.642,341.213 L 676.765,342.291 L 674.961,343.466 L 673.341,344.609 L 671.832,345.85 L 670.359,347.123 L 669.108,348.462 L 667.967,349.768 L 666.899,351.139 L 665.979,352.543 L 665.243,353.98 L 664.617,355.384 L 664.101,356.82 L 663.77,358.289 L 663.586,359.791 L 663.476,361.228 L 663.476,361.228 L 663.586,362.697 L 663.77,364.167 L 664.101,365.603 L 664.617,367.072 L 665.243,368.509 L 665.979,369.913 L 666.899,371.317 L 667.967,372.688 L 669.108,374.059 L 670.359,375.333 L 671.832,376.574 L 673.341,377.847 L 674.961,379.022 L 676.765,380.132 L 678.642,381.243 L 680.63,382.287 L 682.692,383.267 L 684.827,384.181 L 687.109,385.095 L 689.392,385.911 L 691.784,386.63 L 694.288,387.348 L 696.828,387.936 L 699.441,388.458 L 702.055,388.981 L 704.742,389.372 L 707.43,389.699 L 710.154,389.993 L 712.951,390.123 L 715.712,390.287 L 718.547,390.287 L 718.547,390.287 L 721.345,390.287 L 724.106,390.123 L 726.903,389.993 L 729.628,389.699 L 732.352,389.372 L 735.002,388.981 L 737.653,388.458 L 740.23,387.936 L 742.77,387.348 L 745.273,386.63 L 747.629,385.911 L 749.948,385.095 L 752.23,384.181 L 754.366,383.267 L 756.427,382.287 L 758.452,381.243 L 760.292,380.132 L 762.096,379.022 L 763.716,377.847 L 765.262,376.574 L 766.698,375.333 L 767.949,374.059 L 769.091,372.688 L 770.158,371.317 L 771.078,369.913 L 771.815,368.509 L 772.477,367.072 L 772.919,365.603 L 773.324,364.167 L 773.545,362.697 L 773.582,361.228z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 789.19 398.547 L 789.08,397.078 L 788.932,395.609 L 788.564,394.172 L 788.086,392.735 L 787.423,391.266 L 786.687,389.895 L 785.803,388.458 L 784.736,387.12 L 783.595,385.748 L 782.343,384.475 L 780.907,383.169 L 779.361,381.961 L 777.778,380.818 L 775.974,379.61 L 774.134,378.565 L 772.22,377.488 L 770.158,376.508 L 767.949,375.594 L 765.777,374.712 L 763.458,373.896 L 761.102,373.145 L 758.636,372.46 L 756.133,371.872 L 753.556,371.317 L 750.905,370.827 L 748.255,370.435 L 745.567,370.109 L 742.806,369.815 L 740.082,369.684 L 737.321,369.586 L 734.56,369.521 L 734.56,369.521 L 731.763,369.586 L 729.039,369.684 L 726.278,369.815 L 723.59,370.109 L 720.903,370.435 L 718.216,370.827 L 715.602,371.317 L 713.062,371.872 L 710.522,372.46 L 708.055,373.145 L 705.699,373.896 L 703.38,374.712 L 701.135,375.594 L 699.036,376.508 L 696.975,377.488 L 694.95,378.565 L 693.11,379.61 L 691.379,380.818 L 689.796,381.961 L 688.25,383.169 L 686.851,384.475 L 685.526,385.748 L 684.385,387.12 L 683.391,388.458 L 682.471,389.895 L 681.661,391.266 L 681.072,392.735 L 680.593,394.172 L 680.225,395.609 L 680.004,397.078 L 679.968,398.547 L 679.968,398.547 L 680.004,400.016 L 680.225,401.518 L 680.593,402.955 L 681.072,404.391 L 681.661,405.828 L 682.471,407.232 L 683.391,408.669 L 684.385,410.007 L 685.526,411.313 L 686.851,412.652 L 688.25,413.893 L 689.796,415.133 L 691.379,416.309 L 693.11,417.451 L 694.95,418.562 L 696.975,419.574 L 699.036,420.586 L 701.135,421.5 L 703.38,422.349 L 705.699,423.165 L 708.055,423.916 L 710.522,424.602 L 713.062,425.222 L 715.602,425.81 L 718.216,426.3 L 720.903,426.626 L 723.59,427.018 L 726.278,427.247 L 729.039,427.442 L 731.763,427.54 L 734.56,427.573 L 734.56,427.573 L 737.321,427.54 L 740.082,427.442 L 742.806,427.247 L 745.567,427.018 L 748.255,426.626 L 750.905,426.3 L 753.556,425.81 L 756.133,425.222 L 758.636,424.602 L 761.102,423.916 L 763.458,423.165 L 765.777,422.349 L 767.949,421.5 L 770.158,420.586 L 772.22,419.574 L 774.134,418.562 L 775.974,417.451 L 777.778,416.309 L 779.361,415.133 L 780.907,413.893 L 782.343,412.652 L 783.595,411.313 L 784.736,410.007 L 785.803,408.669 L 786.687,407.232 L 787.423,405.828 L 788.086,404.391 L 788.564,402.955 L 788.932,401.518 L 789.08,400.016 L 789.19,398.547z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 778.515 429.401 L 778.441,427.018 L 778.22,424.569 L 777.926,422.218 L 777.447,419.802 L 776.821,417.451 L 776.048,415.133 L 775.165,412.848 L 774.097,410.595 L 772.956,408.407 L 771.741,406.252 L 770.342,404.163 L 768.796,402.171 L 767.176,400.212 L 765.409,398.351 L 763.569,396.555 L 761.654,394.825 L 759.593,393.192 L 757.495,391.723 L 755.249,390.287 L 752.967,388.981 L 750.611,387.74 L 748.218,386.63 L 745.715,385.585 L 743.175,384.671 L 740.524,383.887 L 737.91,383.267 L 735.186,382.679 L 732.499,382.255 L 729.812,381.961 L 727.087,381.765 L 724.327,381.732 L 724.327,381.732 L 721.566,381.765 L 718.841,381.961 L 716.081,382.255 L 713.393,382.679 L 710.743,383.267 L 708.055,383.887 L 705.479,384.671 L 702.939,385.585 L 700.435,386.63 L 697.969,387.74 L 695.613,388.981 L 693.33,390.287 L 691.159,391.723 L 688.987,393.192 L 686.962,394.825 L 685.011,396.555 L 683.17,398.351 L 681.44,400.212 L 679.783,402.171 L 678.311,404.163 L 676.912,406.252 L 675.624,408.407 L 674.482,410.595 L 673.489,412.848 L 672.605,415.133 L 671.832,417.451 L 671.206,419.802 L 670.728,422.218 L 670.359,424.569 L 670.139,427.018 L 670.065,429.401 L 670.065,429.401 L 670.139,431.818 L 670.359,434.266 L 670.728,436.617 L 671.206,439.001 L 671.832,441.417 L 672.605,443.702 L 673.489,445.955 L 674.482,448.241 L 675.624,450.395 L 676.912,452.55 L 678.311,454.673 L 679.783,456.664 L 681.44,458.591 L 683.17,460.484 L 685.011,462.28 L 686.962,463.978 L 688.987,465.61 L 691.159,467.145 L 693.33,468.549 L 695.613,469.888 L 697.969,471.096 L 700.435,472.238 L 702.939,473.25 L 705.479,474.165 L 708.055,474.916 L 710.743,475.601 L 713.393,476.124 L 716.081,476.548 L 718.841,476.842 L 721.566,477.038 L 724.327,477.136 L 724.327,477.136 L 727.087,477.038 L 729.812,476.842 L 732.499,476.548 L 735.186,476.124 L 737.91,475.601 L 740.524,474.916 L 743.175,474.165 L 745.715,473.25 L 748.218,472.238 L 750.611,471.096 L 752.967,469.888 L 755.249,468.549 L 757.495,467.145 L 759.593,465.61 L 761.654,463.978 L 763.569,462.28 L 765.409,460.484 L 767.176,458.591 L 768.796,456.664 L 770.342,454.673 L 771.741,452.55 L 772.956,450.395 L 774.097,448.241 L 775.165,445.955 L 776.048,443.702 L 776.821,441.417 L 777.447,439.001 L 777.926,436.617 L 778.22,434.266 L 778.441,431.818 L 778.515,429.401z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 731.689 400.702 L 731.542,398.253 L 731.1,395.902 L 730.401,393.454 L 729.443,391.103 L 728.192,388.752 L 726.646,386.401 L 724.842,384.116 L 722.744,381.863 L 720.461,379.675 L 717.884,377.553 L 715.013,375.431 L 711.958,373.406 L 708.644,371.513 L 705.11,369.619 L 701.356,367.791 L 697.453,366.093 L 693.294,364.493 L 688.95,362.958 L 684.495,361.522 L 679.82,360.183 L 674.998,358.975 L 670.065,357.832 L 665.022,356.82 L 659.868,355.939 L 654.567,355.188 L 649.192,354.502 L 643.781,353.98 L 638.296,353.555 L 632.774,353.196 L 627.215,353.033 L 621.583,352.968 L 621.583,352.968 L 616.024,353.033 L 610.466,353.196 L 604.944,353.555 L 599.422,353.98 L 594.01,354.502 L 588.636,355.188 L 583.372,355.939 L 578.218,356.82 L 573.101,357.832 L 568.242,358.975 L 563.419,360.183 L 558.707,361.522 L 554.216,362.958 L 549.946,364.493 L 545.749,366.093 L 541.81,367.791 L 538.129,369.619 L 534.558,371.513 L 531.245,373.406 L 528.227,375.431 L 525.355,377.553 L 522.815,379.675 L 520.496,381.863 L 518.361,384.116 L 516.594,386.401 L 515.084,388.752 L 513.759,391.103 L 512.802,393.454 L 512.103,395.902 L 511.661,398.253 L 511.55,400.702 L 511.55,400.702 L 511.661,403.085 L 512.103,405.502 L 512.802,407.885 L 513.759,410.301 L 515.084,412.652 L 516.594,414.97 L 518.361,417.223 L 520.496,419.508 L 522.815,421.729 L 525.355,423.851 L 528.227,425.908 L 531.245,427.932 L 534.558,429.891 L 538.129,431.752 L 541.81,433.548 L 545.749,435.278 L 549.946,436.911 L 554.216,438.445 L 558.707,439.882 L 563.419,441.155 L 568.242,442.429 L 573.101,443.506 L 578.218,444.518 L 583.372,445.433 L 588.636,446.216 L 594.01,446.869 L 599.422,447.424 L 604.944,447.849 L 610.466,448.143 L 616.024,448.371 L 621.583,448.404 L 621.583,448.404 L 627.215,448.371 L 632.774,448.143 L 638.296,447.849 L 643.781,447.424 L 649.192,446.869 L 654.567,446.216 L 659.868,445.433 L 665.022,444.518 L 670.065,443.506 L 674.998,442.429 L 679.82,441.155 L 684.495,439.882 L 688.95,438.445 L 693.294,436.911 L 697.453,435.278 L 701.356,433.548 L 705.11,431.752 L 708.644,429.891 L 711.958,427.932 L 715.013,425.908 L 717.884,423.851 L 720.461,421.729 L 722.744,419.508 L 724.842,417.223 L 726.646,414.97 L 728.192,412.652 L 729.443,410.301 L 730.401,407.885 L 731.1,405.502 L 731.542,403.085 L 731.689,400.702z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 640.541 347.254 L 713.393,339.026 L 712.473,337.23 L 711.332,335.402 L 710.08,333.606 L 708.571,331.876 L 706.951,330.21 L 705.11,328.513 L 703.196,326.913 L 700.987,325.378 L 698.742,323.876 L 696.312,322.44 L 693.699,321.068 L 690.974,319.795 L 688.103,318.554 L 685.121,317.346 L 682.029,316.269 L 678.826,315.289 L 675.587,314.31 L 672.163,313.494 L 668.703,312.743 L 665.206,312.057 L 661.561,311.469 L 657.917,311.012 L 654.236,310.588 L 650.518,310.294 L 646.763,310.098 L 642.971,310 L 639.216,310 L 635.424,310.098 L 631.633,310.229 L 627.951,310.49 L 624.233,310.914 L 620.552,311.339 L 616.908,311.926 L 613.337,312.547 L 609.877,313.265 L 606.49,314.081 L 603.14,314.995 L 599.9,315.942 L 596.845,317.02 L 593.826,318.163 L 590.918,319.371 L 588.157,320.644 L 585.544,322.015 L 583.077,323.452 L 580.721,324.921 L 578.512,326.456 L 576.451,328.056 L 574.573,329.688 L 572.954,331.418 L 571.371,333.084 L 570.009,334.879 L 568.867,336.642 L 567.91,338.471 L 567.1,340.299 L 640.541,347.254z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 713.393 338.961 L 712.436,337.132 L 711.332,335.336 L 710.043,333.541 L 708.571,331.843 L 706.877,330.145 L 705.074,328.48 L 703.123,326.88 L 700.914,325.346 L 698.631,323.876 L 696.275,322.44 L 693.625,321.003 L 690.974,319.73 L 688.066,318.489 L 685.084,317.346 L 682.029,316.204 L 678.826,315.224 L 675.55,314.31 L 672.126,313.461 L 668.666,312.743 L 665.206,312.057 L 661.561,311.469 L 657.88,311.012 L 654.199,310.588 L 650.481,310.294 L 646.763,310.098 L 642.934,310 L 639.179,310 L 635.424,310.098 L 631.67,310.229 L 627.915,310.49 L 624.233,310.914 L 620.552,311.306 L 616.945,311.861 L 613.411,312.547 L 609.877,313.265 L 606.527,314.081 L 603.177,314.995 L 599.974,315.942 L 596.845,316.987 L 593.863,318.163 L 590.955,319.371 L 588.194,320.611 L 585.58,321.983 L 583.077,323.387 L 580.721,324.888 L 578.512,326.423 L 576.524,327.99 L 574.61,329.688 L 572.954,331.321 L 571.408,333.051 L 570.082,334.781 L 568.867,336.577 L 567.91,338.406 L 567.137,340.234"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 541.479 366.615 L 578.218,338.046 L 575.935,336.871 L 573.543,335.761 L 571.113,334.781 L 568.61,333.802 L 566.07,332.953 L 563.419,332.169 L 560.695,331.516 L 558.008,330.896 L 555.173,330.406 L 552.375,329.982 L 549.504,329.688 L 546.633,329.459 L 543.761,329.329 L 540.89,329.329 L 537.982,329.394 L 535.11,329.59 L 532.239,329.819 L 529.405,330.178 L 526.607,330.635 L 523.846,331.157 L 521.085,331.778 L 518.434,332.496 L 515.784,333.312 L 513.244,334.194 L 510.777,335.173 L 508.421,336.251 L 506.065,337.393 L 503.857,338.569 L 501.758,339.875 L 499.697,341.213 L 497.783,342.65 L 496.016,344.087 L 494.322,345.654 L 492.776,347.221 L 491.304,348.854 L 490.015,350.551 L 488.8,352.282 L 487.77,354.012 L 486.849,355.808 L 486.113,357.636 L 485.524,359.465 L 485.009,361.359 L 484.641,363.252 L 484.493,365.113 L 484.42,366.974 L 484.53,368.868 L 484.751,370.794 L 485.193,372.623 L 541.479,366.615z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 578.034 337.948 L 575.751,336.773 L 573.432,335.696 L 571.003,334.683 L 568.463,333.769 L 565.849,332.888 L 563.235,332.137 L 560.548,331.451 L 557.787,330.863 L 555.026,330.406 L 552.155,329.982 L 549.32,329.688 L 546.485,329.459 L 543.614,329.329 L 540.669,329.329 L 537.871,329.394 L 535,329.59 L 532.055,329.819 L 529.257,330.21 L 526.496,330.635 L 523.662,331.223 L 520.974,331.81 L 518.324,332.561 L 515.71,333.377 L 513.133,334.259 L 510.667,335.239 L 508.311,336.316 L 506.029,337.426 L 503.82,338.667 L 501.648,339.907 L 499.697,341.311 L 497.746,342.683 L 495.942,344.185 L 494.285,345.687 L 492.702,347.254 L 491.304,348.919 L 490.015,350.617 L 488.8,352.347 L 487.733,354.078 L 486.849,355.906 L 486.113,357.669 L 485.45,359.53 L 485.009,361.424 L 484.641,363.285 L 484.493,365.146 L 484.42,367.04 L 484.604,368.901 L 484.825,370.794 L 485.193,372.688"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 531.245 433.352 L 472.124,432.34 L 472.124,434.07 L 472.235,435.703 L 472.529,437.433 L 473.008,439.066 L 473.56,440.731 L 474.259,442.429 L 475.18,443.996 L 476.137,445.596 L 477.352,447.163 L 478.64,448.665 L 480.002,450.2 L 481.622,451.636 L 483.242,453.04 L 485.082,454.379 L 486.96,455.685 L 488.984,456.925 L 491.156,458.068 L 493.365,459.178 L 495.684,460.288 L 498.114,461.235 L 500.617,462.149 L 503.231,463.031 L 505.881,463.749 L 508.532,464.468 L 511.33,465.088 L 514.164,465.61 L 517.036,466.035 L 519.944,466.427 L 522.852,466.72 L 525.797,466.916 L 528.779,467.014 L 531.797,467.014 L 534.706,466.949 L 537.687,466.818 L 540.632,466.623 L 543.54,466.329 L 546.485,465.904 L 549.283,465.414 L 552.155,464.892 L 554.842,464.206 L 557.566,463.553 L 560.217,462.737 L 562.72,461.856 L 565.26,460.909 L 567.579,459.897 L 569.898,458.852 L 531.245,433.352z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 472.198 432.34 L 472.087,434.005 L 472.308,435.703 L 472.529,437.368 L 473.008,439.066 L 473.56,440.698 L 474.296,442.364 L 475.18,443.996 L 476.21,445.596 L 477.352,447.13 L 478.566,448.665 L 480.002,450.134 L 481.511,451.603 L 483.242,452.975 L 485.009,454.379 L 486.923,455.619 L 488.911,456.86 L 491.046,458.068 L 493.255,459.178 L 495.574,460.223 L 498.003,461.203 L 500.507,462.117 L 503.047,462.966 L 505.697,463.749 L 508.458,464.468 L 511.182,465.023 L 513.98,465.545 L 516.851,466.035 L 519.796,466.361 L 522.705,466.72 L 525.613,466.851 L 528.595,467.014 L 531.576,467.014 L 534.521,467.014 L 537.466,466.851 L 540.411,466.623 L 543.32,466.329 L 546.265,465.937 L 549.062,465.48 L 551.934,464.925 L 554.658,464.272 L 557.308,463.553 L 559.959,462.77 L 562.499,461.921 L 565.039,461.007 L 567.432,459.995 L 569.677,458.95"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 719.357 360.542 L 771.373,369.978 L 772.256,368.574 L 772.919,367.17 L 773.545,365.734 L 773.913,364.264 L 774.281,362.795 L 774.355,361.326 L 774.355,359.824 L 774.281,358.387 L 773.987,356.918 L 773.582,355.449 L 772.993,354.012 L 772.293,352.576 L 771.483,351.204 L 770.526,349.8 L 769.422,348.462 L 768.17,347.123 L 766.771,345.817 L 765.336,344.576 L 763.753,343.368 L 762.059,342.226 L 760.256,341.05 L 758.268,340.005 L 756.28,338.993 L 754.108,338.046 L 751.936,337.132 L 749.654,336.316 L 747.298,335.5 L 744.831,334.781 L 742.328,334.128 L 739.751,333.541 L 737.1,333.051 L 734.487,332.627 L 731.726,332.235 L 729.002,331.941 L 726.241,331.712 L 723.443,331.614 L 720.682,331.516 L 717.921,331.516 L 715.123,331.614 L 712.326,331.745 L 709.602,331.974 L 706.841,332.267 L 704.117,332.627 L 701.429,333.084 L 719.357,360.542z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 766.587 375.3 L 771.336,370.044 L 772.22,368.672 L 772.919,367.236 L 773.471,365.799 L 773.913,364.33 L 774.207,362.861 L 774.318,361.424 L 774.355,359.889 L 774.244,358.453 L 773.987,356.983 L 773.582,355.514 L 772.993,354.078 L 772.293,352.641 L 771.52,351.237 L 770.563,349.898 L 769.422,348.494 L 768.17,347.156 L 766.882,345.85 L 765.372,344.609 L 763.79,343.401 L 762.096,342.226 L 760.292,341.116 L 758.378,340.071 L 756.353,339.026 L 754.255,338.046 L 752.01,337.165 L 749.727,336.316 L 747.371,335.532 L 744.905,334.879 L 742.401,334.194 L 739.861,333.573 L 737.248,333.051 L 734.56,332.627 L 731.91,332.235 L 729.186,331.941 L 726.425,331.745 L 723.627,331.614 L 720.829,331.516 L 717.995,331.516 L 715.234,331.614 L 712.436,331.745 L 709.675,331.941 L 706.951,332.235 L 704.264,332.594 L 701.576,333.051"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 726.756 398.906 L 785.325,410.856 L 786.503,409.289 L 787.46,407.754 L 788.343,406.122 L 789.043,404.489 L 789.521,402.857 L 789.853,401.224 L 789.963,399.527 L 789.963,397.861 L 789.742,396.196 L 789.411,394.564 L 788.822,392.899 L 788.123,391.299 L 787.202,389.699 L 786.208,388.099 L 784.957,386.564 L 783.558,385.095 L 782.049,383.593 L 780.318,382.124 L 778.478,380.753 L 726.756,398.906z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 777.889 416.276 L 785.251,410.921 L 786.356,409.387 L 787.46,407.754 L 788.307,406.155 L 789.006,404.489 L 789.485,402.857 L 789.853,401.224 L 790,399.527 L 789.963,397.861 L 789.742,396.164 L 789.337,394.531 L 788.822,392.899 L 788.123,391.266 L 787.202,389.634 L 786.172,388.034 L 784.883,386.467 L 783.521,384.997 L 781.901,383.495 L 780.245,382.059 L 778.367,380.687 L 766.587,375.3"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 724.29 430.446 L 705.81,475.797 L 708.534,476.516 L 711.295,477.169 L 714.056,477.658 L 716.927,478.05 L 719.725,478.344 L 722.523,478.475 L 725.431,478.475 L 728.265,478.344 L 731.063,478.148 L 733.898,477.756 L 736.659,477.266 L 739.42,476.711 L 742.144,475.993 L 744.831,475.112 L 747.408,474.165 L 749.985,473.087 L 752.488,471.912 L 754.918,470.606 L 757.274,469.267 L 759.519,467.733 L 761.654,466.133 L 763.716,464.468 L 765.704,462.672 L 767.581,460.811 L 769.275,458.884 L 770.894,456.86 L 772.44,454.803 L 773.803,452.648 L 775.017,450.493 L 776.159,448.241 L 777.116,445.922 L 777.999,443.572 L 778.699,441.221 L 779.288,438.805 L 779.656,436.421 L 779.987,433.972 L 780.061,431.524 L 780.061,429.075 L 779.913,426.626 L 779.619,424.177 L 779.177,421.761 L 778.625,419.378 L 777.889,417.027 L 724.29,430.446z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 705.957 475.83 L 708.718,476.613 L 711.442,477.234 L 714.24,477.756 L 717.038,478.083 L 719.909,478.344 L 722.707,478.475 L 725.541,478.54 L 728.376,478.344 L 731.247,478.148 L 734.045,477.756 L 736.806,477.266 L 739.567,476.646 L 742.291,475.928 L 744.942,475.079 L 747.592,474.099 L 750.132,473.055 L 752.599,471.912 L 754.991,470.606 L 757.347,469.169 L 759.593,467.667 L 761.728,466.035 L 763.79,464.37 L 765.777,462.639 L 767.618,460.746 L 769.385,458.787 L 770.931,456.827 L 772.477,454.705 L 773.839,452.55 L 775.054,450.395 L 776.159,448.143 L 777.152,445.792 L 778.036,443.474 L 778.699,441.09 L 779.288,438.707 L 779.729,436.323 L 779.987,433.874 L 780.061,431.426 L 780.061,428.977 L 779.877,426.528 L 779.619,424.079 L 779.14,421.663 L 778.515,419.28 L 777.889,416.929"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 490.162 404.685 L 487.365,373.896 L 485.303,374.059 L 483.352,374.255 L 481.291,374.582 L 479.303,374.974 L 477.352,375.431 L 475.437,376.019 L 473.56,376.574 L 471.719,377.325 L 469.879,378.043 L 468.149,378.859 L 466.455,379.773 L 464.835,380.72 L 463.252,381.732 L 461.817,382.842 L 460.381,383.952 L 459.056,385.128 L 457.804,386.369 L 456.663,387.675 L 455.522,388.981 L 454.528,390.385 L 453.681,391.821 L 452.871,393.258 L 452.098,394.694 L 451.509,396.196 L 451.031,397.731 L 450.589,399.265 L 450.258,400.833 L 450.11,402.432 L 450,403.967 L 450,405.534 L 450.11,407.069 L 450.331,408.669 L 450.663,410.203 L 451.031,411.738 L 451.583,413.272 L 452.172,414.774 L 452.908,416.243 L 453.718,417.68 L 454.638,419.084 L 455.632,420.488 L 456.773,421.761 L 457.915,423.067 L 459.203,424.308 L 460.565,425.483 L 461.964,426.626 L 463.473,427.671 L 465.056,428.683 L 466.676,429.663 L 468.406,430.544 L 470.1,431.36 L 471.94,432.111 L 490.162,404.685z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 487.365 373.896 L 485.414,374.059 L 483.389,374.255 L 481.401,374.582 L 479.487,374.941 L 477.536,375.398 L 475.621,375.888 L 473.781,376.508 L 471.977,377.161 L 470.173,377.88 L 468.517,378.696 L 466.786,379.577 L 465.204,380.492 L 463.657,381.471 L 462.185,382.549 L 460.712,383.659 L 459.424,384.769 L 458.136,386.009 L 456.994,387.25 L 455.89,388.556 L 454.933,389.895 L 454.013,391.266 L 453.129,392.637 L 452.393,394.074 L 451.73,395.543 L 451.178,397.045 L 450.773,398.547 L 450.368,400.082 L 450.147,401.616 L 450,403.151 L 450,404.685 L 450,406.22 L 450.221,407.754 L 450.442,409.289 L 450.773,410.824 L 451.252,412.325 L 451.73,413.795 L 452.393,415.231 L 453.203,416.733 L 454.013,418.137 L 454.933,419.476 L 455.964,420.814 L 457.031,422.12 L 458.172,423.361 L 459.424,424.569 L 460.786,425.712 L 462.222,426.822 L 463.694,427.867 L 465.277,428.846 L 466.823,429.793 L 468.517,430.642 L 470.247,431.426 L 472.014,432.177"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 639.29 454.118 L 555.505,457.676 L 556.057,459.472 L 556.756,461.301 L 557.713,463.064 L 558.928,464.794 L 560.217,466.459 L 561.799,468.157 L 563.53,469.79 L 565.481,471.422 L 567.653,472.957 L 569.972,474.491 L 572.401,475.928 L 575.089,477.332 L 577.887,478.67 L 580.868,479.976 L 583.997,481.152 L 587.237,482.327 L 590.697,483.372 L 594.158,484.417 L 597.802,485.331 L 601.52,486.213 L 605.422,486.931 L 609.324,487.649 L 613.263,488.237 L 617.386,488.759 L 621.509,489.184 L 625.669,489.51 L 629.792,489.771 L 634.026,489.902 L 638.296,490 L 642.492,490 L 646.763,489.869 L 650.959,489.673 L 655.119,489.38 L 659.242,488.955 L 663.365,488.498 L 667.341,487.943 L 671.317,487.257 L 675.182,486.604 L 679.01,485.788 L 682.692,484.874 L 686.226,483.894 L 689.686,482.85 L 693.036,481.707 L 696.239,480.531 L 699.294,479.291 L 702.129,477.985 L 704.89,476.613 L 707.43,475.177 L 709.859,473.675 L 712.105,472.14 L 714.093,470.606 L 715.933,468.973 L 717.627,467.276 L 719.062,465.61 L 639.29,454.118z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 555.578 457.742 L 556.057,459.505 L 556.793,461.301 L 557.713,463.064 L 558.928,464.794 L 560.29,466.525 L 561.799,468.157 L 563.566,469.79 L 565.481,471.422 L 567.653,472.957 L 569.972,474.491 L 572.401,475.928 L 575.089,477.332 L 577.96,478.67 L 580.868,479.976 L 583.997,481.152 L 587.237,482.327 L 590.697,483.372 L 594.158,484.384 L 597.802,485.331 L 601.52,486.213 L 605.349,486.931 L 609.251,487.649 L 613.227,488.237 L 617.35,488.759 L 621.436,489.184 L 625.595,489.478 L 629.755,489.771 L 633.952,489.902 L 638.185,490 L 642.419,489.967 L 646.615,489.869 L 650.812,489.608 L 655.045,489.38 L 659.168,488.955 L 663.218,488.465 L 667.267,487.943 L 671.206,487.323 L 675.071,486.604 L 678.863,485.788 L 682.508,484.874 L 686.115,483.894 L 689.576,482.882 L 692.889,481.805 L 696.091,480.597 L 699.11,479.356 L 702.055,478.05 L 704.779,476.613 L 707.356,475.21 L 709.786,473.708 L 711.958,472.238 L 714.019,470.606 L 715.86,469.006 L 717.479,467.341 L 718.989,465.643"/>
</g>
<g>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 472.883 378.401 L 472.883,360.469"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 472.883 378.111 L 472.883,365.811"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 473.404 362.192 L 472.308,362.192 L 472.308,360 L 473.404,360 L 473.404,362.192z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 473.404 362.192 L 472.308,362.192 L 472.308,360 L 473.404,360 L 473.404,362.192"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 446.304 378.401 L 446.304,360.469"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 446.304 378.111 L 446.304,365.811"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 446.824 362.192 L 445.728,362.192 L 445.728,360 L 446.824,360 L 446.824,362.192z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 446.824 362.192 L 445.728,362.192 L 445.728,360 L 446.824,360 L 446.824,362.192"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 480.318 380.677 C 480.318,385.007 471.293,388.516 460.159,388.516 C 449.025,388.516 440,385.007 440,380.677 L 440,392.16 C 440,396.49 449.025,400 460.159,400 C 471.293,400 480.318,396.49 480.318,392.16 L 480.318,380.677z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 480.318 380.677 C 480.318,385.007 471.293,388.516 460.159,388.516 C 449.025,388.516 440,385.007 440,380.677 L 440,392.16 C 440,396.49 449.025,400 460.159,400 C 471.293,400 480.318,396.49 480.318,392.16 L 480.318,380.677"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 460.159 388.516 C 471.293,388.516 480.318,385.007 480.318,380.677 C 480.318,376.347 471.293,372.837 460.159,372.837 C 449.025,372.837 440,376.347 440,380.677 C 440,385.007 449.025,388.516 460.159,388.516z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 460.159 388.516 C 471.293,388.516 480.318,385.007 480.318,380.677 C 480.318,376.347 471.293,372.837 460.159,372.837 C 449.025,372.837 440,376.347 440,380.677 C 440,385.007 449.025,388.516 460.159,388.516"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 455.555 377.612 L 457.22,380.109 L 450.927,381.563 L 452.301,380.419 L 442.574,378.756 L 445.015,376.927 L 454.4,378.516 L 455.555,377.612z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 464.413 383.666 L 463.276,381.093 L 468.953,379.958 L 467.968,380.84 L 477.431,382.456 L 475.162,384.272 L 465.754,382.507 L 464.413,383.666z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 461.308 376.248 L 467.667,374.508 L 467.742,377.234 L 466.153,376.93 L 463.048,379.503 L 460.088,379.072 L 463.29,376.554 L 461.308,376.248z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 458.583 386.014 L 452.528,387.149 L 452.301,384.349 L 454.041,384.726 L 457.374,381.88 L 460.324,382.38 L 456.767,385.484 L 458.583,386.014z"/>
</g>
<text font-size="21.4489" style="fill: #000000; fill-opacity: 1; stroke: none;text-anchor:start;font-family:sans-serif;font-style:italic;font-weight:normal" x="620" y="390">
<tspan x="620" y="390">Mesh</tspan>
</text>
<g>
<path style="fill: #c9c9b6; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 294.294 324.172 L 328.289,324.172 L 313.995,338.514 L 280,338.514 L 294.294,324.172z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 294.294 324.172 L 328.289,324.172 L 313.995,338.514 L 280,338.514 L 294.294,324.172"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #dbdbce" d="M 295.599 336.092 L 295.599,336.168 L 295.613,336.23 L 295.633,336.314 L 295.661,336.397 L 295.703,336.46 L 295.751,336.536 L 295.814,336.605 L 295.876,336.668 L 295.939,336.744 L 296.022,336.821 L 296.106,336.883 L 296.196,336.939 L 296.3,336.994 L 296.397,337.057 L 296.522,337.105 L 296.633,337.168 L 296.758,337.216 L 296.897,337.265 L 297.036,337.306 L 297.168,337.348 L 297.313,337.39 L 297.459,337.431 L 297.612,337.452 L 297.779,337.48 L 297.938,337.494 L 298.105,337.522 L 298.258,337.543 L 298.431,337.563 L 298.605,337.57 L 298.771,337.577 L 298.938,337.577"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #dbdbce" d="M 298.57 337.577 L 298.737,337.577 L 298.896,337.57 L 299.056,337.556 L 299.222,337.536 L 299.389,337.522 L 299.542,337.494 L 299.695,337.48 L 299.854,337.445 L 300,337.411 L 300.153,337.369 L 300.285,337.327 L 300.423,337.286 L 300.555,337.237 L 300.68,337.188 L 300.791,337.14 L 300.909,337.084 L 301.02,337.022 L 301.118,336.966 L 301.215,336.897 L 301.298,336.827 L 301.375,336.758 L 301.437,336.696 L 301.506,336.619 L 301.562,336.543 L 301.604,336.48 L 301.652,336.404 L 301.673,336.314 L 301.694,336.237 L 301.715,336.168 L 301.722,336.092"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #dbdbce" d="M 299.306 333.308 L 299.132,333.308 L 298.966,333.315 L 298.792,333.315 L 298.639,333.329 L 298.473,333.35 L 298.306,333.363 L 298.146,333.377 L 297.98,333.412 L 297.834,333.44 L 297.688,333.461 L 297.543,333.495 L 297.397,333.537 L 297.265,333.572 L 297.14,333.613 L 297.015,333.669 L 296.876,333.711 L 296.779,333.759 L 296.668,333.801 L 296.564,333.856 L 296.48,333.919 L 296.39,333.974 L 296.314,334.023 L 296.237,334.085 L 296.182,334.148 L 296.126,334.217 L 296.071,334.28 L 296.043,334.335 L 296.008,334.405 L 295.988,334.46 L 295.981,334.537 L 295.974,334.592"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #dbdbce" d="M 302.083 334.592 L 302.083,334.53 L 302.076,334.46 L 302.048,334.398 L 302.02,334.321 L 301.985,334.266 L 301.93,334.19 L 301.874,334.134 L 301.819,334.065 L 301.736,334.016 L 301.673,333.947 L 301.59,333.891 L 301.479,333.842 L 301.388,333.773 L 301.284,333.738 L 301.173,333.683 L 301.048,333.627 L 300.916,333.586 L 300.784,333.544 L 300.653,333.509 L 300.514,333.481 L 300.368,333.447 L 300.215,333.412 L 300.069,333.391 L 299.917,333.363 L 299.764,333.35 L 299.604,333.329 L 299.438,333.315 L 299.264,333.315 L 299.098,333.308 L 298.938,333.308"/>
<path style="fill: #a5a585; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 280 340 L 313.995,340 L 313.995,338.514 L 280,338.514 L 280,340z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 280 340 L 313.995,340 L 313.995,338.514 L 280,338.514 L 280,340"/>
<path style="fill: #a5a585; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 294.294 324.172 L 328.289,324.172 L 328.289,300.916 L 294.294,300.916 L 294.294,324.172z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 294.294 324.172 L 328.289,324.172 L 328.289,300.916 L 294.294,300.916 L 294.294,324.172"/>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 329.219 323.256 L 329.219,300 L 328.289,300.916 L 328.289,324.172 L 329.219,323.256z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 329.219 323.256 L 329.219,300 L 328.289,300.916 L 328.289,324.172 L 329.219,323.256"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 295.974 322.694 L 326.623,322.694 L 326.623,302.784 L 295.974,302.784 L 295.974,322.694z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 295.974 322.694 L 326.623,322.694 L 326.623,302.784 L 295.974,302.784 L 295.974,322.694"/>
<path style="fill: #93936c; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 295.974 325.297 L 324.568,325.297 L 317.14,332.746 L 288.546,332.746 L 295.974,325.297z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 295.974 325.297 L 324.568,325.297 L 317.14,332.746 L 288.546,332.746 L 295.974,325.297"/>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 300.423 335.62 L 300.423,335.578 L 300.417,335.536 L 300.41,335.495 L 300.389,335.446 L 300.382,335.404 L 300.354,335.37 L 300.34,335.328 L 300.305,335.3 L 300.271,335.259 L 300.25,335.217 L 300.215,335.182 L 300.174,335.148 L 300.132,335.106 L 300.083,335.071 L 300.042,335.05 L 299.993,335.016 L 299.938,334.988 L 299.875,334.967 L 299.826,334.932 L 299.764,334.918 L 299.701,334.891 L 299.646,334.877 L 299.577,334.856 L 299.514,334.842 L 299.438,334.828 L 299.375,334.807 L 299.306,334.8 L 299.243,334.8 L 299.174,334.793 L 299.091,334.793 L 299.035,334.793 L 299.035,334.793 L 298.959,334.793 L 298.882,334.793 L 298.82,334.8 L 298.75,334.8 L 298.688,334.807 L 298.612,334.828 L 298.549,334.842 L 298.48,334.856 L 298.417,334.877 L 298.355,334.891 L 298.299,334.918 L 298.23,334.932 L 298.181,334.967 L 298.126,334.988 L 298.07,335.016 L 298.022,335.05 L 297.98,335.071 L 297.931,335.106 L 297.89,335.148 L 297.855,335.182 L 297.806,335.217 L 297.785,335.259 L 297.744,335.3 L 297.723,335.328 L 297.702,335.37 L 297.681,335.404 L 297.667,335.446 L 297.661,335.495 L 297.647,335.536 L 297.633,335.578 L 297.633,335.62 L 297.633,335.62 L 297.633,335.668 L 297.647,335.71 L 297.661,335.751 L 297.667,335.793 L 297.681,335.835 L 297.702,335.869 L 297.723,335.918 L 297.744,335.953 L 297.785,335.994 L 297.806,336.022 L 297.855,336.064 L 297.89,336.099 L 297.931,336.14 L 297.98,336.168 L 298.022,336.196 L 298.07,336.23 L 298.126,336.258 L 298.181,336.279 L 298.23,336.314 L 298.299,336.328 L 298.355,336.355 L 298.417,336.369 L 298.48,336.39 L 298.549,336.404 L 298.612,336.418 L 298.688,336.432 L 298.75,336.446 L 298.82,336.446 L 298.882,336.446 L 298.959,336.453 L 299.035,336.453 L 299.035,336.453 L 299.091,336.453 L 299.174,336.446 L 299.243,336.446 L 299.306,336.446 L 299.375,336.432 L 299.438,336.418 L 299.514,336.404 L 299.577,336.39 L 299.646,336.369 L 299.701,336.355 L 299.764,336.328 L 299.826,336.314 L 299.875,336.279 L 299.938,336.258 L 299.993,336.23 L 300.042,336.196 L 300.083,336.168 L 300.132,336.14 L 300.174,336.099 L 300.215,336.064 L 300.25,336.022 L 300.271,335.994 L 300.305,335.953 L 300.34,335.918 L 300.354,335.869 L 300.382,335.835 L 300.389,335.793 L 300.41,335.751 L 300.417,335.71 L 300.423,335.668 L 300.423,335.62z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #dbdbce" d="M 300.243 335.536 L 300.243,335.495 L 300.236,335.453 L 300.236,335.418 L 300.215,335.39 L 300.201,335.335 L 300.194,335.314 L 300.16,335.272 L 300.132,335.231 L 300.111,335.203 L 300.083,335.175 L 300.042,335.148 L 300.007,335.099 L 299.965,335.071 L 299.924,335.05 L 299.889,335.016 L 299.833,334.988 L 299.792,334.974 L 299.743,334.939 L 299.695,334.925 L 299.632,334.898 L 299.577,334.884 L 299.514,334.87 L 299.459,334.849 L 299.396,334.835 L 299.334,334.828 L 299.264,334.807 L 299.209,334.8 L 299.132,334.793 L 299.077,334.793 L 299.007,334.793 L 298.945,334.793 L 298.945,334.793 L 298.875,334.793 L 298.813,334.793 L 298.743,334.793 L 298.688,334.8 L 298.619,334.807 L 298.563,334.828 L 298.487,334.835 L 298.431,334.849 L 298.383,334.87 L 298.313,334.884 L 298.258,334.898 L 298.188,334.925 L 298.153,334.939 L 298.091,334.974 L 298.049,334.988 L 298.001,335.016 L 297.959,335.05 L 297.917,335.071 L 297.876,335.099 L 297.841,335.148 L 297.806,335.175 L 297.779,335.203 L 297.744,335.231 L 297.73,335.272 L 297.702,335.314 L 297.688,335.335 L 297.674,335.39 L 297.661,335.418 L 297.654,335.453 L 297.647,335.495 L 297.647,335.536 L 297.647,335.536 L 297.647,335.571 L 297.654,335.613 L 297.661,335.654 L 297.674,335.675 L 297.688,335.717 L 297.702,335.758 L 297.73,335.793 L 297.744,335.828 L 297.779,335.869 L 297.806,335.89 L 297.841,335.925 L 297.876,335.96 L 297.917,335.994 L 297.959,336.015 L 298.001,336.05 L 298.049,336.071 L 298.091,336.099 L 298.153,336.126 L 298.188,336.14 L 298.258,336.168 L 298.313,336.189 L 298.383,336.196 L 298.431,336.217 L 298.487,336.23 L 298.563,336.237 L 298.619,336.258 L 298.688,336.272 L 298.743,336.272 L 298.813,336.272 L 298.875,336.272 L 298.945,336.272 L 298.945,336.272 L 299.007,336.272 L 299.077,336.272 L 299.132,336.272 L 299.209,336.272 L 299.264,336.258 L 299.334,336.237 L 299.396,336.23 L 299.459,336.217 L 299.514,336.196 L 299.577,336.189 L 299.632,336.168 L 299.695,336.14 L 299.743,336.126 L 299.792,336.099 L 299.833,336.071 L 299.889,336.05 L 299.924,336.015 L 299.965,335.994 L 300.007,335.96 L 300.042,335.925 L 300.083,335.89 L 300.111,335.869 L 300.132,335.828 L 300.16,335.793 L 300.194,335.758 L 300.201,335.717 L 300.215,335.675 L 300.236,335.654 L 300.236,335.613 L 300.243,335.571 L 300.243,335.536"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #626248" d="M 295.793 336.272 L 295.793,336.355 L 295.807,336.418 L 295.835,336.494 L 295.856,336.578 L 295.897,336.647 L 295.939,336.709 L 296.001,336.786 L 296.064,336.862 L 296.133,336.925 L 296.203,336.994 L 296.293,337.057 L 296.376,337.126 L 296.487,337.182 L 296.591,337.237 L 296.703,337.286 L 296.821,337.348 L 296.952,337.397 L 297.07,337.445 L 297.223,337.487 L 297.362,337.529 L 297.508,337.577 L 297.654,337.612 L 297.806,337.633 L 297.959,337.661 L 298.126,337.688 L 298.285,337.702 L 298.445,337.73 L 298.612,337.744 L 298.785,337.751 L 298.952,337.751 L 299.118,337.751"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #626248" d="M 298.743 337.751 L 298.917,337.751 L 299.077,337.751 L 299.25,337.737 L 299.403,337.716 L 299.563,337.702 L 299.729,337.688 L 299.875,337.661 L 300.035,337.626 L 300.174,337.591 L 300.326,337.563 L 300.472,337.522 L 300.604,337.48 L 300.736,337.431 L 300.861,337.369 L 300.986,337.32 L 301.09,337.265 L 301.201,337.209 L 301.298,337.14 L 301.388,337.084 L 301.479,337.008 L 301.555,336.952 L 301.631,336.883 L 301.694,336.8 L 301.736,336.723 L 301.798,336.661 L 301.826,336.578 L 301.86,336.501 L 301.888,336.418 L 301.888,336.355 L 301.902,336.272"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #626248" d="M 299.486 333.488 L 299.327,333.488 L 299.16,333.495 L 298.993,333.495 L 298.827,333.509 L 298.653,333.53 L 298.487,333.537 L 298.341,333.565 L 298.174,333.586 L 298.022,333.627 L 297.876,333.641 L 297.73,333.683 L 297.591,333.711 L 297.452,333.759 L 297.327,333.801 L 297.202,333.842 L 297.07,333.884 L 296.966,333.933 L 296.855,333.981 L 296.758,334.044 L 296.668,334.099 L 296.585,334.148 L 296.501,334.217 L 296.418,334.266 L 296.369,334.321 L 296.314,334.398 L 296.265,334.453 L 296.224,334.523 L 296.196,334.578 L 296.175,334.641 L 296.168,334.717 L 296.161,334.787"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #626248" d="M 302.277 334.787 L 302.263,334.71 L 302.256,334.641 L 302.242,334.578 L 302.208,334.509 L 302.166,334.446 L 302.117,334.377 L 302.062,334.321 L 301.999,334.259 L 301.93,334.19 L 301.847,334.134 L 301.763,334.072 L 301.673,334.016 L 301.562,333.967 L 301.465,333.919 L 301.347,333.87 L 301.236,333.815 L 301.111,333.773 L 300.979,333.738 L 300.833,333.697 L 300.694,333.669 L 300.555,333.627 L 300.41,333.599 L 300.257,333.572 L 300.09,333.544 L 299.944,333.53 L 299.785,333.509 L 299.618,333.495 L 299.445,333.495 L 299.292,333.488 L 299.118,333.488"/>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 328.289 325.477 L 313.995,339.82 L 313.995,338.514 L 328.289,324.172 L 328.289,325.477z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 328.289 325.477 L 313.995,339.82 L 313.995,338.514 L 328.289,324.172 L 328.289,325.477"/>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 323.464 323.075 L 323.464,323.429 L 326.248,323.429 L 326.248,323.075 L 323.464,323.075z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 323.464 323.075 L 323.464,323.429 L 326.248,323.429 L 326.248,323.075 L 323.464,323.075"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #000000" d="M 322.7 327.157 L 294.294,327.157"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #000000" d="M 320.854 329.025 L 292.447,329.025"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #000000" d="M 319 330.885 L 290.587,330.885"/>
<path style="fill: #c9c9b6; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 295.224 300 L 329.219,300 L 328.289,300.916 L 294.294,300.916 L 295.224,300z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 295.224 300 L 329.219,300 L 328.289,300.916 L 294.294,300.916 L 295.224,300"/>
</g>
<g>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 260.594 397.19 C 260.943,395.941 262.38,389.684 262.447,388.811 C 262.514,387.938 262.192,386.851 261.722,386.623 C 261.749,386.314 261.749,386.139 261.749,386.139 C 261.641,386.099 261.521,386.059 261.413,386.005 L 261.453,386.018 C 261.453,386.018 261.776,384.622 261.977,383.655 C 262.34,381.802 262.38,380.862 262.38,380.862 C 262.367,380.607 262.299,380.379 262.071,380.312 L 260.984,380.016 C 260.755,379.949 260.594,380.097 260.446,380.325 C 260.446,380.325 260.017,381.184 259.426,382.957 C 259.104,383.883 258.808,385.065 258.808,385.065 L 258.822,385.065 C 258.177,384.85 257.519,384.662 256.861,384.474 C 255.169,384.004 253.491,383.655 251.799,383.4 C 251.799,383.4 251.719,383.548 251.571,383.83 C 251.061,383.776 250.228,384.555 249.839,385.334 C 249.449,386.112 247.476,392.222 247.126,393.471 C 246.777,394.719 246.119,397.915 245.824,399.499 C 245.529,401.084 245.26,403.85 244.24,407.529 C 243.635,409.704 242.669,412.954 242.158,414.296 C 242.024,414.659 240.963,416.445 242.507,417.062 C 244.025,417.667 246.294,418.311 247.435,418.633 C 248.577,418.942 250.846,419.546 252.457,419.815 C 254.095,420.084 254.109,417.989 254.176,417.613 C 254.431,416.203 255.263,412.913 255.854,410.738 C 256.875,407.046 258.07,404.548 258.634,403.031 C 259.184,401.514 260.245,398.439 260.594,397.19z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 260.594 397.19 C 260.943,395.941 262.38,389.684 262.447,388.811 C 262.514,387.938 262.192,386.851 261.722,386.623 C 261.749,386.314 261.749,386.139 261.749,386.139 C 261.641,386.099 261.521,386.059 261.413,386.005 L 261.453,386.018 C 261.453,386.018 261.776,384.622 261.977,383.655 C 262.34,381.802 262.38,380.862 262.38,380.862 C 262.367,380.607 262.299,380.379 262.071,380.312 L 260.984,380.016 C 260.755,379.949 260.594,380.097 260.446,380.325 C 260.446,380.325 260.017,381.184 259.426,382.957 C 259.104,383.883 258.808,385.065 258.808,385.065 L 258.822,385.065 C 258.177,384.85 257.519,384.662 256.861,384.474 C 255.169,384.004 253.491,383.655 251.799,383.4 C 251.799,383.4 251.719,383.548 251.571,383.83 L 251.571,383.83 C 251.061,383.776 250.228,384.555 249.839,385.334 C 249.449,386.112 247.476,392.222 247.126,393.471 C 246.777,394.719 246.119,397.915 245.824,399.499 C 245.529,401.084 245.26,403.85 244.24,407.529 C 243.635,409.704 242.669,412.954 242.158,414.296 C 242.024,414.659 240.963,416.445 242.507,417.062 C 244.025,417.667 246.294,418.311 247.435,418.633 C 248.577,418.942 250.846,419.546 252.457,419.815 C 254.095,420.084 254.109,417.989 254.176,417.613 C 254.431,416.203 255.263,412.913 255.854,410.738 C 256.875,407.046 258.07,404.548 258.634,403.031 C 259.184,401.514 260.245,398.439 260.594,397.19"/>
<path style="fill: #b7b79d; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 258.916 397.351 C 259.265,396.102 260.702,389.845 260.769,388.986 C 260.836,388.113 260.514,387.012 260.044,386.797 C 260.07,386.488 260.07,386.314 260.07,386.314 C 259.963,386.26 259.842,386.22 259.735,386.179 L 259.762,386.193 C 259.762,386.193 260.097,384.796 260.299,383.83 C 260.661,381.963 260.688,381.023 260.688,381.023 C 260.688,380.768 260.621,380.553 260.393,380.486 L 259.305,380.191 C 259.077,380.124 258.916,380.271 258.768,380.5 C 258.768,380.5 258.338,381.359 257.748,383.118 C 257.425,384.058 257.13,385.226 257.13,385.226 L 257.143,385.24 C 256.499,385.025 255.841,384.823 255.183,384.649 C 253.491,384.179 251.799,383.816 250.121,383.561 C 250.121,383.561 250.04,383.722 249.893,383.991 C 249.382,383.951 248.55,384.716 248.16,385.495 C 247.771,386.273 245.797,392.383 245.448,393.645 C 245.099,394.894 244.441,398.076 244.146,399.661 C 243.85,401.245 243.582,404.011 242.561,407.704 C 241.957,409.879 240.99,413.115 240.48,414.471 C 240.346,414.82 239.285,416.619 240.829,417.237 C 242.346,417.828 244.616,418.486 245.757,418.795 C 246.898,419.117 249.167,419.708 250.779,419.976 C 252.417,420.245 252.43,418.163 252.497,417.788 C 252.753,416.364 253.585,413.088 254.176,410.913 C 255.196,407.22 256.391,404.709 256.955,403.192 C 257.506,401.688 258.567,398.613 258.916,397.351z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 258.916 397.351 C 259.265,396.102 260.702,389.845 260.769,388.986 C 260.836,388.113 260.514,387.012 260.044,386.797 C 260.07,386.488 260.07,386.314 260.07,386.314 C 259.963,386.26 259.842,386.22 259.735,386.179 L 259.762,386.193 C 259.762,386.193 260.097,384.796 260.299,383.83 C 260.661,381.963 260.688,381.023 260.688,381.023 C 260.688,380.768 260.621,380.553 260.393,380.486 L 259.305,380.191 C 259.077,380.124 258.916,380.271 258.768,380.5 C 258.768,380.5 258.338,381.359 257.748,383.118 C 257.425,384.058 257.13,385.226 257.13,385.226 L 257.143,385.24 C 256.499,385.025 255.841,384.823 255.183,384.649 C 253.491,384.179 251.799,383.816 250.121,383.561 C 250.121,383.561 250.04,383.722 249.893,383.991 L 249.893,383.991 C 249.382,383.951 248.55,384.716 248.16,385.495 C 247.771,386.273 245.797,392.383 245.448,393.645 C 245.099,394.894 244.441,398.076 244.146,399.661 C 243.85,401.245 243.582,404.011 242.561,407.704 C 241.957,409.879 240.99,413.115 240.48,414.471 C 240.346,414.82 239.285,416.619 240.829,417.237 C 242.346,417.828 244.616,418.486 245.757,418.795 C 246.898,419.117 249.167,419.708 250.779,419.976 C 252.417,420.245 252.43,418.163 252.497,417.788 C 252.753,416.364 253.585,413.088 254.176,410.913 C 255.196,407.22 256.391,404.709 256.955,403.192 C 257.506,401.688 258.567,398.613 258.916,397.351"/>
<path style="fill: #c9c9b6; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.8; stroke: #ecece7" fill-rule="evenodd" d="M 250.336 383.601 C 250.336,383.601 248.12,388.126 246.845,392.719 C 245.341,398.184 245.126,399.996 245.354,402.534 C 245.394,403.058 245.918,403.702 246.495,403.863 C 246.724,403.917 246.992,403.998 247.1,404.024 C 247.22,404.065 247.65,404.159 247.999,404.441 C 248.362,404.723 248.442,404.79 248.657,404.897 C 248.859,405.018 248.899,405.099 249.49,405.26 C 250.08,405.421 250.148,405.381 250.389,405.381 C 250.631,405.394 250.738,405.381 251.195,405.327 C 251.638,405.26 252.054,405.394 252.175,405.421 C 252.283,405.461 252.551,405.528 252.779,405.595 C 253.357,405.757 254.136,405.475 254.444,405.045 C 255.935,402.991 256.687,401.312 258.191,395.847 C 259.453,391.255 259.869,386.233 259.869,386.233 L 250.336,383.601z"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 253.021 402.561 C 252.632,403.998 251.141,404.83 249.718,404.441 C 248.281,404.051 247.449,402.561 247.838,401.138 C 248.241,399.701 249.718,398.868 251.141,399.258 C 252.578,399.661 253.41,401.138 253.021,402.561z"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 248.066 398.157 C 248.429,398.264 248.711,398.412 248.845,398.492 C 248.979,398.586 249.02,398.707 248.899,398.788 C 248.778,398.868 248.563,399.029 248.442,399.137 C 248.295,399.258 248.201,399.285 247.999,399.164 C 247.637,398.962 246.871,398.412 246.683,398.157 C 246.576,398.022 246.67,397.969 246.871,397.955 C 247.14,397.942 247.677,398.049 248.066,398.157z"/>
<path style="fill: #ff0000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 246.16 400.99 C 246.361,401.057 246.845,401.299 246.979,401.406 C 247.126,401.5 247.341,401.728 247.328,401.997 C 247.301,402.306 247.328,402.964 247.462,403.179 C 247.637,403.46 247.61,403.581 247.355,403.541 C 247.153,403.501 246.63,403.313 246.482,403.232 C 246.334,403.165 246.119,403.031 246.052,402.829 C 245.918,402.413 245.878,401.554 245.958,401.124 C 245.985,400.95 246.066,400.95 246.16,400.99z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 253.021 402.561 C 252.632,403.998 251.141,404.83 249.718,404.441 C 248.281,404.051 247.449,402.561 247.838,401.138 C 248.241,399.701 249.718,398.868 251.141,399.258 C 252.578,399.661 253.41,401.138 253.021,402.561"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 248.066 398.157 C 248.429,398.264 248.711,398.412 248.845,398.492 C 248.979,398.586 249.02,398.707 248.899,398.788 C 248.778,398.868 248.563,399.029 248.442,399.137 C 248.295,399.258 248.201,399.285 247.999,399.164 C 247.637,398.962 246.871,398.412 246.683,398.157 C 246.576,398.022 246.67,397.969 246.871,397.955 C 247.14,397.942 247.677,398.049 248.066,398.157"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.16 400.99 C 246.361,401.057 246.845,401.299 246.979,401.406 C 247.126,401.5 247.341,401.728 247.328,401.997 C 247.301,402.306 247.328,402.964 247.462,403.179 C 247.637,403.46 247.61,403.581 247.355,403.541 C 247.153,403.501 246.63,403.313 246.482,403.232 C 246.334,403.165 246.119,403.031 246.052,402.829 C 245.918,402.413 245.878,401.554 245.958,401.124 C 245.985,400.95 246.066,400.95 246.16,400.99"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 254.35 399.889 C 253.988,399.795 253.679,399.781 253.518,399.781 C 253.357,399.795 253.263,399.875 253.316,399.996 C 253.384,400.13 253.491,400.386 253.531,400.533 C 253.598,400.708 253.666,400.788 253.894,400.802 C 254.31,400.802 255.25,400.721 255.545,400.6 C 255.693,400.533 255.639,400.439 255.478,400.332 C 255.25,400.184 254.74,399.996 254.35,399.889z"/>
<path style="fill: #00ff00; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 254.538 403.299 C 254.337,403.246 253.786,403.219 253.612,403.232 C 253.451,403.246 253.142,403.326 253.021,403.568 C 252.887,403.85 252.524,404.4 252.296,404.521 C 252.001,404.669 251.96,404.79 252.202,404.87 C 252.39,404.951 252.941,405.058 253.102,405.072 C 253.276,405.085 253.518,405.085 253.679,404.938 C 254.028,404.656 254.485,403.93 254.646,403.528 C 254.713,403.366 254.646,403.326 254.538,403.299z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.35 399.889 C 253.988,399.795 253.679,399.781 253.518,399.781 C 253.357,399.795 253.263,399.875 253.316,399.996 C 253.384,400.13 253.491,400.386 253.531,400.533 C 253.598,400.708 253.666,400.788 253.894,400.802 C 254.31,400.802 255.25,400.721 255.545,400.6 C 255.693,400.533 255.639,400.439 255.478,400.332 C 255.25,400.184 254.74,399.996 254.35,399.889"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.538 403.299 C 254.337,403.246 253.786,403.219 253.612,403.232 C 253.451,403.246 253.142,403.326 253.021,403.568 C 252.887,403.85 252.524,404.4 252.296,404.521 C 252.001,404.669 251.96,404.79 252.202,404.87 C 252.39,404.951 252.941,405.058 253.102,405.072 C 253.276,405.085 253.518,405.085 253.679,404.938 C 254.028,404.656 254.485,403.93 254.646,403.528 C 254.713,403.366 254.646,403.326 254.538,403.299"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.095 387.791 L 254.981,384.582"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.391 387.871 L 255.277,384.662"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 260.688 380.889 C 260.688,380.889 260.178,380.741 259.748,380.634 C 259.372,380.527 258.835,380.379 258.835,380.379"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 258.916 397.351 C 259.265,396.102 260.702,389.845 260.769,388.986 C 260.836,388.113 260.514,387.012 260.044,386.797 C 260.07,386.488 260.07,386.314 260.07,386.314 C 259.963,386.26 259.842,386.22 259.735,386.179 L 259.762,386.193 C 259.762,386.193 260.097,384.796 260.299,383.83 C 260.661,381.963 260.688,381.023 260.688,381.023 C 260.688,380.768 260.621,380.553 260.393,380.486 L 259.305,380.191 C 259.077,380.124 258.916,380.271 258.768,380.5 C 258.768,380.5 258.338,381.359 257.748,383.118 C 257.425,384.058 257.13,385.226 257.13,385.226 L 257.143,385.24 C 256.499,385.025 255.841,384.823 255.183,384.649 C 253.491,384.179 251.799,383.816 250.121,383.561 C 250.121,383.561 250.04,383.722 249.893,383.991 L 249.893,383.991 C 249.382,383.951 248.55,384.716 248.16,385.495 C 247.771,386.273 245.797,392.383 245.448,393.645 C 245.099,394.894 244.441,398.076 244.146,399.661 C 243.85,401.245 243.582,404.011 242.561,407.704 C 241.957,409.879 240.99,413.115 240.48,414.471 C 240.346,414.82 239.285,416.619 240.829,417.237 C 242.346,417.828 244.616,418.486 245.757,418.795 C 246.898,419.117 249.167,419.708 250.779,419.976 C 252.417,420.245 252.43,418.163 252.497,417.788 C 252.753,416.364 253.585,413.088 254.176,410.913 C 255.196,407.22 256.391,404.709 256.955,403.192 C 257.506,401.688 258.567,398.613 258.916,397.351"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 247.1 406.133 C 246.925,406.764 246.267,407.14 245.623,406.965 C 244.978,406.79 244.602,406.133 244.777,405.488 C 244.965,404.844 245.623,404.468 246.267,404.642 C 246.912,404.817 247.288,405.488 247.1,406.133z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 250.148 407.408 C 249.973,408.053 249.302,408.429 248.657,408.254 C 248.026,408.08 247.65,407.408 247.825,406.777 C 247.999,406.133 248.657,405.757 249.302,405.931 C 249.946,406.106 250.322,406.777 250.148,407.408z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 253.424 407.878 C 253.249,408.509 252.578,408.885 251.933,408.711 C 251.302,408.536 250.926,407.878 251.101,407.234 C 251.276,406.589 251.933,406.213 252.578,406.388 C 253.223,406.562 253.598,407.234 253.424,407.878z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 246.375 408.778 C 246.2,409.422 245.529,409.798 244.898,409.61 C 244.253,409.436 243.877,408.778 244.052,408.133 C 244.226,407.489 244.898,407.113 245.529,407.287 C 246.173,407.475 246.549,408.133 246.375,408.778z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 249.409 410.067 C 249.235,410.711 248.577,411.087 247.932,410.899 C 247.288,410.725 246.912,410.067 247.086,409.422 C 247.274,408.778 247.932,408.402 248.577,408.576 C 249.208,408.764 249.597,409.422 249.409,410.067z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 252.699 410.523 C 252.511,411.154 251.853,411.544 251.208,411.356 C 250.564,411.181 250.188,410.523 250.362,409.879 C 250.55,409.234 251.208,408.858 251.853,409.033 C 252.497,409.221 252.873,409.879 252.699,410.523z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 245.649 411.423 C 245.475,412.067 244.804,412.443 244.159,412.269 C 243.528,412.094 243.139,411.423 243.327,410.778 C 243.501,410.147 244.159,409.758 244.804,409.946 C 245.448,410.12 245.824,410.778 245.649,411.423z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 248.684 412.712 C 248.509,413.356 247.838,413.732 247.207,413.558 C 246.563,413.383 246.187,412.712 246.361,412.067 C 246.536,411.423 247.207,411.06 247.838,411.235 C 248.483,411.409 248.859,412.067 248.684,412.712z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 251.96 413.168 C 251.786,413.813 251.114,414.189 250.483,414.001 C 249.839,413.826 249.463,413.168 249.637,412.524 C 249.812,411.879 250.483,411.503 251.114,411.691 C 251.759,411.866 252.135,412.524 251.96,413.168z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 244.911 414.068 C 244.736,414.713 244.065,415.089 243.434,414.914 C 242.789,414.739 242.413,414.082 242.588,413.437 C 242.763,412.793 243.434,412.417 244.065,412.591 C 244.71,412.766 245.086,413.437 244.911,414.082 L 244.911,414.068z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 247.959 415.357 C 247.771,416.002 247.113,416.378 246.469,416.203 C 245.824,416.029 245.448,415.357 245.636,414.726 C 245.811,414.082 246.469,413.706 247.113,413.88 C 247.758,414.055 248.134,414.726 247.959,415.357z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 251.235 415.814 C 251.047,416.458 250.389,416.834 249.745,416.66 C 249.1,416.485 248.724,415.814 248.912,415.169 C 249.087,414.538 249.745,414.162 250.389,414.337 C 251.034,414.511 251.41,415.169 251.235,415.814z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.428 417.156 C 246.415,417.21 246.307,417.237 246.187,417.21 C 246.079,417.17 245.999,417.103 246.025,417.036 C 246.039,416.982 246.146,416.955 246.254,416.982 C 246.361,417.009 246.442,417.089 246.428,417.143"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.025 417.036 L 245.636,418.419"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.079 417.156 L 245.73,418.445"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.428 417.156 L 246.039,418.526"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.307 417.21 L 245.958,418.499"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 248.751 397.19 L 248.483,398.143"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 248.859 397.217 L 248.59,398.184"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.27 398.707 L 254.001,399.674"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.162 398.68 L 253.894,399.647"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 259.762 386.193 C 259.762,386.193 260.097,384.796 260.299,383.83 C 260.661,381.963 260.688,381.023 260.688,381.023 C 260.688,380.768 260.621,380.553 260.393,380.486 L 259.305,380.191 C 259.077,380.124 258.916,380.271 258.768,380.5 C 258.768,380.5 258.338,381.359 257.748,383.118 C 257.425,384.058 257.13,385.226 257.13,385.226"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 259.896 385.683 C 259.023,385.347 258.15,385.038 257.251,384.756"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 249.033 385.871 C 250.819,386.126 252.739,386.529 254.525,387.025 C 256.311,387.522 258.164,388.153 259.829,388.852"/>
<path style="fill: #b7b79d; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" fill-rule="evenodd" d="M 256.7 398.922 C 256.633,399.164 256.391,399.298 256.15,399.231 L 246.858,396.666 C 246.616,396.599 246.482,396.357 246.549,396.129 L 248.174,390.248 C 248.241,390.006 248.483,389.872 248.711,389.939 L 258.016,392.504 C 258.258,392.571 258.392,392.813 258.325,393.054 L 256.7,398.935 L 256.7,398.922z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.095 387.791 L 254.981,384.582"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.391 387.871 L 255.277,384.662"/>
</g>
<line style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="327.424" y1="326.359" x2="444.266" y2="375.437"/>
<line style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="259.522" y1="401.737" x2="439.089" y2="384.112"/>
<g>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 290.594 477.19 C 290.943,475.941 292.38,469.684 292.447,468.811 C 292.514,467.938 292.192,466.851 291.722,466.623 C 291.749,466.314 291.749,466.139 291.749,466.139 C 291.641,466.099 291.521,466.059 291.413,466.005 L 291.453,466.018 C 291.453,466.018 291.776,464.622 291.977,463.655 C 292.34,461.802 292.38,460.862 292.38,460.862 C 292.367,460.607 292.299,460.379 292.071,460.312 L 290.984,460.016 C 290.755,459.949 290.594,460.097 290.446,460.325 C 290.446,460.325 290.017,461.184 289.426,462.957 C 289.104,463.883 288.808,465.065 288.808,465.065 L 288.822,465.065 C 288.177,464.85 287.519,464.662 286.861,464.474 C 285.169,464.004 283.491,463.655 281.799,463.4 C 281.799,463.4 281.719,463.548 281.571,463.83 C 281.061,463.776 280.228,464.555 279.839,465.334 C 279.449,466.112 277.476,472.222 277.126,473.471 C 276.777,474.719 276.119,477.915 275.824,479.499 C 275.529,481.084 275.26,483.85 274.24,487.529 C 273.635,489.704 272.669,492.954 272.158,494.296 C 272.024,494.659 270.963,496.445 272.507,497.062 C 274.025,497.667 276.294,498.311 277.435,498.633 C 278.577,498.942 280.846,499.546 282.457,499.815 C 284.095,500.084 284.109,497.989 284.176,497.613 C 284.431,496.203 285.263,492.913 285.854,490.738 C 286.875,487.046 288.07,484.548 288.634,483.031 C 289.184,481.514 290.245,478.439 290.594,477.19z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 290.594 477.19 C 290.943,475.941 292.38,469.684 292.447,468.811 C 292.514,467.938 292.192,466.851 291.722,466.623 C 291.749,466.314 291.749,466.139 291.749,466.139 C 291.641,466.099 291.521,466.059 291.413,466.005 L 291.453,466.018 C 291.453,466.018 291.776,464.622 291.977,463.655 C 292.34,461.802 292.38,460.862 292.38,460.862 C 292.367,460.607 292.299,460.379 292.071,460.312 L 290.984,460.016 C 290.755,459.949 290.594,460.097 290.446,460.325 C 290.446,460.325 290.017,461.184 289.426,462.957 C 289.104,463.883 288.808,465.065 288.808,465.065 L 288.822,465.065 C 288.177,464.85 287.519,464.662 286.861,464.474 C 285.169,464.004 283.491,463.655 281.799,463.4 C 281.799,463.4 281.719,463.548 281.571,463.83 L 281.571,463.83 C 281.061,463.776 280.228,464.555 279.839,465.334 C 279.449,466.112 277.476,472.222 277.126,473.471 C 276.777,474.719 276.119,477.915 275.824,479.499 C 275.529,481.084 275.26,483.85 274.24,487.529 C 273.635,489.704 272.669,492.954 272.158,494.296 C 272.024,494.659 270.963,496.445 272.507,497.062 C 274.025,497.667 276.294,498.311 277.435,498.633 C 278.577,498.942 280.846,499.546 282.457,499.815 C 284.095,500.084 284.109,497.989 284.176,497.613 C 284.431,496.203 285.263,492.913 285.854,490.738 C 286.875,487.046 288.07,484.548 288.634,483.031 C 289.184,481.514 290.245,478.439 290.594,477.19"/>
<path style="fill: #b7b79d; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 288.916 477.351 C 289.265,476.102 290.702,469.845 290.769,468.986 C 290.836,468.113 290.514,467.012 290.044,466.797 C 290.07,466.488 290.07,466.314 290.07,466.314 C 289.963,466.26 289.842,466.22 289.735,466.179 L 289.762,466.193 C 289.762,466.193 290.097,464.796 290.299,463.83 C 290.661,461.963 290.688,461.023 290.688,461.023 C 290.688,460.768 290.621,460.553 290.393,460.486 L 289.305,460.191 C 289.077,460.124 288.916,460.271 288.768,460.5 C 288.768,460.5 288.338,461.359 287.748,463.118 C 287.425,464.058 287.13,465.226 287.13,465.226 L 287.143,465.24 C 286.499,465.025 285.841,464.823 285.183,464.649 C 283.491,464.179 281.799,463.816 280.121,463.561 C 280.121,463.561 280.04,463.722 279.893,463.991 C 279.382,463.951 278.55,464.716 278.16,465.495 C 277.771,466.273 275.797,472.383 275.448,473.645 C 275.099,474.894 274.441,478.076 274.146,479.661 C 273.85,481.245 273.582,484.011 272.561,487.704 C 271.957,489.879 270.99,493.115 270.48,494.471 C 270.346,494.82 269.285,496.619 270.829,497.237 C 272.346,497.828 274.616,498.486 275.757,498.795 C 276.898,499.117 279.167,499.708 280.779,499.976 C 282.417,500.245 282.43,498.163 282.497,497.788 C 282.753,496.364 283.585,493.088 284.176,490.913 C 285.196,487.22 286.391,484.709 286.955,483.192 C 287.506,481.688 288.567,478.613 288.916,477.351z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 288.916 477.351 C 289.265,476.102 290.702,469.845 290.769,468.986 C 290.836,468.113 290.514,467.012 290.044,466.797 C 290.07,466.488 290.07,466.314 290.07,466.314 C 289.963,466.26 289.842,466.22 289.735,466.179 L 289.762,466.193 C 289.762,466.193 290.097,464.796 290.299,463.83 C 290.661,461.963 290.688,461.023 290.688,461.023 C 290.688,460.768 290.621,460.553 290.393,460.486 L 289.305,460.191 C 289.077,460.124 288.916,460.271 288.768,460.5 C 288.768,460.5 288.338,461.359 287.748,463.118 C 287.425,464.058 287.13,465.226 287.13,465.226 L 287.143,465.24 C 286.499,465.025 285.841,464.823 285.183,464.649 C 283.491,464.179 281.799,463.816 280.121,463.561 C 280.121,463.561 280.04,463.722 279.893,463.991 L 279.893,463.991 C 279.382,463.951 278.55,464.716 278.16,465.495 C 277.771,466.273 275.797,472.383 275.448,473.645 C 275.099,474.894 274.441,478.076 274.146,479.661 C 273.85,481.245 273.582,484.011 272.561,487.704 C 271.957,489.879 270.99,493.115 270.48,494.471 C 270.346,494.82 269.285,496.619 270.829,497.237 C 272.346,497.828 274.616,498.486 275.757,498.795 C 276.898,499.117 279.167,499.708 280.779,499.976 C 282.417,500.245 282.43,498.163 282.497,497.788 C 282.753,496.364 283.585,493.088 284.176,490.913 C 285.196,487.22 286.391,484.709 286.955,483.192 C 287.506,481.688 288.567,478.613 288.916,477.351"/>
<path style="fill: #c9c9b6; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.8; stroke: #ecece7" fill-rule="evenodd" d="M 280.336 463.601 C 280.336,463.601 278.12,468.126 276.845,472.719 C 275.341,478.184 275.126,479.996 275.354,482.534 C 275.394,483.058 275.918,483.702 276.495,483.863 C 276.724,483.917 276.992,483.998 277.1,484.024 C 277.22,484.065 277.65,484.159 277.999,484.441 C 278.362,484.723 278.442,484.79 278.657,484.897 C 278.859,485.018 278.899,485.099 279.49,485.26 C 280.08,485.421 280.148,485.381 280.389,485.381 C 280.631,485.394 280.738,485.381 281.195,485.327 C 281.638,485.26 282.054,485.394 282.175,485.421 C 282.283,485.461 282.551,485.528 282.779,485.595 C 283.357,485.757 284.136,485.475 284.444,485.045 C 285.935,482.991 286.687,481.312 288.191,475.847 C 289.453,471.255 289.869,466.233 289.869,466.233 L 280.336,463.601z"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 283.021 482.561 C 282.632,483.998 281.141,484.83 279.718,484.441 C 278.281,484.051 277.449,482.561 277.838,481.138 C 278.241,479.701 279.718,478.868 281.141,479.258 C 282.578,479.661 283.41,481.138 283.021,482.561z"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 278.066 478.157 C 278.429,478.264 278.711,478.412 278.845,478.492 C 278.979,478.586 279.02,478.707 278.899,478.788 C 278.778,478.868 278.563,479.029 278.442,479.137 C 278.295,479.258 278.201,479.285 277.999,479.164 C 277.637,478.962 276.871,478.412 276.683,478.157 C 276.576,478.022 276.67,477.969 276.871,477.955 C 277.14,477.942 277.677,478.049 278.066,478.157z"/>
<path style="fill: #ff0000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 276.16 480.99 C 276.361,481.057 276.845,481.299 276.979,481.406 C 277.126,481.5 277.341,481.728 277.328,481.997 C 277.301,482.306 277.328,482.964 277.462,483.179 C 277.637,483.46 277.61,483.581 277.355,483.541 C 277.153,483.501 276.63,483.313 276.482,483.232 C 276.334,483.165 276.119,483.031 276.052,482.829 C 275.918,482.413 275.878,481.554 275.958,481.124 C 275.985,480.95 276.066,480.95 276.16,480.99z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 283.021 482.561 C 282.632,483.998 281.141,484.83 279.718,484.441 C 278.281,484.051 277.449,482.561 277.838,481.138 C 278.241,479.701 279.718,478.868 281.141,479.258 C 282.578,479.661 283.41,481.138 283.021,482.561"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 278.066 478.157 C 278.429,478.264 278.711,478.412 278.845,478.492 C 278.979,478.586 279.02,478.707 278.899,478.788 C 278.778,478.868 278.563,479.029 278.442,479.137 C 278.295,479.258 278.201,479.285 277.999,479.164 C 277.637,478.962 276.871,478.412 276.683,478.157 C 276.576,478.022 276.67,477.969 276.871,477.955 C 277.14,477.942 277.677,478.049 278.066,478.157"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.16 480.99 C 276.361,481.057 276.845,481.299 276.979,481.406 C 277.126,481.5 277.341,481.728 277.328,481.997 C 277.301,482.306 277.328,482.964 277.462,483.179 C 277.637,483.46 277.61,483.581 277.355,483.541 C 277.153,483.501 276.63,483.313 276.482,483.232 C 276.334,483.165 276.119,483.031 276.052,482.829 C 275.918,482.413 275.878,481.554 275.958,481.124 C 275.985,480.95 276.066,480.95 276.16,480.99"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 284.35 479.889 C 283.988,479.795 283.679,479.781 283.518,479.781 C 283.357,479.795 283.263,479.875 283.316,479.996 C 283.384,480.13 283.491,480.386 283.531,480.533 C 283.598,480.708 283.666,480.788 283.894,480.802 C 284.31,480.802 285.25,480.721 285.545,480.6 C 285.693,480.533 285.639,480.439 285.478,480.332 C 285.25,480.184 284.74,479.996 284.35,479.889z"/>
<path style="fill: #00ff00; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 284.538 483.299 C 284.337,483.246 283.786,483.219 283.612,483.232 C 283.451,483.246 283.142,483.326 283.021,483.568 C 282.887,483.85 282.524,484.4 282.296,484.521 C 282.001,484.669 281.96,484.79 282.202,484.87 C 282.39,484.951 282.941,485.058 283.102,485.072 C 283.276,485.085 283.518,485.085 283.679,484.938 C 284.028,484.656 284.485,483.93 284.646,483.528 C 284.713,483.366 284.646,483.326 284.538,483.299z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.35 479.889 C 283.988,479.795 283.679,479.781 283.518,479.781 C 283.357,479.795 283.263,479.875 283.316,479.996 C 283.384,480.13 283.491,480.386 283.531,480.533 C 283.598,480.708 283.666,480.788 283.894,480.802 C 284.31,480.802 285.25,480.721 285.545,480.6 C 285.693,480.533 285.639,480.439 285.478,480.332 C 285.25,480.184 284.74,479.996 284.35,479.889"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.538 483.299 C 284.337,483.246 283.786,483.219 283.612,483.232 C 283.451,483.246 283.142,483.326 283.021,483.568 C 282.887,483.85 282.524,484.4 282.296,484.521 C 282.001,484.669 281.96,484.79 282.202,484.87 C 282.39,484.951 282.941,485.058 283.102,485.072 C 283.276,485.085 283.518,485.085 283.679,484.938 C 284.028,484.656 284.485,483.93 284.646,483.528 C 284.713,483.366 284.646,483.326 284.538,483.299"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.095 467.791 L 284.981,464.582"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.391 467.871 L 285.277,464.662"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 290.688 460.889 C 290.688,460.889 290.178,460.741 289.748,460.634 C 289.372,460.527 288.835,460.379 288.835,460.379"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 288.916 477.351 C 289.265,476.102 290.702,469.845 290.769,468.986 C 290.836,468.113 290.514,467.012 290.044,466.797 C 290.07,466.488 290.07,466.314 290.07,466.314 C 289.963,466.26 289.842,466.22 289.735,466.179 L 289.762,466.193 C 289.762,466.193 290.097,464.796 290.299,463.83 C 290.661,461.963 290.688,461.023 290.688,461.023 C 290.688,460.768 290.621,460.553 290.393,460.486 L 289.305,460.191 C 289.077,460.124 288.916,460.271 288.768,460.5 C 288.768,460.5 288.338,461.359 287.748,463.118 C 287.425,464.058 287.13,465.226 287.13,465.226 L 287.143,465.24 C 286.499,465.025 285.841,464.823 285.183,464.649 C 283.491,464.179 281.799,463.816 280.121,463.561 C 280.121,463.561 280.04,463.722 279.893,463.991 L 279.893,463.991 C 279.382,463.951 278.55,464.716 278.16,465.495 C 277.771,466.273 275.797,472.383 275.448,473.645 C 275.099,474.894 274.441,478.076 274.146,479.661 C 273.85,481.245 273.582,484.011 272.561,487.704 C 271.957,489.879 270.99,493.115 270.48,494.471 C 270.346,494.82 269.285,496.619 270.829,497.237 C 272.346,497.828 274.616,498.486 275.757,498.795 C 276.898,499.117 279.167,499.708 280.779,499.976 C 282.417,500.245 282.43,498.163 282.497,497.788 C 282.753,496.364 283.585,493.088 284.176,490.913 C 285.196,487.22 286.391,484.709 286.955,483.192 C 287.506,481.688 288.567,478.613 288.916,477.351"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 277.1 486.133 C 276.925,486.764 276.267,487.14 275.623,486.965 C 274.978,486.79 274.602,486.133 274.777,485.488 C 274.965,484.844 275.623,484.468 276.267,484.642 C 276.912,484.817 277.288,485.488 277.1,486.133z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 280.148 487.408 C 279.973,488.053 279.302,488.429 278.657,488.254 C 278.026,488.08 277.65,487.408 277.825,486.777 C 277.999,486.133 278.657,485.757 279.302,485.931 C 279.946,486.106 280.322,486.777 280.148,487.408z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 283.424 487.878 C 283.249,488.509 282.578,488.885 281.933,488.711 C 281.302,488.536 280.926,487.878 281.101,487.234 C 281.276,486.589 281.933,486.213 282.578,486.388 C 283.223,486.562 283.598,487.234 283.424,487.878z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 276.375 488.778 C 276.2,489.422 275.529,489.798 274.898,489.61 C 274.253,489.436 273.877,488.778 274.052,488.133 C 274.226,487.489 274.898,487.113 275.529,487.287 C 276.173,487.475 276.549,488.133 276.375,488.778z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 279.409 490.067 C 279.235,490.711 278.577,491.087 277.932,490.899 C 277.288,490.725 276.912,490.067 277.086,489.422 C 277.274,488.778 277.932,488.402 278.577,488.576 C 279.208,488.764 279.597,489.422 279.409,490.067z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 282.699 490.523 C 282.511,491.154 281.853,491.544 281.208,491.356 C 280.564,491.181 280.188,490.523 280.362,489.879 C 280.55,489.234 281.208,488.858 281.853,489.033 C 282.497,489.221 282.873,489.879 282.699,490.523z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 275.649 491.423 C 275.475,492.067 274.804,492.443 274.159,492.269 C 273.528,492.094 273.139,491.423 273.327,490.778 C 273.501,490.147 274.159,489.758 274.804,489.946 C 275.448,490.12 275.824,490.778 275.649,491.423z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 278.684 492.712 C 278.509,493.356 277.838,493.732 277.207,493.558 C 276.563,493.383 276.187,492.712 276.361,492.067 C 276.536,491.423 277.207,491.06 277.838,491.235 C 278.483,491.409 278.859,492.067 278.684,492.712z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 281.96 493.168 C 281.786,493.813 281.114,494.189 280.483,494.001 C 279.839,493.826 279.463,493.168 279.637,492.524 C 279.812,491.879 280.483,491.503 281.114,491.691 C 281.759,491.866 282.135,492.524 281.96,493.168z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 274.911 494.068 C 274.736,494.713 274.065,495.089 273.434,494.914 C 272.789,494.739 272.413,494.082 272.588,493.437 C 272.763,492.793 273.434,492.417 274.065,492.591 C 274.71,492.766 275.086,493.437 274.911,494.082 L 274.911,494.068z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 277.959 495.357 C 277.771,496.002 277.113,496.378 276.469,496.203 C 275.824,496.029 275.448,495.357 275.636,494.726 C 275.811,494.082 276.469,493.706 277.113,493.88 C 277.758,494.055 278.134,494.726 277.959,495.357z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 281.235 495.814 C 281.047,496.458 280.389,496.834 279.745,496.66 C 279.1,496.485 278.724,495.814 278.912,495.169 C 279.087,494.538 279.745,494.162 280.389,494.337 C 281.034,494.511 281.41,495.169 281.235,495.814z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.428 497.156 C 276.415,497.21 276.307,497.237 276.187,497.21 C 276.079,497.17 275.999,497.103 276.025,497.036 C 276.039,496.982 276.146,496.955 276.254,496.982 C 276.361,497.009 276.442,497.089 276.428,497.143"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.025 497.036 L 275.636,498.419"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.079 497.156 L 275.73,498.445"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.428 497.156 L 276.039,498.526"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.307 497.21 L 275.958,498.499"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 278.751 477.19 L 278.483,478.143"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 278.859 477.217 L 278.59,478.184"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.27 478.707 L 284.001,479.674"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.162 478.68 L 283.894,479.647"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 289.762 466.193 C 289.762,466.193 290.097,464.796 290.299,463.83 C 290.661,461.963 290.688,461.023 290.688,461.023 C 290.688,460.768 290.621,460.553 290.393,460.486 L 289.305,460.191 C 289.077,460.124 288.916,460.271 288.768,460.5 C 288.768,460.5 288.338,461.359 287.748,463.118 C 287.425,464.058 287.13,465.226 287.13,465.226"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 289.896 465.683 C 289.023,465.347 288.15,465.038 287.251,464.756"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 279.033 465.871 C 280.819,466.126 282.739,466.529 284.525,467.025 C 286.311,467.522 288.164,468.153 289.829,468.852"/>
<path style="fill: #b7b79d; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" fill-rule="evenodd" d="M 286.7 478.922 C 286.633,479.164 286.391,479.298 286.15,479.231 L 276.858,476.666 C 276.616,476.599 276.482,476.357 276.549,476.129 L 278.174,470.248 C 278.241,470.006 278.483,469.872 278.711,469.939 L 288.016,472.504 C 288.258,472.571 288.392,472.813 288.325,473.054 L 286.7,478.935 L 286.7,478.922z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.095 467.791 L 284.981,464.582"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.391 467.871 L 285.277,464.662"/>
</g>
<line style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="290.438" y1="479.005" x2="440.053" y2="393.475"/>
<g>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 714.565 323.746 L 714.565,310.35"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 714.565 323.53 L 714.565,314.341"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 714.954 311.638 L 714.135,311.638 L 714.135,310 L 714.954,310 L 714.954,311.638z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 714.954 311.638 L 714.135,311.638 L 714.135,310 L 714.954,310 L 714.954,311.638"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 694.709 323.746 L 694.709,310.35"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 694.709 323.53 L 694.709,314.341"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 695.098 311.638 L 694.279,311.638 L 694.279,310 L 695.098,310 L 695.098,311.638z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 695.098 311.638 L 694.279,311.638 L 694.279,310 L 695.098,310 L 695.098,311.638"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 720.119 325.447 C 720.119,328.681 713.377,331.303 705.06,331.303 C 696.742,331.303 690,328.681 690,325.447 L 690,334.025 C 690,337.26 696.742,339.882 705.06,339.882 C 713.377,339.882 720.119,337.26 720.119,334.025 L 720.119,325.447z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 720.119 325.447 C 720.119,328.681 713.377,331.303 705.06,331.303 C 696.742,331.303 690,328.681 690,325.447 L 690,334.025 C 690,337.26 696.742,339.882 705.06,339.882 C 713.377,339.882 720.119,337.26 720.119,334.025 L 720.119,325.447"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 705.06 331.303 C 713.377,331.303 720.119,328.681 720.119,325.447 C 720.119,322.212 713.377,319.59 705.06,319.59 C 696.742,319.59 690,322.212 690,325.447 C 690,328.681 696.742,331.303 705.06,331.303z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 705.06 331.303 C 713.377,331.303 720.119,328.681 720.119,325.447 C 720.119,322.212 713.377,319.59 705.06,319.59 C 696.742,319.59 690,322.212 690,325.447 C 690,328.681 696.742,331.303 705.06,331.303"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 701.621 323.157 L 702.864,325.022 L 698.163,326.108 L 699.19,325.254 L 691.923,324.012 L 693.746,322.645 L 700.758,323.832 L 701.621,323.157z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 708.237 327.68 L 707.388,325.757 L 711.629,324.91 L 710.894,325.568 L 717.962,326.776 L 716.268,328.133 L 709.24,326.813 L 708.237,327.68z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 705.918 322.138 L 710.668,320.838 L 710.724,322.874 L 709.538,322.647 L 707.218,324.57 L 705.006,324.247 L 707.399,322.367 L 705.918,322.138z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 703.882 329.434 L 699.359,330.281 L 699.19,328.19 L 700.489,328.472 L 702.979,326.345 L 705.183,326.719 L 702.525,329.037 L 703.882,329.434z"/>
</g>
<g>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 774.565 453.746 L 774.565,440.35"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 774.565 453.53 L 774.565,444.341"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 774.954 441.638 L 774.135,441.638 L 774.135,440 L 774.954,440 L 774.954,441.638z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 774.954 441.638 L 774.135,441.638 L 774.135,440 L 774.954,440 L 774.954,441.638"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 754.709 453.746 L 754.709,440.35"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 754.709 453.53 L 754.709,444.341"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 755.098 441.638 L 754.279,441.638 L 754.279,440 L 755.098,440 L 755.098,441.638z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 755.098 441.638 L 754.279,441.638 L 754.279,440 L 755.098,440 L 755.098,441.638"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 780.119 455.447 C 780.119,458.681 773.377,461.303 765.06,461.303 C 756.742,461.303 750,458.681 750,455.447 L 750,464.025 C 750,467.26 756.742,469.882 765.06,469.882 C 773.377,469.882 780.119,467.26 780.119,464.025 L 780.119,455.447z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 780.119 455.447 C 780.119,458.681 773.377,461.303 765.06,461.303 C 756.742,461.303 750,458.681 750,455.447 L 750,464.025 C 750,467.26 756.742,469.882 765.06,469.882 C 773.377,469.882 780.119,467.26 780.119,464.025 L 780.119,455.447"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 765.06 461.303 C 773.377,461.303 780.119,458.681 780.119,455.447 C 780.119,452.212 773.377,449.59 765.06,449.59 C 756.742,449.59 750,452.212 750,455.447 C 750,458.681 756.742,461.303 765.06,461.303z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 765.06 461.303 C 773.377,461.303 780.119,458.681 780.119,455.447 C 780.119,452.212 773.377,449.59 765.06,449.59 C 756.742,449.59 750,452.212 750,455.447 C 750,458.681 756.742,461.303 765.06,461.303"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 761.621 453.157 L 762.864,455.022 L 758.163,456.108 L 759.19,455.254 L 751.923,454.012 L 753.746,452.645 L 760.758,453.832 L 761.621,453.157z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 768.237 457.68 L 767.388,455.757 L 771.629,454.91 L 770.894,455.568 L 777.962,456.776 L 776.268,458.133 L 769.24,456.813 L 768.237,457.68z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 765.918 452.138 L 770.668,450.838 L 770.724,452.874 L 769.538,452.647 L 767.218,454.57 L 765.006,454.247 L 767.399,452.367 L 765.918,452.138z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 763.882 459.434 L 759.359,460.281 L 759.19,458.19 L 760.489,458.472 L 762.979,456.345 L 765.183,456.719 L 762.525,459.037 L 763.882,459.434z"/>
</g>
<text font-size="21.4489" style="fill: #000000; fill-opacity: 1; stroke: none;text-anchor:start;font-family:sans-serif;font-style:italic;font-weight:normal" x="270" y="430">
<tspan x="270" y="430">Clients</tspan>
</text>
</g>
<g id="IGMP/MLD segmentation">
<line style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #ff0000" x1="490" y1="290" x2="490" y2="510"/>
<text font-size="18.0622" style="fill: #ff0000; fill-opacity: 1; stroke: none;text-anchor:start;font-family:sans-serif;font-style:italic;font-weight:normal" x="500" y="420">
<tspan x="500" y="420">IGMP + MLD</tspan>
<tspan x="500" y="442.578">Firewall</tspan>
</text>
<text font-size="12.7998" style="fill: #000000; fill-opacity: 1; stroke: none;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="440" y="420">
<tspan x="440" y="420">Query</tspan>
</text>
<text font-size="12.7998" style="fill: #000000; fill-opacity: 1; stroke: none;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="310" y="490">
<tspan x="310" y="490">Report</tspan>
</text>
<g>
<line style="fill: none; stroke-opacity: 1; stroke-width: 3; stroke: #800080" x1="435" y1="415" x2="386.5" y2="415"/>
<polygon style="fill: #800080; fill-opacity: 1; stroke-opacity: 1; stroke-width: 3; stroke: #800080" fill-rule="evenodd" points="386.5,410 376.5,415 386.5,420 "/>
</g>
<g>
<line style="fill: none; stroke-opacity: 1; stroke-width: 3; stroke: #800080" x1="357" y1="485.5" x2="405.5" y2="485.5"/>
<polygon style="fill: #800080; fill-opacity: 1; stroke-opacity: 1; stroke-width: 3; stroke: #800080" fill-rule="evenodd" points="405.5,490.5 415.5,485.5 405.5,480.5 "/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 100 KiB

View File

@ -0,0 +1,232 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/PR-SVG-20010719/DTD/svg10.dtd">
<svg width="29cm" height="12cm" viewBox="219 289 572 223" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="Background">
<g>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 713.614 347.58 L 713.54,345.719 L 713.283,343.858 L 712.804,342.03 L 712.142,340.201 L 711.258,338.34 L 710.264,336.545 L 709.013,334.781 L 707.614,333.051 L 706.104,331.321 L 704.337,329.688 L 702.46,328.056 L 700.398,326.521 L 698.153,324.986 L 695.797,323.55 L 693.294,322.146 L 690.606,320.84 L 687.845,319.566 L 684.974,318.391 L 681.955,317.281 L 678.826,316.269 L 675.587,315.289 L 672.237,314.473 L 668.887,313.657 L 665.39,312.971 L 661.819,312.351 L 658.248,311.828 L 654.604,311.404 L 650.922,311.11 L 647.204,310.849 L 643.45,310.718 L 639.695,310.653 L 639.695,310.653 L 635.977,310.718 L 632.185,310.849 L 628.504,311.11 L 624.822,311.404 L 621.141,311.828 L 617.57,312.351 L 614,312.971 L 610.539,313.657 L 607.116,314.473 L 603.839,315.289 L 600.6,316.269 L 597.508,317.281 L 594.452,318.391 L 591.581,319.566 L 588.783,320.84 L 586.096,322.146 L 583.592,323.55 L 581.236,324.986 L 578.991,326.521 L 576.929,328.056 L 575.052,329.688 L 573.322,331.321 L 571.739,333.051 L 570.414,334.781 L 569.162,336.545 L 568.131,338.34 L 567.248,340.201 L 566.659,342.03 L 566.18,343.858 L 565.849,345.719 L 565.812,347.58 L 565.812,347.58 L 565.849,349.474 L 566.18,351.335 L 566.659,353.196 L 567.248,355.024 L 568.131,356.853 L 569.162,358.649 L 570.414,360.412 L 571.739,362.175 L 573.322,363.873 L 575.052,365.505 L 576.929,367.138 L 578.991,368.705 L 581.236,370.207 L 583.592,371.643 L 586.096,373.047 L 588.783,374.386 L 591.581,375.594 L 594.452,376.835 L 597.508,377.945 L 600.6,378.957 L 603.839,379.871 L 607.116,380.753 L 610.539,381.536 L 614,382.222 L 617.57,382.842 L 621.141,383.365 L 624.822,383.757 L 628.504,384.083 L 632.185,384.377 L 635.977,384.475 L 639.695,384.508 L 639.695,384.508 L 643.45,384.475 L 647.204,384.377 L 650.922,384.083 L 654.604,383.757 L 658.248,383.365 L 661.819,382.842 L 665.39,382.222 L 668.887,381.536 L 672.237,380.753 L 675.587,379.871 L 678.826,378.957 L 681.955,377.945 L 684.974,376.835 L 687.845,375.594 L 690.606,374.386 L 693.294,373.047 L 695.797,371.643 L 698.153,370.207 L 700.398,368.705 L 702.46,367.138 L 704.337,365.505 L 706.104,363.873 L 707.614,362.175 L 709.013,360.412 L 710.264,358.649 L 711.258,356.853 L 712.142,355.024 L 712.804,353.196 L 713.283,351.335 L 713.54,349.474 L 713.614,347.58z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 597.765 366.974 L 597.692,365.113 L 597.434,363.252 L 597.139,361.424 L 596.624,359.563 L 595.961,357.734 L 595.152,355.939 L 594.194,354.176 L 593.164,352.445 L 591.986,350.715 L 590.66,349.082 L 589.225,347.45 L 587.642,345.915 L 585.875,344.381 L 584.071,342.944 L 582.157,341.54 L 580.095,340.234 L 578.034,338.961 L 575.751,337.785 L 573.469,336.675 L 571.039,335.696 L 568.61,334.683 L 566.07,333.802 L 563.419,333.051 L 560.769,332.365 L 558.045,331.745 L 555.284,331.223 L 552.486,330.798 L 549.651,330.504 L 546.854,330.243 L 543.982,330.08 L 541.111,330.047 L 541.111,330.047 L 538.239,330.08 L 535.368,330.243 L 532.497,330.504 L 529.699,330.798 L 526.864,331.223 L 524.104,331.745 L 521.416,332.365 L 518.766,333.051 L 516.152,333.802 L 513.612,334.683 L 511.109,335.696 L 508.753,336.675 L 506.397,337.785 L 504.188,338.961 L 502.09,340.234 L 500.028,341.54 L 498.114,342.944 L 496.273,344.381 L 494.543,345.915 L 492.997,347.45 L 491.524,349.082 L 490.236,350.715 L 489.021,352.445 L 487.954,354.176 L 487.033,355.939 L 486.223,357.734 L 485.561,359.563 L 485.082,361.424 L 484.714,363.252 L 484.493,365.113 L 484.42,366.974 L 484.42,366.974 L 484.493,368.868 L 484.714,370.729 L 485.082,372.59 L 485.561,374.419 L 486.223,376.247 L 487.033,378.043 L 487.954,379.806 L 489.021,381.536 L 490.236,383.267 L 491.524,384.899 L 492.997,386.532 L 494.543,388.066 L 496.273,389.601 L 498.114,391.038 L 500.028,392.442 L 502.09,393.748 L 504.188,394.988 L 506.397,396.164 L 508.753,397.339 L 511.109,398.351 L 513.612,399.265 L 516.152,400.18 L 518.766,400.931 L 521.416,401.616 L 524.104,402.237 L 526.864,402.726 L 529.699,403.151 L 532.497,403.477 L 535.368,403.771 L 538.239,403.869 L 541.111,403.902 L 541.111,403.902 L 543.982,403.869 L 546.854,403.771 L 549.651,403.477 L 552.486,403.151 L 555.284,402.726 L 558.045,402.237 L 560.769,401.616 L 563.419,400.931 L 566.07,400.18 L 568.61,399.265 L 571.039,398.351 L 573.469,397.339 L 575.751,396.164 L 578.034,394.988 L 580.095,393.748 L 582.157,392.442 L 584.071,391.038 L 585.875,389.601 L 587.642,388.066 L 589.225,386.532 L 590.66,384.899 L 591.986,383.267 L 593.164,381.536 L 594.194,379.806 L 595.152,378.043 L 595.961,376.247 L 596.624,374.419 L 597.139,372.59 L 597.434,370.729 L 597.692,368.868 L 597.765,366.974z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 526.312 404.685 L 526.275,403.151 L 526.165,401.616 L 525.907,400.082 L 525.576,398.58 L 525.097,397.143 L 524.545,395.641 L 523.956,394.172 L 523.257,392.768 L 522.447,391.364 L 521.527,390.025 L 520.533,388.752 L 519.465,387.446 L 518.324,386.205 L 517.109,384.997 L 515.784,383.887 L 514.422,382.842 L 513.023,381.765 L 511.55,380.818 L 509.968,379.904 L 508.348,379.055 L 506.691,378.304 L 504.961,377.586 L 503.231,376.965 L 501.427,376.41 L 499.586,375.888 L 497.746,375.496 L 495.868,375.104 L 493.917,374.876 L 492.003,374.68 L 490.126,374.582 L 488.175,374.517 L 488.175,374.517 L 486.223,374.582 L 484.272,374.68 L 482.358,374.876 L 480.481,375.104 L 478.566,375.496 L 476.689,375.888 L 474.885,376.41 L 473.118,376.965 L 471.314,377.586 L 469.584,378.304 L 467.928,379.055 L 466.308,379.904 L 464.762,380.818 L 463.252,381.765 L 461.854,382.842 L 460.492,383.887 L 459.203,384.997 L 457.951,386.205 L 456.81,387.446 L 455.743,388.752 L 454.749,390.025 L 453.902,391.364 L 453.092,392.768 L 452.393,394.172 L 451.73,395.641 L 451.178,397.143 L 450.773,398.58 L 450.442,400.082 L 450.147,401.616 L 450,403.151 L 450,404.685 L 450,404.685 L 450,406.155 L 450.147,407.689 L 450.442,409.191 L 450.773,410.693 L 451.178,412.227 L 451.73,413.664 L 452.393,415.101 L 453.092,416.537 L 453.902,417.941 L 454.749,419.28 L 455.743,420.586 L 456.81,421.859 L 457.951,423.1 L 459.203,424.275 L 460.492,425.385 L 461.854,426.463 L 463.252,427.54 L 464.762,428.455 L 466.308,429.369 L 467.928,430.218 L 469.584,431.001 L 471.314,431.72 L 473.118,432.34 L 474.885,432.895 L 476.689,433.385 L 478.566,433.809 L 480.481,434.168 L 482.358,434.462 L 484.272,434.625 L 486.223,434.723 L 488.175,434.789 L 488.175,434.789 L 490.126,434.723 L 492.003,434.625 L 493.917,434.462 L 495.868,434.168 L 497.746,433.809 L 499.586,433.385 L 501.427,432.895 L 503.231,432.34 L 504.961,431.72 L 506.691,431.001 L 508.348,430.218 L 509.968,429.369 L 511.55,428.455 L 513.023,427.54 L 514.422,426.463 L 515.784,425.385 L 517.109,424.275 L 518.324,423.1 L 519.465,421.859 L 520.533,420.586 L 521.527,419.28 L 522.447,417.941 L 523.257,416.537 L 523.956,415.101 L 524.545,413.664 L 525.097,412.227 L 525.576,410.693 L 525.907,409.191 L 526.165,407.689 L 526.275,406.155 L 526.312,404.685z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 587.936 433.711 L 587.9,432.046 L 587.642,430.414 L 587.237,428.748 L 586.758,427.116 L 586.096,425.516 L 585.323,423.916 L 584.329,422.349 L 583.298,420.814 L 582.046,419.378 L 580.721,417.876 L 579.212,416.439 L 577.629,415.101 L 575.935,413.762 L 574.095,412.423 L 572.144,411.215 L 570.082,410.04 L 567.91,408.962 L 565.628,407.885 L 563.309,406.938 L 560.879,405.991 L 558.339,405.175 L 555.762,404.391 L 553.112,403.706 L 550.424,403.085 L 547.663,402.563 L 544.829,402.139 L 542.031,401.747 L 539.16,401.42 L 536.288,401.224 L 533.38,401.094 L 530.435,401.061 L 530.435,401.061 L 527.527,401.094 L 524.656,401.224 L 521.711,401.42 L 518.876,401.747 L 516.005,402.139 L 513.244,402.563 L 510.483,403.085 L 507.759,403.706 L 505.108,404.391 L 502.568,405.175 L 500.028,405.991 L 497.599,406.938 L 495.243,407.885 L 492.997,408.962 L 490.825,410.04 L 488.764,411.215 L 486.812,412.423 L 484.972,413.762 L 483.242,415.101 L 481.659,416.439 L 480.149,417.876 L 478.787,419.378 L 477.609,420.814 L 476.542,422.349 L 475.548,423.916 L 474.738,425.516 L 474.149,427.116 L 473.597,428.748 L 473.229,430.414 L 473.008,432.046 L 472.934,433.711 L 472.934,433.711 L 473.008,435.344 L 473.229,437.009 L 473.597,438.641 L 474.149,440.274 L 474.738,441.874 L 475.548,443.474 L 476.542,445.073 L 477.609,446.608 L 478.787,448.077 L 480.149,449.514 L 481.659,450.95 L 483.242,452.322 L 484.972,453.693 L 486.812,454.999 L 488.764,456.207 L 490.825,457.35 L 492.997,458.46 L 495.243,459.505 L 497.599,460.484 L 500.028,461.431 L 502.568,462.247 L 505.108,463.031 L 507.759,463.684 L 510.483,464.304 L 513.244,464.827 L 516.005,465.284 L 518.876,465.708 L 521.711,466.002 L 524.656,466.198 L 527.527,466.329 L 530.435,466.329 L 530.435,466.329 L 533.38,466.329 L 536.288,466.198 L 539.16,466.002 L 542.031,465.708 L 544.829,465.284 L 547.663,464.827 L 550.424,464.304 L 553.112,463.684 L 555.762,463.031 L 558.339,462.247 L 560.879,461.431 L 563.309,460.484 L 565.628,459.505 L 567.91,458.46 L 570.082,457.35 L 572.144,456.207 L 574.095,454.999 L 575.935,453.693 L 577.629,452.322 L 579.212,450.95 L 580.721,449.514 L 582.046,448.077 L 583.298,446.608 L 584.329,445.073 L 585.323,443.474 L 586.096,441.874 L 586.758,440.274 L 587.237,438.641 L 587.642,437.009 L 587.9,435.344 L 587.936,433.711z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 725.946 450.591 L 725.799,448.6 L 725.505,446.608 L 724.916,444.682 L 724.142,442.755 L 723.185,440.829 L 722.007,438.968 L 720.608,437.139 L 718.989,435.278 L 717.148,433.483 L 715.16,431.752 L 712.915,430.087 L 710.559,428.455 L 707.982,426.855 L 705.258,425.32 L 702.276,423.851 L 699.257,422.48 L 696.018,421.141 L 692.631,419.9 L 689.171,418.757 L 685.489,417.68 L 681.771,416.668 L 677.906,415.786 L 673.967,414.937 L 669.881,414.219 L 665.795,413.566 L 661.598,413.044 L 657.401,412.587 L 653.058,412.26 L 648.824,412.032 L 644.443,411.836 L 640.1,411.836 L 640.1,411.836 L 635.756,411.836 L 631.412,412.032 L 627.105,412.26 L 622.835,412.587 L 618.564,413.044 L 614.405,413.566 L 610.282,414.219 L 606.269,414.937 L 602.256,415.786 L 598.465,416.668 L 594.673,417.68 L 591.065,418.757 L 587.568,419.9 L 584.218,421.141 L 580.979,422.48 L 577.887,423.851 L 574.978,425.32 L 572.254,426.855 L 569.641,428.455 L 567.248,430.087 L 565.039,431.752 L 563.088,433.483 L 561.247,435.278 L 559.628,437.139 L 558.229,438.968 L 557.014,440.829 L 556.057,442.755 L 555.247,444.682 L 554.695,446.608 L 554.363,448.6 L 554.253,450.591 L 554.253,450.591 L 554.363,452.485 L 554.695,454.477 L 555.247,456.403 L 556.057,458.362 L 557.014,460.288 L 558.229,462.149 L 559.628,463.978 L 561.247,465.839 L 563.088,467.635 L 565.039,469.365 L 567.248,471.03 L 569.641,472.728 L 572.254,474.263 L 574.978,475.797 L 577.887,477.234 L 580.979,478.67 L 584.218,479.976 L 587.568,481.217 L 591.065,482.36 L 594.673,483.47 L 598.465,484.417 L 602.256,485.331 L 606.269,486.147 L 610.282,486.866 L 614.405,487.551 L 618.564,488.041 L 622.835,488.498 L 627.105,488.857 L 631.412,489.086 L 635.756,489.282 L 640.1,489.282 L 640.1,489.282 L 644.443,489.282 L 648.824,489.086 L 653.058,488.857 L 657.401,488.498 L 661.598,488.041 L 665.795,487.551 L 669.881,486.866 L 673.967,486.147 L 677.906,485.331 L 681.771,484.417 L 685.489,483.47 L 689.171,482.36 L 692.631,481.217 L 696.018,479.976 L 699.257,478.67 L 702.276,477.234 L 705.258,475.797 L 707.982,474.263 L 710.559,472.728 L 712.915,471.03 L 715.16,469.365 L 717.148,467.635 L 718.989,465.839 L 720.608,463.978 L 722.007,462.149 L 723.185,460.288 L 724.142,458.362 L 724.916,456.403 L 725.505,454.477 L 725.799,452.485 L 725.946,450.591z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 773.582 361.228 L 773.545,359.791 L 773.324,358.289 L 772.919,356.82 L 772.477,355.384 L 771.815,353.98 L 771.078,352.543 L 770.158,351.139 L 769.091,349.768 L 767.949,348.462 L 766.698,347.123 L 765.262,345.85 L 763.716,344.609 L 762.096,343.466 L 760.292,342.291 L 758.452,341.213 L 756.427,340.201 L 754.366,339.157 L 752.23,338.242 L 749.948,337.393 L 747.629,336.577 L 745.273,335.826 L 742.77,335.141 L 740.23,334.52 L 737.653,333.965 L 735.002,333.475 L 732.352,333.149 L 729.628,332.757 L 726.903,332.496 L 724.106,332.333 L 721.345,332.235 L 718.547,332.169 L 718.547,332.169 L 715.712,332.235 L 712.951,332.333 L 710.154,332.496 L 707.43,332.757 L 704.742,333.149 L 702.055,333.475 L 699.441,333.965 L 696.828,334.52 L 694.288,335.141 L 691.784,335.826 L 689.392,336.577 L 687.109,337.393 L 684.827,338.242 L 682.692,339.157 L 680.63,340.201 L 678.642,341.213 L 676.765,342.291 L 674.961,343.466 L 673.341,344.609 L 671.832,345.85 L 670.359,347.123 L 669.108,348.462 L 667.967,349.768 L 666.899,351.139 L 665.979,352.543 L 665.243,353.98 L 664.617,355.384 L 664.101,356.82 L 663.77,358.289 L 663.586,359.791 L 663.476,361.228 L 663.476,361.228 L 663.586,362.697 L 663.77,364.167 L 664.101,365.603 L 664.617,367.072 L 665.243,368.509 L 665.979,369.913 L 666.899,371.317 L 667.967,372.688 L 669.108,374.059 L 670.359,375.333 L 671.832,376.574 L 673.341,377.847 L 674.961,379.022 L 676.765,380.132 L 678.642,381.243 L 680.63,382.287 L 682.692,383.267 L 684.827,384.181 L 687.109,385.095 L 689.392,385.911 L 691.784,386.63 L 694.288,387.348 L 696.828,387.936 L 699.441,388.458 L 702.055,388.981 L 704.742,389.372 L 707.43,389.699 L 710.154,389.993 L 712.951,390.123 L 715.712,390.287 L 718.547,390.287 L 718.547,390.287 L 721.345,390.287 L 724.106,390.123 L 726.903,389.993 L 729.628,389.699 L 732.352,389.372 L 735.002,388.981 L 737.653,388.458 L 740.23,387.936 L 742.77,387.348 L 745.273,386.63 L 747.629,385.911 L 749.948,385.095 L 752.23,384.181 L 754.366,383.267 L 756.427,382.287 L 758.452,381.243 L 760.292,380.132 L 762.096,379.022 L 763.716,377.847 L 765.262,376.574 L 766.698,375.333 L 767.949,374.059 L 769.091,372.688 L 770.158,371.317 L 771.078,369.913 L 771.815,368.509 L 772.477,367.072 L 772.919,365.603 L 773.324,364.167 L 773.545,362.697 L 773.582,361.228z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 789.19 398.547 L 789.08,397.078 L 788.932,395.609 L 788.564,394.172 L 788.086,392.735 L 787.423,391.266 L 786.687,389.895 L 785.803,388.458 L 784.736,387.12 L 783.595,385.748 L 782.343,384.475 L 780.907,383.169 L 779.361,381.961 L 777.778,380.818 L 775.974,379.61 L 774.134,378.565 L 772.22,377.488 L 770.158,376.508 L 767.949,375.594 L 765.777,374.712 L 763.458,373.896 L 761.102,373.145 L 758.636,372.46 L 756.133,371.872 L 753.556,371.317 L 750.905,370.827 L 748.255,370.435 L 745.567,370.109 L 742.806,369.815 L 740.082,369.684 L 737.321,369.586 L 734.56,369.521 L 734.56,369.521 L 731.763,369.586 L 729.039,369.684 L 726.278,369.815 L 723.59,370.109 L 720.903,370.435 L 718.216,370.827 L 715.602,371.317 L 713.062,371.872 L 710.522,372.46 L 708.055,373.145 L 705.699,373.896 L 703.38,374.712 L 701.135,375.594 L 699.036,376.508 L 696.975,377.488 L 694.95,378.565 L 693.11,379.61 L 691.379,380.818 L 689.796,381.961 L 688.25,383.169 L 686.851,384.475 L 685.526,385.748 L 684.385,387.12 L 683.391,388.458 L 682.471,389.895 L 681.661,391.266 L 681.072,392.735 L 680.593,394.172 L 680.225,395.609 L 680.004,397.078 L 679.968,398.547 L 679.968,398.547 L 680.004,400.016 L 680.225,401.518 L 680.593,402.955 L 681.072,404.391 L 681.661,405.828 L 682.471,407.232 L 683.391,408.669 L 684.385,410.007 L 685.526,411.313 L 686.851,412.652 L 688.25,413.893 L 689.796,415.133 L 691.379,416.309 L 693.11,417.451 L 694.95,418.562 L 696.975,419.574 L 699.036,420.586 L 701.135,421.5 L 703.38,422.349 L 705.699,423.165 L 708.055,423.916 L 710.522,424.602 L 713.062,425.222 L 715.602,425.81 L 718.216,426.3 L 720.903,426.626 L 723.59,427.018 L 726.278,427.247 L 729.039,427.442 L 731.763,427.54 L 734.56,427.573 L 734.56,427.573 L 737.321,427.54 L 740.082,427.442 L 742.806,427.247 L 745.567,427.018 L 748.255,426.626 L 750.905,426.3 L 753.556,425.81 L 756.133,425.222 L 758.636,424.602 L 761.102,423.916 L 763.458,423.165 L 765.777,422.349 L 767.949,421.5 L 770.158,420.586 L 772.22,419.574 L 774.134,418.562 L 775.974,417.451 L 777.778,416.309 L 779.361,415.133 L 780.907,413.893 L 782.343,412.652 L 783.595,411.313 L 784.736,410.007 L 785.803,408.669 L 786.687,407.232 L 787.423,405.828 L 788.086,404.391 L 788.564,402.955 L 788.932,401.518 L 789.08,400.016 L 789.19,398.547z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 778.515 429.401 L 778.441,427.018 L 778.22,424.569 L 777.926,422.218 L 777.447,419.802 L 776.821,417.451 L 776.048,415.133 L 775.165,412.848 L 774.097,410.595 L 772.956,408.407 L 771.741,406.252 L 770.342,404.163 L 768.796,402.171 L 767.176,400.212 L 765.409,398.351 L 763.569,396.555 L 761.654,394.825 L 759.593,393.192 L 757.495,391.723 L 755.249,390.287 L 752.967,388.981 L 750.611,387.74 L 748.218,386.63 L 745.715,385.585 L 743.175,384.671 L 740.524,383.887 L 737.91,383.267 L 735.186,382.679 L 732.499,382.255 L 729.812,381.961 L 727.087,381.765 L 724.327,381.732 L 724.327,381.732 L 721.566,381.765 L 718.841,381.961 L 716.081,382.255 L 713.393,382.679 L 710.743,383.267 L 708.055,383.887 L 705.479,384.671 L 702.939,385.585 L 700.435,386.63 L 697.969,387.74 L 695.613,388.981 L 693.33,390.287 L 691.159,391.723 L 688.987,393.192 L 686.962,394.825 L 685.011,396.555 L 683.17,398.351 L 681.44,400.212 L 679.783,402.171 L 678.311,404.163 L 676.912,406.252 L 675.624,408.407 L 674.482,410.595 L 673.489,412.848 L 672.605,415.133 L 671.832,417.451 L 671.206,419.802 L 670.728,422.218 L 670.359,424.569 L 670.139,427.018 L 670.065,429.401 L 670.065,429.401 L 670.139,431.818 L 670.359,434.266 L 670.728,436.617 L 671.206,439.001 L 671.832,441.417 L 672.605,443.702 L 673.489,445.955 L 674.482,448.241 L 675.624,450.395 L 676.912,452.55 L 678.311,454.673 L 679.783,456.664 L 681.44,458.591 L 683.17,460.484 L 685.011,462.28 L 686.962,463.978 L 688.987,465.61 L 691.159,467.145 L 693.33,468.549 L 695.613,469.888 L 697.969,471.096 L 700.435,472.238 L 702.939,473.25 L 705.479,474.165 L 708.055,474.916 L 710.743,475.601 L 713.393,476.124 L 716.081,476.548 L 718.841,476.842 L 721.566,477.038 L 724.327,477.136 L 724.327,477.136 L 727.087,477.038 L 729.812,476.842 L 732.499,476.548 L 735.186,476.124 L 737.91,475.601 L 740.524,474.916 L 743.175,474.165 L 745.715,473.25 L 748.218,472.238 L 750.611,471.096 L 752.967,469.888 L 755.249,468.549 L 757.495,467.145 L 759.593,465.61 L 761.654,463.978 L 763.569,462.28 L 765.409,460.484 L 767.176,458.591 L 768.796,456.664 L 770.342,454.673 L 771.741,452.55 L 772.956,450.395 L 774.097,448.241 L 775.165,445.955 L 776.048,443.702 L 776.821,441.417 L 777.447,439.001 L 777.926,436.617 L 778.22,434.266 L 778.441,431.818 L 778.515,429.401z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 731.689 400.702 L 731.542,398.253 L 731.1,395.902 L 730.401,393.454 L 729.443,391.103 L 728.192,388.752 L 726.646,386.401 L 724.842,384.116 L 722.744,381.863 L 720.461,379.675 L 717.884,377.553 L 715.013,375.431 L 711.958,373.406 L 708.644,371.513 L 705.11,369.619 L 701.356,367.791 L 697.453,366.093 L 693.294,364.493 L 688.95,362.958 L 684.495,361.522 L 679.82,360.183 L 674.998,358.975 L 670.065,357.832 L 665.022,356.82 L 659.868,355.939 L 654.567,355.188 L 649.192,354.502 L 643.781,353.98 L 638.296,353.555 L 632.774,353.196 L 627.215,353.033 L 621.583,352.968 L 621.583,352.968 L 616.024,353.033 L 610.466,353.196 L 604.944,353.555 L 599.422,353.98 L 594.01,354.502 L 588.636,355.188 L 583.372,355.939 L 578.218,356.82 L 573.101,357.832 L 568.242,358.975 L 563.419,360.183 L 558.707,361.522 L 554.216,362.958 L 549.946,364.493 L 545.749,366.093 L 541.81,367.791 L 538.129,369.619 L 534.558,371.513 L 531.245,373.406 L 528.227,375.431 L 525.355,377.553 L 522.815,379.675 L 520.496,381.863 L 518.361,384.116 L 516.594,386.401 L 515.084,388.752 L 513.759,391.103 L 512.802,393.454 L 512.103,395.902 L 511.661,398.253 L 511.55,400.702 L 511.55,400.702 L 511.661,403.085 L 512.103,405.502 L 512.802,407.885 L 513.759,410.301 L 515.084,412.652 L 516.594,414.97 L 518.361,417.223 L 520.496,419.508 L 522.815,421.729 L 525.355,423.851 L 528.227,425.908 L 531.245,427.932 L 534.558,429.891 L 538.129,431.752 L 541.81,433.548 L 545.749,435.278 L 549.946,436.911 L 554.216,438.445 L 558.707,439.882 L 563.419,441.155 L 568.242,442.429 L 573.101,443.506 L 578.218,444.518 L 583.372,445.433 L 588.636,446.216 L 594.01,446.869 L 599.422,447.424 L 604.944,447.849 L 610.466,448.143 L 616.024,448.371 L 621.583,448.404 L 621.583,448.404 L 627.215,448.371 L 632.774,448.143 L 638.296,447.849 L 643.781,447.424 L 649.192,446.869 L 654.567,446.216 L 659.868,445.433 L 665.022,444.518 L 670.065,443.506 L 674.998,442.429 L 679.82,441.155 L 684.495,439.882 L 688.95,438.445 L 693.294,436.911 L 697.453,435.278 L 701.356,433.548 L 705.11,431.752 L 708.644,429.891 L 711.958,427.932 L 715.013,425.908 L 717.884,423.851 L 720.461,421.729 L 722.744,419.508 L 724.842,417.223 L 726.646,414.97 L 728.192,412.652 L 729.443,410.301 L 730.401,407.885 L 731.1,405.502 L 731.542,403.085 L 731.689,400.702z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 640.541 347.254 L 713.393,339.026 L 712.473,337.23 L 711.332,335.402 L 710.08,333.606 L 708.571,331.876 L 706.951,330.21 L 705.11,328.513 L 703.196,326.913 L 700.987,325.378 L 698.742,323.876 L 696.312,322.44 L 693.699,321.068 L 690.974,319.795 L 688.103,318.554 L 685.121,317.346 L 682.029,316.269 L 678.826,315.289 L 675.587,314.31 L 672.163,313.494 L 668.703,312.743 L 665.206,312.057 L 661.561,311.469 L 657.917,311.012 L 654.236,310.588 L 650.518,310.294 L 646.763,310.098 L 642.971,310 L 639.216,310 L 635.424,310.098 L 631.633,310.229 L 627.951,310.49 L 624.233,310.914 L 620.552,311.339 L 616.908,311.926 L 613.337,312.547 L 609.877,313.265 L 606.49,314.081 L 603.14,314.995 L 599.9,315.942 L 596.845,317.02 L 593.826,318.163 L 590.918,319.371 L 588.157,320.644 L 585.544,322.015 L 583.077,323.452 L 580.721,324.921 L 578.512,326.456 L 576.451,328.056 L 574.573,329.688 L 572.954,331.418 L 571.371,333.084 L 570.009,334.879 L 568.867,336.642 L 567.91,338.471 L 567.1,340.299 L 640.541,347.254z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 713.393 338.961 L 712.436,337.132 L 711.332,335.336 L 710.043,333.541 L 708.571,331.843 L 706.877,330.145 L 705.074,328.48 L 703.123,326.88 L 700.914,325.346 L 698.631,323.876 L 696.275,322.44 L 693.625,321.003 L 690.974,319.73 L 688.066,318.489 L 685.084,317.346 L 682.029,316.204 L 678.826,315.224 L 675.55,314.31 L 672.126,313.461 L 668.666,312.743 L 665.206,312.057 L 661.561,311.469 L 657.88,311.012 L 654.199,310.588 L 650.481,310.294 L 646.763,310.098 L 642.934,310 L 639.179,310 L 635.424,310.098 L 631.67,310.229 L 627.915,310.49 L 624.233,310.914 L 620.552,311.306 L 616.945,311.861 L 613.411,312.547 L 609.877,313.265 L 606.527,314.081 L 603.177,314.995 L 599.974,315.942 L 596.845,316.987 L 593.863,318.163 L 590.955,319.371 L 588.194,320.611 L 585.58,321.983 L 583.077,323.387 L 580.721,324.888 L 578.512,326.423 L 576.524,327.99 L 574.61,329.688 L 572.954,331.321 L 571.408,333.051 L 570.082,334.781 L 568.867,336.577 L 567.91,338.406 L 567.137,340.234"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 541.479 366.615 L 578.218,338.046 L 575.935,336.871 L 573.543,335.761 L 571.113,334.781 L 568.61,333.802 L 566.07,332.953 L 563.419,332.169 L 560.695,331.516 L 558.008,330.896 L 555.173,330.406 L 552.375,329.982 L 549.504,329.688 L 546.633,329.459 L 543.761,329.329 L 540.89,329.329 L 537.982,329.394 L 535.11,329.59 L 532.239,329.819 L 529.405,330.178 L 526.607,330.635 L 523.846,331.157 L 521.085,331.778 L 518.434,332.496 L 515.784,333.312 L 513.244,334.194 L 510.777,335.173 L 508.421,336.251 L 506.065,337.393 L 503.857,338.569 L 501.758,339.875 L 499.697,341.213 L 497.783,342.65 L 496.016,344.087 L 494.322,345.654 L 492.776,347.221 L 491.304,348.854 L 490.015,350.551 L 488.8,352.282 L 487.77,354.012 L 486.849,355.808 L 486.113,357.636 L 485.524,359.465 L 485.009,361.359 L 484.641,363.252 L 484.493,365.113 L 484.42,366.974 L 484.53,368.868 L 484.751,370.794 L 485.193,372.623 L 541.479,366.615z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 578.034 337.948 L 575.751,336.773 L 573.432,335.696 L 571.003,334.683 L 568.463,333.769 L 565.849,332.888 L 563.235,332.137 L 560.548,331.451 L 557.787,330.863 L 555.026,330.406 L 552.155,329.982 L 549.32,329.688 L 546.485,329.459 L 543.614,329.329 L 540.669,329.329 L 537.871,329.394 L 535,329.59 L 532.055,329.819 L 529.257,330.21 L 526.496,330.635 L 523.662,331.223 L 520.974,331.81 L 518.324,332.561 L 515.71,333.377 L 513.133,334.259 L 510.667,335.239 L 508.311,336.316 L 506.029,337.426 L 503.82,338.667 L 501.648,339.907 L 499.697,341.311 L 497.746,342.683 L 495.942,344.185 L 494.285,345.687 L 492.702,347.254 L 491.304,348.919 L 490.015,350.617 L 488.8,352.347 L 487.733,354.078 L 486.849,355.906 L 486.113,357.669 L 485.45,359.53 L 485.009,361.424 L 484.641,363.285 L 484.493,365.146 L 484.42,367.04 L 484.604,368.901 L 484.825,370.794 L 485.193,372.688"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 531.245 433.352 L 472.124,432.34 L 472.124,434.07 L 472.235,435.703 L 472.529,437.433 L 473.008,439.066 L 473.56,440.731 L 474.259,442.429 L 475.18,443.996 L 476.137,445.596 L 477.352,447.163 L 478.64,448.665 L 480.002,450.2 L 481.622,451.636 L 483.242,453.04 L 485.082,454.379 L 486.96,455.685 L 488.984,456.925 L 491.156,458.068 L 493.365,459.178 L 495.684,460.288 L 498.114,461.235 L 500.617,462.149 L 503.231,463.031 L 505.881,463.749 L 508.532,464.468 L 511.33,465.088 L 514.164,465.61 L 517.036,466.035 L 519.944,466.427 L 522.852,466.72 L 525.797,466.916 L 528.779,467.014 L 531.797,467.014 L 534.706,466.949 L 537.687,466.818 L 540.632,466.623 L 543.54,466.329 L 546.485,465.904 L 549.283,465.414 L 552.155,464.892 L 554.842,464.206 L 557.566,463.553 L 560.217,462.737 L 562.72,461.856 L 565.26,460.909 L 567.579,459.897 L 569.898,458.852 L 531.245,433.352z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 472.198 432.34 L 472.087,434.005 L 472.308,435.703 L 472.529,437.368 L 473.008,439.066 L 473.56,440.698 L 474.296,442.364 L 475.18,443.996 L 476.21,445.596 L 477.352,447.13 L 478.566,448.665 L 480.002,450.134 L 481.511,451.603 L 483.242,452.975 L 485.009,454.379 L 486.923,455.619 L 488.911,456.86 L 491.046,458.068 L 493.255,459.178 L 495.574,460.223 L 498.003,461.203 L 500.507,462.117 L 503.047,462.966 L 505.697,463.749 L 508.458,464.468 L 511.182,465.023 L 513.98,465.545 L 516.851,466.035 L 519.796,466.361 L 522.705,466.72 L 525.613,466.851 L 528.595,467.014 L 531.576,467.014 L 534.521,467.014 L 537.466,466.851 L 540.411,466.623 L 543.32,466.329 L 546.265,465.937 L 549.062,465.48 L 551.934,464.925 L 554.658,464.272 L 557.308,463.553 L 559.959,462.77 L 562.499,461.921 L 565.039,461.007 L 567.432,459.995 L 569.677,458.95"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 719.357 360.542 L 771.373,369.978 L 772.256,368.574 L 772.919,367.17 L 773.545,365.734 L 773.913,364.264 L 774.281,362.795 L 774.355,361.326 L 774.355,359.824 L 774.281,358.387 L 773.987,356.918 L 773.582,355.449 L 772.993,354.012 L 772.293,352.576 L 771.483,351.204 L 770.526,349.8 L 769.422,348.462 L 768.17,347.123 L 766.771,345.817 L 765.336,344.576 L 763.753,343.368 L 762.059,342.226 L 760.256,341.05 L 758.268,340.005 L 756.28,338.993 L 754.108,338.046 L 751.936,337.132 L 749.654,336.316 L 747.298,335.5 L 744.831,334.781 L 742.328,334.128 L 739.751,333.541 L 737.1,333.051 L 734.487,332.627 L 731.726,332.235 L 729.002,331.941 L 726.241,331.712 L 723.443,331.614 L 720.682,331.516 L 717.921,331.516 L 715.123,331.614 L 712.326,331.745 L 709.602,331.974 L 706.841,332.267 L 704.117,332.627 L 701.429,333.084 L 719.357,360.542z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 766.587 375.3 L 771.336,370.044 L 772.22,368.672 L 772.919,367.236 L 773.471,365.799 L 773.913,364.33 L 774.207,362.861 L 774.318,361.424 L 774.355,359.889 L 774.244,358.453 L 773.987,356.983 L 773.582,355.514 L 772.993,354.078 L 772.293,352.641 L 771.52,351.237 L 770.563,349.898 L 769.422,348.494 L 768.17,347.156 L 766.882,345.85 L 765.372,344.609 L 763.79,343.401 L 762.096,342.226 L 760.292,341.116 L 758.378,340.071 L 756.353,339.026 L 754.255,338.046 L 752.01,337.165 L 749.727,336.316 L 747.371,335.532 L 744.905,334.879 L 742.401,334.194 L 739.861,333.573 L 737.248,333.051 L 734.56,332.627 L 731.91,332.235 L 729.186,331.941 L 726.425,331.745 L 723.627,331.614 L 720.829,331.516 L 717.995,331.516 L 715.234,331.614 L 712.436,331.745 L 709.675,331.941 L 706.951,332.235 L 704.264,332.594 L 701.576,333.051"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 726.756 398.906 L 785.325,410.856 L 786.503,409.289 L 787.46,407.754 L 788.343,406.122 L 789.043,404.489 L 789.521,402.857 L 789.853,401.224 L 789.963,399.527 L 789.963,397.861 L 789.742,396.196 L 789.411,394.564 L 788.822,392.899 L 788.123,391.299 L 787.202,389.699 L 786.208,388.099 L 784.957,386.564 L 783.558,385.095 L 782.049,383.593 L 780.318,382.124 L 778.478,380.753 L 726.756,398.906z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 777.889 416.276 L 785.251,410.921 L 786.356,409.387 L 787.46,407.754 L 788.307,406.155 L 789.006,404.489 L 789.485,402.857 L 789.853,401.224 L 790,399.527 L 789.963,397.861 L 789.742,396.164 L 789.337,394.531 L 788.822,392.899 L 788.123,391.266 L 787.202,389.634 L 786.172,388.034 L 784.883,386.467 L 783.521,384.997 L 781.901,383.495 L 780.245,382.059 L 778.367,380.687 L 766.587,375.3"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 724.29 430.446 L 705.81,475.797 L 708.534,476.516 L 711.295,477.169 L 714.056,477.658 L 716.927,478.05 L 719.725,478.344 L 722.523,478.475 L 725.431,478.475 L 728.265,478.344 L 731.063,478.148 L 733.898,477.756 L 736.659,477.266 L 739.42,476.711 L 742.144,475.993 L 744.831,475.112 L 747.408,474.165 L 749.985,473.087 L 752.488,471.912 L 754.918,470.606 L 757.274,469.267 L 759.519,467.733 L 761.654,466.133 L 763.716,464.468 L 765.704,462.672 L 767.581,460.811 L 769.275,458.884 L 770.894,456.86 L 772.44,454.803 L 773.803,452.648 L 775.017,450.493 L 776.159,448.241 L 777.116,445.922 L 777.999,443.572 L 778.699,441.221 L 779.288,438.805 L 779.656,436.421 L 779.987,433.972 L 780.061,431.524 L 780.061,429.075 L 779.913,426.626 L 779.619,424.177 L 779.177,421.761 L 778.625,419.378 L 777.889,417.027 L 724.29,430.446z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 705.957 475.83 L 708.718,476.613 L 711.442,477.234 L 714.24,477.756 L 717.038,478.083 L 719.909,478.344 L 722.707,478.475 L 725.541,478.54 L 728.376,478.344 L 731.247,478.148 L 734.045,477.756 L 736.806,477.266 L 739.567,476.646 L 742.291,475.928 L 744.942,475.079 L 747.592,474.099 L 750.132,473.055 L 752.599,471.912 L 754.991,470.606 L 757.347,469.169 L 759.593,467.667 L 761.728,466.035 L 763.79,464.37 L 765.777,462.639 L 767.618,460.746 L 769.385,458.787 L 770.931,456.827 L 772.477,454.705 L 773.839,452.55 L 775.054,450.395 L 776.159,448.143 L 777.152,445.792 L 778.036,443.474 L 778.699,441.09 L 779.288,438.707 L 779.729,436.323 L 779.987,433.874 L 780.061,431.426 L 780.061,428.977 L 779.877,426.528 L 779.619,424.079 L 779.14,421.663 L 778.515,419.28 L 777.889,416.929"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 490.162 404.685 L 487.365,373.896 L 485.303,374.059 L 483.352,374.255 L 481.291,374.582 L 479.303,374.974 L 477.352,375.431 L 475.437,376.019 L 473.56,376.574 L 471.719,377.325 L 469.879,378.043 L 468.149,378.859 L 466.455,379.773 L 464.835,380.72 L 463.252,381.732 L 461.817,382.842 L 460.381,383.952 L 459.056,385.128 L 457.804,386.369 L 456.663,387.675 L 455.522,388.981 L 454.528,390.385 L 453.681,391.821 L 452.871,393.258 L 452.098,394.694 L 451.509,396.196 L 451.031,397.731 L 450.589,399.265 L 450.258,400.833 L 450.11,402.432 L 450,403.967 L 450,405.534 L 450.11,407.069 L 450.331,408.669 L 450.663,410.203 L 451.031,411.738 L 451.583,413.272 L 452.172,414.774 L 452.908,416.243 L 453.718,417.68 L 454.638,419.084 L 455.632,420.488 L 456.773,421.761 L 457.915,423.067 L 459.203,424.308 L 460.565,425.483 L 461.964,426.626 L 463.473,427.671 L 465.056,428.683 L 466.676,429.663 L 468.406,430.544 L 470.1,431.36 L 471.94,432.111 L 490.162,404.685z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 487.365 373.896 L 485.414,374.059 L 483.389,374.255 L 481.401,374.582 L 479.487,374.941 L 477.536,375.398 L 475.621,375.888 L 473.781,376.508 L 471.977,377.161 L 470.173,377.88 L 468.517,378.696 L 466.786,379.577 L 465.204,380.492 L 463.657,381.471 L 462.185,382.549 L 460.712,383.659 L 459.424,384.769 L 458.136,386.009 L 456.994,387.25 L 455.89,388.556 L 454.933,389.895 L 454.013,391.266 L 453.129,392.637 L 452.393,394.074 L 451.73,395.543 L 451.178,397.045 L 450.773,398.547 L 450.368,400.082 L 450.147,401.616 L 450,403.151 L 450,404.685 L 450,406.22 L 450.221,407.754 L 450.442,409.289 L 450.773,410.824 L 451.252,412.325 L 451.73,413.795 L 452.393,415.231 L 453.203,416.733 L 454.013,418.137 L 454.933,419.476 L 455.964,420.814 L 457.031,422.12 L 458.172,423.361 L 459.424,424.569 L 460.786,425.712 L 462.222,426.822 L 463.694,427.867 L 465.277,428.846 L 466.823,429.793 L 468.517,430.642 L 470.247,431.426 L 472.014,432.177"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 639.29 454.118 L 555.505,457.676 L 556.057,459.472 L 556.756,461.301 L 557.713,463.064 L 558.928,464.794 L 560.217,466.459 L 561.799,468.157 L 563.53,469.79 L 565.481,471.422 L 567.653,472.957 L 569.972,474.491 L 572.401,475.928 L 575.089,477.332 L 577.887,478.67 L 580.868,479.976 L 583.997,481.152 L 587.237,482.327 L 590.697,483.372 L 594.158,484.417 L 597.802,485.331 L 601.52,486.213 L 605.422,486.931 L 609.324,487.649 L 613.263,488.237 L 617.386,488.759 L 621.509,489.184 L 625.669,489.51 L 629.792,489.771 L 634.026,489.902 L 638.296,490 L 642.492,490 L 646.763,489.869 L 650.959,489.673 L 655.119,489.38 L 659.242,488.955 L 663.365,488.498 L 667.341,487.943 L 671.317,487.257 L 675.182,486.604 L 679.01,485.788 L 682.692,484.874 L 686.226,483.894 L 689.686,482.85 L 693.036,481.707 L 696.239,480.531 L 699.294,479.291 L 702.129,477.985 L 704.89,476.613 L 707.43,475.177 L 709.859,473.675 L 712.105,472.14 L 714.093,470.606 L 715.933,468.973 L 717.627,467.276 L 719.062,465.61 L 639.29,454.118z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 555.578 457.742 L 556.057,459.505 L 556.793,461.301 L 557.713,463.064 L 558.928,464.794 L 560.29,466.525 L 561.799,468.157 L 563.566,469.79 L 565.481,471.422 L 567.653,472.957 L 569.972,474.491 L 572.401,475.928 L 575.089,477.332 L 577.96,478.67 L 580.868,479.976 L 583.997,481.152 L 587.237,482.327 L 590.697,483.372 L 594.158,484.384 L 597.802,485.331 L 601.52,486.213 L 605.349,486.931 L 609.251,487.649 L 613.227,488.237 L 617.35,488.759 L 621.436,489.184 L 625.595,489.478 L 629.755,489.771 L 633.952,489.902 L 638.185,490 L 642.419,489.967 L 646.615,489.869 L 650.812,489.608 L 655.045,489.38 L 659.168,488.955 L 663.218,488.465 L 667.267,487.943 L 671.206,487.323 L 675.071,486.604 L 678.863,485.788 L 682.508,484.874 L 686.115,483.894 L 689.576,482.882 L 692.889,481.805 L 696.091,480.597 L 699.11,479.356 L 702.055,478.05 L 704.779,476.613 L 707.356,475.21 L 709.786,473.708 L 711.958,472.238 L 714.019,470.606 L 715.86,469.006 L 717.479,467.341 L 718.989,465.643"/>
</g>
<g>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 472.883 378.401 L 472.883,360.469"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 472.883 378.111 L 472.883,365.811"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 473.404 362.192 L 472.308,362.192 L 472.308,360 L 473.404,360 L 473.404,362.192z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 473.404 362.192 L 472.308,362.192 L 472.308,360 L 473.404,360 L 473.404,362.192"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 446.304 378.401 L 446.304,360.469"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 446.304 378.111 L 446.304,365.811"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 446.824 362.192 L 445.728,362.192 L 445.728,360 L 446.824,360 L 446.824,362.192z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 446.824 362.192 L 445.728,362.192 L 445.728,360 L 446.824,360 L 446.824,362.192"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 480.318 380.677 C 480.318,385.007 471.293,388.516 460.159,388.516 C 449.025,388.516 440,385.007 440,380.677 L 440,392.16 C 440,396.49 449.025,400 460.159,400 C 471.293,400 480.318,396.49 480.318,392.16 L 480.318,380.677z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 480.318 380.677 C 480.318,385.007 471.293,388.516 460.159,388.516 C 449.025,388.516 440,385.007 440,380.677 L 440,392.16 C 440,396.49 449.025,400 460.159,400 C 471.293,400 480.318,396.49 480.318,392.16 L 480.318,380.677"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 460.159 388.516 C 471.293,388.516 480.318,385.007 480.318,380.677 C 480.318,376.347 471.293,372.837 460.159,372.837 C 449.025,372.837 440,376.347 440,380.677 C 440,385.007 449.025,388.516 460.159,388.516z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 460.159 388.516 C 471.293,388.516 480.318,385.007 480.318,380.677 C 480.318,376.347 471.293,372.837 460.159,372.837 C 449.025,372.837 440,376.347 440,380.677 C 440,385.007 449.025,388.516 460.159,388.516"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 455.555 377.612 L 457.22,380.109 L 450.927,381.563 L 452.301,380.419 L 442.574,378.756 L 445.015,376.927 L 454.4,378.516 L 455.555,377.612z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 464.413 383.666 L 463.276,381.093 L 468.953,379.958 L 467.968,380.84 L 477.431,382.456 L 475.162,384.272 L 465.754,382.507 L 464.413,383.666z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 461.308 376.248 L 467.667,374.508 L 467.742,377.234 L 466.153,376.93 L 463.048,379.503 L 460.088,379.072 L 463.29,376.554 L 461.308,376.248z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 458.583 386.014 L 452.528,387.149 L 452.301,384.349 L 454.041,384.726 L 457.374,381.88 L 460.324,382.38 L 456.767,385.484 L 458.583,386.014z"/>
</g>
<text font-size="21.4489" style="fill: #000000; fill-opacity: 1; stroke: none;text-anchor:start;font-family:sans-serif;font-style:italic;font-weight:normal" x="620" y="390">
<tspan x="620" y="390">Mesh</tspan>
</text>
<g>
<path style="fill: #c9c9b6; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 294.294 324.172 L 328.289,324.172 L 313.995,338.514 L 280,338.514 L 294.294,324.172z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 294.294 324.172 L 328.289,324.172 L 313.995,338.514 L 280,338.514 L 294.294,324.172"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #dbdbce" d="M 295.599 336.092 L 295.599,336.168 L 295.613,336.23 L 295.633,336.314 L 295.661,336.397 L 295.703,336.46 L 295.751,336.536 L 295.814,336.605 L 295.876,336.668 L 295.939,336.744 L 296.022,336.821 L 296.106,336.883 L 296.196,336.939 L 296.3,336.994 L 296.397,337.057 L 296.522,337.105 L 296.633,337.168 L 296.758,337.216 L 296.897,337.265 L 297.036,337.306 L 297.168,337.348 L 297.313,337.39 L 297.459,337.431 L 297.612,337.452 L 297.779,337.48 L 297.938,337.494 L 298.105,337.522 L 298.258,337.543 L 298.431,337.563 L 298.605,337.57 L 298.771,337.577 L 298.938,337.577"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #dbdbce" d="M 298.57 337.577 L 298.737,337.577 L 298.896,337.57 L 299.056,337.556 L 299.222,337.536 L 299.389,337.522 L 299.542,337.494 L 299.695,337.48 L 299.854,337.445 L 300,337.411 L 300.153,337.369 L 300.285,337.327 L 300.423,337.286 L 300.555,337.237 L 300.68,337.188 L 300.791,337.14 L 300.909,337.084 L 301.02,337.022 L 301.118,336.966 L 301.215,336.897 L 301.298,336.827 L 301.375,336.758 L 301.437,336.696 L 301.506,336.619 L 301.562,336.543 L 301.604,336.48 L 301.652,336.404 L 301.673,336.314 L 301.694,336.237 L 301.715,336.168 L 301.722,336.092"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #dbdbce" d="M 299.306 333.308 L 299.132,333.308 L 298.966,333.315 L 298.792,333.315 L 298.639,333.329 L 298.473,333.35 L 298.306,333.363 L 298.146,333.377 L 297.98,333.412 L 297.834,333.44 L 297.688,333.461 L 297.543,333.495 L 297.397,333.537 L 297.265,333.572 L 297.14,333.613 L 297.015,333.669 L 296.876,333.711 L 296.779,333.759 L 296.668,333.801 L 296.564,333.856 L 296.48,333.919 L 296.39,333.974 L 296.314,334.023 L 296.237,334.085 L 296.182,334.148 L 296.126,334.217 L 296.071,334.28 L 296.043,334.335 L 296.008,334.405 L 295.988,334.46 L 295.981,334.537 L 295.974,334.592"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #dbdbce" d="M 302.083 334.592 L 302.083,334.53 L 302.076,334.46 L 302.048,334.398 L 302.02,334.321 L 301.985,334.266 L 301.93,334.19 L 301.874,334.134 L 301.819,334.065 L 301.736,334.016 L 301.673,333.947 L 301.59,333.891 L 301.479,333.842 L 301.388,333.773 L 301.284,333.738 L 301.173,333.683 L 301.048,333.627 L 300.916,333.586 L 300.784,333.544 L 300.653,333.509 L 300.514,333.481 L 300.368,333.447 L 300.215,333.412 L 300.069,333.391 L 299.917,333.363 L 299.764,333.35 L 299.604,333.329 L 299.438,333.315 L 299.264,333.315 L 299.098,333.308 L 298.938,333.308"/>
<path style="fill: #a5a585; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 280 340 L 313.995,340 L 313.995,338.514 L 280,338.514 L 280,340z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 280 340 L 313.995,340 L 313.995,338.514 L 280,338.514 L 280,340"/>
<path style="fill: #a5a585; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 294.294 324.172 L 328.289,324.172 L 328.289,300.916 L 294.294,300.916 L 294.294,324.172z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 294.294 324.172 L 328.289,324.172 L 328.289,300.916 L 294.294,300.916 L 294.294,324.172"/>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 329.219 323.256 L 329.219,300 L 328.289,300.916 L 328.289,324.172 L 329.219,323.256z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 329.219 323.256 L 329.219,300 L 328.289,300.916 L 328.289,324.172 L 329.219,323.256"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 295.974 322.694 L 326.623,322.694 L 326.623,302.784 L 295.974,302.784 L 295.974,322.694z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 295.974 322.694 L 326.623,322.694 L 326.623,302.784 L 295.974,302.784 L 295.974,322.694"/>
<path style="fill: #93936c; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 295.974 325.297 L 324.568,325.297 L 317.14,332.746 L 288.546,332.746 L 295.974,325.297z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 295.974 325.297 L 324.568,325.297 L 317.14,332.746 L 288.546,332.746 L 295.974,325.297"/>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 300.423 335.62 L 300.423,335.578 L 300.417,335.536 L 300.41,335.495 L 300.389,335.446 L 300.382,335.404 L 300.354,335.37 L 300.34,335.328 L 300.305,335.3 L 300.271,335.259 L 300.25,335.217 L 300.215,335.182 L 300.174,335.148 L 300.132,335.106 L 300.083,335.071 L 300.042,335.05 L 299.993,335.016 L 299.938,334.988 L 299.875,334.967 L 299.826,334.932 L 299.764,334.918 L 299.701,334.891 L 299.646,334.877 L 299.577,334.856 L 299.514,334.842 L 299.438,334.828 L 299.375,334.807 L 299.306,334.8 L 299.243,334.8 L 299.174,334.793 L 299.091,334.793 L 299.035,334.793 L 299.035,334.793 L 298.959,334.793 L 298.882,334.793 L 298.82,334.8 L 298.75,334.8 L 298.688,334.807 L 298.612,334.828 L 298.549,334.842 L 298.48,334.856 L 298.417,334.877 L 298.355,334.891 L 298.299,334.918 L 298.23,334.932 L 298.181,334.967 L 298.126,334.988 L 298.07,335.016 L 298.022,335.05 L 297.98,335.071 L 297.931,335.106 L 297.89,335.148 L 297.855,335.182 L 297.806,335.217 L 297.785,335.259 L 297.744,335.3 L 297.723,335.328 L 297.702,335.37 L 297.681,335.404 L 297.667,335.446 L 297.661,335.495 L 297.647,335.536 L 297.633,335.578 L 297.633,335.62 L 297.633,335.62 L 297.633,335.668 L 297.647,335.71 L 297.661,335.751 L 297.667,335.793 L 297.681,335.835 L 297.702,335.869 L 297.723,335.918 L 297.744,335.953 L 297.785,335.994 L 297.806,336.022 L 297.855,336.064 L 297.89,336.099 L 297.931,336.14 L 297.98,336.168 L 298.022,336.196 L 298.07,336.23 L 298.126,336.258 L 298.181,336.279 L 298.23,336.314 L 298.299,336.328 L 298.355,336.355 L 298.417,336.369 L 298.48,336.39 L 298.549,336.404 L 298.612,336.418 L 298.688,336.432 L 298.75,336.446 L 298.82,336.446 L 298.882,336.446 L 298.959,336.453 L 299.035,336.453 L 299.035,336.453 L 299.091,336.453 L 299.174,336.446 L 299.243,336.446 L 299.306,336.446 L 299.375,336.432 L 299.438,336.418 L 299.514,336.404 L 299.577,336.39 L 299.646,336.369 L 299.701,336.355 L 299.764,336.328 L 299.826,336.314 L 299.875,336.279 L 299.938,336.258 L 299.993,336.23 L 300.042,336.196 L 300.083,336.168 L 300.132,336.14 L 300.174,336.099 L 300.215,336.064 L 300.25,336.022 L 300.271,335.994 L 300.305,335.953 L 300.34,335.918 L 300.354,335.869 L 300.382,335.835 L 300.389,335.793 L 300.41,335.751 L 300.417,335.71 L 300.423,335.668 L 300.423,335.62z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #dbdbce" d="M 300.243 335.536 L 300.243,335.495 L 300.236,335.453 L 300.236,335.418 L 300.215,335.39 L 300.201,335.335 L 300.194,335.314 L 300.16,335.272 L 300.132,335.231 L 300.111,335.203 L 300.083,335.175 L 300.042,335.148 L 300.007,335.099 L 299.965,335.071 L 299.924,335.05 L 299.889,335.016 L 299.833,334.988 L 299.792,334.974 L 299.743,334.939 L 299.695,334.925 L 299.632,334.898 L 299.577,334.884 L 299.514,334.87 L 299.459,334.849 L 299.396,334.835 L 299.334,334.828 L 299.264,334.807 L 299.209,334.8 L 299.132,334.793 L 299.077,334.793 L 299.007,334.793 L 298.945,334.793 L 298.945,334.793 L 298.875,334.793 L 298.813,334.793 L 298.743,334.793 L 298.688,334.8 L 298.619,334.807 L 298.563,334.828 L 298.487,334.835 L 298.431,334.849 L 298.383,334.87 L 298.313,334.884 L 298.258,334.898 L 298.188,334.925 L 298.153,334.939 L 298.091,334.974 L 298.049,334.988 L 298.001,335.016 L 297.959,335.05 L 297.917,335.071 L 297.876,335.099 L 297.841,335.148 L 297.806,335.175 L 297.779,335.203 L 297.744,335.231 L 297.73,335.272 L 297.702,335.314 L 297.688,335.335 L 297.674,335.39 L 297.661,335.418 L 297.654,335.453 L 297.647,335.495 L 297.647,335.536 L 297.647,335.536 L 297.647,335.571 L 297.654,335.613 L 297.661,335.654 L 297.674,335.675 L 297.688,335.717 L 297.702,335.758 L 297.73,335.793 L 297.744,335.828 L 297.779,335.869 L 297.806,335.89 L 297.841,335.925 L 297.876,335.96 L 297.917,335.994 L 297.959,336.015 L 298.001,336.05 L 298.049,336.071 L 298.091,336.099 L 298.153,336.126 L 298.188,336.14 L 298.258,336.168 L 298.313,336.189 L 298.383,336.196 L 298.431,336.217 L 298.487,336.23 L 298.563,336.237 L 298.619,336.258 L 298.688,336.272 L 298.743,336.272 L 298.813,336.272 L 298.875,336.272 L 298.945,336.272 L 298.945,336.272 L 299.007,336.272 L 299.077,336.272 L 299.132,336.272 L 299.209,336.272 L 299.264,336.258 L 299.334,336.237 L 299.396,336.23 L 299.459,336.217 L 299.514,336.196 L 299.577,336.189 L 299.632,336.168 L 299.695,336.14 L 299.743,336.126 L 299.792,336.099 L 299.833,336.071 L 299.889,336.05 L 299.924,336.015 L 299.965,335.994 L 300.007,335.96 L 300.042,335.925 L 300.083,335.89 L 300.111,335.869 L 300.132,335.828 L 300.16,335.793 L 300.194,335.758 L 300.201,335.717 L 300.215,335.675 L 300.236,335.654 L 300.236,335.613 L 300.243,335.571 L 300.243,335.536"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #626248" d="M 295.793 336.272 L 295.793,336.355 L 295.807,336.418 L 295.835,336.494 L 295.856,336.578 L 295.897,336.647 L 295.939,336.709 L 296.001,336.786 L 296.064,336.862 L 296.133,336.925 L 296.203,336.994 L 296.293,337.057 L 296.376,337.126 L 296.487,337.182 L 296.591,337.237 L 296.703,337.286 L 296.821,337.348 L 296.952,337.397 L 297.07,337.445 L 297.223,337.487 L 297.362,337.529 L 297.508,337.577 L 297.654,337.612 L 297.806,337.633 L 297.959,337.661 L 298.126,337.688 L 298.285,337.702 L 298.445,337.73 L 298.612,337.744 L 298.785,337.751 L 298.952,337.751 L 299.118,337.751"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #626248" d="M 298.743 337.751 L 298.917,337.751 L 299.077,337.751 L 299.25,337.737 L 299.403,337.716 L 299.563,337.702 L 299.729,337.688 L 299.875,337.661 L 300.035,337.626 L 300.174,337.591 L 300.326,337.563 L 300.472,337.522 L 300.604,337.48 L 300.736,337.431 L 300.861,337.369 L 300.986,337.32 L 301.09,337.265 L 301.201,337.209 L 301.298,337.14 L 301.388,337.084 L 301.479,337.008 L 301.555,336.952 L 301.631,336.883 L 301.694,336.8 L 301.736,336.723 L 301.798,336.661 L 301.826,336.578 L 301.86,336.501 L 301.888,336.418 L 301.888,336.355 L 301.902,336.272"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #626248" d="M 299.486 333.488 L 299.327,333.488 L 299.16,333.495 L 298.993,333.495 L 298.827,333.509 L 298.653,333.53 L 298.487,333.537 L 298.341,333.565 L 298.174,333.586 L 298.022,333.627 L 297.876,333.641 L 297.73,333.683 L 297.591,333.711 L 297.452,333.759 L 297.327,333.801 L 297.202,333.842 L 297.07,333.884 L 296.966,333.933 L 296.855,333.981 L 296.758,334.044 L 296.668,334.099 L 296.585,334.148 L 296.501,334.217 L 296.418,334.266 L 296.369,334.321 L 296.314,334.398 L 296.265,334.453 L 296.224,334.523 L 296.196,334.578 L 296.175,334.641 L 296.168,334.717 L 296.161,334.787"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #626248" d="M 302.277 334.787 L 302.263,334.71 L 302.256,334.641 L 302.242,334.578 L 302.208,334.509 L 302.166,334.446 L 302.117,334.377 L 302.062,334.321 L 301.999,334.259 L 301.93,334.19 L 301.847,334.134 L 301.763,334.072 L 301.673,334.016 L 301.562,333.967 L 301.465,333.919 L 301.347,333.87 L 301.236,333.815 L 301.111,333.773 L 300.979,333.738 L 300.833,333.697 L 300.694,333.669 L 300.555,333.627 L 300.41,333.599 L 300.257,333.572 L 300.09,333.544 L 299.944,333.53 L 299.785,333.509 L 299.618,333.495 L 299.445,333.495 L 299.292,333.488 L 299.118,333.488"/>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 328.289 325.477 L 313.995,339.82 L 313.995,338.514 L 328.289,324.172 L 328.289,325.477z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 328.289 325.477 L 313.995,339.82 L 313.995,338.514 L 328.289,324.172 L 328.289,325.477"/>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 323.464 323.075 L 323.464,323.429 L 326.248,323.429 L 326.248,323.075 L 323.464,323.075z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 323.464 323.075 L 323.464,323.429 L 326.248,323.429 L 326.248,323.075 L 323.464,323.075"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #000000" d="M 322.7 327.157 L 294.294,327.157"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #000000" d="M 320.854 329.025 L 292.447,329.025"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #000000" d="M 319 330.885 L 290.587,330.885"/>
<path style="fill: #c9c9b6; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 295.224 300 L 329.219,300 L 328.289,300.916 L 294.294,300.916 L 295.224,300z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 295.224 300 L 329.219,300 L 328.289,300.916 L 294.294,300.916 L 295.224,300"/>
</g>
<g>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 260.594 397.19 C 260.943,395.941 262.38,389.684 262.447,388.811 C 262.514,387.938 262.192,386.851 261.722,386.623 C 261.749,386.314 261.749,386.139 261.749,386.139 C 261.641,386.099 261.521,386.059 261.413,386.005 L 261.453,386.018 C 261.453,386.018 261.776,384.622 261.977,383.655 C 262.34,381.802 262.38,380.862 262.38,380.862 C 262.367,380.607 262.299,380.379 262.071,380.312 L 260.984,380.016 C 260.755,379.949 260.594,380.097 260.446,380.325 C 260.446,380.325 260.017,381.184 259.426,382.957 C 259.104,383.883 258.808,385.065 258.808,385.065 L 258.822,385.065 C 258.177,384.85 257.519,384.662 256.861,384.474 C 255.169,384.004 253.491,383.655 251.799,383.4 C 251.799,383.4 251.719,383.548 251.571,383.83 C 251.061,383.776 250.228,384.555 249.839,385.334 C 249.449,386.112 247.476,392.222 247.126,393.471 C 246.777,394.719 246.119,397.915 245.824,399.499 C 245.529,401.084 245.26,403.85 244.24,407.529 C 243.635,409.704 242.669,412.954 242.158,414.296 C 242.024,414.659 240.963,416.445 242.507,417.062 C 244.025,417.667 246.294,418.311 247.435,418.633 C 248.577,418.942 250.846,419.546 252.457,419.815 C 254.095,420.084 254.109,417.989 254.176,417.613 C 254.431,416.203 255.263,412.913 255.854,410.738 C 256.875,407.046 258.07,404.548 258.634,403.031 C 259.184,401.514 260.245,398.439 260.594,397.19z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 260.594 397.19 C 260.943,395.941 262.38,389.684 262.447,388.811 C 262.514,387.938 262.192,386.851 261.722,386.623 C 261.749,386.314 261.749,386.139 261.749,386.139 C 261.641,386.099 261.521,386.059 261.413,386.005 L 261.453,386.018 C 261.453,386.018 261.776,384.622 261.977,383.655 C 262.34,381.802 262.38,380.862 262.38,380.862 C 262.367,380.607 262.299,380.379 262.071,380.312 L 260.984,380.016 C 260.755,379.949 260.594,380.097 260.446,380.325 C 260.446,380.325 260.017,381.184 259.426,382.957 C 259.104,383.883 258.808,385.065 258.808,385.065 L 258.822,385.065 C 258.177,384.85 257.519,384.662 256.861,384.474 C 255.169,384.004 253.491,383.655 251.799,383.4 C 251.799,383.4 251.719,383.548 251.571,383.83 L 251.571,383.83 C 251.061,383.776 250.228,384.555 249.839,385.334 C 249.449,386.112 247.476,392.222 247.126,393.471 C 246.777,394.719 246.119,397.915 245.824,399.499 C 245.529,401.084 245.26,403.85 244.24,407.529 C 243.635,409.704 242.669,412.954 242.158,414.296 C 242.024,414.659 240.963,416.445 242.507,417.062 C 244.025,417.667 246.294,418.311 247.435,418.633 C 248.577,418.942 250.846,419.546 252.457,419.815 C 254.095,420.084 254.109,417.989 254.176,417.613 C 254.431,416.203 255.263,412.913 255.854,410.738 C 256.875,407.046 258.07,404.548 258.634,403.031 C 259.184,401.514 260.245,398.439 260.594,397.19"/>
<path style="fill: #b7b79d; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 258.916 397.351 C 259.265,396.102 260.702,389.845 260.769,388.986 C 260.836,388.113 260.514,387.012 260.044,386.797 C 260.07,386.488 260.07,386.314 260.07,386.314 C 259.963,386.26 259.842,386.22 259.735,386.179 L 259.762,386.193 C 259.762,386.193 260.097,384.796 260.299,383.83 C 260.661,381.963 260.688,381.023 260.688,381.023 C 260.688,380.768 260.621,380.553 260.393,380.486 L 259.305,380.191 C 259.077,380.124 258.916,380.271 258.768,380.5 C 258.768,380.5 258.338,381.359 257.748,383.118 C 257.425,384.058 257.13,385.226 257.13,385.226 L 257.143,385.24 C 256.499,385.025 255.841,384.823 255.183,384.649 C 253.491,384.179 251.799,383.816 250.121,383.561 C 250.121,383.561 250.04,383.722 249.893,383.991 C 249.382,383.951 248.55,384.716 248.16,385.495 C 247.771,386.273 245.797,392.383 245.448,393.645 C 245.099,394.894 244.441,398.076 244.146,399.661 C 243.85,401.245 243.582,404.011 242.561,407.704 C 241.957,409.879 240.99,413.115 240.48,414.471 C 240.346,414.82 239.285,416.619 240.829,417.237 C 242.346,417.828 244.616,418.486 245.757,418.795 C 246.898,419.117 249.167,419.708 250.779,419.976 C 252.417,420.245 252.43,418.163 252.497,417.788 C 252.753,416.364 253.585,413.088 254.176,410.913 C 255.196,407.22 256.391,404.709 256.955,403.192 C 257.506,401.688 258.567,398.613 258.916,397.351z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 258.916 397.351 C 259.265,396.102 260.702,389.845 260.769,388.986 C 260.836,388.113 260.514,387.012 260.044,386.797 C 260.07,386.488 260.07,386.314 260.07,386.314 C 259.963,386.26 259.842,386.22 259.735,386.179 L 259.762,386.193 C 259.762,386.193 260.097,384.796 260.299,383.83 C 260.661,381.963 260.688,381.023 260.688,381.023 C 260.688,380.768 260.621,380.553 260.393,380.486 L 259.305,380.191 C 259.077,380.124 258.916,380.271 258.768,380.5 C 258.768,380.5 258.338,381.359 257.748,383.118 C 257.425,384.058 257.13,385.226 257.13,385.226 L 257.143,385.24 C 256.499,385.025 255.841,384.823 255.183,384.649 C 253.491,384.179 251.799,383.816 250.121,383.561 C 250.121,383.561 250.04,383.722 249.893,383.991 L 249.893,383.991 C 249.382,383.951 248.55,384.716 248.16,385.495 C 247.771,386.273 245.797,392.383 245.448,393.645 C 245.099,394.894 244.441,398.076 244.146,399.661 C 243.85,401.245 243.582,404.011 242.561,407.704 C 241.957,409.879 240.99,413.115 240.48,414.471 C 240.346,414.82 239.285,416.619 240.829,417.237 C 242.346,417.828 244.616,418.486 245.757,418.795 C 246.898,419.117 249.167,419.708 250.779,419.976 C 252.417,420.245 252.43,418.163 252.497,417.788 C 252.753,416.364 253.585,413.088 254.176,410.913 C 255.196,407.22 256.391,404.709 256.955,403.192 C 257.506,401.688 258.567,398.613 258.916,397.351"/>
<path style="fill: #c9c9b6; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.8; stroke: #ecece7" fill-rule="evenodd" d="M 250.336 383.601 C 250.336,383.601 248.12,388.126 246.845,392.719 C 245.341,398.184 245.126,399.996 245.354,402.534 C 245.394,403.058 245.918,403.702 246.495,403.863 C 246.724,403.917 246.992,403.998 247.1,404.024 C 247.22,404.065 247.65,404.159 247.999,404.441 C 248.362,404.723 248.442,404.79 248.657,404.897 C 248.859,405.018 248.899,405.099 249.49,405.26 C 250.08,405.421 250.148,405.381 250.389,405.381 C 250.631,405.394 250.738,405.381 251.195,405.327 C 251.638,405.26 252.054,405.394 252.175,405.421 C 252.283,405.461 252.551,405.528 252.779,405.595 C 253.357,405.757 254.136,405.475 254.444,405.045 C 255.935,402.991 256.687,401.312 258.191,395.847 C 259.453,391.255 259.869,386.233 259.869,386.233 L 250.336,383.601z"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 253.021 402.561 C 252.632,403.998 251.141,404.83 249.718,404.441 C 248.281,404.051 247.449,402.561 247.838,401.138 C 248.241,399.701 249.718,398.868 251.141,399.258 C 252.578,399.661 253.41,401.138 253.021,402.561z"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 248.066 398.157 C 248.429,398.264 248.711,398.412 248.845,398.492 C 248.979,398.586 249.02,398.707 248.899,398.788 C 248.778,398.868 248.563,399.029 248.442,399.137 C 248.295,399.258 248.201,399.285 247.999,399.164 C 247.637,398.962 246.871,398.412 246.683,398.157 C 246.576,398.022 246.67,397.969 246.871,397.955 C 247.14,397.942 247.677,398.049 248.066,398.157z"/>
<path style="fill: #ff0000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 246.16 400.99 C 246.361,401.057 246.845,401.299 246.979,401.406 C 247.126,401.5 247.341,401.728 247.328,401.997 C 247.301,402.306 247.328,402.964 247.462,403.179 C 247.637,403.46 247.61,403.581 247.355,403.541 C 247.153,403.501 246.63,403.313 246.482,403.232 C 246.334,403.165 246.119,403.031 246.052,402.829 C 245.918,402.413 245.878,401.554 245.958,401.124 C 245.985,400.95 246.066,400.95 246.16,400.99z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 253.021 402.561 C 252.632,403.998 251.141,404.83 249.718,404.441 C 248.281,404.051 247.449,402.561 247.838,401.138 C 248.241,399.701 249.718,398.868 251.141,399.258 C 252.578,399.661 253.41,401.138 253.021,402.561"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 248.066 398.157 C 248.429,398.264 248.711,398.412 248.845,398.492 C 248.979,398.586 249.02,398.707 248.899,398.788 C 248.778,398.868 248.563,399.029 248.442,399.137 C 248.295,399.258 248.201,399.285 247.999,399.164 C 247.637,398.962 246.871,398.412 246.683,398.157 C 246.576,398.022 246.67,397.969 246.871,397.955 C 247.14,397.942 247.677,398.049 248.066,398.157"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.16 400.99 C 246.361,401.057 246.845,401.299 246.979,401.406 C 247.126,401.5 247.341,401.728 247.328,401.997 C 247.301,402.306 247.328,402.964 247.462,403.179 C 247.637,403.46 247.61,403.581 247.355,403.541 C 247.153,403.501 246.63,403.313 246.482,403.232 C 246.334,403.165 246.119,403.031 246.052,402.829 C 245.918,402.413 245.878,401.554 245.958,401.124 C 245.985,400.95 246.066,400.95 246.16,400.99"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 254.35 399.889 C 253.988,399.795 253.679,399.781 253.518,399.781 C 253.357,399.795 253.263,399.875 253.316,399.996 C 253.384,400.13 253.491,400.386 253.531,400.533 C 253.598,400.708 253.666,400.788 253.894,400.802 C 254.31,400.802 255.25,400.721 255.545,400.6 C 255.693,400.533 255.639,400.439 255.478,400.332 C 255.25,400.184 254.74,399.996 254.35,399.889z"/>
<path style="fill: #00ff00; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 254.538 403.299 C 254.337,403.246 253.786,403.219 253.612,403.232 C 253.451,403.246 253.142,403.326 253.021,403.568 C 252.887,403.85 252.524,404.4 252.296,404.521 C 252.001,404.669 251.96,404.79 252.202,404.87 C 252.39,404.951 252.941,405.058 253.102,405.072 C 253.276,405.085 253.518,405.085 253.679,404.938 C 254.028,404.656 254.485,403.93 254.646,403.528 C 254.713,403.366 254.646,403.326 254.538,403.299z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.35 399.889 C 253.988,399.795 253.679,399.781 253.518,399.781 C 253.357,399.795 253.263,399.875 253.316,399.996 C 253.384,400.13 253.491,400.386 253.531,400.533 C 253.598,400.708 253.666,400.788 253.894,400.802 C 254.31,400.802 255.25,400.721 255.545,400.6 C 255.693,400.533 255.639,400.439 255.478,400.332 C 255.25,400.184 254.74,399.996 254.35,399.889"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.538 403.299 C 254.337,403.246 253.786,403.219 253.612,403.232 C 253.451,403.246 253.142,403.326 253.021,403.568 C 252.887,403.85 252.524,404.4 252.296,404.521 C 252.001,404.669 251.96,404.79 252.202,404.87 C 252.39,404.951 252.941,405.058 253.102,405.072 C 253.276,405.085 253.518,405.085 253.679,404.938 C 254.028,404.656 254.485,403.93 254.646,403.528 C 254.713,403.366 254.646,403.326 254.538,403.299"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.095 387.791 L 254.981,384.582"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.391 387.871 L 255.277,384.662"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 260.688 380.889 C 260.688,380.889 260.178,380.741 259.748,380.634 C 259.372,380.527 258.835,380.379 258.835,380.379"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 258.916 397.351 C 259.265,396.102 260.702,389.845 260.769,388.986 C 260.836,388.113 260.514,387.012 260.044,386.797 C 260.07,386.488 260.07,386.314 260.07,386.314 C 259.963,386.26 259.842,386.22 259.735,386.179 L 259.762,386.193 C 259.762,386.193 260.097,384.796 260.299,383.83 C 260.661,381.963 260.688,381.023 260.688,381.023 C 260.688,380.768 260.621,380.553 260.393,380.486 L 259.305,380.191 C 259.077,380.124 258.916,380.271 258.768,380.5 C 258.768,380.5 258.338,381.359 257.748,383.118 C 257.425,384.058 257.13,385.226 257.13,385.226 L 257.143,385.24 C 256.499,385.025 255.841,384.823 255.183,384.649 C 253.491,384.179 251.799,383.816 250.121,383.561 C 250.121,383.561 250.04,383.722 249.893,383.991 L 249.893,383.991 C 249.382,383.951 248.55,384.716 248.16,385.495 C 247.771,386.273 245.797,392.383 245.448,393.645 C 245.099,394.894 244.441,398.076 244.146,399.661 C 243.85,401.245 243.582,404.011 242.561,407.704 C 241.957,409.879 240.99,413.115 240.48,414.471 C 240.346,414.82 239.285,416.619 240.829,417.237 C 242.346,417.828 244.616,418.486 245.757,418.795 C 246.898,419.117 249.167,419.708 250.779,419.976 C 252.417,420.245 252.43,418.163 252.497,417.788 C 252.753,416.364 253.585,413.088 254.176,410.913 C 255.196,407.22 256.391,404.709 256.955,403.192 C 257.506,401.688 258.567,398.613 258.916,397.351"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 247.1 406.133 C 246.925,406.764 246.267,407.14 245.623,406.965 C 244.978,406.79 244.602,406.133 244.777,405.488 C 244.965,404.844 245.623,404.468 246.267,404.642 C 246.912,404.817 247.288,405.488 247.1,406.133z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 250.148 407.408 C 249.973,408.053 249.302,408.429 248.657,408.254 C 248.026,408.08 247.65,407.408 247.825,406.777 C 247.999,406.133 248.657,405.757 249.302,405.931 C 249.946,406.106 250.322,406.777 250.148,407.408z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 253.424 407.878 C 253.249,408.509 252.578,408.885 251.933,408.711 C 251.302,408.536 250.926,407.878 251.101,407.234 C 251.276,406.589 251.933,406.213 252.578,406.388 C 253.223,406.562 253.598,407.234 253.424,407.878z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 246.375 408.778 C 246.2,409.422 245.529,409.798 244.898,409.61 C 244.253,409.436 243.877,408.778 244.052,408.133 C 244.226,407.489 244.898,407.113 245.529,407.287 C 246.173,407.475 246.549,408.133 246.375,408.778z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 249.409 410.067 C 249.235,410.711 248.577,411.087 247.932,410.899 C 247.288,410.725 246.912,410.067 247.086,409.422 C 247.274,408.778 247.932,408.402 248.577,408.576 C 249.208,408.764 249.597,409.422 249.409,410.067z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 252.699 410.523 C 252.511,411.154 251.853,411.544 251.208,411.356 C 250.564,411.181 250.188,410.523 250.362,409.879 C 250.55,409.234 251.208,408.858 251.853,409.033 C 252.497,409.221 252.873,409.879 252.699,410.523z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 245.649 411.423 C 245.475,412.067 244.804,412.443 244.159,412.269 C 243.528,412.094 243.139,411.423 243.327,410.778 C 243.501,410.147 244.159,409.758 244.804,409.946 C 245.448,410.12 245.824,410.778 245.649,411.423z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 248.684 412.712 C 248.509,413.356 247.838,413.732 247.207,413.558 C 246.563,413.383 246.187,412.712 246.361,412.067 C 246.536,411.423 247.207,411.06 247.838,411.235 C 248.483,411.409 248.859,412.067 248.684,412.712z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 251.96 413.168 C 251.786,413.813 251.114,414.189 250.483,414.001 C 249.839,413.826 249.463,413.168 249.637,412.524 C 249.812,411.879 250.483,411.503 251.114,411.691 C 251.759,411.866 252.135,412.524 251.96,413.168z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 244.911 414.068 C 244.736,414.713 244.065,415.089 243.434,414.914 C 242.789,414.739 242.413,414.082 242.588,413.437 C 242.763,412.793 243.434,412.417 244.065,412.591 C 244.71,412.766 245.086,413.437 244.911,414.082 L 244.911,414.068z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 247.959 415.357 C 247.771,416.002 247.113,416.378 246.469,416.203 C 245.824,416.029 245.448,415.357 245.636,414.726 C 245.811,414.082 246.469,413.706 247.113,413.88 C 247.758,414.055 248.134,414.726 247.959,415.357z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 251.235 415.814 C 251.047,416.458 250.389,416.834 249.745,416.66 C 249.1,416.485 248.724,415.814 248.912,415.169 C 249.087,414.538 249.745,414.162 250.389,414.337 C 251.034,414.511 251.41,415.169 251.235,415.814z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.428 417.156 C 246.415,417.21 246.307,417.237 246.187,417.21 C 246.079,417.17 245.999,417.103 246.025,417.036 C 246.039,416.982 246.146,416.955 246.254,416.982 C 246.361,417.009 246.442,417.089 246.428,417.143"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.025 417.036 L 245.636,418.419"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.079 417.156 L 245.73,418.445"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.428 417.156 L 246.039,418.526"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.307 417.21 L 245.958,418.499"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 248.751 397.19 L 248.483,398.143"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 248.859 397.217 L 248.59,398.184"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.27 398.707 L 254.001,399.674"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.162 398.68 L 253.894,399.647"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 259.762 386.193 C 259.762,386.193 260.097,384.796 260.299,383.83 C 260.661,381.963 260.688,381.023 260.688,381.023 C 260.688,380.768 260.621,380.553 260.393,380.486 L 259.305,380.191 C 259.077,380.124 258.916,380.271 258.768,380.5 C 258.768,380.5 258.338,381.359 257.748,383.118 C 257.425,384.058 257.13,385.226 257.13,385.226"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 259.896 385.683 C 259.023,385.347 258.15,385.038 257.251,384.756"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 249.033 385.871 C 250.819,386.126 252.739,386.529 254.525,387.025 C 256.311,387.522 258.164,388.153 259.829,388.852"/>
<path style="fill: #b7b79d; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" fill-rule="evenodd" d="M 256.7 398.922 C 256.633,399.164 256.391,399.298 256.15,399.231 L 246.858,396.666 C 246.616,396.599 246.482,396.357 246.549,396.129 L 248.174,390.248 C 248.241,390.006 248.483,389.872 248.711,389.939 L 258.016,392.504 C 258.258,392.571 258.392,392.813 258.325,393.054 L 256.7,398.935 L 256.7,398.922z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.095 387.791 L 254.981,384.582"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.391 387.871 L 255.277,384.662"/>
</g>
<line style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="327.424" y1="326.359" x2="444.266" y2="375.437"/>
<line style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="259.522" y1="401.737" x2="439.089" y2="384.112"/>
<g>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 290.594 477.19 C 290.943,475.941 292.38,469.684 292.447,468.811 C 292.514,467.938 292.192,466.851 291.722,466.623 C 291.749,466.314 291.749,466.139 291.749,466.139 C 291.641,466.099 291.521,466.059 291.413,466.005 L 291.453,466.018 C 291.453,466.018 291.776,464.622 291.977,463.655 C 292.34,461.802 292.38,460.862 292.38,460.862 C 292.367,460.607 292.299,460.379 292.071,460.312 L 290.984,460.016 C 290.755,459.949 290.594,460.097 290.446,460.325 C 290.446,460.325 290.017,461.184 289.426,462.957 C 289.104,463.883 288.808,465.065 288.808,465.065 L 288.822,465.065 C 288.177,464.85 287.519,464.662 286.861,464.474 C 285.169,464.004 283.491,463.655 281.799,463.4 C 281.799,463.4 281.719,463.548 281.571,463.83 C 281.061,463.776 280.228,464.555 279.839,465.334 C 279.449,466.112 277.476,472.222 277.126,473.471 C 276.777,474.719 276.119,477.915 275.824,479.499 C 275.529,481.084 275.26,483.85 274.24,487.529 C 273.635,489.704 272.669,492.954 272.158,494.296 C 272.024,494.659 270.963,496.445 272.507,497.062 C 274.025,497.667 276.294,498.311 277.435,498.633 C 278.577,498.942 280.846,499.546 282.457,499.815 C 284.095,500.084 284.109,497.989 284.176,497.613 C 284.431,496.203 285.263,492.913 285.854,490.738 C 286.875,487.046 288.07,484.548 288.634,483.031 C 289.184,481.514 290.245,478.439 290.594,477.19z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 290.594 477.19 C 290.943,475.941 292.38,469.684 292.447,468.811 C 292.514,467.938 292.192,466.851 291.722,466.623 C 291.749,466.314 291.749,466.139 291.749,466.139 C 291.641,466.099 291.521,466.059 291.413,466.005 L 291.453,466.018 C 291.453,466.018 291.776,464.622 291.977,463.655 C 292.34,461.802 292.38,460.862 292.38,460.862 C 292.367,460.607 292.299,460.379 292.071,460.312 L 290.984,460.016 C 290.755,459.949 290.594,460.097 290.446,460.325 C 290.446,460.325 290.017,461.184 289.426,462.957 C 289.104,463.883 288.808,465.065 288.808,465.065 L 288.822,465.065 C 288.177,464.85 287.519,464.662 286.861,464.474 C 285.169,464.004 283.491,463.655 281.799,463.4 C 281.799,463.4 281.719,463.548 281.571,463.83 L 281.571,463.83 C 281.061,463.776 280.228,464.555 279.839,465.334 C 279.449,466.112 277.476,472.222 277.126,473.471 C 276.777,474.719 276.119,477.915 275.824,479.499 C 275.529,481.084 275.26,483.85 274.24,487.529 C 273.635,489.704 272.669,492.954 272.158,494.296 C 272.024,494.659 270.963,496.445 272.507,497.062 C 274.025,497.667 276.294,498.311 277.435,498.633 C 278.577,498.942 280.846,499.546 282.457,499.815 C 284.095,500.084 284.109,497.989 284.176,497.613 C 284.431,496.203 285.263,492.913 285.854,490.738 C 286.875,487.046 288.07,484.548 288.634,483.031 C 289.184,481.514 290.245,478.439 290.594,477.19"/>
<path style="fill: #b7b79d; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 288.916 477.351 C 289.265,476.102 290.702,469.845 290.769,468.986 C 290.836,468.113 290.514,467.012 290.044,466.797 C 290.07,466.488 290.07,466.314 290.07,466.314 C 289.963,466.26 289.842,466.22 289.735,466.179 L 289.762,466.193 C 289.762,466.193 290.097,464.796 290.299,463.83 C 290.661,461.963 290.688,461.023 290.688,461.023 C 290.688,460.768 290.621,460.553 290.393,460.486 L 289.305,460.191 C 289.077,460.124 288.916,460.271 288.768,460.5 C 288.768,460.5 288.338,461.359 287.748,463.118 C 287.425,464.058 287.13,465.226 287.13,465.226 L 287.143,465.24 C 286.499,465.025 285.841,464.823 285.183,464.649 C 283.491,464.179 281.799,463.816 280.121,463.561 C 280.121,463.561 280.04,463.722 279.893,463.991 C 279.382,463.951 278.55,464.716 278.16,465.495 C 277.771,466.273 275.797,472.383 275.448,473.645 C 275.099,474.894 274.441,478.076 274.146,479.661 C 273.85,481.245 273.582,484.011 272.561,487.704 C 271.957,489.879 270.99,493.115 270.48,494.471 C 270.346,494.82 269.285,496.619 270.829,497.237 C 272.346,497.828 274.616,498.486 275.757,498.795 C 276.898,499.117 279.167,499.708 280.779,499.976 C 282.417,500.245 282.43,498.163 282.497,497.788 C 282.753,496.364 283.585,493.088 284.176,490.913 C 285.196,487.22 286.391,484.709 286.955,483.192 C 287.506,481.688 288.567,478.613 288.916,477.351z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 288.916 477.351 C 289.265,476.102 290.702,469.845 290.769,468.986 C 290.836,468.113 290.514,467.012 290.044,466.797 C 290.07,466.488 290.07,466.314 290.07,466.314 C 289.963,466.26 289.842,466.22 289.735,466.179 L 289.762,466.193 C 289.762,466.193 290.097,464.796 290.299,463.83 C 290.661,461.963 290.688,461.023 290.688,461.023 C 290.688,460.768 290.621,460.553 290.393,460.486 L 289.305,460.191 C 289.077,460.124 288.916,460.271 288.768,460.5 C 288.768,460.5 288.338,461.359 287.748,463.118 C 287.425,464.058 287.13,465.226 287.13,465.226 L 287.143,465.24 C 286.499,465.025 285.841,464.823 285.183,464.649 C 283.491,464.179 281.799,463.816 280.121,463.561 C 280.121,463.561 280.04,463.722 279.893,463.991 L 279.893,463.991 C 279.382,463.951 278.55,464.716 278.16,465.495 C 277.771,466.273 275.797,472.383 275.448,473.645 C 275.099,474.894 274.441,478.076 274.146,479.661 C 273.85,481.245 273.582,484.011 272.561,487.704 C 271.957,489.879 270.99,493.115 270.48,494.471 C 270.346,494.82 269.285,496.619 270.829,497.237 C 272.346,497.828 274.616,498.486 275.757,498.795 C 276.898,499.117 279.167,499.708 280.779,499.976 C 282.417,500.245 282.43,498.163 282.497,497.788 C 282.753,496.364 283.585,493.088 284.176,490.913 C 285.196,487.22 286.391,484.709 286.955,483.192 C 287.506,481.688 288.567,478.613 288.916,477.351"/>
<path style="fill: #c9c9b6; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.8; stroke: #ecece7" fill-rule="evenodd" d="M 280.336 463.601 C 280.336,463.601 278.12,468.126 276.845,472.719 C 275.341,478.184 275.126,479.996 275.354,482.534 C 275.394,483.058 275.918,483.702 276.495,483.863 C 276.724,483.917 276.992,483.998 277.1,484.024 C 277.22,484.065 277.65,484.159 277.999,484.441 C 278.362,484.723 278.442,484.79 278.657,484.897 C 278.859,485.018 278.899,485.099 279.49,485.26 C 280.08,485.421 280.148,485.381 280.389,485.381 C 280.631,485.394 280.738,485.381 281.195,485.327 C 281.638,485.26 282.054,485.394 282.175,485.421 C 282.283,485.461 282.551,485.528 282.779,485.595 C 283.357,485.757 284.136,485.475 284.444,485.045 C 285.935,482.991 286.687,481.312 288.191,475.847 C 289.453,471.255 289.869,466.233 289.869,466.233 L 280.336,463.601z"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 283.021 482.561 C 282.632,483.998 281.141,484.83 279.718,484.441 C 278.281,484.051 277.449,482.561 277.838,481.138 C 278.241,479.701 279.718,478.868 281.141,479.258 C 282.578,479.661 283.41,481.138 283.021,482.561z"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 278.066 478.157 C 278.429,478.264 278.711,478.412 278.845,478.492 C 278.979,478.586 279.02,478.707 278.899,478.788 C 278.778,478.868 278.563,479.029 278.442,479.137 C 278.295,479.258 278.201,479.285 277.999,479.164 C 277.637,478.962 276.871,478.412 276.683,478.157 C 276.576,478.022 276.67,477.969 276.871,477.955 C 277.14,477.942 277.677,478.049 278.066,478.157z"/>
<path style="fill: #ff0000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 276.16 480.99 C 276.361,481.057 276.845,481.299 276.979,481.406 C 277.126,481.5 277.341,481.728 277.328,481.997 C 277.301,482.306 277.328,482.964 277.462,483.179 C 277.637,483.46 277.61,483.581 277.355,483.541 C 277.153,483.501 276.63,483.313 276.482,483.232 C 276.334,483.165 276.119,483.031 276.052,482.829 C 275.918,482.413 275.878,481.554 275.958,481.124 C 275.985,480.95 276.066,480.95 276.16,480.99z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 283.021 482.561 C 282.632,483.998 281.141,484.83 279.718,484.441 C 278.281,484.051 277.449,482.561 277.838,481.138 C 278.241,479.701 279.718,478.868 281.141,479.258 C 282.578,479.661 283.41,481.138 283.021,482.561"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 278.066 478.157 C 278.429,478.264 278.711,478.412 278.845,478.492 C 278.979,478.586 279.02,478.707 278.899,478.788 C 278.778,478.868 278.563,479.029 278.442,479.137 C 278.295,479.258 278.201,479.285 277.999,479.164 C 277.637,478.962 276.871,478.412 276.683,478.157 C 276.576,478.022 276.67,477.969 276.871,477.955 C 277.14,477.942 277.677,478.049 278.066,478.157"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.16 480.99 C 276.361,481.057 276.845,481.299 276.979,481.406 C 277.126,481.5 277.341,481.728 277.328,481.997 C 277.301,482.306 277.328,482.964 277.462,483.179 C 277.637,483.46 277.61,483.581 277.355,483.541 C 277.153,483.501 276.63,483.313 276.482,483.232 C 276.334,483.165 276.119,483.031 276.052,482.829 C 275.918,482.413 275.878,481.554 275.958,481.124 C 275.985,480.95 276.066,480.95 276.16,480.99"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 284.35 479.889 C 283.988,479.795 283.679,479.781 283.518,479.781 C 283.357,479.795 283.263,479.875 283.316,479.996 C 283.384,480.13 283.491,480.386 283.531,480.533 C 283.598,480.708 283.666,480.788 283.894,480.802 C 284.31,480.802 285.25,480.721 285.545,480.6 C 285.693,480.533 285.639,480.439 285.478,480.332 C 285.25,480.184 284.74,479.996 284.35,479.889z"/>
<path style="fill: #00ff00; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 284.538 483.299 C 284.337,483.246 283.786,483.219 283.612,483.232 C 283.451,483.246 283.142,483.326 283.021,483.568 C 282.887,483.85 282.524,484.4 282.296,484.521 C 282.001,484.669 281.96,484.79 282.202,484.87 C 282.39,484.951 282.941,485.058 283.102,485.072 C 283.276,485.085 283.518,485.085 283.679,484.938 C 284.028,484.656 284.485,483.93 284.646,483.528 C 284.713,483.366 284.646,483.326 284.538,483.299z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.35 479.889 C 283.988,479.795 283.679,479.781 283.518,479.781 C 283.357,479.795 283.263,479.875 283.316,479.996 C 283.384,480.13 283.491,480.386 283.531,480.533 C 283.598,480.708 283.666,480.788 283.894,480.802 C 284.31,480.802 285.25,480.721 285.545,480.6 C 285.693,480.533 285.639,480.439 285.478,480.332 C 285.25,480.184 284.74,479.996 284.35,479.889"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.538 483.299 C 284.337,483.246 283.786,483.219 283.612,483.232 C 283.451,483.246 283.142,483.326 283.021,483.568 C 282.887,483.85 282.524,484.4 282.296,484.521 C 282.001,484.669 281.96,484.79 282.202,484.87 C 282.39,484.951 282.941,485.058 283.102,485.072 C 283.276,485.085 283.518,485.085 283.679,484.938 C 284.028,484.656 284.485,483.93 284.646,483.528 C 284.713,483.366 284.646,483.326 284.538,483.299"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.095 467.791 L 284.981,464.582"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.391 467.871 L 285.277,464.662"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 290.688 460.889 C 290.688,460.889 290.178,460.741 289.748,460.634 C 289.372,460.527 288.835,460.379 288.835,460.379"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 288.916 477.351 C 289.265,476.102 290.702,469.845 290.769,468.986 C 290.836,468.113 290.514,467.012 290.044,466.797 C 290.07,466.488 290.07,466.314 290.07,466.314 C 289.963,466.26 289.842,466.22 289.735,466.179 L 289.762,466.193 C 289.762,466.193 290.097,464.796 290.299,463.83 C 290.661,461.963 290.688,461.023 290.688,461.023 C 290.688,460.768 290.621,460.553 290.393,460.486 L 289.305,460.191 C 289.077,460.124 288.916,460.271 288.768,460.5 C 288.768,460.5 288.338,461.359 287.748,463.118 C 287.425,464.058 287.13,465.226 287.13,465.226 L 287.143,465.24 C 286.499,465.025 285.841,464.823 285.183,464.649 C 283.491,464.179 281.799,463.816 280.121,463.561 C 280.121,463.561 280.04,463.722 279.893,463.991 L 279.893,463.991 C 279.382,463.951 278.55,464.716 278.16,465.495 C 277.771,466.273 275.797,472.383 275.448,473.645 C 275.099,474.894 274.441,478.076 274.146,479.661 C 273.85,481.245 273.582,484.011 272.561,487.704 C 271.957,489.879 270.99,493.115 270.48,494.471 C 270.346,494.82 269.285,496.619 270.829,497.237 C 272.346,497.828 274.616,498.486 275.757,498.795 C 276.898,499.117 279.167,499.708 280.779,499.976 C 282.417,500.245 282.43,498.163 282.497,497.788 C 282.753,496.364 283.585,493.088 284.176,490.913 C 285.196,487.22 286.391,484.709 286.955,483.192 C 287.506,481.688 288.567,478.613 288.916,477.351"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 277.1 486.133 C 276.925,486.764 276.267,487.14 275.623,486.965 C 274.978,486.79 274.602,486.133 274.777,485.488 C 274.965,484.844 275.623,484.468 276.267,484.642 C 276.912,484.817 277.288,485.488 277.1,486.133z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 280.148 487.408 C 279.973,488.053 279.302,488.429 278.657,488.254 C 278.026,488.08 277.65,487.408 277.825,486.777 C 277.999,486.133 278.657,485.757 279.302,485.931 C 279.946,486.106 280.322,486.777 280.148,487.408z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 283.424 487.878 C 283.249,488.509 282.578,488.885 281.933,488.711 C 281.302,488.536 280.926,487.878 281.101,487.234 C 281.276,486.589 281.933,486.213 282.578,486.388 C 283.223,486.562 283.598,487.234 283.424,487.878z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 276.375 488.778 C 276.2,489.422 275.529,489.798 274.898,489.61 C 274.253,489.436 273.877,488.778 274.052,488.133 C 274.226,487.489 274.898,487.113 275.529,487.287 C 276.173,487.475 276.549,488.133 276.375,488.778z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 279.409 490.067 C 279.235,490.711 278.577,491.087 277.932,490.899 C 277.288,490.725 276.912,490.067 277.086,489.422 C 277.274,488.778 277.932,488.402 278.577,488.576 C 279.208,488.764 279.597,489.422 279.409,490.067z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 282.699 490.523 C 282.511,491.154 281.853,491.544 281.208,491.356 C 280.564,491.181 280.188,490.523 280.362,489.879 C 280.55,489.234 281.208,488.858 281.853,489.033 C 282.497,489.221 282.873,489.879 282.699,490.523z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 275.649 491.423 C 275.475,492.067 274.804,492.443 274.159,492.269 C 273.528,492.094 273.139,491.423 273.327,490.778 C 273.501,490.147 274.159,489.758 274.804,489.946 C 275.448,490.12 275.824,490.778 275.649,491.423z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 278.684 492.712 C 278.509,493.356 277.838,493.732 277.207,493.558 C 276.563,493.383 276.187,492.712 276.361,492.067 C 276.536,491.423 277.207,491.06 277.838,491.235 C 278.483,491.409 278.859,492.067 278.684,492.712z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 281.96 493.168 C 281.786,493.813 281.114,494.189 280.483,494.001 C 279.839,493.826 279.463,493.168 279.637,492.524 C 279.812,491.879 280.483,491.503 281.114,491.691 C 281.759,491.866 282.135,492.524 281.96,493.168z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 274.911 494.068 C 274.736,494.713 274.065,495.089 273.434,494.914 C 272.789,494.739 272.413,494.082 272.588,493.437 C 272.763,492.793 273.434,492.417 274.065,492.591 C 274.71,492.766 275.086,493.437 274.911,494.082 L 274.911,494.068z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 277.959 495.357 C 277.771,496.002 277.113,496.378 276.469,496.203 C 275.824,496.029 275.448,495.357 275.636,494.726 C 275.811,494.082 276.469,493.706 277.113,493.88 C 277.758,494.055 278.134,494.726 277.959,495.357z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 281.235 495.814 C 281.047,496.458 280.389,496.834 279.745,496.66 C 279.1,496.485 278.724,495.814 278.912,495.169 C 279.087,494.538 279.745,494.162 280.389,494.337 C 281.034,494.511 281.41,495.169 281.235,495.814z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.428 497.156 C 276.415,497.21 276.307,497.237 276.187,497.21 C 276.079,497.17 275.999,497.103 276.025,497.036 C 276.039,496.982 276.146,496.955 276.254,496.982 C 276.361,497.009 276.442,497.089 276.428,497.143"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.025 497.036 L 275.636,498.419"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.079 497.156 L 275.73,498.445"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.428 497.156 L 276.039,498.526"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.307 497.21 L 275.958,498.499"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 278.751 477.19 L 278.483,478.143"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 278.859 477.217 L 278.59,478.184"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.27 478.707 L 284.001,479.674"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.162 478.68 L 283.894,479.647"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 289.762 466.193 C 289.762,466.193 290.097,464.796 290.299,463.83 C 290.661,461.963 290.688,461.023 290.688,461.023 C 290.688,460.768 290.621,460.553 290.393,460.486 L 289.305,460.191 C 289.077,460.124 288.916,460.271 288.768,460.5 C 288.768,460.5 288.338,461.359 287.748,463.118 C 287.425,464.058 287.13,465.226 287.13,465.226"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 289.896 465.683 C 289.023,465.347 288.15,465.038 287.251,464.756"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 279.033 465.871 C 280.819,466.126 282.739,466.529 284.525,467.025 C 286.311,467.522 288.164,468.153 289.829,468.852"/>
<path style="fill: #b7b79d; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" fill-rule="evenodd" d="M 286.7 478.922 C 286.633,479.164 286.391,479.298 286.15,479.231 L 276.858,476.666 C 276.616,476.599 276.482,476.357 276.549,476.129 L 278.174,470.248 C 278.241,470.006 278.483,469.872 278.711,469.939 L 288.016,472.504 C 288.258,472.571 288.392,472.813 288.325,473.054 L 286.7,478.935 L 286.7,478.922z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.095 467.791 L 284.981,464.582"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.391 467.871 L 285.277,464.662"/>
</g>
<line style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="290.438" y1="479.005" x2="440.053" y2="393.475"/>
<g>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 714.565 323.746 L 714.565,310.35"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 714.565 323.53 L 714.565,314.341"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 714.954 311.638 L 714.135,311.638 L 714.135,310 L 714.954,310 L 714.954,311.638z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 714.954 311.638 L 714.135,311.638 L 714.135,310 L 714.954,310 L 714.954,311.638"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 694.709 323.746 L 694.709,310.35"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 694.709 323.53 L 694.709,314.341"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 695.098 311.638 L 694.279,311.638 L 694.279,310 L 695.098,310 L 695.098,311.638z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 695.098 311.638 L 694.279,311.638 L 694.279,310 L 695.098,310 L 695.098,311.638"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 720.119 325.447 C 720.119,328.681 713.377,331.303 705.06,331.303 C 696.742,331.303 690,328.681 690,325.447 L 690,334.025 C 690,337.26 696.742,339.882 705.06,339.882 C 713.377,339.882 720.119,337.26 720.119,334.025 L 720.119,325.447z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 720.119 325.447 C 720.119,328.681 713.377,331.303 705.06,331.303 C 696.742,331.303 690,328.681 690,325.447 L 690,334.025 C 690,337.26 696.742,339.882 705.06,339.882 C 713.377,339.882 720.119,337.26 720.119,334.025 L 720.119,325.447"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 705.06 331.303 C 713.377,331.303 720.119,328.681 720.119,325.447 C 720.119,322.212 713.377,319.59 705.06,319.59 C 696.742,319.59 690,322.212 690,325.447 C 690,328.681 696.742,331.303 705.06,331.303z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 705.06 331.303 C 713.377,331.303 720.119,328.681 720.119,325.447 C 720.119,322.212 713.377,319.59 705.06,319.59 C 696.742,319.59 690,322.212 690,325.447 C 690,328.681 696.742,331.303 705.06,331.303"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 701.621 323.157 L 702.864,325.022 L 698.163,326.108 L 699.19,325.254 L 691.923,324.012 L 693.746,322.645 L 700.758,323.832 L 701.621,323.157z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 708.237 327.68 L 707.388,325.757 L 711.629,324.91 L 710.894,325.568 L 717.962,326.776 L 716.268,328.133 L 709.24,326.813 L 708.237,327.68z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 705.918 322.138 L 710.668,320.838 L 710.724,322.874 L 709.538,322.647 L 707.218,324.57 L 705.006,324.247 L 707.399,322.367 L 705.918,322.138z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 703.882 329.434 L 699.359,330.281 L 699.19,328.19 L 700.489,328.472 L 702.979,326.345 L 705.183,326.719 L 702.525,329.037 L 703.882,329.434z"/>
</g>
<g>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 774.565 453.746 L 774.565,440.35"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 774.565 453.53 L 774.565,444.341"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 774.954 441.638 L 774.135,441.638 L 774.135,440 L 774.954,440 L 774.954,441.638z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 774.954 441.638 L 774.135,441.638 L 774.135,440 L 774.954,440 L 774.954,441.638"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 754.709 453.746 L 754.709,440.35"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 754.709 453.53 L 754.709,444.341"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 755.098 441.638 L 754.279,441.638 L 754.279,440 L 755.098,440 L 755.098,441.638z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 755.098 441.638 L 754.279,441.638 L 754.279,440 L 755.098,440 L 755.098,441.638"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 780.119 455.447 C 780.119,458.681 773.377,461.303 765.06,461.303 C 756.742,461.303 750,458.681 750,455.447 L 750,464.025 C 750,467.26 756.742,469.882 765.06,469.882 C 773.377,469.882 780.119,467.26 780.119,464.025 L 780.119,455.447z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 780.119 455.447 C 780.119,458.681 773.377,461.303 765.06,461.303 C 756.742,461.303 750,458.681 750,455.447 L 750,464.025 C 750,467.26 756.742,469.882 765.06,469.882 C 773.377,469.882 780.119,467.26 780.119,464.025 L 780.119,455.447"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 765.06 461.303 C 773.377,461.303 780.119,458.681 780.119,455.447 C 780.119,452.212 773.377,449.59 765.06,449.59 C 756.742,449.59 750,452.212 750,455.447 C 750,458.681 756.742,461.303 765.06,461.303z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 765.06 461.303 C 773.377,461.303 780.119,458.681 780.119,455.447 C 780.119,452.212 773.377,449.59 765.06,449.59 C 756.742,449.59 750,452.212 750,455.447 C 750,458.681 756.742,461.303 765.06,461.303"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 761.621 453.157 L 762.864,455.022 L 758.163,456.108 L 759.19,455.254 L 751.923,454.012 L 753.746,452.645 L 760.758,453.832 L 761.621,453.157z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 768.237 457.68 L 767.388,455.757 L 771.629,454.91 L 770.894,455.568 L 777.962,456.776 L 776.268,458.133 L 769.24,456.813 L 768.237,457.68z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 765.918 452.138 L 770.668,450.838 L 770.724,452.874 L 769.538,452.647 L 767.218,454.57 L 765.006,454.247 L 767.399,452.367 L 765.918,452.138z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 763.882 459.434 L 759.359,460.281 L 759.19,458.19 L 760.489,458.472 L 762.979,456.345 L 765.183,456.719 L 762.525,459.037 L 763.882,459.434z"/>
</g>
<text font-size="21.4489" style="fill: #000000; fill-opacity: 1; stroke: none;text-anchor:start;font-family:sans-serif;font-style:italic;font-weight:normal" x="270" y="430">
<tspan x="270" y="430">Clients</tspan>
</text>
</g>
<g id="to-clients">
<g>
<line style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #800080" x1="440" y1="380" x2="352" y2="380"/>
<polygon style="fill: #800080; fill-opacity: 1; stroke-opacity: 1; stroke-width: 4; stroke: #800080" fill-rule="evenodd" points="352,375 342,380 352,385 "/>
</g>
<rect style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke-dasharray: 20; stroke: #000000" x="220" y="290" width="270" height="220" rx="0" ry="0"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 99 KiB

View File

@ -0,0 +1,232 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/PR-SVG-20010719/DTD/svg10.dtd">
<svg width="29cm" height="12cm" viewBox="239 289 572 223" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="Background">
<g>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 713.614 347.58 L 713.54,345.719 L 713.283,343.858 L 712.804,342.03 L 712.142,340.201 L 711.258,338.34 L 710.264,336.545 L 709.013,334.781 L 707.614,333.051 L 706.104,331.321 L 704.337,329.688 L 702.46,328.056 L 700.398,326.521 L 698.153,324.986 L 695.797,323.55 L 693.294,322.146 L 690.606,320.84 L 687.845,319.566 L 684.974,318.391 L 681.955,317.281 L 678.826,316.269 L 675.587,315.289 L 672.237,314.473 L 668.887,313.657 L 665.39,312.971 L 661.819,312.351 L 658.248,311.828 L 654.604,311.404 L 650.922,311.11 L 647.204,310.849 L 643.45,310.718 L 639.695,310.653 L 639.695,310.653 L 635.977,310.718 L 632.185,310.849 L 628.504,311.11 L 624.822,311.404 L 621.141,311.828 L 617.57,312.351 L 614,312.971 L 610.539,313.657 L 607.116,314.473 L 603.839,315.289 L 600.6,316.269 L 597.508,317.281 L 594.452,318.391 L 591.581,319.566 L 588.783,320.84 L 586.096,322.146 L 583.592,323.55 L 581.236,324.986 L 578.991,326.521 L 576.929,328.056 L 575.052,329.688 L 573.322,331.321 L 571.739,333.051 L 570.414,334.781 L 569.162,336.545 L 568.131,338.34 L 567.248,340.201 L 566.659,342.03 L 566.18,343.858 L 565.849,345.719 L 565.812,347.58 L 565.812,347.58 L 565.849,349.474 L 566.18,351.335 L 566.659,353.196 L 567.248,355.024 L 568.131,356.853 L 569.162,358.649 L 570.414,360.412 L 571.739,362.175 L 573.322,363.873 L 575.052,365.505 L 576.929,367.138 L 578.991,368.705 L 581.236,370.207 L 583.592,371.643 L 586.096,373.047 L 588.783,374.386 L 591.581,375.594 L 594.452,376.835 L 597.508,377.945 L 600.6,378.957 L 603.839,379.871 L 607.116,380.753 L 610.539,381.536 L 614,382.222 L 617.57,382.842 L 621.141,383.365 L 624.822,383.757 L 628.504,384.083 L 632.185,384.377 L 635.977,384.475 L 639.695,384.508 L 639.695,384.508 L 643.45,384.475 L 647.204,384.377 L 650.922,384.083 L 654.604,383.757 L 658.248,383.365 L 661.819,382.842 L 665.39,382.222 L 668.887,381.536 L 672.237,380.753 L 675.587,379.871 L 678.826,378.957 L 681.955,377.945 L 684.974,376.835 L 687.845,375.594 L 690.606,374.386 L 693.294,373.047 L 695.797,371.643 L 698.153,370.207 L 700.398,368.705 L 702.46,367.138 L 704.337,365.505 L 706.104,363.873 L 707.614,362.175 L 709.013,360.412 L 710.264,358.649 L 711.258,356.853 L 712.142,355.024 L 712.804,353.196 L 713.283,351.335 L 713.54,349.474 L 713.614,347.58z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 597.765 366.974 L 597.692,365.113 L 597.434,363.252 L 597.139,361.424 L 596.624,359.563 L 595.961,357.734 L 595.152,355.939 L 594.194,354.176 L 593.164,352.445 L 591.986,350.715 L 590.66,349.082 L 589.225,347.45 L 587.642,345.915 L 585.875,344.381 L 584.071,342.944 L 582.157,341.54 L 580.095,340.234 L 578.034,338.961 L 575.751,337.785 L 573.469,336.675 L 571.039,335.696 L 568.61,334.683 L 566.07,333.802 L 563.419,333.051 L 560.769,332.365 L 558.045,331.745 L 555.284,331.223 L 552.486,330.798 L 549.651,330.504 L 546.854,330.243 L 543.982,330.08 L 541.111,330.047 L 541.111,330.047 L 538.239,330.08 L 535.368,330.243 L 532.497,330.504 L 529.699,330.798 L 526.864,331.223 L 524.104,331.745 L 521.416,332.365 L 518.766,333.051 L 516.152,333.802 L 513.612,334.683 L 511.109,335.696 L 508.753,336.675 L 506.397,337.785 L 504.188,338.961 L 502.09,340.234 L 500.028,341.54 L 498.114,342.944 L 496.273,344.381 L 494.543,345.915 L 492.997,347.45 L 491.524,349.082 L 490.236,350.715 L 489.021,352.445 L 487.954,354.176 L 487.033,355.939 L 486.223,357.734 L 485.561,359.563 L 485.082,361.424 L 484.714,363.252 L 484.493,365.113 L 484.42,366.974 L 484.42,366.974 L 484.493,368.868 L 484.714,370.729 L 485.082,372.59 L 485.561,374.419 L 486.223,376.247 L 487.033,378.043 L 487.954,379.806 L 489.021,381.536 L 490.236,383.267 L 491.524,384.899 L 492.997,386.532 L 494.543,388.066 L 496.273,389.601 L 498.114,391.038 L 500.028,392.442 L 502.09,393.748 L 504.188,394.988 L 506.397,396.164 L 508.753,397.339 L 511.109,398.351 L 513.612,399.265 L 516.152,400.18 L 518.766,400.931 L 521.416,401.616 L 524.104,402.237 L 526.864,402.726 L 529.699,403.151 L 532.497,403.477 L 535.368,403.771 L 538.239,403.869 L 541.111,403.902 L 541.111,403.902 L 543.982,403.869 L 546.854,403.771 L 549.651,403.477 L 552.486,403.151 L 555.284,402.726 L 558.045,402.237 L 560.769,401.616 L 563.419,400.931 L 566.07,400.18 L 568.61,399.265 L 571.039,398.351 L 573.469,397.339 L 575.751,396.164 L 578.034,394.988 L 580.095,393.748 L 582.157,392.442 L 584.071,391.038 L 585.875,389.601 L 587.642,388.066 L 589.225,386.532 L 590.66,384.899 L 591.986,383.267 L 593.164,381.536 L 594.194,379.806 L 595.152,378.043 L 595.961,376.247 L 596.624,374.419 L 597.139,372.59 L 597.434,370.729 L 597.692,368.868 L 597.765,366.974z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 526.312 404.685 L 526.275,403.151 L 526.165,401.616 L 525.907,400.082 L 525.576,398.58 L 525.097,397.143 L 524.545,395.641 L 523.956,394.172 L 523.257,392.768 L 522.447,391.364 L 521.527,390.025 L 520.533,388.752 L 519.465,387.446 L 518.324,386.205 L 517.109,384.997 L 515.784,383.887 L 514.422,382.842 L 513.023,381.765 L 511.55,380.818 L 509.968,379.904 L 508.348,379.055 L 506.691,378.304 L 504.961,377.586 L 503.231,376.965 L 501.427,376.41 L 499.586,375.888 L 497.746,375.496 L 495.868,375.104 L 493.917,374.876 L 492.003,374.68 L 490.126,374.582 L 488.175,374.517 L 488.175,374.517 L 486.223,374.582 L 484.272,374.68 L 482.358,374.876 L 480.481,375.104 L 478.566,375.496 L 476.689,375.888 L 474.885,376.41 L 473.118,376.965 L 471.314,377.586 L 469.584,378.304 L 467.928,379.055 L 466.308,379.904 L 464.762,380.818 L 463.252,381.765 L 461.854,382.842 L 460.492,383.887 L 459.203,384.997 L 457.951,386.205 L 456.81,387.446 L 455.743,388.752 L 454.749,390.025 L 453.902,391.364 L 453.092,392.768 L 452.393,394.172 L 451.73,395.641 L 451.178,397.143 L 450.773,398.58 L 450.442,400.082 L 450.147,401.616 L 450,403.151 L 450,404.685 L 450,404.685 L 450,406.155 L 450.147,407.689 L 450.442,409.191 L 450.773,410.693 L 451.178,412.227 L 451.73,413.664 L 452.393,415.101 L 453.092,416.537 L 453.902,417.941 L 454.749,419.28 L 455.743,420.586 L 456.81,421.859 L 457.951,423.1 L 459.203,424.275 L 460.492,425.385 L 461.854,426.463 L 463.252,427.54 L 464.762,428.455 L 466.308,429.369 L 467.928,430.218 L 469.584,431.001 L 471.314,431.72 L 473.118,432.34 L 474.885,432.895 L 476.689,433.385 L 478.566,433.809 L 480.481,434.168 L 482.358,434.462 L 484.272,434.625 L 486.223,434.723 L 488.175,434.789 L 488.175,434.789 L 490.126,434.723 L 492.003,434.625 L 493.917,434.462 L 495.868,434.168 L 497.746,433.809 L 499.586,433.385 L 501.427,432.895 L 503.231,432.34 L 504.961,431.72 L 506.691,431.001 L 508.348,430.218 L 509.968,429.369 L 511.55,428.455 L 513.023,427.54 L 514.422,426.463 L 515.784,425.385 L 517.109,424.275 L 518.324,423.1 L 519.465,421.859 L 520.533,420.586 L 521.527,419.28 L 522.447,417.941 L 523.257,416.537 L 523.956,415.101 L 524.545,413.664 L 525.097,412.227 L 525.576,410.693 L 525.907,409.191 L 526.165,407.689 L 526.275,406.155 L 526.312,404.685z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 587.936 433.711 L 587.9,432.046 L 587.642,430.414 L 587.237,428.748 L 586.758,427.116 L 586.096,425.516 L 585.323,423.916 L 584.329,422.349 L 583.298,420.814 L 582.046,419.378 L 580.721,417.876 L 579.212,416.439 L 577.629,415.101 L 575.935,413.762 L 574.095,412.423 L 572.144,411.215 L 570.082,410.04 L 567.91,408.962 L 565.628,407.885 L 563.309,406.938 L 560.879,405.991 L 558.339,405.175 L 555.762,404.391 L 553.112,403.706 L 550.424,403.085 L 547.663,402.563 L 544.829,402.139 L 542.031,401.747 L 539.16,401.42 L 536.288,401.224 L 533.38,401.094 L 530.435,401.061 L 530.435,401.061 L 527.527,401.094 L 524.656,401.224 L 521.711,401.42 L 518.876,401.747 L 516.005,402.139 L 513.244,402.563 L 510.483,403.085 L 507.759,403.706 L 505.108,404.391 L 502.568,405.175 L 500.028,405.991 L 497.599,406.938 L 495.243,407.885 L 492.997,408.962 L 490.825,410.04 L 488.764,411.215 L 486.812,412.423 L 484.972,413.762 L 483.242,415.101 L 481.659,416.439 L 480.149,417.876 L 478.787,419.378 L 477.609,420.814 L 476.542,422.349 L 475.548,423.916 L 474.738,425.516 L 474.149,427.116 L 473.597,428.748 L 473.229,430.414 L 473.008,432.046 L 472.934,433.711 L 472.934,433.711 L 473.008,435.344 L 473.229,437.009 L 473.597,438.641 L 474.149,440.274 L 474.738,441.874 L 475.548,443.474 L 476.542,445.073 L 477.609,446.608 L 478.787,448.077 L 480.149,449.514 L 481.659,450.95 L 483.242,452.322 L 484.972,453.693 L 486.812,454.999 L 488.764,456.207 L 490.825,457.35 L 492.997,458.46 L 495.243,459.505 L 497.599,460.484 L 500.028,461.431 L 502.568,462.247 L 505.108,463.031 L 507.759,463.684 L 510.483,464.304 L 513.244,464.827 L 516.005,465.284 L 518.876,465.708 L 521.711,466.002 L 524.656,466.198 L 527.527,466.329 L 530.435,466.329 L 530.435,466.329 L 533.38,466.329 L 536.288,466.198 L 539.16,466.002 L 542.031,465.708 L 544.829,465.284 L 547.663,464.827 L 550.424,464.304 L 553.112,463.684 L 555.762,463.031 L 558.339,462.247 L 560.879,461.431 L 563.309,460.484 L 565.628,459.505 L 567.91,458.46 L 570.082,457.35 L 572.144,456.207 L 574.095,454.999 L 575.935,453.693 L 577.629,452.322 L 579.212,450.95 L 580.721,449.514 L 582.046,448.077 L 583.298,446.608 L 584.329,445.073 L 585.323,443.474 L 586.096,441.874 L 586.758,440.274 L 587.237,438.641 L 587.642,437.009 L 587.9,435.344 L 587.936,433.711z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 725.946 450.591 L 725.799,448.6 L 725.505,446.608 L 724.916,444.682 L 724.142,442.755 L 723.185,440.829 L 722.007,438.968 L 720.608,437.139 L 718.989,435.278 L 717.148,433.483 L 715.16,431.752 L 712.915,430.087 L 710.559,428.455 L 707.982,426.855 L 705.258,425.32 L 702.276,423.851 L 699.257,422.48 L 696.018,421.141 L 692.631,419.9 L 689.171,418.757 L 685.489,417.68 L 681.771,416.668 L 677.906,415.786 L 673.967,414.937 L 669.881,414.219 L 665.795,413.566 L 661.598,413.044 L 657.401,412.587 L 653.058,412.26 L 648.824,412.032 L 644.443,411.836 L 640.1,411.836 L 640.1,411.836 L 635.756,411.836 L 631.412,412.032 L 627.105,412.26 L 622.835,412.587 L 618.564,413.044 L 614.405,413.566 L 610.282,414.219 L 606.269,414.937 L 602.256,415.786 L 598.465,416.668 L 594.673,417.68 L 591.065,418.757 L 587.568,419.9 L 584.218,421.141 L 580.979,422.48 L 577.887,423.851 L 574.978,425.32 L 572.254,426.855 L 569.641,428.455 L 567.248,430.087 L 565.039,431.752 L 563.088,433.483 L 561.247,435.278 L 559.628,437.139 L 558.229,438.968 L 557.014,440.829 L 556.057,442.755 L 555.247,444.682 L 554.695,446.608 L 554.363,448.6 L 554.253,450.591 L 554.253,450.591 L 554.363,452.485 L 554.695,454.477 L 555.247,456.403 L 556.057,458.362 L 557.014,460.288 L 558.229,462.149 L 559.628,463.978 L 561.247,465.839 L 563.088,467.635 L 565.039,469.365 L 567.248,471.03 L 569.641,472.728 L 572.254,474.263 L 574.978,475.797 L 577.887,477.234 L 580.979,478.67 L 584.218,479.976 L 587.568,481.217 L 591.065,482.36 L 594.673,483.47 L 598.465,484.417 L 602.256,485.331 L 606.269,486.147 L 610.282,486.866 L 614.405,487.551 L 618.564,488.041 L 622.835,488.498 L 627.105,488.857 L 631.412,489.086 L 635.756,489.282 L 640.1,489.282 L 640.1,489.282 L 644.443,489.282 L 648.824,489.086 L 653.058,488.857 L 657.401,488.498 L 661.598,488.041 L 665.795,487.551 L 669.881,486.866 L 673.967,486.147 L 677.906,485.331 L 681.771,484.417 L 685.489,483.47 L 689.171,482.36 L 692.631,481.217 L 696.018,479.976 L 699.257,478.67 L 702.276,477.234 L 705.258,475.797 L 707.982,474.263 L 710.559,472.728 L 712.915,471.03 L 715.16,469.365 L 717.148,467.635 L 718.989,465.839 L 720.608,463.978 L 722.007,462.149 L 723.185,460.288 L 724.142,458.362 L 724.916,456.403 L 725.505,454.477 L 725.799,452.485 L 725.946,450.591z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 773.582 361.228 L 773.545,359.791 L 773.324,358.289 L 772.919,356.82 L 772.477,355.384 L 771.815,353.98 L 771.078,352.543 L 770.158,351.139 L 769.091,349.768 L 767.949,348.462 L 766.698,347.123 L 765.262,345.85 L 763.716,344.609 L 762.096,343.466 L 760.292,342.291 L 758.452,341.213 L 756.427,340.201 L 754.366,339.157 L 752.23,338.242 L 749.948,337.393 L 747.629,336.577 L 745.273,335.826 L 742.77,335.141 L 740.23,334.52 L 737.653,333.965 L 735.002,333.475 L 732.352,333.149 L 729.628,332.757 L 726.903,332.496 L 724.106,332.333 L 721.345,332.235 L 718.547,332.169 L 718.547,332.169 L 715.712,332.235 L 712.951,332.333 L 710.154,332.496 L 707.43,332.757 L 704.742,333.149 L 702.055,333.475 L 699.441,333.965 L 696.828,334.52 L 694.288,335.141 L 691.784,335.826 L 689.392,336.577 L 687.109,337.393 L 684.827,338.242 L 682.692,339.157 L 680.63,340.201 L 678.642,341.213 L 676.765,342.291 L 674.961,343.466 L 673.341,344.609 L 671.832,345.85 L 670.359,347.123 L 669.108,348.462 L 667.967,349.768 L 666.899,351.139 L 665.979,352.543 L 665.243,353.98 L 664.617,355.384 L 664.101,356.82 L 663.77,358.289 L 663.586,359.791 L 663.476,361.228 L 663.476,361.228 L 663.586,362.697 L 663.77,364.167 L 664.101,365.603 L 664.617,367.072 L 665.243,368.509 L 665.979,369.913 L 666.899,371.317 L 667.967,372.688 L 669.108,374.059 L 670.359,375.333 L 671.832,376.574 L 673.341,377.847 L 674.961,379.022 L 676.765,380.132 L 678.642,381.243 L 680.63,382.287 L 682.692,383.267 L 684.827,384.181 L 687.109,385.095 L 689.392,385.911 L 691.784,386.63 L 694.288,387.348 L 696.828,387.936 L 699.441,388.458 L 702.055,388.981 L 704.742,389.372 L 707.43,389.699 L 710.154,389.993 L 712.951,390.123 L 715.712,390.287 L 718.547,390.287 L 718.547,390.287 L 721.345,390.287 L 724.106,390.123 L 726.903,389.993 L 729.628,389.699 L 732.352,389.372 L 735.002,388.981 L 737.653,388.458 L 740.23,387.936 L 742.77,387.348 L 745.273,386.63 L 747.629,385.911 L 749.948,385.095 L 752.23,384.181 L 754.366,383.267 L 756.427,382.287 L 758.452,381.243 L 760.292,380.132 L 762.096,379.022 L 763.716,377.847 L 765.262,376.574 L 766.698,375.333 L 767.949,374.059 L 769.091,372.688 L 770.158,371.317 L 771.078,369.913 L 771.815,368.509 L 772.477,367.072 L 772.919,365.603 L 773.324,364.167 L 773.545,362.697 L 773.582,361.228z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 789.19 398.547 L 789.08,397.078 L 788.932,395.609 L 788.564,394.172 L 788.086,392.735 L 787.423,391.266 L 786.687,389.895 L 785.803,388.458 L 784.736,387.12 L 783.595,385.748 L 782.343,384.475 L 780.907,383.169 L 779.361,381.961 L 777.778,380.818 L 775.974,379.61 L 774.134,378.565 L 772.22,377.488 L 770.158,376.508 L 767.949,375.594 L 765.777,374.712 L 763.458,373.896 L 761.102,373.145 L 758.636,372.46 L 756.133,371.872 L 753.556,371.317 L 750.905,370.827 L 748.255,370.435 L 745.567,370.109 L 742.806,369.815 L 740.082,369.684 L 737.321,369.586 L 734.56,369.521 L 734.56,369.521 L 731.763,369.586 L 729.039,369.684 L 726.278,369.815 L 723.59,370.109 L 720.903,370.435 L 718.216,370.827 L 715.602,371.317 L 713.062,371.872 L 710.522,372.46 L 708.055,373.145 L 705.699,373.896 L 703.38,374.712 L 701.135,375.594 L 699.036,376.508 L 696.975,377.488 L 694.95,378.565 L 693.11,379.61 L 691.379,380.818 L 689.796,381.961 L 688.25,383.169 L 686.851,384.475 L 685.526,385.748 L 684.385,387.12 L 683.391,388.458 L 682.471,389.895 L 681.661,391.266 L 681.072,392.735 L 680.593,394.172 L 680.225,395.609 L 680.004,397.078 L 679.968,398.547 L 679.968,398.547 L 680.004,400.016 L 680.225,401.518 L 680.593,402.955 L 681.072,404.391 L 681.661,405.828 L 682.471,407.232 L 683.391,408.669 L 684.385,410.007 L 685.526,411.313 L 686.851,412.652 L 688.25,413.893 L 689.796,415.133 L 691.379,416.309 L 693.11,417.451 L 694.95,418.562 L 696.975,419.574 L 699.036,420.586 L 701.135,421.5 L 703.38,422.349 L 705.699,423.165 L 708.055,423.916 L 710.522,424.602 L 713.062,425.222 L 715.602,425.81 L 718.216,426.3 L 720.903,426.626 L 723.59,427.018 L 726.278,427.247 L 729.039,427.442 L 731.763,427.54 L 734.56,427.573 L 734.56,427.573 L 737.321,427.54 L 740.082,427.442 L 742.806,427.247 L 745.567,427.018 L 748.255,426.626 L 750.905,426.3 L 753.556,425.81 L 756.133,425.222 L 758.636,424.602 L 761.102,423.916 L 763.458,423.165 L 765.777,422.349 L 767.949,421.5 L 770.158,420.586 L 772.22,419.574 L 774.134,418.562 L 775.974,417.451 L 777.778,416.309 L 779.361,415.133 L 780.907,413.893 L 782.343,412.652 L 783.595,411.313 L 784.736,410.007 L 785.803,408.669 L 786.687,407.232 L 787.423,405.828 L 788.086,404.391 L 788.564,402.955 L 788.932,401.518 L 789.08,400.016 L 789.19,398.547z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 778.515 429.401 L 778.441,427.018 L 778.22,424.569 L 777.926,422.218 L 777.447,419.802 L 776.821,417.451 L 776.048,415.133 L 775.165,412.848 L 774.097,410.595 L 772.956,408.407 L 771.741,406.252 L 770.342,404.163 L 768.796,402.171 L 767.176,400.212 L 765.409,398.351 L 763.569,396.555 L 761.654,394.825 L 759.593,393.192 L 757.495,391.723 L 755.249,390.287 L 752.967,388.981 L 750.611,387.74 L 748.218,386.63 L 745.715,385.585 L 743.175,384.671 L 740.524,383.887 L 737.91,383.267 L 735.186,382.679 L 732.499,382.255 L 729.812,381.961 L 727.087,381.765 L 724.327,381.732 L 724.327,381.732 L 721.566,381.765 L 718.841,381.961 L 716.081,382.255 L 713.393,382.679 L 710.743,383.267 L 708.055,383.887 L 705.479,384.671 L 702.939,385.585 L 700.435,386.63 L 697.969,387.74 L 695.613,388.981 L 693.33,390.287 L 691.159,391.723 L 688.987,393.192 L 686.962,394.825 L 685.011,396.555 L 683.17,398.351 L 681.44,400.212 L 679.783,402.171 L 678.311,404.163 L 676.912,406.252 L 675.624,408.407 L 674.482,410.595 L 673.489,412.848 L 672.605,415.133 L 671.832,417.451 L 671.206,419.802 L 670.728,422.218 L 670.359,424.569 L 670.139,427.018 L 670.065,429.401 L 670.065,429.401 L 670.139,431.818 L 670.359,434.266 L 670.728,436.617 L 671.206,439.001 L 671.832,441.417 L 672.605,443.702 L 673.489,445.955 L 674.482,448.241 L 675.624,450.395 L 676.912,452.55 L 678.311,454.673 L 679.783,456.664 L 681.44,458.591 L 683.17,460.484 L 685.011,462.28 L 686.962,463.978 L 688.987,465.61 L 691.159,467.145 L 693.33,468.549 L 695.613,469.888 L 697.969,471.096 L 700.435,472.238 L 702.939,473.25 L 705.479,474.165 L 708.055,474.916 L 710.743,475.601 L 713.393,476.124 L 716.081,476.548 L 718.841,476.842 L 721.566,477.038 L 724.327,477.136 L 724.327,477.136 L 727.087,477.038 L 729.812,476.842 L 732.499,476.548 L 735.186,476.124 L 737.91,475.601 L 740.524,474.916 L 743.175,474.165 L 745.715,473.25 L 748.218,472.238 L 750.611,471.096 L 752.967,469.888 L 755.249,468.549 L 757.495,467.145 L 759.593,465.61 L 761.654,463.978 L 763.569,462.28 L 765.409,460.484 L 767.176,458.591 L 768.796,456.664 L 770.342,454.673 L 771.741,452.55 L 772.956,450.395 L 774.097,448.241 L 775.165,445.955 L 776.048,443.702 L 776.821,441.417 L 777.447,439.001 L 777.926,436.617 L 778.22,434.266 L 778.441,431.818 L 778.515,429.401z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 731.689 400.702 L 731.542,398.253 L 731.1,395.902 L 730.401,393.454 L 729.443,391.103 L 728.192,388.752 L 726.646,386.401 L 724.842,384.116 L 722.744,381.863 L 720.461,379.675 L 717.884,377.553 L 715.013,375.431 L 711.958,373.406 L 708.644,371.513 L 705.11,369.619 L 701.356,367.791 L 697.453,366.093 L 693.294,364.493 L 688.95,362.958 L 684.495,361.522 L 679.82,360.183 L 674.998,358.975 L 670.065,357.832 L 665.022,356.82 L 659.868,355.939 L 654.567,355.188 L 649.192,354.502 L 643.781,353.98 L 638.296,353.555 L 632.774,353.196 L 627.215,353.033 L 621.583,352.968 L 621.583,352.968 L 616.024,353.033 L 610.466,353.196 L 604.944,353.555 L 599.422,353.98 L 594.01,354.502 L 588.636,355.188 L 583.372,355.939 L 578.218,356.82 L 573.101,357.832 L 568.242,358.975 L 563.419,360.183 L 558.707,361.522 L 554.216,362.958 L 549.946,364.493 L 545.749,366.093 L 541.81,367.791 L 538.129,369.619 L 534.558,371.513 L 531.245,373.406 L 528.227,375.431 L 525.355,377.553 L 522.815,379.675 L 520.496,381.863 L 518.361,384.116 L 516.594,386.401 L 515.084,388.752 L 513.759,391.103 L 512.802,393.454 L 512.103,395.902 L 511.661,398.253 L 511.55,400.702 L 511.55,400.702 L 511.661,403.085 L 512.103,405.502 L 512.802,407.885 L 513.759,410.301 L 515.084,412.652 L 516.594,414.97 L 518.361,417.223 L 520.496,419.508 L 522.815,421.729 L 525.355,423.851 L 528.227,425.908 L 531.245,427.932 L 534.558,429.891 L 538.129,431.752 L 541.81,433.548 L 545.749,435.278 L 549.946,436.911 L 554.216,438.445 L 558.707,439.882 L 563.419,441.155 L 568.242,442.429 L 573.101,443.506 L 578.218,444.518 L 583.372,445.433 L 588.636,446.216 L 594.01,446.869 L 599.422,447.424 L 604.944,447.849 L 610.466,448.143 L 616.024,448.371 L 621.583,448.404 L 621.583,448.404 L 627.215,448.371 L 632.774,448.143 L 638.296,447.849 L 643.781,447.424 L 649.192,446.869 L 654.567,446.216 L 659.868,445.433 L 665.022,444.518 L 670.065,443.506 L 674.998,442.429 L 679.82,441.155 L 684.495,439.882 L 688.95,438.445 L 693.294,436.911 L 697.453,435.278 L 701.356,433.548 L 705.11,431.752 L 708.644,429.891 L 711.958,427.932 L 715.013,425.908 L 717.884,423.851 L 720.461,421.729 L 722.744,419.508 L 724.842,417.223 L 726.646,414.97 L 728.192,412.652 L 729.443,410.301 L 730.401,407.885 L 731.1,405.502 L 731.542,403.085 L 731.689,400.702z"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 640.541 347.254 L 713.393,339.026 L 712.473,337.23 L 711.332,335.402 L 710.08,333.606 L 708.571,331.876 L 706.951,330.21 L 705.11,328.513 L 703.196,326.913 L 700.987,325.378 L 698.742,323.876 L 696.312,322.44 L 693.699,321.068 L 690.974,319.795 L 688.103,318.554 L 685.121,317.346 L 682.029,316.269 L 678.826,315.289 L 675.587,314.31 L 672.163,313.494 L 668.703,312.743 L 665.206,312.057 L 661.561,311.469 L 657.917,311.012 L 654.236,310.588 L 650.518,310.294 L 646.763,310.098 L 642.971,310 L 639.216,310 L 635.424,310.098 L 631.633,310.229 L 627.951,310.49 L 624.233,310.914 L 620.552,311.339 L 616.908,311.926 L 613.337,312.547 L 609.877,313.265 L 606.49,314.081 L 603.14,314.995 L 599.9,315.942 L 596.845,317.02 L 593.826,318.163 L 590.918,319.371 L 588.157,320.644 L 585.544,322.015 L 583.077,323.452 L 580.721,324.921 L 578.512,326.456 L 576.451,328.056 L 574.573,329.688 L 572.954,331.418 L 571.371,333.084 L 570.009,334.879 L 568.867,336.642 L 567.91,338.471 L 567.1,340.299 L 640.541,347.254z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 713.393 338.961 L 712.436,337.132 L 711.332,335.336 L 710.043,333.541 L 708.571,331.843 L 706.877,330.145 L 705.074,328.48 L 703.123,326.88 L 700.914,325.346 L 698.631,323.876 L 696.275,322.44 L 693.625,321.003 L 690.974,319.73 L 688.066,318.489 L 685.084,317.346 L 682.029,316.204 L 678.826,315.224 L 675.55,314.31 L 672.126,313.461 L 668.666,312.743 L 665.206,312.057 L 661.561,311.469 L 657.88,311.012 L 654.199,310.588 L 650.481,310.294 L 646.763,310.098 L 642.934,310 L 639.179,310 L 635.424,310.098 L 631.67,310.229 L 627.915,310.49 L 624.233,310.914 L 620.552,311.306 L 616.945,311.861 L 613.411,312.547 L 609.877,313.265 L 606.527,314.081 L 603.177,314.995 L 599.974,315.942 L 596.845,316.987 L 593.863,318.163 L 590.955,319.371 L 588.194,320.611 L 585.58,321.983 L 583.077,323.387 L 580.721,324.888 L 578.512,326.423 L 576.524,327.99 L 574.61,329.688 L 572.954,331.321 L 571.408,333.051 L 570.082,334.781 L 568.867,336.577 L 567.91,338.406 L 567.137,340.234"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 541.479 366.615 L 578.218,338.046 L 575.935,336.871 L 573.543,335.761 L 571.113,334.781 L 568.61,333.802 L 566.07,332.953 L 563.419,332.169 L 560.695,331.516 L 558.008,330.896 L 555.173,330.406 L 552.375,329.982 L 549.504,329.688 L 546.633,329.459 L 543.761,329.329 L 540.89,329.329 L 537.982,329.394 L 535.11,329.59 L 532.239,329.819 L 529.405,330.178 L 526.607,330.635 L 523.846,331.157 L 521.085,331.778 L 518.434,332.496 L 515.784,333.312 L 513.244,334.194 L 510.777,335.173 L 508.421,336.251 L 506.065,337.393 L 503.857,338.569 L 501.758,339.875 L 499.697,341.213 L 497.783,342.65 L 496.016,344.087 L 494.322,345.654 L 492.776,347.221 L 491.304,348.854 L 490.015,350.551 L 488.8,352.282 L 487.77,354.012 L 486.849,355.808 L 486.113,357.636 L 485.524,359.465 L 485.009,361.359 L 484.641,363.252 L 484.493,365.113 L 484.42,366.974 L 484.53,368.868 L 484.751,370.794 L 485.193,372.623 L 541.479,366.615z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 578.034 337.948 L 575.751,336.773 L 573.432,335.696 L 571.003,334.683 L 568.463,333.769 L 565.849,332.888 L 563.235,332.137 L 560.548,331.451 L 557.787,330.863 L 555.026,330.406 L 552.155,329.982 L 549.32,329.688 L 546.485,329.459 L 543.614,329.329 L 540.669,329.329 L 537.871,329.394 L 535,329.59 L 532.055,329.819 L 529.257,330.21 L 526.496,330.635 L 523.662,331.223 L 520.974,331.81 L 518.324,332.561 L 515.71,333.377 L 513.133,334.259 L 510.667,335.239 L 508.311,336.316 L 506.029,337.426 L 503.82,338.667 L 501.648,339.907 L 499.697,341.311 L 497.746,342.683 L 495.942,344.185 L 494.285,345.687 L 492.702,347.254 L 491.304,348.919 L 490.015,350.617 L 488.8,352.347 L 487.733,354.078 L 486.849,355.906 L 486.113,357.669 L 485.45,359.53 L 485.009,361.424 L 484.641,363.285 L 484.493,365.146 L 484.42,367.04 L 484.604,368.901 L 484.825,370.794 L 485.193,372.688"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 531.245 433.352 L 472.124,432.34 L 472.124,434.07 L 472.235,435.703 L 472.529,437.433 L 473.008,439.066 L 473.56,440.731 L 474.259,442.429 L 475.18,443.996 L 476.137,445.596 L 477.352,447.163 L 478.64,448.665 L 480.002,450.2 L 481.622,451.636 L 483.242,453.04 L 485.082,454.379 L 486.96,455.685 L 488.984,456.925 L 491.156,458.068 L 493.365,459.178 L 495.684,460.288 L 498.114,461.235 L 500.617,462.149 L 503.231,463.031 L 505.881,463.749 L 508.532,464.468 L 511.33,465.088 L 514.164,465.61 L 517.036,466.035 L 519.944,466.427 L 522.852,466.72 L 525.797,466.916 L 528.779,467.014 L 531.797,467.014 L 534.706,466.949 L 537.687,466.818 L 540.632,466.623 L 543.54,466.329 L 546.485,465.904 L 549.283,465.414 L 552.155,464.892 L 554.842,464.206 L 557.566,463.553 L 560.217,462.737 L 562.72,461.856 L 565.26,460.909 L 567.579,459.897 L 569.898,458.852 L 531.245,433.352z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 472.198 432.34 L 472.087,434.005 L 472.308,435.703 L 472.529,437.368 L 473.008,439.066 L 473.56,440.698 L 474.296,442.364 L 475.18,443.996 L 476.21,445.596 L 477.352,447.13 L 478.566,448.665 L 480.002,450.134 L 481.511,451.603 L 483.242,452.975 L 485.009,454.379 L 486.923,455.619 L 488.911,456.86 L 491.046,458.068 L 493.255,459.178 L 495.574,460.223 L 498.003,461.203 L 500.507,462.117 L 503.047,462.966 L 505.697,463.749 L 508.458,464.468 L 511.182,465.023 L 513.98,465.545 L 516.851,466.035 L 519.796,466.361 L 522.705,466.72 L 525.613,466.851 L 528.595,467.014 L 531.576,467.014 L 534.521,467.014 L 537.466,466.851 L 540.411,466.623 L 543.32,466.329 L 546.265,465.937 L 549.062,465.48 L 551.934,464.925 L 554.658,464.272 L 557.308,463.553 L 559.959,462.77 L 562.499,461.921 L 565.039,461.007 L 567.432,459.995 L 569.677,458.95"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 719.357 360.542 L 771.373,369.978 L 772.256,368.574 L 772.919,367.17 L 773.545,365.734 L 773.913,364.264 L 774.281,362.795 L 774.355,361.326 L 774.355,359.824 L 774.281,358.387 L 773.987,356.918 L 773.582,355.449 L 772.993,354.012 L 772.293,352.576 L 771.483,351.204 L 770.526,349.8 L 769.422,348.462 L 768.17,347.123 L 766.771,345.817 L 765.336,344.576 L 763.753,343.368 L 762.059,342.226 L 760.256,341.05 L 758.268,340.005 L 756.28,338.993 L 754.108,338.046 L 751.936,337.132 L 749.654,336.316 L 747.298,335.5 L 744.831,334.781 L 742.328,334.128 L 739.751,333.541 L 737.1,333.051 L 734.487,332.627 L 731.726,332.235 L 729.002,331.941 L 726.241,331.712 L 723.443,331.614 L 720.682,331.516 L 717.921,331.516 L 715.123,331.614 L 712.326,331.745 L 709.602,331.974 L 706.841,332.267 L 704.117,332.627 L 701.429,333.084 L 719.357,360.542z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 766.587 375.3 L 771.336,370.044 L 772.22,368.672 L 772.919,367.236 L 773.471,365.799 L 773.913,364.33 L 774.207,362.861 L 774.318,361.424 L 774.355,359.889 L 774.244,358.453 L 773.987,356.983 L 773.582,355.514 L 772.993,354.078 L 772.293,352.641 L 771.52,351.237 L 770.563,349.898 L 769.422,348.494 L 768.17,347.156 L 766.882,345.85 L 765.372,344.609 L 763.79,343.401 L 762.096,342.226 L 760.292,341.116 L 758.378,340.071 L 756.353,339.026 L 754.255,338.046 L 752.01,337.165 L 749.727,336.316 L 747.371,335.532 L 744.905,334.879 L 742.401,334.194 L 739.861,333.573 L 737.248,333.051 L 734.56,332.627 L 731.91,332.235 L 729.186,331.941 L 726.425,331.745 L 723.627,331.614 L 720.829,331.516 L 717.995,331.516 L 715.234,331.614 L 712.436,331.745 L 709.675,331.941 L 706.951,332.235 L 704.264,332.594 L 701.576,333.051"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 726.756 398.906 L 785.325,410.856 L 786.503,409.289 L 787.46,407.754 L 788.343,406.122 L 789.043,404.489 L 789.521,402.857 L 789.853,401.224 L 789.963,399.527 L 789.963,397.861 L 789.742,396.196 L 789.411,394.564 L 788.822,392.899 L 788.123,391.299 L 787.202,389.699 L 786.208,388.099 L 784.957,386.564 L 783.558,385.095 L 782.049,383.593 L 780.318,382.124 L 778.478,380.753 L 726.756,398.906z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 777.889 416.276 L 785.251,410.921 L 786.356,409.387 L 787.46,407.754 L 788.307,406.155 L 789.006,404.489 L 789.485,402.857 L 789.853,401.224 L 790,399.527 L 789.963,397.861 L 789.742,396.164 L 789.337,394.531 L 788.822,392.899 L 788.123,391.266 L 787.202,389.634 L 786.172,388.034 L 784.883,386.467 L 783.521,384.997 L 781.901,383.495 L 780.245,382.059 L 778.367,380.687 L 766.587,375.3"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 724.29 430.446 L 705.81,475.797 L 708.534,476.516 L 711.295,477.169 L 714.056,477.658 L 716.927,478.05 L 719.725,478.344 L 722.523,478.475 L 725.431,478.475 L 728.265,478.344 L 731.063,478.148 L 733.898,477.756 L 736.659,477.266 L 739.42,476.711 L 742.144,475.993 L 744.831,475.112 L 747.408,474.165 L 749.985,473.087 L 752.488,471.912 L 754.918,470.606 L 757.274,469.267 L 759.519,467.733 L 761.654,466.133 L 763.716,464.468 L 765.704,462.672 L 767.581,460.811 L 769.275,458.884 L 770.894,456.86 L 772.44,454.803 L 773.803,452.648 L 775.017,450.493 L 776.159,448.241 L 777.116,445.922 L 777.999,443.572 L 778.699,441.221 L 779.288,438.805 L 779.656,436.421 L 779.987,433.972 L 780.061,431.524 L 780.061,429.075 L 779.913,426.626 L 779.619,424.177 L 779.177,421.761 L 778.625,419.378 L 777.889,417.027 L 724.29,430.446z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 705.957 475.83 L 708.718,476.613 L 711.442,477.234 L 714.24,477.756 L 717.038,478.083 L 719.909,478.344 L 722.707,478.475 L 725.541,478.54 L 728.376,478.344 L 731.247,478.148 L 734.045,477.756 L 736.806,477.266 L 739.567,476.646 L 742.291,475.928 L 744.942,475.079 L 747.592,474.099 L 750.132,473.055 L 752.599,471.912 L 754.991,470.606 L 757.347,469.169 L 759.593,467.667 L 761.728,466.035 L 763.79,464.37 L 765.777,462.639 L 767.618,460.746 L 769.385,458.787 L 770.931,456.827 L 772.477,454.705 L 773.839,452.55 L 775.054,450.395 L 776.159,448.143 L 777.152,445.792 L 778.036,443.474 L 778.699,441.09 L 779.288,438.707 L 779.729,436.323 L 779.987,433.874 L 780.061,431.426 L 780.061,428.977 L 779.877,426.528 L 779.619,424.079 L 779.14,421.663 L 778.515,419.28 L 777.889,416.929"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 490.162 404.685 L 487.365,373.896 L 485.303,374.059 L 483.352,374.255 L 481.291,374.582 L 479.303,374.974 L 477.352,375.431 L 475.437,376.019 L 473.56,376.574 L 471.719,377.325 L 469.879,378.043 L 468.149,378.859 L 466.455,379.773 L 464.835,380.72 L 463.252,381.732 L 461.817,382.842 L 460.381,383.952 L 459.056,385.128 L 457.804,386.369 L 456.663,387.675 L 455.522,388.981 L 454.528,390.385 L 453.681,391.821 L 452.871,393.258 L 452.098,394.694 L 451.509,396.196 L 451.031,397.731 L 450.589,399.265 L 450.258,400.833 L 450.11,402.432 L 450,403.967 L 450,405.534 L 450.11,407.069 L 450.331,408.669 L 450.663,410.203 L 451.031,411.738 L 451.583,413.272 L 452.172,414.774 L 452.908,416.243 L 453.718,417.68 L 454.638,419.084 L 455.632,420.488 L 456.773,421.761 L 457.915,423.067 L 459.203,424.308 L 460.565,425.483 L 461.964,426.626 L 463.473,427.671 L 465.056,428.683 L 466.676,429.663 L 468.406,430.544 L 470.1,431.36 L 471.94,432.111 L 490.162,404.685z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 487.365 373.896 L 485.414,374.059 L 483.389,374.255 L 481.401,374.582 L 479.487,374.941 L 477.536,375.398 L 475.621,375.888 L 473.781,376.508 L 471.977,377.161 L 470.173,377.88 L 468.517,378.696 L 466.786,379.577 L 465.204,380.492 L 463.657,381.471 L 462.185,382.549 L 460.712,383.659 L 459.424,384.769 L 458.136,386.009 L 456.994,387.25 L 455.89,388.556 L 454.933,389.895 L 454.013,391.266 L 453.129,392.637 L 452.393,394.074 L 451.73,395.543 L 451.178,397.045 L 450.773,398.547 L 450.368,400.082 L 450.147,401.616 L 450,403.151 L 450,404.685 L 450,406.22 L 450.221,407.754 L 450.442,409.289 L 450.773,410.824 L 451.252,412.325 L 451.73,413.795 L 452.393,415.231 L 453.203,416.733 L 454.013,418.137 L 454.933,419.476 L 455.964,420.814 L 457.031,422.12 L 458.172,423.361 L 459.424,424.569 L 460.786,425.712 L 462.222,426.822 L 463.694,427.867 L 465.277,428.846 L 466.823,429.793 L 468.517,430.642 L 470.247,431.426 L 472.014,432.177"/>
<path style="fill: #b6c7c9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 639.29 454.118 L 555.505,457.676 L 556.057,459.472 L 556.756,461.301 L 557.713,463.064 L 558.928,464.794 L 560.217,466.459 L 561.799,468.157 L 563.53,469.79 L 565.481,471.422 L 567.653,472.957 L 569.972,474.491 L 572.401,475.928 L 575.089,477.332 L 577.887,478.67 L 580.868,479.976 L 583.997,481.152 L 587.237,482.327 L 590.697,483.372 L 594.158,484.417 L 597.802,485.331 L 601.52,486.213 L 605.422,486.931 L 609.324,487.649 L 613.263,488.237 L 617.386,488.759 L 621.509,489.184 L 625.669,489.51 L 629.792,489.771 L 634.026,489.902 L 638.296,490 L 642.492,490 L 646.763,489.869 L 650.959,489.673 L 655.119,489.38 L 659.242,488.955 L 663.365,488.498 L 667.341,487.943 L 671.317,487.257 L 675.182,486.604 L 679.01,485.788 L 682.692,484.874 L 686.226,483.894 L 689.686,482.85 L 693.036,481.707 L 696.239,480.531 L 699.294,479.291 L 702.129,477.985 L 704.89,476.613 L 707.43,475.177 L 709.859,473.675 L 712.105,472.14 L 714.093,470.606 L 715.933,468.973 L 717.627,467.276 L 719.062,465.61 L 639.29,454.118z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #6c8f93" d="M 555.578 457.742 L 556.057,459.505 L 556.793,461.301 L 557.713,463.064 L 558.928,464.794 L 560.29,466.525 L 561.799,468.157 L 563.566,469.79 L 565.481,471.422 L 567.653,472.957 L 569.972,474.491 L 572.401,475.928 L 575.089,477.332 L 577.96,478.67 L 580.868,479.976 L 583.997,481.152 L 587.237,482.327 L 590.697,483.372 L 594.158,484.384 L 597.802,485.331 L 601.52,486.213 L 605.349,486.931 L 609.251,487.649 L 613.227,488.237 L 617.35,488.759 L 621.436,489.184 L 625.595,489.478 L 629.755,489.771 L 633.952,489.902 L 638.185,490 L 642.419,489.967 L 646.615,489.869 L 650.812,489.608 L 655.045,489.38 L 659.168,488.955 L 663.218,488.465 L 667.267,487.943 L 671.206,487.323 L 675.071,486.604 L 678.863,485.788 L 682.508,484.874 L 686.115,483.894 L 689.576,482.882 L 692.889,481.805 L 696.091,480.597 L 699.11,479.356 L 702.055,478.05 L 704.779,476.613 L 707.356,475.21 L 709.786,473.708 L 711.958,472.238 L 714.019,470.606 L 715.86,469.006 L 717.479,467.341 L 718.989,465.643"/>
</g>
<g>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 472.883 378.401 L 472.883,360.469"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 472.883 378.111 L 472.883,365.811"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 473.404 362.192 L 472.308,362.192 L 472.308,360 L 473.404,360 L 473.404,362.192z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 473.404 362.192 L 472.308,362.192 L 472.308,360 L 473.404,360 L 473.404,362.192"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 446.304 378.401 L 446.304,360.469"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 446.304 378.111 L 446.304,365.811"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 446.824 362.192 L 445.728,362.192 L 445.728,360 L 446.824,360 L 446.824,362.192z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 446.824 362.192 L 445.728,362.192 L 445.728,360 L 446.824,360 L 446.824,362.192"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 480.318 380.677 C 480.318,385.007 471.293,388.516 460.159,388.516 C 449.025,388.516 440,385.007 440,380.677 L 440,392.16 C 440,396.49 449.025,400 460.159,400 C 471.293,400 480.318,396.49 480.318,392.16 L 480.318,380.677z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 480.318 380.677 C 480.318,385.007 471.293,388.516 460.159,388.516 C 449.025,388.516 440,385.007 440,380.677 L 440,392.16 C 440,396.49 449.025,400 460.159,400 C 471.293,400 480.318,396.49 480.318,392.16 L 480.318,380.677"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 460.159 388.516 C 471.293,388.516 480.318,385.007 480.318,380.677 C 480.318,376.347 471.293,372.837 460.159,372.837 C 449.025,372.837 440,376.347 440,380.677 C 440,385.007 449.025,388.516 460.159,388.516z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 460.159 388.516 C 471.293,388.516 480.318,385.007 480.318,380.677 C 480.318,376.347 471.293,372.837 460.159,372.837 C 449.025,372.837 440,376.347 440,380.677 C 440,385.007 449.025,388.516 460.159,388.516"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 455.555 377.612 L 457.22,380.109 L 450.927,381.563 L 452.301,380.419 L 442.574,378.756 L 445.015,376.927 L 454.4,378.516 L 455.555,377.612z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 464.413 383.666 L 463.276,381.093 L 468.953,379.958 L 467.968,380.84 L 477.431,382.456 L 475.162,384.272 L 465.754,382.507 L 464.413,383.666z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 461.308 376.248 L 467.667,374.508 L 467.742,377.234 L 466.153,376.93 L 463.048,379.503 L 460.088,379.072 L 463.29,376.554 L 461.308,376.248z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 458.583 386.014 L 452.528,387.149 L 452.301,384.349 L 454.041,384.726 L 457.374,381.88 L 460.324,382.38 L 456.767,385.484 L 458.583,386.014z"/>
</g>
<text font-size="21.4489" style="fill: #000000; fill-opacity: 1; stroke: none;text-anchor:start;font-family:sans-serif;font-style:italic;font-weight:normal" x="620" y="390">
<tspan x="620" y="390">Mesh</tspan>
</text>
<g>
<path style="fill: #c9c9b6; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 294.294 324.172 L 328.289,324.172 L 313.995,338.514 L 280,338.514 L 294.294,324.172z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 294.294 324.172 L 328.289,324.172 L 313.995,338.514 L 280,338.514 L 294.294,324.172"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #dbdbce" d="M 295.599 336.092 L 295.599,336.168 L 295.613,336.23 L 295.633,336.314 L 295.661,336.397 L 295.703,336.46 L 295.751,336.536 L 295.814,336.605 L 295.876,336.668 L 295.939,336.744 L 296.022,336.821 L 296.106,336.883 L 296.196,336.939 L 296.3,336.994 L 296.397,337.057 L 296.522,337.105 L 296.633,337.168 L 296.758,337.216 L 296.897,337.265 L 297.036,337.306 L 297.168,337.348 L 297.313,337.39 L 297.459,337.431 L 297.612,337.452 L 297.779,337.48 L 297.938,337.494 L 298.105,337.522 L 298.258,337.543 L 298.431,337.563 L 298.605,337.57 L 298.771,337.577 L 298.938,337.577"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #dbdbce" d="M 298.57 337.577 L 298.737,337.577 L 298.896,337.57 L 299.056,337.556 L 299.222,337.536 L 299.389,337.522 L 299.542,337.494 L 299.695,337.48 L 299.854,337.445 L 300,337.411 L 300.153,337.369 L 300.285,337.327 L 300.423,337.286 L 300.555,337.237 L 300.68,337.188 L 300.791,337.14 L 300.909,337.084 L 301.02,337.022 L 301.118,336.966 L 301.215,336.897 L 301.298,336.827 L 301.375,336.758 L 301.437,336.696 L 301.506,336.619 L 301.562,336.543 L 301.604,336.48 L 301.652,336.404 L 301.673,336.314 L 301.694,336.237 L 301.715,336.168 L 301.722,336.092"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #dbdbce" d="M 299.306 333.308 L 299.132,333.308 L 298.966,333.315 L 298.792,333.315 L 298.639,333.329 L 298.473,333.35 L 298.306,333.363 L 298.146,333.377 L 297.98,333.412 L 297.834,333.44 L 297.688,333.461 L 297.543,333.495 L 297.397,333.537 L 297.265,333.572 L 297.14,333.613 L 297.015,333.669 L 296.876,333.711 L 296.779,333.759 L 296.668,333.801 L 296.564,333.856 L 296.48,333.919 L 296.39,333.974 L 296.314,334.023 L 296.237,334.085 L 296.182,334.148 L 296.126,334.217 L 296.071,334.28 L 296.043,334.335 L 296.008,334.405 L 295.988,334.46 L 295.981,334.537 L 295.974,334.592"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #dbdbce" d="M 302.083 334.592 L 302.083,334.53 L 302.076,334.46 L 302.048,334.398 L 302.02,334.321 L 301.985,334.266 L 301.93,334.19 L 301.874,334.134 L 301.819,334.065 L 301.736,334.016 L 301.673,333.947 L 301.59,333.891 L 301.479,333.842 L 301.388,333.773 L 301.284,333.738 L 301.173,333.683 L 301.048,333.627 L 300.916,333.586 L 300.784,333.544 L 300.653,333.509 L 300.514,333.481 L 300.368,333.447 L 300.215,333.412 L 300.069,333.391 L 299.917,333.363 L 299.764,333.35 L 299.604,333.329 L 299.438,333.315 L 299.264,333.315 L 299.098,333.308 L 298.938,333.308"/>
<path style="fill: #a5a585; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 280 340 L 313.995,340 L 313.995,338.514 L 280,338.514 L 280,340z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 280 340 L 313.995,340 L 313.995,338.514 L 280,338.514 L 280,340"/>
<path style="fill: #a5a585; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 294.294 324.172 L 328.289,324.172 L 328.289,300.916 L 294.294,300.916 L 294.294,324.172z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 294.294 324.172 L 328.289,324.172 L 328.289,300.916 L 294.294,300.916 L 294.294,324.172"/>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 329.219 323.256 L 329.219,300 L 328.289,300.916 L 328.289,324.172 L 329.219,323.256z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 329.219 323.256 L 329.219,300 L 328.289,300.916 L 328.289,324.172 L 329.219,323.256"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 295.974 322.694 L 326.623,322.694 L 326.623,302.784 L 295.974,302.784 L 295.974,322.694z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 295.974 322.694 L 326.623,322.694 L 326.623,302.784 L 295.974,302.784 L 295.974,322.694"/>
<path style="fill: #93936c; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 295.974 325.297 L 324.568,325.297 L 317.14,332.746 L 288.546,332.746 L 295.974,325.297z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 295.974 325.297 L 324.568,325.297 L 317.14,332.746 L 288.546,332.746 L 295.974,325.297"/>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 300.423 335.62 L 300.423,335.578 L 300.417,335.536 L 300.41,335.495 L 300.389,335.446 L 300.382,335.404 L 300.354,335.37 L 300.34,335.328 L 300.305,335.3 L 300.271,335.259 L 300.25,335.217 L 300.215,335.182 L 300.174,335.148 L 300.132,335.106 L 300.083,335.071 L 300.042,335.05 L 299.993,335.016 L 299.938,334.988 L 299.875,334.967 L 299.826,334.932 L 299.764,334.918 L 299.701,334.891 L 299.646,334.877 L 299.577,334.856 L 299.514,334.842 L 299.438,334.828 L 299.375,334.807 L 299.306,334.8 L 299.243,334.8 L 299.174,334.793 L 299.091,334.793 L 299.035,334.793 L 299.035,334.793 L 298.959,334.793 L 298.882,334.793 L 298.82,334.8 L 298.75,334.8 L 298.688,334.807 L 298.612,334.828 L 298.549,334.842 L 298.48,334.856 L 298.417,334.877 L 298.355,334.891 L 298.299,334.918 L 298.23,334.932 L 298.181,334.967 L 298.126,334.988 L 298.07,335.016 L 298.022,335.05 L 297.98,335.071 L 297.931,335.106 L 297.89,335.148 L 297.855,335.182 L 297.806,335.217 L 297.785,335.259 L 297.744,335.3 L 297.723,335.328 L 297.702,335.37 L 297.681,335.404 L 297.667,335.446 L 297.661,335.495 L 297.647,335.536 L 297.633,335.578 L 297.633,335.62 L 297.633,335.62 L 297.633,335.668 L 297.647,335.71 L 297.661,335.751 L 297.667,335.793 L 297.681,335.835 L 297.702,335.869 L 297.723,335.918 L 297.744,335.953 L 297.785,335.994 L 297.806,336.022 L 297.855,336.064 L 297.89,336.099 L 297.931,336.14 L 297.98,336.168 L 298.022,336.196 L 298.07,336.23 L 298.126,336.258 L 298.181,336.279 L 298.23,336.314 L 298.299,336.328 L 298.355,336.355 L 298.417,336.369 L 298.48,336.39 L 298.549,336.404 L 298.612,336.418 L 298.688,336.432 L 298.75,336.446 L 298.82,336.446 L 298.882,336.446 L 298.959,336.453 L 299.035,336.453 L 299.035,336.453 L 299.091,336.453 L 299.174,336.446 L 299.243,336.446 L 299.306,336.446 L 299.375,336.432 L 299.438,336.418 L 299.514,336.404 L 299.577,336.39 L 299.646,336.369 L 299.701,336.355 L 299.764,336.328 L 299.826,336.314 L 299.875,336.279 L 299.938,336.258 L 299.993,336.23 L 300.042,336.196 L 300.083,336.168 L 300.132,336.14 L 300.174,336.099 L 300.215,336.064 L 300.25,336.022 L 300.271,335.994 L 300.305,335.953 L 300.34,335.918 L 300.354,335.869 L 300.382,335.835 L 300.389,335.793 L 300.41,335.751 L 300.417,335.71 L 300.423,335.668 L 300.423,335.62z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #dbdbce" d="M 300.243 335.536 L 300.243,335.495 L 300.236,335.453 L 300.236,335.418 L 300.215,335.39 L 300.201,335.335 L 300.194,335.314 L 300.16,335.272 L 300.132,335.231 L 300.111,335.203 L 300.083,335.175 L 300.042,335.148 L 300.007,335.099 L 299.965,335.071 L 299.924,335.05 L 299.889,335.016 L 299.833,334.988 L 299.792,334.974 L 299.743,334.939 L 299.695,334.925 L 299.632,334.898 L 299.577,334.884 L 299.514,334.87 L 299.459,334.849 L 299.396,334.835 L 299.334,334.828 L 299.264,334.807 L 299.209,334.8 L 299.132,334.793 L 299.077,334.793 L 299.007,334.793 L 298.945,334.793 L 298.945,334.793 L 298.875,334.793 L 298.813,334.793 L 298.743,334.793 L 298.688,334.8 L 298.619,334.807 L 298.563,334.828 L 298.487,334.835 L 298.431,334.849 L 298.383,334.87 L 298.313,334.884 L 298.258,334.898 L 298.188,334.925 L 298.153,334.939 L 298.091,334.974 L 298.049,334.988 L 298.001,335.016 L 297.959,335.05 L 297.917,335.071 L 297.876,335.099 L 297.841,335.148 L 297.806,335.175 L 297.779,335.203 L 297.744,335.231 L 297.73,335.272 L 297.702,335.314 L 297.688,335.335 L 297.674,335.39 L 297.661,335.418 L 297.654,335.453 L 297.647,335.495 L 297.647,335.536 L 297.647,335.536 L 297.647,335.571 L 297.654,335.613 L 297.661,335.654 L 297.674,335.675 L 297.688,335.717 L 297.702,335.758 L 297.73,335.793 L 297.744,335.828 L 297.779,335.869 L 297.806,335.89 L 297.841,335.925 L 297.876,335.96 L 297.917,335.994 L 297.959,336.015 L 298.001,336.05 L 298.049,336.071 L 298.091,336.099 L 298.153,336.126 L 298.188,336.14 L 298.258,336.168 L 298.313,336.189 L 298.383,336.196 L 298.431,336.217 L 298.487,336.23 L 298.563,336.237 L 298.619,336.258 L 298.688,336.272 L 298.743,336.272 L 298.813,336.272 L 298.875,336.272 L 298.945,336.272 L 298.945,336.272 L 299.007,336.272 L 299.077,336.272 L 299.132,336.272 L 299.209,336.272 L 299.264,336.258 L 299.334,336.237 L 299.396,336.23 L 299.459,336.217 L 299.514,336.196 L 299.577,336.189 L 299.632,336.168 L 299.695,336.14 L 299.743,336.126 L 299.792,336.099 L 299.833,336.071 L 299.889,336.05 L 299.924,336.015 L 299.965,335.994 L 300.007,335.96 L 300.042,335.925 L 300.083,335.89 L 300.111,335.869 L 300.132,335.828 L 300.16,335.793 L 300.194,335.758 L 300.201,335.717 L 300.215,335.675 L 300.236,335.654 L 300.236,335.613 L 300.243,335.571 L 300.243,335.536"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #626248" d="M 295.793 336.272 L 295.793,336.355 L 295.807,336.418 L 295.835,336.494 L 295.856,336.578 L 295.897,336.647 L 295.939,336.709 L 296.001,336.786 L 296.064,336.862 L 296.133,336.925 L 296.203,336.994 L 296.293,337.057 L 296.376,337.126 L 296.487,337.182 L 296.591,337.237 L 296.703,337.286 L 296.821,337.348 L 296.952,337.397 L 297.07,337.445 L 297.223,337.487 L 297.362,337.529 L 297.508,337.577 L 297.654,337.612 L 297.806,337.633 L 297.959,337.661 L 298.126,337.688 L 298.285,337.702 L 298.445,337.73 L 298.612,337.744 L 298.785,337.751 L 298.952,337.751 L 299.118,337.751"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #626248" d="M 298.743 337.751 L 298.917,337.751 L 299.077,337.751 L 299.25,337.737 L 299.403,337.716 L 299.563,337.702 L 299.729,337.688 L 299.875,337.661 L 300.035,337.626 L 300.174,337.591 L 300.326,337.563 L 300.472,337.522 L 300.604,337.48 L 300.736,337.431 L 300.861,337.369 L 300.986,337.32 L 301.09,337.265 L 301.201,337.209 L 301.298,337.14 L 301.388,337.084 L 301.479,337.008 L 301.555,336.952 L 301.631,336.883 L 301.694,336.8 L 301.736,336.723 L 301.798,336.661 L 301.826,336.578 L 301.86,336.501 L 301.888,336.418 L 301.888,336.355 L 301.902,336.272"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #626248" d="M 299.486 333.488 L 299.327,333.488 L 299.16,333.495 L 298.993,333.495 L 298.827,333.509 L 298.653,333.53 L 298.487,333.537 L 298.341,333.565 L 298.174,333.586 L 298.022,333.627 L 297.876,333.641 L 297.73,333.683 L 297.591,333.711 L 297.452,333.759 L 297.327,333.801 L 297.202,333.842 L 297.07,333.884 L 296.966,333.933 L 296.855,333.981 L 296.758,334.044 L 296.668,334.099 L 296.585,334.148 L 296.501,334.217 L 296.418,334.266 L 296.369,334.321 L 296.314,334.398 L 296.265,334.453 L 296.224,334.523 L 296.196,334.578 L 296.175,334.641 L 296.168,334.717 L 296.161,334.787"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #626248" d="M 302.277 334.787 L 302.263,334.71 L 302.256,334.641 L 302.242,334.578 L 302.208,334.509 L 302.166,334.446 L 302.117,334.377 L 302.062,334.321 L 301.999,334.259 L 301.93,334.19 L 301.847,334.134 L 301.763,334.072 L 301.673,334.016 L 301.562,333.967 L 301.465,333.919 L 301.347,333.87 L 301.236,333.815 L 301.111,333.773 L 300.979,333.738 L 300.833,333.697 L 300.694,333.669 L 300.555,333.627 L 300.41,333.599 L 300.257,333.572 L 300.09,333.544 L 299.944,333.53 L 299.785,333.509 L 299.618,333.495 L 299.445,333.495 L 299.292,333.488 L 299.118,333.488"/>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 328.289 325.477 L 313.995,339.82 L 313.995,338.514 L 328.289,324.172 L 328.289,325.477z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 328.289 325.477 L 313.995,339.82 L 313.995,338.514 L 328.289,324.172 L 328.289,325.477"/>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 323.464 323.075 L 323.464,323.429 L 326.248,323.429 L 326.248,323.075 L 323.464,323.075z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 323.464 323.075 L 323.464,323.429 L 326.248,323.429 L 326.248,323.075 L 323.464,323.075"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #000000" d="M 322.7 327.157 L 294.294,327.157"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #000000" d="M 320.854 329.025 L 292.447,329.025"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #000000" d="M 319 330.885 L 290.587,330.885"/>
<path style="fill: #c9c9b6; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 295.224 300 L 329.219,300 L 328.289,300.916 L 294.294,300.916 L 295.224,300z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.02; stroke: #494936" d="M 295.224 300 L 329.219,300 L 328.289,300.916 L 294.294,300.916 L 295.224,300"/>
</g>
<g>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 260.594 397.19 C 260.943,395.941 262.38,389.684 262.447,388.811 C 262.514,387.938 262.192,386.851 261.722,386.623 C 261.749,386.314 261.749,386.139 261.749,386.139 C 261.641,386.099 261.521,386.059 261.413,386.005 L 261.453,386.018 C 261.453,386.018 261.776,384.622 261.977,383.655 C 262.34,381.802 262.38,380.862 262.38,380.862 C 262.367,380.607 262.299,380.379 262.071,380.312 L 260.984,380.016 C 260.755,379.949 260.594,380.097 260.446,380.325 C 260.446,380.325 260.017,381.184 259.426,382.957 C 259.104,383.883 258.808,385.065 258.808,385.065 L 258.822,385.065 C 258.177,384.85 257.519,384.662 256.861,384.474 C 255.169,384.004 253.491,383.655 251.799,383.4 C 251.799,383.4 251.719,383.548 251.571,383.83 C 251.061,383.776 250.228,384.555 249.839,385.334 C 249.449,386.112 247.476,392.222 247.126,393.471 C 246.777,394.719 246.119,397.915 245.824,399.499 C 245.529,401.084 245.26,403.85 244.24,407.529 C 243.635,409.704 242.669,412.954 242.158,414.296 C 242.024,414.659 240.963,416.445 242.507,417.062 C 244.025,417.667 246.294,418.311 247.435,418.633 C 248.577,418.942 250.846,419.546 252.457,419.815 C 254.095,420.084 254.109,417.989 254.176,417.613 C 254.431,416.203 255.263,412.913 255.854,410.738 C 256.875,407.046 258.07,404.548 258.634,403.031 C 259.184,401.514 260.245,398.439 260.594,397.19z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 260.594 397.19 C 260.943,395.941 262.38,389.684 262.447,388.811 C 262.514,387.938 262.192,386.851 261.722,386.623 C 261.749,386.314 261.749,386.139 261.749,386.139 C 261.641,386.099 261.521,386.059 261.413,386.005 L 261.453,386.018 C 261.453,386.018 261.776,384.622 261.977,383.655 C 262.34,381.802 262.38,380.862 262.38,380.862 C 262.367,380.607 262.299,380.379 262.071,380.312 L 260.984,380.016 C 260.755,379.949 260.594,380.097 260.446,380.325 C 260.446,380.325 260.017,381.184 259.426,382.957 C 259.104,383.883 258.808,385.065 258.808,385.065 L 258.822,385.065 C 258.177,384.85 257.519,384.662 256.861,384.474 C 255.169,384.004 253.491,383.655 251.799,383.4 C 251.799,383.4 251.719,383.548 251.571,383.83 L 251.571,383.83 C 251.061,383.776 250.228,384.555 249.839,385.334 C 249.449,386.112 247.476,392.222 247.126,393.471 C 246.777,394.719 246.119,397.915 245.824,399.499 C 245.529,401.084 245.26,403.85 244.24,407.529 C 243.635,409.704 242.669,412.954 242.158,414.296 C 242.024,414.659 240.963,416.445 242.507,417.062 C 244.025,417.667 246.294,418.311 247.435,418.633 C 248.577,418.942 250.846,419.546 252.457,419.815 C 254.095,420.084 254.109,417.989 254.176,417.613 C 254.431,416.203 255.263,412.913 255.854,410.738 C 256.875,407.046 258.07,404.548 258.634,403.031 C 259.184,401.514 260.245,398.439 260.594,397.19"/>
<path style="fill: #b7b79d; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 258.916 397.351 C 259.265,396.102 260.702,389.845 260.769,388.986 C 260.836,388.113 260.514,387.012 260.044,386.797 C 260.07,386.488 260.07,386.314 260.07,386.314 C 259.963,386.26 259.842,386.22 259.735,386.179 L 259.762,386.193 C 259.762,386.193 260.097,384.796 260.299,383.83 C 260.661,381.963 260.688,381.023 260.688,381.023 C 260.688,380.768 260.621,380.553 260.393,380.486 L 259.305,380.191 C 259.077,380.124 258.916,380.271 258.768,380.5 C 258.768,380.5 258.338,381.359 257.748,383.118 C 257.425,384.058 257.13,385.226 257.13,385.226 L 257.143,385.24 C 256.499,385.025 255.841,384.823 255.183,384.649 C 253.491,384.179 251.799,383.816 250.121,383.561 C 250.121,383.561 250.04,383.722 249.893,383.991 C 249.382,383.951 248.55,384.716 248.16,385.495 C 247.771,386.273 245.797,392.383 245.448,393.645 C 245.099,394.894 244.441,398.076 244.146,399.661 C 243.85,401.245 243.582,404.011 242.561,407.704 C 241.957,409.879 240.99,413.115 240.48,414.471 C 240.346,414.82 239.285,416.619 240.829,417.237 C 242.346,417.828 244.616,418.486 245.757,418.795 C 246.898,419.117 249.167,419.708 250.779,419.976 C 252.417,420.245 252.43,418.163 252.497,417.788 C 252.753,416.364 253.585,413.088 254.176,410.913 C 255.196,407.22 256.391,404.709 256.955,403.192 C 257.506,401.688 258.567,398.613 258.916,397.351z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 258.916 397.351 C 259.265,396.102 260.702,389.845 260.769,388.986 C 260.836,388.113 260.514,387.012 260.044,386.797 C 260.07,386.488 260.07,386.314 260.07,386.314 C 259.963,386.26 259.842,386.22 259.735,386.179 L 259.762,386.193 C 259.762,386.193 260.097,384.796 260.299,383.83 C 260.661,381.963 260.688,381.023 260.688,381.023 C 260.688,380.768 260.621,380.553 260.393,380.486 L 259.305,380.191 C 259.077,380.124 258.916,380.271 258.768,380.5 C 258.768,380.5 258.338,381.359 257.748,383.118 C 257.425,384.058 257.13,385.226 257.13,385.226 L 257.143,385.24 C 256.499,385.025 255.841,384.823 255.183,384.649 C 253.491,384.179 251.799,383.816 250.121,383.561 C 250.121,383.561 250.04,383.722 249.893,383.991 L 249.893,383.991 C 249.382,383.951 248.55,384.716 248.16,385.495 C 247.771,386.273 245.797,392.383 245.448,393.645 C 245.099,394.894 244.441,398.076 244.146,399.661 C 243.85,401.245 243.582,404.011 242.561,407.704 C 241.957,409.879 240.99,413.115 240.48,414.471 C 240.346,414.82 239.285,416.619 240.829,417.237 C 242.346,417.828 244.616,418.486 245.757,418.795 C 246.898,419.117 249.167,419.708 250.779,419.976 C 252.417,420.245 252.43,418.163 252.497,417.788 C 252.753,416.364 253.585,413.088 254.176,410.913 C 255.196,407.22 256.391,404.709 256.955,403.192 C 257.506,401.688 258.567,398.613 258.916,397.351"/>
<path style="fill: #c9c9b6; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.8; stroke: #ecece7" fill-rule="evenodd" d="M 250.336 383.601 C 250.336,383.601 248.12,388.126 246.845,392.719 C 245.341,398.184 245.126,399.996 245.354,402.534 C 245.394,403.058 245.918,403.702 246.495,403.863 C 246.724,403.917 246.992,403.998 247.1,404.024 C 247.22,404.065 247.65,404.159 247.999,404.441 C 248.362,404.723 248.442,404.79 248.657,404.897 C 248.859,405.018 248.899,405.099 249.49,405.26 C 250.08,405.421 250.148,405.381 250.389,405.381 C 250.631,405.394 250.738,405.381 251.195,405.327 C 251.638,405.26 252.054,405.394 252.175,405.421 C 252.283,405.461 252.551,405.528 252.779,405.595 C 253.357,405.757 254.136,405.475 254.444,405.045 C 255.935,402.991 256.687,401.312 258.191,395.847 C 259.453,391.255 259.869,386.233 259.869,386.233 L 250.336,383.601z"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 253.021 402.561 C 252.632,403.998 251.141,404.83 249.718,404.441 C 248.281,404.051 247.449,402.561 247.838,401.138 C 248.241,399.701 249.718,398.868 251.141,399.258 C 252.578,399.661 253.41,401.138 253.021,402.561z"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 248.066 398.157 C 248.429,398.264 248.711,398.412 248.845,398.492 C 248.979,398.586 249.02,398.707 248.899,398.788 C 248.778,398.868 248.563,399.029 248.442,399.137 C 248.295,399.258 248.201,399.285 247.999,399.164 C 247.637,398.962 246.871,398.412 246.683,398.157 C 246.576,398.022 246.67,397.969 246.871,397.955 C 247.14,397.942 247.677,398.049 248.066,398.157z"/>
<path style="fill: #ff0000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 246.16 400.99 C 246.361,401.057 246.845,401.299 246.979,401.406 C 247.126,401.5 247.341,401.728 247.328,401.997 C 247.301,402.306 247.328,402.964 247.462,403.179 C 247.637,403.46 247.61,403.581 247.355,403.541 C 247.153,403.501 246.63,403.313 246.482,403.232 C 246.334,403.165 246.119,403.031 246.052,402.829 C 245.918,402.413 245.878,401.554 245.958,401.124 C 245.985,400.95 246.066,400.95 246.16,400.99z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 253.021 402.561 C 252.632,403.998 251.141,404.83 249.718,404.441 C 248.281,404.051 247.449,402.561 247.838,401.138 C 248.241,399.701 249.718,398.868 251.141,399.258 C 252.578,399.661 253.41,401.138 253.021,402.561"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 248.066 398.157 C 248.429,398.264 248.711,398.412 248.845,398.492 C 248.979,398.586 249.02,398.707 248.899,398.788 C 248.778,398.868 248.563,399.029 248.442,399.137 C 248.295,399.258 248.201,399.285 247.999,399.164 C 247.637,398.962 246.871,398.412 246.683,398.157 C 246.576,398.022 246.67,397.969 246.871,397.955 C 247.14,397.942 247.677,398.049 248.066,398.157"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.16 400.99 C 246.361,401.057 246.845,401.299 246.979,401.406 C 247.126,401.5 247.341,401.728 247.328,401.997 C 247.301,402.306 247.328,402.964 247.462,403.179 C 247.637,403.46 247.61,403.581 247.355,403.541 C 247.153,403.501 246.63,403.313 246.482,403.232 C 246.334,403.165 246.119,403.031 246.052,402.829 C 245.918,402.413 245.878,401.554 245.958,401.124 C 245.985,400.95 246.066,400.95 246.16,400.99"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 254.35 399.889 C 253.988,399.795 253.679,399.781 253.518,399.781 C 253.357,399.795 253.263,399.875 253.316,399.996 C 253.384,400.13 253.491,400.386 253.531,400.533 C 253.598,400.708 253.666,400.788 253.894,400.802 C 254.31,400.802 255.25,400.721 255.545,400.6 C 255.693,400.533 255.639,400.439 255.478,400.332 C 255.25,400.184 254.74,399.996 254.35,399.889z"/>
<path style="fill: #00ff00; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 254.538 403.299 C 254.337,403.246 253.786,403.219 253.612,403.232 C 253.451,403.246 253.142,403.326 253.021,403.568 C 252.887,403.85 252.524,404.4 252.296,404.521 C 252.001,404.669 251.96,404.79 252.202,404.87 C 252.39,404.951 252.941,405.058 253.102,405.072 C 253.276,405.085 253.518,405.085 253.679,404.938 C 254.028,404.656 254.485,403.93 254.646,403.528 C 254.713,403.366 254.646,403.326 254.538,403.299z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.35 399.889 C 253.988,399.795 253.679,399.781 253.518,399.781 C 253.357,399.795 253.263,399.875 253.316,399.996 C 253.384,400.13 253.491,400.386 253.531,400.533 C 253.598,400.708 253.666,400.788 253.894,400.802 C 254.31,400.802 255.25,400.721 255.545,400.6 C 255.693,400.533 255.639,400.439 255.478,400.332 C 255.25,400.184 254.74,399.996 254.35,399.889"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.538 403.299 C 254.337,403.246 253.786,403.219 253.612,403.232 C 253.451,403.246 253.142,403.326 253.021,403.568 C 252.887,403.85 252.524,404.4 252.296,404.521 C 252.001,404.669 251.96,404.79 252.202,404.87 C 252.39,404.951 252.941,405.058 253.102,405.072 C 253.276,405.085 253.518,405.085 253.679,404.938 C 254.028,404.656 254.485,403.93 254.646,403.528 C 254.713,403.366 254.646,403.326 254.538,403.299"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.095 387.791 L 254.981,384.582"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.391 387.871 L 255.277,384.662"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 260.688 380.889 C 260.688,380.889 260.178,380.741 259.748,380.634 C 259.372,380.527 258.835,380.379 258.835,380.379"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 258.916 397.351 C 259.265,396.102 260.702,389.845 260.769,388.986 C 260.836,388.113 260.514,387.012 260.044,386.797 C 260.07,386.488 260.07,386.314 260.07,386.314 C 259.963,386.26 259.842,386.22 259.735,386.179 L 259.762,386.193 C 259.762,386.193 260.097,384.796 260.299,383.83 C 260.661,381.963 260.688,381.023 260.688,381.023 C 260.688,380.768 260.621,380.553 260.393,380.486 L 259.305,380.191 C 259.077,380.124 258.916,380.271 258.768,380.5 C 258.768,380.5 258.338,381.359 257.748,383.118 C 257.425,384.058 257.13,385.226 257.13,385.226 L 257.143,385.24 C 256.499,385.025 255.841,384.823 255.183,384.649 C 253.491,384.179 251.799,383.816 250.121,383.561 C 250.121,383.561 250.04,383.722 249.893,383.991 L 249.893,383.991 C 249.382,383.951 248.55,384.716 248.16,385.495 C 247.771,386.273 245.797,392.383 245.448,393.645 C 245.099,394.894 244.441,398.076 244.146,399.661 C 243.85,401.245 243.582,404.011 242.561,407.704 C 241.957,409.879 240.99,413.115 240.48,414.471 C 240.346,414.82 239.285,416.619 240.829,417.237 C 242.346,417.828 244.616,418.486 245.757,418.795 C 246.898,419.117 249.167,419.708 250.779,419.976 C 252.417,420.245 252.43,418.163 252.497,417.788 C 252.753,416.364 253.585,413.088 254.176,410.913 C 255.196,407.22 256.391,404.709 256.955,403.192 C 257.506,401.688 258.567,398.613 258.916,397.351"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 247.1 406.133 C 246.925,406.764 246.267,407.14 245.623,406.965 C 244.978,406.79 244.602,406.133 244.777,405.488 C 244.965,404.844 245.623,404.468 246.267,404.642 C 246.912,404.817 247.288,405.488 247.1,406.133z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 250.148 407.408 C 249.973,408.053 249.302,408.429 248.657,408.254 C 248.026,408.08 247.65,407.408 247.825,406.777 C 247.999,406.133 248.657,405.757 249.302,405.931 C 249.946,406.106 250.322,406.777 250.148,407.408z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 253.424 407.878 C 253.249,408.509 252.578,408.885 251.933,408.711 C 251.302,408.536 250.926,407.878 251.101,407.234 C 251.276,406.589 251.933,406.213 252.578,406.388 C 253.223,406.562 253.598,407.234 253.424,407.878z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 246.375 408.778 C 246.2,409.422 245.529,409.798 244.898,409.61 C 244.253,409.436 243.877,408.778 244.052,408.133 C 244.226,407.489 244.898,407.113 245.529,407.287 C 246.173,407.475 246.549,408.133 246.375,408.778z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 249.409 410.067 C 249.235,410.711 248.577,411.087 247.932,410.899 C 247.288,410.725 246.912,410.067 247.086,409.422 C 247.274,408.778 247.932,408.402 248.577,408.576 C 249.208,408.764 249.597,409.422 249.409,410.067z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 252.699 410.523 C 252.511,411.154 251.853,411.544 251.208,411.356 C 250.564,411.181 250.188,410.523 250.362,409.879 C 250.55,409.234 251.208,408.858 251.853,409.033 C 252.497,409.221 252.873,409.879 252.699,410.523z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 245.649 411.423 C 245.475,412.067 244.804,412.443 244.159,412.269 C 243.528,412.094 243.139,411.423 243.327,410.778 C 243.501,410.147 244.159,409.758 244.804,409.946 C 245.448,410.12 245.824,410.778 245.649,411.423z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 248.684 412.712 C 248.509,413.356 247.838,413.732 247.207,413.558 C 246.563,413.383 246.187,412.712 246.361,412.067 C 246.536,411.423 247.207,411.06 247.838,411.235 C 248.483,411.409 248.859,412.067 248.684,412.712z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 251.96 413.168 C 251.786,413.813 251.114,414.189 250.483,414.001 C 249.839,413.826 249.463,413.168 249.637,412.524 C 249.812,411.879 250.483,411.503 251.114,411.691 C 251.759,411.866 252.135,412.524 251.96,413.168z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 244.911 414.068 C 244.736,414.713 244.065,415.089 243.434,414.914 C 242.789,414.739 242.413,414.082 242.588,413.437 C 242.763,412.793 243.434,412.417 244.065,412.591 C 244.71,412.766 245.086,413.437 244.911,414.082 L 244.911,414.068z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 247.959 415.357 C 247.771,416.002 247.113,416.378 246.469,416.203 C 245.824,416.029 245.448,415.357 245.636,414.726 C 245.811,414.082 246.469,413.706 247.113,413.88 C 247.758,414.055 248.134,414.726 247.959,415.357z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 251.235 415.814 C 251.047,416.458 250.389,416.834 249.745,416.66 C 249.1,416.485 248.724,415.814 248.912,415.169 C 249.087,414.538 249.745,414.162 250.389,414.337 C 251.034,414.511 251.41,415.169 251.235,415.814z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.428 417.156 C 246.415,417.21 246.307,417.237 246.187,417.21 C 246.079,417.17 245.999,417.103 246.025,417.036 C 246.039,416.982 246.146,416.955 246.254,416.982 C 246.361,417.009 246.442,417.089 246.428,417.143"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.025 417.036 L 245.636,418.419"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.079 417.156 L 245.73,418.445"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.428 417.156 L 246.039,418.526"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 246.307 417.21 L 245.958,418.499"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 248.751 397.19 L 248.483,398.143"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 248.859 397.217 L 248.59,398.184"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.27 398.707 L 254.001,399.674"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.162 398.68 L 253.894,399.647"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 259.762 386.193 C 259.762,386.193 260.097,384.796 260.299,383.83 C 260.661,381.963 260.688,381.023 260.688,381.023 C 260.688,380.768 260.621,380.553 260.393,380.486 L 259.305,380.191 C 259.077,380.124 258.916,380.271 258.768,380.5 C 258.768,380.5 258.338,381.359 257.748,383.118 C 257.425,384.058 257.13,385.226 257.13,385.226"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 259.896 385.683 C 259.023,385.347 258.15,385.038 257.251,384.756"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 249.033 385.871 C 250.819,386.126 252.739,386.529 254.525,387.025 C 256.311,387.522 258.164,388.153 259.829,388.852"/>
<path style="fill: #b7b79d; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" fill-rule="evenodd" d="M 256.7 398.922 C 256.633,399.164 256.391,399.298 256.15,399.231 L 246.858,396.666 C 246.616,396.599 246.482,396.357 246.549,396.129 L 248.174,390.248 C 248.241,390.006 248.483,389.872 248.711,389.939 L 258.016,392.504 C 258.258,392.571 258.392,392.813 258.325,393.054 L 256.7,398.935 L 256.7,398.922z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.095 387.791 L 254.981,384.582"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 254.391 387.871 L 255.277,384.662"/>
</g>
<line style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="327.424" y1="326.359" x2="444.266" y2="375.437"/>
<line style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="259.522" y1="401.737" x2="439.089" y2="384.112"/>
<g>
<path style="fill: #7a7a5a; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 290.594 477.19 C 290.943,475.941 292.38,469.684 292.447,468.811 C 292.514,467.938 292.192,466.851 291.722,466.623 C 291.749,466.314 291.749,466.139 291.749,466.139 C 291.641,466.099 291.521,466.059 291.413,466.005 L 291.453,466.018 C 291.453,466.018 291.776,464.622 291.977,463.655 C 292.34,461.802 292.38,460.862 292.38,460.862 C 292.367,460.607 292.299,460.379 292.071,460.312 L 290.984,460.016 C 290.755,459.949 290.594,460.097 290.446,460.325 C 290.446,460.325 290.017,461.184 289.426,462.957 C 289.104,463.883 288.808,465.065 288.808,465.065 L 288.822,465.065 C 288.177,464.85 287.519,464.662 286.861,464.474 C 285.169,464.004 283.491,463.655 281.799,463.4 C 281.799,463.4 281.719,463.548 281.571,463.83 C 281.061,463.776 280.228,464.555 279.839,465.334 C 279.449,466.112 277.476,472.222 277.126,473.471 C 276.777,474.719 276.119,477.915 275.824,479.499 C 275.529,481.084 275.26,483.85 274.24,487.529 C 273.635,489.704 272.669,492.954 272.158,494.296 C 272.024,494.659 270.963,496.445 272.507,497.062 C 274.025,497.667 276.294,498.311 277.435,498.633 C 278.577,498.942 280.846,499.546 282.457,499.815 C 284.095,500.084 284.109,497.989 284.176,497.613 C 284.431,496.203 285.263,492.913 285.854,490.738 C 286.875,487.046 288.07,484.548 288.634,483.031 C 289.184,481.514 290.245,478.439 290.594,477.19z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 290.594 477.19 C 290.943,475.941 292.38,469.684 292.447,468.811 C 292.514,467.938 292.192,466.851 291.722,466.623 C 291.749,466.314 291.749,466.139 291.749,466.139 C 291.641,466.099 291.521,466.059 291.413,466.005 L 291.453,466.018 C 291.453,466.018 291.776,464.622 291.977,463.655 C 292.34,461.802 292.38,460.862 292.38,460.862 C 292.367,460.607 292.299,460.379 292.071,460.312 L 290.984,460.016 C 290.755,459.949 290.594,460.097 290.446,460.325 C 290.446,460.325 290.017,461.184 289.426,462.957 C 289.104,463.883 288.808,465.065 288.808,465.065 L 288.822,465.065 C 288.177,464.85 287.519,464.662 286.861,464.474 C 285.169,464.004 283.491,463.655 281.799,463.4 C 281.799,463.4 281.719,463.548 281.571,463.83 L 281.571,463.83 C 281.061,463.776 280.228,464.555 279.839,465.334 C 279.449,466.112 277.476,472.222 277.126,473.471 C 276.777,474.719 276.119,477.915 275.824,479.499 C 275.529,481.084 275.26,483.85 274.24,487.529 C 273.635,489.704 272.669,492.954 272.158,494.296 C 272.024,494.659 270.963,496.445 272.507,497.062 C 274.025,497.667 276.294,498.311 277.435,498.633 C 278.577,498.942 280.846,499.546 282.457,499.815 C 284.095,500.084 284.109,497.989 284.176,497.613 C 284.431,496.203 285.263,492.913 285.854,490.738 C 286.875,487.046 288.07,484.548 288.634,483.031 C 289.184,481.514 290.245,478.439 290.594,477.19"/>
<path style="fill: #b7b79d; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 288.916 477.351 C 289.265,476.102 290.702,469.845 290.769,468.986 C 290.836,468.113 290.514,467.012 290.044,466.797 C 290.07,466.488 290.07,466.314 290.07,466.314 C 289.963,466.26 289.842,466.22 289.735,466.179 L 289.762,466.193 C 289.762,466.193 290.097,464.796 290.299,463.83 C 290.661,461.963 290.688,461.023 290.688,461.023 C 290.688,460.768 290.621,460.553 290.393,460.486 L 289.305,460.191 C 289.077,460.124 288.916,460.271 288.768,460.5 C 288.768,460.5 288.338,461.359 287.748,463.118 C 287.425,464.058 287.13,465.226 287.13,465.226 L 287.143,465.24 C 286.499,465.025 285.841,464.823 285.183,464.649 C 283.491,464.179 281.799,463.816 280.121,463.561 C 280.121,463.561 280.04,463.722 279.893,463.991 C 279.382,463.951 278.55,464.716 278.16,465.495 C 277.771,466.273 275.797,472.383 275.448,473.645 C 275.099,474.894 274.441,478.076 274.146,479.661 C 273.85,481.245 273.582,484.011 272.561,487.704 C 271.957,489.879 270.99,493.115 270.48,494.471 C 270.346,494.82 269.285,496.619 270.829,497.237 C 272.346,497.828 274.616,498.486 275.757,498.795 C 276.898,499.117 279.167,499.708 280.779,499.976 C 282.417,500.245 282.43,498.163 282.497,497.788 C 282.753,496.364 283.585,493.088 284.176,490.913 C 285.196,487.22 286.391,484.709 286.955,483.192 C 287.506,481.688 288.567,478.613 288.916,477.351z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 288.916 477.351 C 289.265,476.102 290.702,469.845 290.769,468.986 C 290.836,468.113 290.514,467.012 290.044,466.797 C 290.07,466.488 290.07,466.314 290.07,466.314 C 289.963,466.26 289.842,466.22 289.735,466.179 L 289.762,466.193 C 289.762,466.193 290.097,464.796 290.299,463.83 C 290.661,461.963 290.688,461.023 290.688,461.023 C 290.688,460.768 290.621,460.553 290.393,460.486 L 289.305,460.191 C 289.077,460.124 288.916,460.271 288.768,460.5 C 288.768,460.5 288.338,461.359 287.748,463.118 C 287.425,464.058 287.13,465.226 287.13,465.226 L 287.143,465.24 C 286.499,465.025 285.841,464.823 285.183,464.649 C 283.491,464.179 281.799,463.816 280.121,463.561 C 280.121,463.561 280.04,463.722 279.893,463.991 L 279.893,463.991 C 279.382,463.951 278.55,464.716 278.16,465.495 C 277.771,466.273 275.797,472.383 275.448,473.645 C 275.099,474.894 274.441,478.076 274.146,479.661 C 273.85,481.245 273.582,484.011 272.561,487.704 C 271.957,489.879 270.99,493.115 270.48,494.471 C 270.346,494.82 269.285,496.619 270.829,497.237 C 272.346,497.828 274.616,498.486 275.757,498.795 C 276.898,499.117 279.167,499.708 280.779,499.976 C 282.417,500.245 282.43,498.163 282.497,497.788 C 282.753,496.364 283.585,493.088 284.176,490.913 C 285.196,487.22 286.391,484.709 286.955,483.192 C 287.506,481.688 288.567,478.613 288.916,477.351"/>
<path style="fill: #c9c9b6; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.8; stroke: #ecece7" fill-rule="evenodd" d="M 280.336 463.601 C 280.336,463.601 278.12,468.126 276.845,472.719 C 275.341,478.184 275.126,479.996 275.354,482.534 C 275.394,483.058 275.918,483.702 276.495,483.863 C 276.724,483.917 276.992,483.998 277.1,484.024 C 277.22,484.065 277.65,484.159 277.999,484.441 C 278.362,484.723 278.442,484.79 278.657,484.897 C 278.859,485.018 278.899,485.099 279.49,485.26 C 280.08,485.421 280.148,485.381 280.389,485.381 C 280.631,485.394 280.738,485.381 281.195,485.327 C 281.638,485.26 282.054,485.394 282.175,485.421 C 282.283,485.461 282.551,485.528 282.779,485.595 C 283.357,485.757 284.136,485.475 284.444,485.045 C 285.935,482.991 286.687,481.312 288.191,475.847 C 289.453,471.255 289.869,466.233 289.869,466.233 L 280.336,463.601z"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 283.021 482.561 C 282.632,483.998 281.141,484.83 279.718,484.441 C 278.281,484.051 277.449,482.561 277.838,481.138 C 278.241,479.701 279.718,478.868 281.141,479.258 C 282.578,479.661 283.41,481.138 283.021,482.561z"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 278.066 478.157 C 278.429,478.264 278.711,478.412 278.845,478.492 C 278.979,478.586 279.02,478.707 278.899,478.788 C 278.778,478.868 278.563,479.029 278.442,479.137 C 278.295,479.258 278.201,479.285 277.999,479.164 C 277.637,478.962 276.871,478.412 276.683,478.157 C 276.576,478.022 276.67,477.969 276.871,477.955 C 277.14,477.942 277.677,478.049 278.066,478.157z"/>
<path style="fill: #ff0000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 276.16 480.99 C 276.361,481.057 276.845,481.299 276.979,481.406 C 277.126,481.5 277.341,481.728 277.328,481.997 C 277.301,482.306 277.328,482.964 277.462,483.179 C 277.637,483.46 277.61,483.581 277.355,483.541 C 277.153,483.501 276.63,483.313 276.482,483.232 C 276.334,483.165 276.119,483.031 276.052,482.829 C 275.918,482.413 275.878,481.554 275.958,481.124 C 275.985,480.95 276.066,480.95 276.16,480.99z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 283.021 482.561 C 282.632,483.998 281.141,484.83 279.718,484.441 C 278.281,484.051 277.449,482.561 277.838,481.138 C 278.241,479.701 279.718,478.868 281.141,479.258 C 282.578,479.661 283.41,481.138 283.021,482.561"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 278.066 478.157 C 278.429,478.264 278.711,478.412 278.845,478.492 C 278.979,478.586 279.02,478.707 278.899,478.788 C 278.778,478.868 278.563,479.029 278.442,479.137 C 278.295,479.258 278.201,479.285 277.999,479.164 C 277.637,478.962 276.871,478.412 276.683,478.157 C 276.576,478.022 276.67,477.969 276.871,477.955 C 277.14,477.942 277.677,478.049 278.066,478.157"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.16 480.99 C 276.361,481.057 276.845,481.299 276.979,481.406 C 277.126,481.5 277.341,481.728 277.328,481.997 C 277.301,482.306 277.328,482.964 277.462,483.179 C 277.637,483.46 277.61,483.581 277.355,483.541 C 277.153,483.501 276.63,483.313 276.482,483.232 C 276.334,483.165 276.119,483.031 276.052,482.829 C 275.918,482.413 275.878,481.554 275.958,481.124 C 275.985,480.95 276.066,480.95 276.16,480.99"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 284.35 479.889 C 283.988,479.795 283.679,479.781 283.518,479.781 C 283.357,479.795 283.263,479.875 283.316,479.996 C 283.384,480.13 283.491,480.386 283.531,480.533 C 283.598,480.708 283.666,480.788 283.894,480.802 C 284.31,480.802 285.25,480.721 285.545,480.6 C 285.693,480.533 285.639,480.439 285.478,480.332 C 285.25,480.184 284.74,479.996 284.35,479.889z"/>
<path style="fill: #00ff00; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 284.538 483.299 C 284.337,483.246 283.786,483.219 283.612,483.232 C 283.451,483.246 283.142,483.326 283.021,483.568 C 282.887,483.85 282.524,484.4 282.296,484.521 C 282.001,484.669 281.96,484.79 282.202,484.87 C 282.39,484.951 282.941,485.058 283.102,485.072 C 283.276,485.085 283.518,485.085 283.679,484.938 C 284.028,484.656 284.485,483.93 284.646,483.528 C 284.713,483.366 284.646,483.326 284.538,483.299z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.35 479.889 C 283.988,479.795 283.679,479.781 283.518,479.781 C 283.357,479.795 283.263,479.875 283.316,479.996 C 283.384,480.13 283.491,480.386 283.531,480.533 C 283.598,480.708 283.666,480.788 283.894,480.802 C 284.31,480.802 285.25,480.721 285.545,480.6 C 285.693,480.533 285.639,480.439 285.478,480.332 C 285.25,480.184 284.74,479.996 284.35,479.889"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.538 483.299 C 284.337,483.246 283.786,483.219 283.612,483.232 C 283.451,483.246 283.142,483.326 283.021,483.568 C 282.887,483.85 282.524,484.4 282.296,484.521 C 282.001,484.669 281.96,484.79 282.202,484.87 C 282.39,484.951 282.941,485.058 283.102,485.072 C 283.276,485.085 283.518,485.085 283.679,484.938 C 284.028,484.656 284.485,483.93 284.646,483.528 C 284.713,483.366 284.646,483.326 284.538,483.299"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.095 467.791 L 284.981,464.582"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.391 467.871 L 285.277,464.662"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 290.688 460.889 C 290.688,460.889 290.178,460.741 289.748,460.634 C 289.372,460.527 288.835,460.379 288.835,460.379"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 288.916 477.351 C 289.265,476.102 290.702,469.845 290.769,468.986 C 290.836,468.113 290.514,467.012 290.044,466.797 C 290.07,466.488 290.07,466.314 290.07,466.314 C 289.963,466.26 289.842,466.22 289.735,466.179 L 289.762,466.193 C 289.762,466.193 290.097,464.796 290.299,463.83 C 290.661,461.963 290.688,461.023 290.688,461.023 C 290.688,460.768 290.621,460.553 290.393,460.486 L 289.305,460.191 C 289.077,460.124 288.916,460.271 288.768,460.5 C 288.768,460.5 288.338,461.359 287.748,463.118 C 287.425,464.058 287.13,465.226 287.13,465.226 L 287.143,465.24 C 286.499,465.025 285.841,464.823 285.183,464.649 C 283.491,464.179 281.799,463.816 280.121,463.561 C 280.121,463.561 280.04,463.722 279.893,463.991 L 279.893,463.991 C 279.382,463.951 278.55,464.716 278.16,465.495 C 277.771,466.273 275.797,472.383 275.448,473.645 C 275.099,474.894 274.441,478.076 274.146,479.661 C 273.85,481.245 273.582,484.011 272.561,487.704 C 271.957,489.879 270.99,493.115 270.48,494.471 C 270.346,494.82 269.285,496.619 270.829,497.237 C 272.346,497.828 274.616,498.486 275.757,498.795 C 276.898,499.117 279.167,499.708 280.779,499.976 C 282.417,500.245 282.43,498.163 282.497,497.788 C 282.753,496.364 283.585,493.088 284.176,490.913 C 285.196,487.22 286.391,484.709 286.955,483.192 C 287.506,481.688 288.567,478.613 288.916,477.351"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 277.1 486.133 C 276.925,486.764 276.267,487.14 275.623,486.965 C 274.978,486.79 274.602,486.133 274.777,485.488 C 274.965,484.844 275.623,484.468 276.267,484.642 C 276.912,484.817 277.288,485.488 277.1,486.133z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 280.148 487.408 C 279.973,488.053 279.302,488.429 278.657,488.254 C 278.026,488.08 277.65,487.408 277.825,486.777 C 277.999,486.133 278.657,485.757 279.302,485.931 C 279.946,486.106 280.322,486.777 280.148,487.408z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 283.424 487.878 C 283.249,488.509 282.578,488.885 281.933,488.711 C 281.302,488.536 280.926,487.878 281.101,487.234 C 281.276,486.589 281.933,486.213 282.578,486.388 C 283.223,486.562 283.598,487.234 283.424,487.878z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 276.375 488.778 C 276.2,489.422 275.529,489.798 274.898,489.61 C 274.253,489.436 273.877,488.778 274.052,488.133 C 274.226,487.489 274.898,487.113 275.529,487.287 C 276.173,487.475 276.549,488.133 276.375,488.778z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 279.409 490.067 C 279.235,490.711 278.577,491.087 277.932,490.899 C 277.288,490.725 276.912,490.067 277.086,489.422 C 277.274,488.778 277.932,488.402 278.577,488.576 C 279.208,488.764 279.597,489.422 279.409,490.067z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 282.699 490.523 C 282.511,491.154 281.853,491.544 281.208,491.356 C 280.564,491.181 280.188,490.523 280.362,489.879 C 280.55,489.234 281.208,488.858 281.853,489.033 C 282.497,489.221 282.873,489.879 282.699,490.523z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 275.649 491.423 C 275.475,492.067 274.804,492.443 274.159,492.269 C 273.528,492.094 273.139,491.423 273.327,490.778 C 273.501,490.147 274.159,489.758 274.804,489.946 C 275.448,490.12 275.824,490.778 275.649,491.423z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 278.684 492.712 C 278.509,493.356 277.838,493.732 277.207,493.558 C 276.563,493.383 276.187,492.712 276.361,492.067 C 276.536,491.423 277.207,491.06 277.838,491.235 C 278.483,491.409 278.859,492.067 278.684,492.712z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 281.96 493.168 C 281.786,493.813 281.114,494.189 280.483,494.001 C 279.839,493.826 279.463,493.168 279.637,492.524 C 279.812,491.879 280.483,491.503 281.114,491.691 C 281.759,491.866 282.135,492.524 281.96,493.168z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 274.911 494.068 C 274.736,494.713 274.065,495.089 273.434,494.914 C 272.789,494.739 272.413,494.082 272.588,493.437 C 272.763,492.793 273.434,492.417 274.065,492.591 C 274.71,492.766 275.086,493.437 274.911,494.082 L 274.911,494.068z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 277.959 495.357 C 277.771,496.002 277.113,496.378 276.469,496.203 C 275.824,496.029 275.448,495.357 275.636,494.726 C 275.811,494.082 276.469,493.706 277.113,493.88 C 277.758,494.055 278.134,494.726 277.959,495.357z"/>
<path style="fill: #000000; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.02; stroke: #ffffff" fill-rule="evenodd" d="M 281.235 495.814 C 281.047,496.458 280.389,496.834 279.745,496.66 C 279.1,496.485 278.724,495.814 278.912,495.169 C 279.087,494.538 279.745,494.162 280.389,494.337 C 281.034,494.511 281.41,495.169 281.235,495.814z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.428 497.156 C 276.415,497.21 276.307,497.237 276.187,497.21 C 276.079,497.17 275.999,497.103 276.025,497.036 C 276.039,496.982 276.146,496.955 276.254,496.982 C 276.361,497.009 276.442,497.089 276.428,497.143"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.025 497.036 L 275.636,498.419"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.079 497.156 L 275.73,498.445"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.428 497.156 L 276.039,498.526"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 276.307 497.21 L 275.958,498.499"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 278.751 477.19 L 278.483,478.143"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 278.859 477.217 L 278.59,478.184"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.27 478.707 L 284.001,479.674"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.162 478.68 L 283.894,479.647"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 289.762 466.193 C 289.762,466.193 290.097,464.796 290.299,463.83 C 290.661,461.963 290.688,461.023 290.688,461.023 C 290.688,460.768 290.621,460.553 290.393,460.486 L 289.305,460.191 C 289.077,460.124 288.916,460.271 288.768,460.5 C 288.768,460.5 288.338,461.359 287.748,463.118 C 287.425,464.058 287.13,465.226 287.13,465.226"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #000000" d="M 289.896 465.683 C 289.023,465.347 288.15,465.038 287.251,464.756"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 279.033 465.871 C 280.819,466.126 282.739,466.529 284.525,467.025 C 286.311,467.522 288.164,468.153 289.829,468.852"/>
<path style="fill: #b7b79d; fill-opacity: 1; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" fill-rule="evenodd" d="M 286.7 478.922 C 286.633,479.164 286.391,479.298 286.15,479.231 L 276.858,476.666 C 276.616,476.599 276.482,476.357 276.549,476.129 L 278.174,470.248 C 278.241,470.006 278.483,469.872 278.711,469.939 L 288.016,472.504 C 288.258,472.571 288.392,472.813 288.325,473.054 L 286.7,478.935 L 286.7,478.922z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.095 467.791 L 284.981,464.582"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 284.391 467.871 L 285.277,464.662"/>
</g>
<line style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="290.438" y1="479.005" x2="440.053" y2="393.475"/>
<g>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 714.565 323.746 L 714.565,310.35"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 714.565 323.53 L 714.565,314.341"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 714.954 311.638 L 714.135,311.638 L 714.135,310 L 714.954,310 L 714.954,311.638z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 714.954 311.638 L 714.135,311.638 L 714.135,310 L 714.954,310 L 714.954,311.638"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 694.709 323.746 L 694.709,310.35"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 694.709 323.53 L 694.709,314.341"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 695.098 311.638 L 694.279,311.638 L 694.279,310 L 695.098,310 L 695.098,311.638z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 695.098 311.638 L 694.279,311.638 L 694.279,310 L 695.098,310 L 695.098,311.638"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 720.119 325.447 C 720.119,328.681 713.377,331.303 705.06,331.303 C 696.742,331.303 690,328.681 690,325.447 L 690,334.025 C 690,337.26 696.742,339.882 705.06,339.882 C 713.377,339.882 720.119,337.26 720.119,334.025 L 720.119,325.447z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 720.119 325.447 C 720.119,328.681 713.377,331.303 705.06,331.303 C 696.742,331.303 690,328.681 690,325.447 L 690,334.025 C 690,337.26 696.742,339.882 705.06,339.882 C 713.377,339.882 720.119,337.26 720.119,334.025 L 720.119,325.447"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 705.06 331.303 C 713.377,331.303 720.119,328.681 720.119,325.447 C 720.119,322.212 713.377,319.59 705.06,319.59 C 696.742,319.59 690,322.212 690,325.447 C 690,328.681 696.742,331.303 705.06,331.303z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 705.06 331.303 C 713.377,331.303 720.119,328.681 720.119,325.447 C 720.119,322.212 713.377,319.59 705.06,319.59 C 696.742,319.59 690,322.212 690,325.447 C 690,328.681 696.742,331.303 705.06,331.303"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 701.621 323.157 L 702.864,325.022 L 698.163,326.108 L 699.19,325.254 L 691.923,324.012 L 693.746,322.645 L 700.758,323.832 L 701.621,323.157z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 708.237 327.68 L 707.388,325.757 L 711.629,324.91 L 710.894,325.568 L 717.962,326.776 L 716.268,328.133 L 709.24,326.813 L 708.237,327.68z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 705.918 322.138 L 710.668,320.838 L 710.724,322.874 L 709.538,322.647 L 707.218,324.57 L 705.006,324.247 L 707.399,322.367 L 705.918,322.138z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 703.882 329.434 L 699.359,330.281 L 699.19,328.19 L 700.489,328.472 L 702.979,326.345 L 705.183,326.719 L 702.525,329.037 L 703.882,329.434z"/>
</g>
<g>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 774.565 453.746 L 774.565,440.35"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 774.565 453.53 L 774.565,444.341"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 774.954 441.638 L 774.135,441.638 L 774.135,440 L 774.954,440 L 774.954,441.638z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 774.954 441.638 L 774.135,441.638 L 774.135,440 L 774.954,440 L 774.954,441.638"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #00aed9" d="M 754.709 453.746 L 754.709,440.35"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #00aed9" d="M 754.709 453.53 L 754.709,444.341"/>
<path style="fill: #000000; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 755.098 441.638 L 754.279,441.638 L 754.279,440 L 755.098,440 L 755.098,441.638z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke: #00aed9" d="M 755.098 441.638 L 754.279,441.638 L 754.279,440 L 755.098,440 L 755.098,441.638"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 780.119 455.447 C 780.119,458.681 773.377,461.303 765.06,461.303 C 756.742,461.303 750,458.681 750,455.447 L 750,464.025 C 750,467.26 756.742,469.882 765.06,469.882 C 773.377,469.882 780.119,467.26 780.119,464.025 L 780.119,455.447z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 780.119 455.447 C 780.119,458.681 773.377,461.303 765.06,461.303 C 756.742,461.303 750,458.681 750,455.447 L 750,464.025 C 750,467.26 756.742,469.882 765.06,469.882 C 773.377,469.882 780.119,467.26 780.119,464.025 L 780.119,455.447"/>
<path style="fill: #00aed9; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 765.06 461.303 C 773.377,461.303 780.119,458.681 780.119,455.447 C 780.119,452.212 773.377,449.59 765.06,449.59 C 756.742,449.59 750,452.212 750,455.447 C 750,458.681 756.742,461.303 765.06,461.303z"/>
<path style="fill: none; stroke-opacity: 1; stroke-width: 0.8; stroke: #ffffff" d="M 765.06 461.303 C 773.377,461.303 780.119,458.681 780.119,455.447 C 780.119,452.212 773.377,449.59 765.06,449.59 C 756.742,449.59 750,452.212 750,455.447 C 750,458.681 756.742,461.303 765.06,461.303"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 761.621 453.157 L 762.864,455.022 L 758.163,456.108 L 759.19,455.254 L 751.923,454.012 L 753.746,452.645 L 760.758,453.832 L 761.621,453.157z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 768.237 457.68 L 767.388,455.757 L 771.629,454.91 L 770.894,455.568 L 777.962,456.776 L 776.268,458.133 L 769.24,456.813 L 768.237,457.68z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 765.918 452.138 L 770.668,450.838 L 770.724,452.874 L 769.538,452.647 L 767.218,454.57 L 765.006,454.247 L 767.399,452.367 L 765.918,452.138z"/>
<path style="fill: #ffffff; fill-opacity: 1; stroke: none" fill-rule="evenodd" d="M 763.882 459.434 L 759.359,460.281 L 759.19,458.19 L 760.489,458.472 L 762.979,456.345 L 765.183,456.719 L 762.525,459.037 L 763.882,459.434z"/>
</g>
<text font-size="21.4489" style="fill: #000000; fill-opacity: 1; stroke: none;text-anchor:start;font-family:sans-serif;font-style:italic;font-weight:normal" x="270" y="430">
<tspan x="270" y="430">Clients</tspan>
</text>
</g>
<g id="to-mesh">
<g>
<line style="fill: none; stroke-opacity: 1; stroke-width: 4; stroke: #800080" x1="480" y1="380" x2="568" y2="380"/>
<polygon style="fill: #800080; fill-opacity: 1; stroke-opacity: 1; stroke-width: 4; stroke: #800080" fill-rule="evenodd" points="568,385 578,380 568,375 "/>
</g>
<rect style="fill: none; stroke-opacity: 1; stroke-width: 2; stroke-dasharray: 20; stroke: #000000" x="430" y="290" width="380" height="220" rx="0" ry="0"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 99 KiB

View File

@ -0,0 +1,44 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://web.resource.org/cc/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" version="1.0" width="900pt" height="600pt" id="svg2" sodipodi:version="0.32" inkscape:version="0.43" sodipodi:docname="multicast.svg" sodipodi:docbase="/home/cyberix/Desktop">
<metadata id="metadata5027">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview inkscape:window-height="555" inkscape:window-width="822" inkscape:pageshadow="2" inkscape:pageopacity="0.0" borderopacity="1.0" bordercolor="#666666" pagecolor="#ffffff" id="base" inkscape:zoom="1" inkscape:cx="381.10844" inkscape:cy="421.95237" inkscape:window-x="83" inkscape:window-y="46" inkscape:current-layer="svg2"/>
<defs id="defs4">
<marker refX="0" refY="0" orient="auto" style="overflow:visible" id="Arrow2Lend">
<path d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.97309,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z " transform="matrix(-1.1,0,0,-1.1,5.5,0)" style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" id="path3334"/>
</marker>
<marker refX="0" refY="0" orient="auto" style="overflow:visible" id="Arrow1Mstart">
<path d="M 0,0 L 5,-5 L -12.5,0 L 5,5 L 0,0 z " transform="scale(0.4,0.4)" style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" id="path3349"/>
</marker>
<marker refX="0" refY="0" orient="auto" style="overflow:visible" id="Arrow1Lstart">
<path d="M 0,0 L 5,-5 L -12.5,0 L 5,5 L 0,0 z " transform="scale(0.8,0.8)" style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" id="path3355"/>
</marker>
<marker refX="0" refY="0" orient="auto" style="overflow:visible" id="Arrow2Mend">
<path d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.97309,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z " transform="matrix(-0.6,0,0,-0.6,3,0)" style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" id="path3328"/>
</marker>
<marker refX="0" refY="0" orient="auto" style="overflow:visible" id="Arrow1Mend">
<path d="M 0,0 L 5,-5 L -12.5,0 L 5,5 L 0,0 z " transform="scale(-0.4,-0.4)" style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" id="path3346"/>
</marker>
<marker refX="0" refY="0" orient="auto" style="overflow:visible" id="Arrow1Lend">
<path d="M 0,0 L 5,-5 L -12.5,0 L 5,5 L 0,0 z " transform="scale(-0.8,-0.8)" style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" id="path3352"/>
</marker>
</defs>
<path id="path4261" style="fill:#ff5555;fill-opacity:1;stroke:#000000;stroke-width:7.57058573;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 223.53106,327.10441 C 223.53106,352.62811 202.95773,373.31911 177.57924,373.31911 C 152.20074,373.31911 131.62741,352.62811 131.62741,327.10441 C 131.62741,301.58081 152.20074,280.88981 177.57924,280.88981 C 202.95773,280.88981 223.53106,301.58081 223.53106,327.10441 z "/>
<path id="path4263" style="fill:#ffff33;fill-opacity:1;stroke:#000000;stroke-width:7.57058573;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 1037.931,293.05631 C 1037.931,318.58001 1017.3577,339.27101 991.97924,339.27101 C 966.60074,339.27101 946.02741,318.58001 946.02741,293.05631 C 946.02741,267.53271 966.60074,246.84171 991.97924,246.84171 C 1017.3577,246.84171 1037.931,267.53271 1037.931,293.05631 z "/>
<path id="path4265" style="fill:#ffff33;fill-opacity:1;stroke:#000000;stroke-width:7.57058573;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 632.21606,104.97986 C 632.21606,130.50353 611.64273,151.19455 586.26424,151.19455 C 560.88574,151.19455 540.31241,130.50353 540.31241,104.97986 C 540.31241,79.456184 560.88574,58.765174 586.26424,58.765174 C 611.64273,58.765174 632.21606,79.456184 632.21606,104.97986 z "/>
<path id="path4267" style="fill:#55ff55;fill-opacity:1;stroke:#000000;stroke-width:7.57058573;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 603.64506,607.83681 C 603.64506,633.36051 583.07173,654.05151 557.69324,654.05151 C 532.31474,654.05151 511.74141,633.36051 511.74141,607.83681 C 511.74141,582.31321 532.31474,561.62221 557.69324,561.62221 C 583.07173,561.62221 603.64506,582.31321 603.64506,607.83681 z "/>
<path id="path4269" style="fill:#55ff55;fill-opacity:1;stroke:#000000;stroke-width:7.57058573;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 903.64506,147.83696 C 903.64506,173.36063 883.07173,194.05161 857.69324,194.05161 C 832.31474,194.05161 811.74141,173.36063 811.74141,147.83696 C 811.74141,122.31328 832.31474,101.62227 857.69324,101.62227 C 883.07173,101.62227 903.64506,122.31328 903.64506,147.83696 z "/>
<path id="path4271" style="fill:#ffff33;fill-opacity:1;stroke:#000000;stroke-width:7.57058573;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 817.93106,413.55121 C 817.93106,439.07491 797.35773,459.76591 771.97924,459.76591 C 746.60074,459.76591 726.02741,439.07491 726.02741,413.55121 C 726.02741,388.02761 746.60074,367.33661 771.97924,367.33661 C 797.35773,367.33661 817.93106,388.02761 817.93106,413.55121 z "/>
<path id="path4273" style="fill:#55ff55;fill-opacity:1;stroke:#000000;stroke-width:7.57058573;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 915.07406,584.97981 C 915.07406,610.50351 894.50073,631.19451 869.12224,631.19451 C 843.74374,631.19451 823.17041,610.50351 823.17041,584.97981 C 823.17041,559.45621 843.74374,538.76521 869.12224,538.76521 C 894.50073,538.76521 915.07406,559.45621 915.07406,584.97981 z "/>
<path id="path4277" style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:4.69999981;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:url(#Arrow2Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 369.68244,325.81177 L 812.01072,165.86573" sodipodi:nodetypes="cc"/>
<path id="path4281" style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:4.69999981;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:url(#Arrow2Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 366.80669,324.95185 L 520.83602,583.62361" sodipodi:nodetypes="cc"/>
<path id="path4287" style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:4.69999981;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:url(#Arrow2Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 368.22207,325.49587 L 828.71412,568.06311" sodipodi:nodetypes="cc"/>
<path style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:4.69999981;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 226.9654,327.86162 L 369.65596,325.86694" id="path1410" sodipodi:nodetypes="cc"/>
</svg>

After

Width:  |  Height:  |  Size: 7.3 KiB

View File

@ -0,0 +1,170 @@
gluon-mesh-batman-adv
=====================
.. image:: gluon-mesh-batman-adv-logo.svg
:width: 300 px
B.A.T.M.A.N. Advanced (often referenced as batman-adv) is an implementation of
the B.A.T.M.A.N. routing protocol in form of a linux kernel module operating on layer 2.
Layer 2 means that all client devices will operate in the same, virtual broadcast
domain and will see each other "as if they were connected to one giant switch".
This comes with a set of advantages (like quick and economical client device roaming,
layer 3 protocol agnosticism, broadcast/multicast). But also impediments, especially
layer 2 multicast overhead - which Gluon tries to mitigate to achieve a certain degree
of scalability. See :doc:`gluon-ebtables-filter-multicast` and
:ref:`batman-adv-multicast-architecture` for details.
B.A.T.M.A.N. Advanced project homepage:
* https://www.open-mesh.org/projects/batman-adv/wiki/Wiki
B.A.T.M.A.N. Routing Algorithms
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Two routing algorithms are selectable via
:ref:`site.conf mesh section <user-site-mesh>`: BATMAN_IV and BATMAN_V.
BATMAN_IV - stable
""""""""""""""""""
This is the recommended algorithm to use with `gluon-mesh-batman-adv-15`.
BATMAN_V - experimental
"""""""""""""""""""""""
This is the experimental B.A.T.M.A.N. routing algorithm. It is packet format /
compatibility stable but is still in development.
For more details, see:
* https://www.open-mesh.org/projects/batman-adv/wiki/BATMAN_V
.. _batman-adv-multicast-architecture:
Multicast Architecture
----------------------
.. image:: gluon-mesh-batman-adv-multicast.svg
:width: 300 px
While generally broadcast capability is a nice feature of a layer 2
mesh protocol, it quickly reaches its limit.
For meshes with about **50 nodes / 100 clients, or more** it is therefore highly
recommended to add the :doc:`gluon-ebtables-filter-multicast`
package. Also, with the *mesh-batman-adv-15* feature,
:doc:`gluon-ebtables-limit-arp` is selected by default.
Furthermore, by default IGMP and MLD messages are filtered. See
:ref:`site.conf mesh section <user-site-mesh>` and
:ref:`igmp-mld-domain-segmentation` for details.
To achieve some level of scalability for multicast, multicast group
awareness is implemented and utilized in the following ways:
Node-Local Multicast Handling
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. image:: gluon-mesh-batman-adv-multicast-architecture-to-clients.svg
A Gluon node sends IGMP/MLD Queries with the following parameters on its
local segment:
* Interval: 20 seconds
* Robustness: 9
* Query Response Interval: 5 seconds
This way, through the returning IGMP/MLD reports, the node learns which
multicast groups its clients are interested in.
This is then used to deliver multicast packets to its own Wifi clients
via individual Wifi unicast transmissions instead of a broadcast transmission.
The advantages of this are:
* Usually higher bitrates: Mostly lower airtime usage
* Acknowledged, retried transmissions (ARQ): Higher reliability
* If no local client is interested: Avoiding the transmission, no airtime usage
Notably multicast for IPv6 Neighbor Discovery usually has only a single
multicast listener in the case of address resolution and usually no
multicast listener for duplicate address detection. Which are the ideal
cases for multicast snooping / multicast to unicast.
The unicast delivery is achieved through utilizing the multicast-to-unicast
feature in OpenWrt/netifd. Which in turn utilizes the multicast-to-unicast
conversion and hairpin features of the Linux bridge, plus the hostapd client
isolation feature, to hand over full delivery control to the bridge.
Mesh-wide Multicast Handling
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. image:: gluon-mesh-batman-adv-multicast-architecture-to-mesh.svg
To be able to avoid transmissions not only on the "last mile", the AP interface
to the local clients, but also from the "last mile" into the mesh in the future
multicast listener state is propagated through the mesh:
batman-adv (compat 15) taps into the Linux bridge and inherits the multicast
groups into its translation table. Which then takes care of efficiently
distributing this knowledge to other nodes.
While by that the receiver side is ready to go, the sender part in batman-adv
is disabled for now in Gluon. It will be enabled in a future release.
.. _igmp-mld-domain-segmentation:
IGMP/MLD Domain Segmentation
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. image:: gluon-mesh-batman-adv-multicast-architecture-segmentation.svg
Internet Group Membership Protocol and Multicast Listener Discovery Protocol
are the standardized network protocols to query, report and learn multicast
group memberships on the local link for IPv4 (IGMP) and IPv6 (MLD).
By default Gluon filters IGMP and MLD queries and reports towards the mesh
and runs an IGMP/MLD querier on each node for its own local clients.
Furthermore Gluon tags the mesh side bridge port (bat0) as a multicast
router port.
That way, even though the Linux client bridge in Gluon is unable to learn
about multicast memberships behind other nodes, the multicast router port
flag will force it to unconditionally hand over all multicast packets to
batman-adv. Which even with IGMP/MLD filtered, will have full multicast
membership knowledge through its own propagation through the batman-adv
translation table.
Advantages are:
* Reduced overhead through reactive batman-adv multicast TT vs.
periodic IGMP/MLD messages in the mesh
* Increased IGMP/MLD snooping robustness via local, per node
IGMP/MLD queriers
* DDoS vector mitigation
**Note:** For nodes running an operating system other than Gluon, but a bridge
interface on top of the batman-adv interface, you will need to set the
multicast router flag there manually:
``debian$ echo 2 > /sys/class/net/bat0/brport/multicast_router``
"2" for this parameter means to always assume a multicast router behind
this bridge port and to therefore forward all multicast packets to this
port. Versus the default of "1" which means to learn about multicast
routers via IGMP/MLD Queries, PIM and MRD messages; or "0" to always
assume that there is no multicast router behind this port, meaning
to only forward multicast to this port if an according multicast
listener on this link was detected.
Further limitations: IGMP/MLD snooping switches (e.g. "enterprise switches")
behind the client network of a node (LAN ports) are unsupported. It is
advised to disable IGMP/MLD snooping on those enterprise switches for now
or to at least manually mark the port to the Gluon router as a
"multicast router port".
Alternatively, the filtering of IGMP/MLD reports can be disabled via
the site.conf (which is not recommended in large meshes though).
See :ref:`site.conf mesh section <user-site-mesh>` for details.

View File

@ -0,0 +1,49 @@
gluon-mesh-wireless-sae
=======================
This package adds support for SAE on 802.11s mesh connections.
Enabling this package will require all 802.11s mesh connections
to be encrypted using the SAE key agreement scheme. The security
of SAE relies upon the authentication through a shared secret.
In the context of public mesh networks a shared secret is an
obvious oxymoron. Still, this functionality may provide an improvement
over unencrypted mesh connections in that it protects against a
passive attacker who did not observe the key agreement. In addition
Management Frame Protection (802.11w) gets automatically enabled on
wireless mesh interfaces to prevent protocol-level deauthentication attacks.
If `wifi.mesh.sae` is enabled, a shared secret will automatically be
derived from the `prefix6` variable. This is as secure as it gets
for a public mesh network.
For *private* mesh networks `wifi.mesh.sae_passphrase` should be
set to your shared secret.
site.conf
---------
These settings apply to all 802.11s mesh interfaces on all radios.
wifi.mesh.sae \: optional
- ``true`` enables SAE on 802.11s mesh connections
- ``false`` disables SAE on 802.11s mesh connections
- defaults to ``false``
wifi.mesh.sae_passphrase \: optional
- sets a shared secret used to authenticate any two mesh nodes,
crucial for private mesh networks
- should not be set, if the shared secret is shared with untrusted
third parties, like in a publish mesh network
- defaults to an autogenerated value derived from ``prefix6``
Example::
wifi = {
mesh = {
sae = true,
-- sae_passphrase = "<shared secret>",
},
},

View File

@ -0,0 +1,64 @@
gluon-radv-filterd
==================
This package drops all incoming router advertisements except for the
default router with the best metric according to B.A.T.M.A.N. advanced.
Note that advertisements originating from the node itself (for example
via gluon-radvd) are not affected and considered at all.
Selected router
---------------
The router selection mechanism is independent from the batman-adv gateway mode.
In contrast, the device originating the router advertisement could be any router
or client connected to the mesh, as radv-filterd captures all router
advertisements originating from it. All nodes announcing router advertisement
**with** a default lifetime greater than 0 are being considered as candidates.
In case a router is not a batman-adv originator itself, its TQ is defined by
the originator it is connected to. This lookup uses the batman-adv global
translation table.
Initially the router is selected by choosing the candidate with the strongest
TQ. When another candidate can provide a better TQ metric, that outperforms the
currently selected router by X metric units, it will be picked as the new
selected router. The hysteresis threshold is configurable and prevents excessive
flapping of the gateway.
Local routers
-------------
Local routers (i.e. local internet gateways connected to some nodes) that are
connected to the client interface via cable or WLAN instead of via the mesh
(technically: appearing in the transtable_local) are taken into account with a
fake TQ of 512, so that they are always preferred.
Be aware of problems if you plan to use local routers together with the
:doc:`gluon-ebtables-filter-ra-dhcp` package. These router advertisements are
filtered anyway and reach neither the node nor any other client. Therefore the
use of local routers is not possible as long as the package
``gluon-radv-filterd`` is used.
respondd module
---------------
This package also contains a module for respondd that announces the currently
selected router via the ``statistics.gateway6`` property using its interface MAC
address. Note that this is different from the ``statistics.gateway`` property,
which contains the MAC address of the main B.A.T.M.A.N. adv slave interface of
the selected IPv4 gateway.
site.conf
---------
radv_filterd.threshold : optional
- minimal difference in TQ value that another gateway has to be better than
the currently chosen gateway to become the new chosen gateway
- defaults to ``20``
Example::
radv_filterd = {
threshold = 20,
}

Some files were not shown because too many files have changed in this diff Show More