libremesh.github.io icon indicating copy to clipboard operation
libremesh.github.io copied to clipboard

Update Development page to include packages selected in LibreRouter repository

Open ilario opened this issue 4 years ago • 8 comments

In order to keep the Development page useful, it should be updated to the packages selected by the LibreMesh developers. Seems that they are working on the image compilation for LibreRouter and the packages selection is being made on: https://github.com/LibreRouterOrg/openwrt/blob/b536696f27b3803041dc7a2327157ef69a76e953/configs/default_config

comparing this file with what gets compiled following the instructions on the Development page, the following things seems to be missing from the development page or from the lime-packages packages dependencies:

CONFIG_PACKAGE_watchping=y we don't use this anymore, no?

CONFIG_PACKAGE_kmod-tun=y seems needed by Tinc, but we still are not including any Tinc stuff (e.g. https://github.com/libremesh/lime-packages/tree/master/packages/tinc, https://github.com/libremesh/lime-packages/issues/99, https://github.com/libremesh/lime-packages/issues/579) in the release, correct?

CONFIG_PACKAGE_kmod-iptunnel6=y CONFIG_PACKAGE_kmod-ip6-tunnel=y these looks related to BMX6 and BMX7, do we need them?

CONFIG_PACKAGE_fft-eval=y we have to remember to add this to the page once OpenWrt 19.07 will be released

CONFIG_PACKAGE_deferable-reboot=y should we consider to include this in the next release? (maybe increasing the time between reboot and reboot to a week)

CONFIG_PACKAGE_batctl=y beware that with OpenWrt 19.07 the batctl package will split in batctl-tiny, batctl-default and batctl-full

CONFIG_BUSYBOX_CONFIG_DEVMEM=y CONFIG_KMOD_BATMAN_ADV_DEBUGFS=y CONFIG_PACKAGE_rpcd-mod-rrdns=y CONFIG_PACKAGE_kmod-usb-ohci=y What about these? Do we need them?

ilario avatar Dec 01 '19 11:12 ilario

In order to keep the Development page useful, it should be updated to the packages selected by the LibreMesh developers. Seems that they are working on the image compilation for LibreRouter and the packages selection is being made on: https://github.com/LibreRouterOrg/openwrt/blob/b536696f27b3803041dc7a2327157ef69a76e953/configs/default_config

comparing this file with what gets compiled following the instructions on the Development page, the following things seems to be missing from the development page or from the lime-packages packages dependencies:

CONFIG_PACKAGE_watchping=y we don't use this anymore, no?

Not sure but it is very handy.

CONFIG_PACKAGE_kmod-tun=y seems needed by Tinc, but we still are not including any Tinc stuff (e.g. https://github.com/libremesh/lime-packages/tree/master/packages/tinc, libremesh/lime-packages#99, libremesh/lime-packages#579) in the release, correct?

No, we are not including tinc by default

CONFIG_PACKAGE_kmod-iptunnel6=y CONFIG_PACKAGE_kmod-ip6-tunnel=y these looks related to BMX6 and BMX7, do we need them?

I don't know.

CONFIG_PACKAGE_fft-eval=y we have to remember to add this to the page once OpenWrt 19.07 will be released

CONFIG_PACKAGE_deferable-reboot=y should we consider to include this in the next release? (maybe increasing the time between reboot and reboot to a week)

I think it should be enabled by default.

CONFIG_PACKAGE_batctl=y beware that with OpenWrt 19.07 the batctl package will split in batctl-tiny, batctl-default and batctl-full

CONFIG_BUSYBOX_CONFIG_DEVMEM=y CONFIG_KMOD_BATMAN_ADV_DEBUGFS=y CONFIG_PACKAGE_rpcd-mod-rrdns=y

I think this is not used but I am not sure as luci.network is somewhat used

CONFIG_PACKAGE_kmod-usb-ohci=y

unneded (should be selected by selecting the correct board)

spiccinini avatar Dec 14 '19 00:12 spiccinini

Ok, so basically there is nothing to be taken from the LibreRouterOS packages list, correct? The only exception being deferable-reboot.

And we'll have to explicitly (see https://github.com/libremesh/lime-packages/pull/673/commits/b8980c317f839a268dce3e92d2051ab5faaf78a6) specify batctl-default in the list and also fft-eval as soon as the compilation instructions will refer to OpenWrt 19.07.

ilario avatar Jan 04 '20 19:01 ilario

3 years have passed and there is again some divergence between the standard packages in LibreRouterOS and the recommended ones on the LibreMesh website. We should check whether some of the LibreRouterOS project choices make sense also here: https://gitlab.com/librerouter/librerouteros/-/blob/librerouter-1.5/configs/default_config

ilario avatar Jul 12 '22 17:07 ilario

Some info should be possible to extract from the comments in the commits:

https://gitlab.com/librerouter/librerouteros/-/blame/librerouter-1.5/configs/default_config

ilario avatar Nov 14 '22 17:11 ilario

Let's discuss here which packages to support and include for the 2020.2 release. As a general principle for a headache-free release, I would avoid anything that was not included in the development page until now and that is not being used in LibreRouterOS (but if there are requests, let's test them!).

Looking at the LibreRouterOS list linked above, these are the packages that they include and that we are not currently recommending:

  • [ ] deferable-reboot that reboots each router every 27 hours. I really hope we don't need that. I would be in favor of including it if by default it were deactivated or rebooting the system every n weeks or months (and not running in cron every minute).
  • [ ] eupgrade that looks at an IP for newer versions of the firmware and then I don't know how it works. For including it we need at least to know where its documentation is, and where is the server's documentation also.
  • [ ] first-boot-wizard currently only works on dual band routers https://github.com/libremesh/lime-packages/issues/661 and also works only for a very specific kind of community where you accept to use the same root password set in the neighboring nodes
  • [ ] pirania opinions? There is only one tiny reported issue https://github.com/libremesh/lime-packages/issues/942 does it make sense to include it by default? Does it need a server application for generating the voucher? In this case, where is the documentation?
  • [ ] pirania-app this does not exist anymore, seems that has been merged in pirania
  • [ ] prometheus-node-push-influx push info to a "VistoriaMetrics" server
  • [ ] miniserver-client same as above?
  • [ ] prometheus-node-exporter-lua instead of pushing, allows the pull?
  • [ ] prometheus-node-exporter-lua-openwrt
  • [ ] prometheus-node-exporter-lua-wifi_stations
  • [ ] prometheus-node-exporter-lua-wifi-stations-extra
  • [ ] prometheus-node-exporter-lua-wifi-survey
  • [ ] prometheus-node-exporter-lua-wifi-params
  • [ ] prometheus-node-exporter-lua-location-latlon

ilario avatar Mar 08 '23 13:03 ilario

I missed the safe-reboot package:

  • [ ] safe-reboot but it would require fixing this issue https://github.com/libremesh/lime-packages/issues/909

ilario avatar Mar 18 '23 12:03 ilario

Looking at these:

  • [ ] prometheus-node-exporter-lua-wifi-stations-extra
  • [ ] prometheus-node-exporter-lua-wifi-survey
  • [ ] prometheus-node-exporter-lua-wifi-params
  • [ ] prometheus-node-exporter-lua-location-latlon

In our CN we haven't tried these yet but we will (these should basically add some new parameters in prometheus format, useful for debugging and visualization of metrics). I think they could be added as default for 2020.2, but probably not all devices can have them due to limited flash/ram space. Not only 4/32 devices but also with others i.e. ath79_generic_tplink_cpe510-v3 if I add those packages the resulting image is too big.

Maybe it could be clearer if the Development page mentions the different set of recommended packages with a general section (as it already is with all the recommended packages), but also with subsections, or another page, specific for 4MB flash, 8MB flash, with the packages to deselect. For example like Openwrt does in this page: Saving firmware space and RAM https://openwrt.org/docs/guide-user/additional-software/saving_space

Currently on the site the packages listed as safely deselectable are:

  • check-date-http (Keep local date under NTP too far away skew)
  • lime-docs (LibreMesh full documentation)
  • lime-hwd-ground-routing (Manage 802.1q VLANs for ground routing)
  • lime-debug (libremesh debug utils)

a-gave avatar Mar 20 '23 16:03 a-gave

Thanks for the link! I included it in the "development" page: https://github.com/libremesh/libremesh.github.io/commit/8941fbca5f668aa07831d58894a5d1d53a1d836f

Let us know which Prometheus packages you would suggest, please! Which ones are you using now?

ilario avatar Mar 20 '23 17:03 ilario