uvol creates /tmp/run/uvol/.meta/apk as the database directory of apk's
uvol layer, but leaves it empty. apk only activates a layer other than
the root one when its world file can be read, so every package built
for that layer is refused as "masked in: layer" until something writes
the file. The container runtime keeps its global state in
/tmp/run/uvol/.meta/uxc, which only container packages ship, so on a
device without any of them that state cannot be stored.
Create an empty world file and the uxc directory when they are missing,
whenever .meta is created or adopted at boot.
uvol up on an LVM volume that is already active and registered with
blockd registers it again. blockd answers each registration with a
mount.add notification, so a consumer that brings volumes up from a
mount.add trigger, such as the container runtime, triggers itself again
without end. Return success for such a volume without registering it,
as the UBI backend already does for an active volume.
Fixes: 6772c0fe44 ("uvol: clean up paths and fix delayed startup")
Fixes: cb60600aec ("uvol: bump version to 1.1")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
See https://github.com/fwupd/fwupd/releases/tag/2.1.8
Remove backported patches which were adding support for
the MaxLinear MxL862xx switch family to 2.1.7 downstream.
Restore the glib2 host build dependency
src/meson.build calls gnome.compile_resources(), which resolves
glib_compile_resources from the staged gio-2.0.pc. glib2 rewrites that
variable to point into staging_dir/hostpkg, as a cross-built generator
cannot run on the build host, so fwupd has to build glib2/host. With
the dependency gone, meson only configures when an unrelated package
stages the host tools first, and otherwise fails with "tool variable
'glib_compile_resources' contains erroneous value".
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
One $(INSTALL_BIN) per binary, where several share a source directory.
Use brace expansion as the rest of the feed does. Packaged contents are
unchanged.
Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
Upstream dropped the standalone hcidump tool, whose functionality has
lived inside btmon for years, so stop installing it; bluez-utils-btmon
covers it. Refresh 211-shared-gatt-helpers-Ignore-invalid-characteristic-
entries.patch, which otherwise applies with an offset of twelve lines,
and give 201-readline.patch and 202-fix-endianness.patch the git headers
the formality check asks for.
Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
Run collectd in a VRF, using the procd 'vrf' parameter:
config globals 'globals'
option vrf '<dev>'
Assisted-by: Claude:claude-fable-5-1
Signed-off-by: Nick Hainke <vincent@systemli.org>
Changes:
- clear old retained topics when a topic translation is added
- configurable sensor offline time (sensor-offline-seconds)
- fix a buffer overflow and a crash on empty MQTT messages
- add --version option
- do not build the tests in the package (BUILD_TESTING=OFF)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FKXWPFfkJSBzsjL6umsjGD
Signed-off-by: Peter Liedholm <peterfromswe884@gmail.com>
liblzma.pc is generated by a make rule that expands $(libdir) and
$(includedir) to absolute paths, which OpenWrt's pkg-config wrapper
cannot redirect at the staging directory. Rewrite the staged copy with
SED instead of patching the template, as ~50 other packages here do.
Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
tio embeds Lua for its scripting support, which is not optional. It
looks Lua up through pkg-config as lua-5.4, lua-5.3, lua-5.2, lua-5.1
and lua, in this order, with no option to select the version. The
package depends on lua (5.1), which tio has found as lua.pc so far.
Since lua5.4 stages lua-5.4.pc, tio finds Lua 5.4 first and links
liblua5.4 without depending on it.
Depend on liblua5.4, the version tio looks up first, instead of lua,
which is the documented preferred version anyway.
Only the library is needed; tio does not run the lua interpreter.
Signed-off-by: Mirko Vogt <mirko-openwrt@nanl.de>
duperemove is a simple tool for finding duplicated
extents and submitting them for deduplication. It
will de-dupe results on btrfs.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Signed-off-by: Keith T. Garner <kgarner@kgarner.com>
--enable-small builds only the resumable mode of the LZMA decoder and a
single-table CRC32/CRC64 without the architecture-specific CRC code.
Keep it for SMALL_FLASH targets and build the fast variants elsewhere.
xz -dc -T1 of a 32 MiB file (3.3 MiB .xz), median of 5: 966 -> 880 ms
on Cortex-A53, 813 -> 634 ms on Cortex-A72 in AArch32. liblzma grows by
11.5 KiB (aarch64) to 19.6 KiB (mips_24kc), compressed with xz.
Assisted-by: Claude:claude-opus-5-5
Signed-off-by: Julius Bairaktaris <julius@bairaktaris.de>
- Add interface trigger handling in watchcat.init
- Log when raw interface trigger is activated by any interface coming up
- Move helper functions to separate file
- Update Makefile to install new functions file
Closes: #30463
Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
We use shellcheck even though it is pedantic to assist in reducing
errors. Therefore, we add shellcheck directives to silence false
positives. We keep changes minimal as some shellcheck suggestions
result in watchcat failing to function properly.
Also make formatting shmt clean (using -ln=bash due to ash constructs
that shfmt 3.8.0 does not accept for posix shells including busybox).
Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
The package allocates a group named scanner with a dynamic id, while
openwrt.git's scanner-support package allocates it as gid 47. Two
different ids for one group name make the metadata scan fail.
Depend on scanner-support and pin the group to the same id. The hotplug
script stays here: it matches a scanner by vendor and product id against
the usbid lists this package ships, which scanner-support has no way to
do, and it already checks that the group exists before granting access.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
get_bootdev() identifies the boot disk for a root=PARTUUID=xxxxxxxx-NN
command line by reading the four-byte signature at offset 440 of each
block device, but renders it with %x per byte, so a byte below 0x10 comes
out as a single digit and the string is too short to ever match. A disk
whose signature is cf0a3161 yields "cfa3161", get_bootdev() returns null,
and every backend's init fails: uvol then reports no backend at all and
no volume can be created on a perfectly good volume group.
Pad each byte to two digits, as the GPT branch of the same function
already does.
Fixes: 6350c7bc63 ("uvol: replace with re-write in ucode")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
setools reads its version through importlib.metadata, which imports
the email module. email is part of python3-urllib, so without it every
tool prints "unknown" for --version, and the generic version check
fails for all of them. Depend on python3-urllib.
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
None of the selinux-python tools print the package version, so the
generic version check fails for all of them.
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Fixes GHSA-5qpq-xqfv-j9pg: after a failed memory allocation,
reinitializing an existing .lzma, .lz or MicroLZMA decoder to decode a
different file could access invalid memory and at least crash. It
affects all XZ Utils versions since 5.0.0.
The release also fixes a wrong error code in lzma_stream_buffer_decode()
and a slowdown of lzma_index_cat() with crafted files that made
"xz --list" appear to hang.
Release notes:
https://github.com/tukaani-project/xz/releases/tag/v5.8.4
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
gpsd-clients/install only shipped cgps, gpsctl, gpsdecode, gpsmon,
gpspipe, gpxlogger and lcdgps, leaving out gps2udp even though it's
built by scons like the rest of the client tools. Install it too.
Signed-off-by: Jose Luis Sanroma Tato <joseluis.sanromatato@unwired.at>
Two packages provide librespeed-cli, and for a dependency written with a
leading plus, package-metadata.pl re-emits the chosen provider's
architecture gate under a condition that names the consuming package.
Kconfig reads that as a self-dependency, once for librespeed-common and
again for luci-app-librespeed. Naming the client without the plus emits
a plain either-or instead, and the user picks.
The provide also crosses package boundaries, where package-pack.mk asks
for an unversioned one: with a version the higher one wins, so a release
on either side would decide which client apk installs. Unversioned, the
package called librespeed-cli keeps the name, and a default variant
gives the Rust client the provider priority so it is still chosen where
the Go client is not built.
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
The mox-pkcs11 package was merged with a Makefile that fails during build,
specifically because of linking issues.
Example errors:
> mox-pkcs11.c:(.text+0x1e4): undefined reference to `find_key_by_type_and_desc'
> mox-pkcs11.c:(.text+0x109c): undefined reference to `keyctl_read'
> ERROR: package/feeds/packages/mox-pkcs11 failed to build.
The specific error is a missing '\'.
Reported-by: Robert Klink <rklink@ripe.net>
Signed-off-by: Trix Taiclet <git@trix.moe>
The LG Magic Remote MR24 pads a Read By Type response for the
characteristic declaration with junk entries once its attribute table
is exhausted, and bluetoothd then throws the whole GATT discovery away,
so the HID over GATT profile never attaches and the remote produces no
input device. Add a gatt-helpers fix that accepts only the ascending,
in-range prefix of such a response.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Corrects the transfer accounting, the redirect and TLS handling, the
command line and the reports, sanitizes text a server supplies, and
holds the output to the Go client's with differential tests.
The upstream repository moved to the librespeed organisation, and the
version banner follows it, so the test greps for the new address.
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Update the mstflint package to the latest 4.37.0-1 release.
Also add the newly introduced mstefuse binary, which prints
fuse voltage readings, to the package installation.
Release notes:
https://github.com/Mellanox/mstflint/releases/tag/v4.37.0-1
Signed-off-by: Til Kaiser <mail@tk154.de>
Add a version check override script that verifies swanmon displays its
usage information, since swanmon does not provide version information.
Remove redundant test.sh.
Signed-off-by: Wei-Ting Yang <williamatcg@gmail.com>
- Accommodate macOS dynamic pipe sizing, avoiding hangs.
- Modify the readline redisplay code to use a buffer offset instead of
the physical prompt length in a multibyte locale to determine whether
to reprint the prompt from column 0 because the cursor is before the
last invisible character in the prompt string.
- Fix readline crash with a prompt that exceeds 256 wrapped lines.
Fix readline redisplay code to print the entire prompt if the first
few characters are identical but part of a terminal escape sequence
and the prompt needs to be redrawn.
- Work around systems including bytes between 128 and 255 in the
isalpha(3) set, which causes bash to potentially include them in
identifier names.
- If readline handles a SIGWINCH and updates its idea of the screen
dimensions, it needs to recompute the columns where the prompt wraps
lines every time, not just when the screen width decreases.
Signed-off-by: Wei-Ting Yang <williamatcg@gmail.com>
Ship a uci-defaults script that excepts the podman bridges from dnsmasq so
aardvark-dns can own the gateway :53, adds an fw4 zone forwarding the podman
subnets to wan, and reloads both so it also applies on a running system.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Stable bug-fix release. It avoids a TOCTOU issue in LUKS header restore
by opening the header file only once, hardens BITLK metadata validation
against crafted images, fixes an integer overflow in the anti-forensic
data size calculation on 32-bit systems and a memory corruption in
reencrypt init with more than 16 active LUKS2 keyslots or tokens, and
adds keyed discards to integritysetup (--allow-discards-keyed, Linux
7.3 or later).
Link: https://gitlab.com/cryptsetup/cryptsetup/-/blob/v2.8.8/docs/v2.8.8-ReleaseNotes
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
OpenWrt builds OpenSSL with no-blake2, which OpenSSL's Configure turns
into no-argon2 because Argon2 is built on BLAKE2b. The cryptsetup
configure script only looks for the OSSL_KDF_PARAM_ARGON2_VERSION macro,
which such a build still installs, so it drops the bundled Argon2 and
EVP_KDF_fetch() fails at runtime. Every LUKS2 keyslot using Argon2 then
fails instantly with "Keyslot open failed", and cryptsetup benchmark
reports argon2id as N/A. Add a patch that also checks OPENSSL_NO_ARGON2
so the bundled implementation is used again.
Fixes: fbac2e7861 ("cryptsetup: update to 2.8.7")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
mariadb-upgrade has had its own upgrade version file in the datadir,
called mysql_upgrade_info in <= 10.11 and mariadb_upgrade_info there
after.
The mariadb-install-db creates this file, and also the mariadb-upgrade
executable creates this file also.
This removes the need to maintain the .version info though this is used
as a last check of the upgrade.
Signed-off-by: Daniel Black <daniel@mariadb.org>
Backport two patches from upstream implementing devlink-based firmware
update support for the MaxLinear MxL862xx DSA switch family, found eg.
on the BananaPi R4 Pro (8E/4E).
Users can update the switch firmware using `fwupdmgr update`.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Increment PKG_RELEASE to force a package rebuild following recent changes,
ensuring package indexes and builds reflect the update.
Signed-off-by: Christian Korber <ckorber@tdt.de>
We need `ucode-mod-rtnl` as a dependency, because it is used in ufp.
This was forgotten in previous commits.
Signed-off-by: Christian Korber <ckorber@tdt.de>
Move each package dependency onto its own line.
This makes future dependency additions, removals,
and code reviews much easier to track in diffs.
It also keeps the dependency line under 80 characters.
Signed-off-by: Christian Korber <ckorber@tdt.de>
Add a common backend for running librespeed-cli measurements on a router.
The package provides a locked measurement runner, live progress state, and
an rpcd ucode plugin exposing start/stop/status/result/history/config over
ubus. Scheduled measurements are managed through cron and can run within a
configurable time window. Optional daily aggregation keeps longer-term
history compact.
Raw measurements are kept in JSONL for a configurable retention period.
When persistent archive storage is configured, completed days are reduced
to daily min/avg/max values.
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>