libremesh / lime-packages

LibreMesh packages configuring OpenWrt for wireless mesh networking
https://libremesh.org/
GNU Affero General Public License v3.0
274 stars 95 forks source link

Get compatible with OpenWrt ImageBuilder #1000

Open ilario opened 1 year ago

ilario commented 1 year ago

Following the discussion from https://github.com/libremesh/lime-packages/issues/794#issuecomment-1494030137

Advantages would be many. For example, being able to compile LibreMesh images through https://firmware-selector.openwrt.org/ or allowing the community to compile images without needing the full BuildRoot and without the need to create and host our own ImageBuilder.

Related issues:

794 (and #999 would help also for this issue)

800 (and #991 is specifically written for this issue)

Some problematic code:

https://github.com/libremesh/lime-packages/blob/39a57a75622aeb51672a00ab3c1987238395248a/packages/lime-debug/Makefile#L38-L42

ilario commented 1 year ago

Likely, also the dependency from dnsmasq-dhcpv6 is going to be problematic, as it conflicts with the dnsmasq package which is included by default. https://github.com/libremesh/lime-packages/blob/8aa007e456d3cc98fd45997689624dbbeade3c7b/packages/lime-proto-anygw/Makefile#L24

For example, when compiling with both packages selected, errors such this appear:

 * check_data_file_clashes: Package dnsmasq-dhcpv6 wants to install file openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/root-ipq40xx/etc/hotplug.d/ntp/25-dnsmasqsec
    But that file is already provided by package  * dnsmasq
ilario commented 1 year ago

Likely, also the dependency from dnsmasq-dhcpv6 is going to be problematic, as it conflicts with the dnsmasq package which is included by default.

The solution has to be: using dnsmasq for IPv4 and odhcpd-ipv6only for IPv6. See #294

ilario commented 1 year ago

We should also get rid of the @(PACKAGE_iw||PACKAGE_iw-full) in the Makefiles of prometheus-node-exporter-lua-location-latlon, prometheus-node-exporter-lua-wifi-params, prometheus-node-exporter-lua-wifi-stations-extra and prometheus-node-exporter-lua-wifi-survey. But these packages are not suggested on the website, so it is not important.

ilario commented 1 year ago

An important step forward has been made in #1015.

The created x86 images does not yet boot on qemu (reported by @a-gave ) and the other images are yet to be tested.