Add ubihealthd to the nand-utils package, auto-create UCI config for each UBI device and launch the daemon on boot.
The default time interval between scrubbing a random PED is 120 seconds which means that a fully used 128 MiB flash chip gets scrubbed in about a day and a half. The interval can be adjusted in UCI using the 'interval' option.
Suggested-by: Rodrigo Balerdi <lanchon@gmail.com> Signed-off-by: Daniel Golle <daniel@makrotopia.org> Link: https://github.com/openwrt/openwrt/pull/16973 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> (commit: 7e287b5)
Now that omnia-eeprom is marked nonshared building the cortex-a9 mvebu subtarget will fail with: ERROR: unable to select packages: omnia-eeprom (no such package): required by: world[omnia-eeprom]
This is because omnia-eeprom depends on TARGET_mvebu_cortexa9_DEVICE_cznic_turris-omnia which will not be satisfied in buildbots since CONFIG_TARGET_ALL_PROFILES and CONFIG_TARGET_PER_DEVICE_ROOTFS are set in which case CONFIG_TARGET_mvebu_cortexa9_DEVICE_cznic_turris-omnia is not set.
So, lets simply depend on the mvebu/cortex-a9 subtarget.
Fixes: 371e7bef4046 ("omnia-eeprom: Mark it nonshared") Link: https://github.com/openwrt/openwrt/pull/17007 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: 90de3b2)
The broadcom PHY driver only has to depend upon PTP_1588_CLOCK_OPTIONAL if NETWORK_PHY_TIMESTAMPING is enabled. The PTP functionality is stubbed in this case.
Reflect this circumstance in the dependence condition. This allows to build the driver as a built-in module even if PTP is built as a module.
This is required to include the broadcom PHY module regardless of the built-setting of the PTP subsystem. On ath79 (and probably more) targets with Broadcom PHY, Gigabit operation is currently broken as the PHY driver is only built as a module in case all kernel-packages are built. Due to this circumstance, affected devices fall back to using the generic PHY driver.
Signed-off-by: David Bauer <mail@david-bauer.net> (commit: e6d483c)
include/package-pack: add default 'provider_priority' for APK packages
Currently, trying to use APK to install a package that has a dependency on a virtual package that needs to be resolved via 'provides' it will fail if package does not have 'DEFAULT_VARIANT:=1' like: apk add usbutils ERROR: unable to select packages: libudev (virtual): note: please select one of the 'provided by' packages explicitly provided by: libudev-zero required by: usbutils-017-r1[libudev]
Issue is that we dont set 'provider_priority' that APK uses to break ties when choosing a virtual package to satisfy a dependency and thus despite only one package providing the dependency it will still end up with a tie and just error out.
So, lets simply fix this by providing a default value for 'provider_priority' when 'DEFAULT_VARIANT' is not set and then APK will be able to resolve dependencies.
Fixes: #16976 Link: https://github.com/openwrt/openwrt/pull/17008 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: dea8397)
ipq806x: tr4400v2: fix dtc warnings by deleting stock partitions
The original set of stock partitions was kept in the TR4400 v2 port, with the same partition numbers but their names prefixed with 'stock_'. This allowed scripts (installation, back to stock, etc) to run on both stock and OpenWrt firmware. But this triggers warnings in the device tree compiler, as partitions of the old and new schemes overlap.
This commit fixes the dtc warnings by deleting the stock partitions, also renumbering some of the remaining MTD partitions in the process. Additionally, the 'fw_env' partition is set to read-only.
These changes can break existing scripts as well as user configurations that utilize the 'extra' partition. Users wanting to run old scripts can do so by reverting to the 23.05 series releases.
Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com> Link: https://github.com/openwrt/openwrt/pull/16958 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: 8ec35a2)
We have a lot of script-only packages that are universal for all arch-s and those set PKGARCH:=all to indicate it.
Unfortunately, APK expects architecture to be set to "noarch" instead to indicate that its universal so instead of having to update all packages that set PKGARCH:=all and thus break OPKG lets simply translate "all" to "noarch" when generating the APK package.
This will be required as soon we update APK to include [1] as it will start enforcing package architecture checks.
Suggested-by: Jonas Gorski <jonas.gorski@gmail.com> Link: https://github.com/openwrt/openwrt/pull/17015 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: 0d0a5eb)
Currently, when "apk add --initdb" is called it will populate the /etc/apk/arch file with the architecture of the host instead of the target package architecture and this will then make it impossible for new packages to be installed on the device as the target architecture will not match after APK is updated to include [1].
So, lets use override the architecture by passing the target package one by using the "--arch" argument to "apk add".
apk: update to git e3464d096708b270138653ef93db59134bb24813 (2024-11-13)
Allows us to drop the description backport.
Changes: e3464d0 db: make repository description an atom instead of allocation 417a93c pkg: truncate apkv3 description to 256 bytes d26b65d db, audit: remove support for files without embedded checksum 64ff8c7 db: allow files starting with a dot in the root directory of apk3 packages 89e4bf1 db, fs: do not extract devices in --usermode 4050f9e db: fix hardlink handling: root directory and v3 checksums ade0be3 db, extract: handle file/directory extraction errors more consistently a4837ae package: don't call make_device_tree when APK_NO_CHROOT is set 1e04115 package: respect libexecdir instead of hard-coding /usr/libexec 76970a9 package: move the location of executable package scripts 19b1df7 blob: refactor apk_blob_for_each_segment into apk_blob_foreach_word e38d5b5 test: add missing alpine tests makefile fcd4def test: move vertest to cmocka based unit testing infrastructure 8a13ed9 test: fix solver.sh for parallel use 5add6fc (tag: v3.0.0_pre4) apk-tools-3.0.0_pre4 5dd91e3 db: consider --force-no-chroot when determining /dev/fd availability d86afde db: print message when a file is written to .apk-new a5aeb3d test: unify makefile and meson tests a236fdd pkg: use memfd_create only if target root has dev/fd working 563d364 tests: minor updates to root tests 08b4d21 tests: move solver test data to separate directory c259642 tests: rework solver tests to not require apk-test binary d2aaf13 commit: sort matched dependencies on error analysis 98d7196 db: fix permissions of arch file b231eac db: simplify add_repos_from_file 2a3dbfc db: add and use apk_db_parse_file helper to parse files line by line c1a3e69 db: validate package arch against compatible arches
Link: https://github.com/openwrt/openwrt/pull/17015 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: 6756929)
Currently trying to use the 'package_depends' feature of ImageBuilder will result in it trying to call OPKG: make package_depends PACKAGE="usbutils" OK: 26 MiB in 142 packages bash: line 1: openwrt-imagebuilder-qualcommax-ipq807x.Linux-x86_64/staging_dir/host/bin/opkg: No such file or directory make: *** [Makefile:363: package_depends] Error 127
It looks like a copy/paste error when APK support was being added, so lets fix it by calling APK and its "info --depends" command.
Fixes: #16996 Fixes: d788ab376f85 ("build: add APK package build capabilities") Link: https://github.com/openwrt/openwrt/pull/17022 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: 03eeeff)
imagebuilder: fix OPKG package_whatdepends support
Trying to use 'package_whatdepends' feature of the ImageBuilder with OPKG will currently fail as OPKG does not support "list --depends" call at all, it seems that this is a mixup from the original APK support commit.
So, lets restore 'package_whatdepends' support for OPKG by calling "whatdepends -A" instead as we used to before APK support.
Fixes: d788ab376f85 ("build: add APK package build capabilities") Link: https://github.com/openwrt/openwrt/pull/17022 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: 52519a5)