Commit Graph

3482 Commits

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