Commit Graph

4074 Commits

Author SHA1 Message Date
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