openwrt-packages.git
2 weeks agopython-pyelftools: install /usr/bin/pyreadelf
Alexandru Ardelean [Mon, 1 Jun 2026 05:37:26 +0000 (08:37 +0300)]
python-pyelftools: install /usr/bin/pyreadelf

The wheel's /usr/bin/readelf.py collides with binutils' /usr/bin/readelf
and gets its shebang stripped by CompileAll + DeleteSourceFiles. Rename
to pyreadelf via the Py3Package install hook, matching Fedora's package.

Also depend on python3-asyncio and python3-codecs: elftools.construct.debug
imports pdb, and Python 3.14's pdb pulls in asyncio (via _pyrepl) and
unicodedata (via _pyrepl.utils) at import time.

Signed-off-by: Alexandru Ardelean <redacted>
2 weeks agopython-pyelftools: add setuptools to host & target build deps
Alexandru Ardelean [Sun, 31 May 2026 08:09:05 +0000 (11:09 +0300)]
python-pyelftools: add setuptools to host & target build deps

pyelftools 0.32 ships a PEP 517 build that requires setuptools as its
backend, so -m build fails with "BackendUnavailable: Cannot import
'setuptools.build_meta'" when only build, installer and wheel are staged.

Signed-off-by: Alexandru Ardelean <redacted>
2 weeks agomeshtasticd: add python-pyelftools to host build deps
Alexandru Ardelean [Sun, 31 May 2026 07:25:02 +0000 (10:25 +0300)]
meshtasticd: add python-pyelftools to host build deps

PlatformIO's SCons builder loads its tool modules at the start of
'pio run', including platformio/builder/tools/piosize.py which imports
elftools.elf. python-platformio's HOST_BUILD_DEPENDS already lists
python-pyelftools/host so it is installed alongside platformio in
staging_dir/hostpkg, but the dependency does not always reach
meshtasticd's compile step via that indirect chain, leading to:

  ModuleNotFoundError: No module named 'elftools'
    File ".../site-packages/platformio/builder/tools/piosize.py", line 22:
      from elftools.elf.descriptions import describe_sh_flags

Declare python-pyelftools/host directly in meshtasticd's build deps so
the host install is guaranteed before 'pio run' is invoked.

Signed-off-by: Alexandru Ardelean <redacted>
2 weeks agofrp: bump to 0.69.1
Roc Lai [Mon, 1 Jun 2026 12:06:57 +0000 (20:06 +0800)]
frp: bump to 0.69.1

Changes: https://github.com/fatedier/frp/releases/tag/v0.69.1

Signed-off-by: Roc Lai <redacted>
2 weeks agolibzip: add version check override
Michael Heimpold [Sun, 31 May 2026 07:43:19 +0000 (09:43 +0200)]
libzip: add version check override

zipmerge and zipcmp prints version on -V,
but ziptool does not offer version number in any output.

Co-authored-by: George Sapkin <redacted>
Signed-off-by: Michael Heimpold <redacted>
2 weeks agojose: disable man page generation via asciidoc
Daniel Golle [Fri, 8 May 2026 17:52:10 +0000 (18:52 +0100)]
jose: disable man page generation via asciidoc

The asciidoc/a2x toolchain bundled with newer Python (3.14) is
incompatible with jose's docbook XSL configuration, causing the
build to fail with xsltproc returning non-zero status while
processing 'jose.1.xml'.

Since the man pages are not strictly required for OpenWrt (and
typically stripped from the final image anyway), unconditionally
disable a2x detection in meson.build via a disabler() so that the
'mans' list stays empty regardless of host tooling.

Link: https://github.com/latchset/jose
Signed-off-by: Daniel Golle <redacted>
2 weeks agolibdrm: package test programs
Daniel Golle [Tue, 26 May 2026 16:30:59 +0000 (17:30 +0100)]
libdrm: package test programs

Package the libdrm test programs which are useful when debugging
video output issues: drmdevice, modetest, modeprint, proptest, vbltest

Signed-off-by: Daniel Golle <redacted>
2 weeks agoconmon: update to 2.2.1
Daniel Golle [Thu, 28 May 2026 03:19:15 +0000 (04:19 +0100)]
conmon: update to 2.2.1

Release notes: https://github.com/containers/conmon/releases/tag/v2.2.1

Upstream moved the install target from libexecdir/podman to bindir;
update Package/conmon/install accordingly and refresh
010-remove-libdl-dep.patch for the new context.

Signed-off-by: Daniel Golle <redacted>
2 weeks agogst1-plugins-base: pin GStreamer GL to the GLES2/EGL API
Daniel Golle [Fri, 22 May 2026 19:21:32 +0000 (20:21 +0100)]
gst1-plugins-base: pin GStreamer GL to the GLES2/EGL API

The 'gl_api' meson option was left at its 'auto' default, so the
GL plugin probed for desktop OpenGL. OpenWrt's Mesa is built with
-Dglx=disabled and -Dglvnd=disabled on every target, so it ships
no linkable desktop-GL library (no libGL.so, no gl.pc) - desktop
GL is only reachable through EGL. With nothing to satisfy the
probe in the sysroot, meson's cc.find_library('GL') fallback
escaped into the build host's /usr/lib and, on a host that has a
desktop libGL installed, put that foreign library on the link
line, breaking the cross link with:

  mold: fatal: /usr/lib/libGL.so: incompatible file type:
  riscv64 is expected but got x86_64

Pin -Dgl_api=gles2 and -Dgl_platform=egl to match what Mesa
actually provides (libGLESv2 + libEGL). This is correct on every
target, including x86_64: the desktop-GL link path was never
functional on OpenWrt and only ever "succeeded" by picking up a
host library.

Signed-off-by: Daniel Golle <redacted>
2 weeks agokea: handle network reconfiguration without restarting
Philip Prindeville [Mon, 1 Jun 2026 03:05:53 +0000 (21:05 -0600)]
kea: handle network reconfiguration without restarting

Currently if a dynamic interface changes (VLAN, tunnel, etc)
that Kea is listening on, it needs to be told externally to
restart.  The re-detect option avoids this.

Signed-off-by: Philip Prindeville <redacted>
2 weeks agokea: bump to 3.0.3
Alexandru Ardelean [Fri, 29 May 2026 03:59:23 +0000 (06:59 +0300)]
kea: bump to 3.0.3

3.0.3 is a security/vulnerability release on the stable 3.0 series.

Notable fixes since 3.0.2:

* **CVE-2026-3608** — A large number of bracket pairs in a JSON payload
  sent to any endpoint caused a stack overflow during recursive parsing.
  The exploit does not need a syntactically valid command, so it bypasses
  RBAC and the command filters on the High-Availability endpoints
  (upstream #4275 / #4288 / #4387).

* Null dereference when configuring the Control Agent with a socket
  entry that lacks the mandatory ``socket-name`` is now caught
  (#4388, #4365).

* UNIX command sockets are created group-writable so Stork 2.4.0+ and
  other tooling using the configured group can talk to the daemon
  (#4398, #4260).

Upstream's release notes flag "no incompatible changes" and "no known
issues" for this bump.

All current patches still apply cleanly.

Release notes:
https://ftp.isc.org/isc/kea/3.0.3/Kea-3.0.3-ReleaseNotes.txt

Signed-off-by: Alexandru Ardelean <redacted>
2 weeks agotransmission: add p{read,write}v2 syscalls to seccomp filter
Daniel Golle [Mon, 1 Jun 2026 02:19:22 +0000 (03:19 +0100)]
transmission: add p{read,write}v2 syscalls to seccomp filter

Tracing Transmission 4.11 showed the Transmission is started to use
the pwritev2 syscall for better write performance.
Add pwritev2 and preadv2 (which may be used as well, and anyway
doesn't hurt) to the list of allowed syscalls.

Signed-off-by: Daniel Golle <redacted>
2 weeks agolinenoise: update to 2026-03-02
Maxim Storchak [Sat, 30 May 2026 17:57:16 +0000 (20:57 +0300)]
linenoise: update to 2026-03-02

- Add bracketed paste folding
- Add test for ANSI CSI escape sequences in the prompt.
- Treat ANSI CSI escape sequences as zero-width in utf8StrWidth().
- Fix tab handling when no completion is available.
- Fix ARM unsigned char warning.

Signed-off-by: Maxim Storchak <redacted>
2 weeks agopython-aiosignal: remove the package
Alexandru Ardelean [Sun, 31 May 2026 17:25:38 +0000 (20:25 +0300)]
python-aiosignal: remove the package

aiosignal is a small aio-libs helper that provides a Signal class for
fan-out of coroutine callbacks. Its only practical use is as a runtime
dependency of aiohttp, which is not packaged in this repository, and no
other package here declares aiosignal as a runtime or build dependency.

Drop the package; users who pull in aiohttp via pip on the target will
get aiosignal as a transitive dependency anyway.

Signed-off-by: Alexandru Ardelean <redacted>
2 weeks agokea: add functional test.sh covering all subpackages
Alexandru Ardelean [Sat, 30 May 2026 08:46:25 +0000 (11:46 +0300)]
kea: add functional test.sh covering all subpackages

Smoke-test each subpackage with a real code path (config validators,
helper script sourcing, Python interpreter / module imports, hook .so
/ UCI file presence) instead of relying on the generic --version probe.

Signed-off-by: Alexandru Ardelean <redacted>
2 weeks agokea: ship admin-utils.sh and kea-shell Python modules
Alexandru Ardelean [Sat, 30 May 2026 06:46:39 +0000 (09:46 +0300)]
kea: ship admin-utils.sh and kea-shell Python modules

kea-admin and kea-shell were shipped without their helper script
and Python modules respectively, leaving both non-functional. Ship
the missing files, add +python3-light +python3-urllib +python3-openssl
to kea-shell, and rewrite its meson-baked host-absolute shebang and
sys.path.append to the on-target /usr/bin/python3 + $(PYTHON3_PKG_DIR).

Signed-off-by: Alexandru Ardelean <redacted>
2 weeks agopython-anyio: add test.sh and python3-urllib dep
Alexandru Ardelean [Sun, 31 May 2026 08:12:04 +0000 (11:12 +0300)]
python-anyio: add test.sh and python3-urllib dep

Exercise anyio end-to-end with the structured-concurrency example
from the upstream "Creating and managing tasks" docs: spawn 5 child
tasks via create_task_group(), each appending to a shared list, then
verify all completed.

Signed-off-by: Alexandru Ardelean <redacted>
2 weeks agopython-maxminddb: extend test.sh past the import smoke check
Alexandru Ardelean [Sun, 31 May 2026 08:11:57 +0000 (11:11 +0300)]
python-maxminddb: extend test.sh past the import smoke check

Previous test.sh only confirmed the import smoke check. Add a $2
version check, assert MODE_* constants are distinct ints, and exercise
the loader's error paths (missing file, non-MMDB temp file).

Signed-off-by: Alexandru Ardelean <redacted>
2 weeks agopython-maxminddb: add setuptools-scm host build dep
Alexandru Ardelean [Sun, 31 May 2026 08:11:50 +0000 (11:11 +0300)]
python-maxminddb: add setuptools-scm host build dep

maxminddb 3.x switched to PEP 517 with build-system.requires including
setuptools-scm, so the wheel build now fails with "ERROR Missing
dependencies: setuptools-scm". Wire it into PKG_BUILD_DEPENDS and bump.

Signed-off-by: Alexandru Ardelean <redacted>
2 weeks agofontconfig: update to 2.17.1
Hannu Nyman [Sun, 31 May 2026 15:40:35 +0000 (18:40 +0300)]
fontconfig: update to 2.17.1

Update to the newest stable version
* adjust download URL to gitlab
* add license info

Signed-off-by: Hannu Nyman <redacted>
3 weeks agopython-zipp: remove the package
Alexandru Ardelean [Sun, 31 May 2026 16:23:30 +0000 (19:23 +0300)]
python-zipp: remove the package

zipp is a small backport / forward-port of zipfile.Path, originally
useful when zipfile.Path was new in stdlib (Python 3.8). With the
python3 package now tracking 3.14, zipfile.Path covers what
zipp.Path exposes, and no other package in this repository declares
zipp as a runtime or build dependency.

Drop the package to remove the dead weight; users who still need it
can install it via pip on the target.

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agotmux: update to 3.6b
Maxim Storchak [Sat, 30 May 2026 17:59:20 +0000 (20:59 +0300)]
tmux: update to 3.6b

- Remove images from the correct list when they are removed while in the
  alternate screen

Signed-off-by: Maxim Storchak <redacted>
3 weeks agolsof: update to 4.99.6
Maxim Storchak [Sat, 30 May 2026 18:00:28 +0000 (21:00 +0300)]
lsof: update to 4.99.6

- Treat NFS ESTALE fds as unlinked for +L selection
- Fix null pointer exception

- Add test.sh

Signed-off-by: Maxim Storchak <redacted>
3 weeks agohaveged: update to 1.9.22
Hannu Nyman [Sun, 31 May 2026 09:56:24 +0000 (12:56 +0300)]
haveged: update to 1.9.22

Update to version 1.9.22.

Signed-off-by: Hannu Nyman <redacted>
3 weeks agomdnsresponder: add version check override
Alexandru Ardelean [Sat, 30 May 2026 18:12:17 +0000 (21:12 +0300)]
mdnsresponder: add version check override

None of the shipped binaries (mdnsd, dns-sd, mDNSClient/Net/Proxy*,
mDNSResponder) print the package version, so the generic probe always
fails. Add a test-version.sh exiting 0 for the three subpackages.

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agoalsa-lib: add version check override
Alexandru Ardelean [Sat, 30 May 2026 18:12:17 +0000 (21:12 +0300)]
alsa-lib: add version check override

alsa-lib ships only a shared library and aserver has no --version, so
neither can satisfy the generic version probe. Add a test-version.sh
that exits 0 for both arms and exits 1 for unknown subpackages.

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agomeshtasticd: add new package
George Sapkin [Fri, 8 May 2026 18:49:41 +0000 (21:49 +0300)]
meshtasticd: add new package

Add Mesthastic daemon and web interface.

Co-authored-by: Austin Lane <redacted>
Signed-off-by: George Sapkin <redacted>
3 weeks agopython-uvicorn: fix dependencies
George Sapkin [Tue, 26 May 2026 16:15:26 +0000 (19:15 +0300)]
python-uvicorn: fix dependencies

Add the missing python-hatchling/host dependency.

Fixes: 072fde3b ("python-uvicorn: add new package")
Signed-off-by: George Sapkin <redacted>
3 weeks agopython-anyio: fix dependencies
George Sapkin [Tue, 26 May 2026 15:35:02 +0000 (18:35 +0300)]
python-anyio: fix dependencies

Add the missing python-setuptools-scm/host dependency.

Fixes: 71be202c ("python-anyio: add new package")
Signed-off-by: George Sapkin <redacted>
3 weeks agokea: depend on the concrete log4cplus, not the -any virtual
Alexandru Ardelean [Fri, 29 May 2026 12:35:01 +0000 (15:35 +0300)]
kea: depend on the concrete log4cplus, not the -any virtual

Commit 1ea43c352 ("kea: fix kea-libs dependencies") replaced the
direct +log4cplus dependency on kea-libs with the virtual name
+log4cplus-any. With only one log4cplus implementation in the feed,
nothing actually PROVIDES log4cplus-any other than the auto-generated
"package name + -any" alias on log4cplus itself.

apk treats `-any`-suffixed names as ambiguous virtuals that the
admin must resolve explicitly, even when only one provider exists,
and refuses to install:

  ERROR: unable to select packages:
    log4cplus-any (virtual):
      note: please select one of the 'provided by'
            packages explicitly
      provided by: log4cplus
      required by: kea-libs-3.0.2-r7[log4cplus-any]

That bubbles up to every kea subpackage runtime test in CI
(kea-admin, kea-ctrl, every kea-dhcp* and kea-hook-*) and fails
the multi-arch test build with exit code 3.

Switch back to +log4cplus directly; the +libstdcpp addition from
that earlier commit stays — it was the genuinely useful part of
the change. Bump PKG_RELEASE for the redo.

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agokea: fix BOOST_STATIC_ASSERT use in src/lib/dns/rdataclass.cc
Alexandru Ardelean [Thu, 28 May 2026 16:23:55 +0000 (19:23 +0300)]
kea: fix BOOST_STATIC_ASSERT use in src/lib/dns/rdataclass.cc

Snapshot builds for i386_pentium-mmx (and presumably every other
target now that Boost 1.91 has been bumped in the feed) fail with::

  src/lib/dns/rdataclass.cc:1401:5: error: 'BOOST_STATIC_ASSERT'
      was not declared in this scope; did you mean
      'BOOST_HAS_STATIC_ASSERT'?
  1401 |     BOOST_STATIC_ASSERT(sizeof(numdata_) ==

``BOOST_STATIC_ASSERT`` lives in ``<boost/static_assert.hpp>``. In
earlier Boost releases it was reachable through any number of
transitive includes pulled in by Kea's other DNS headers; in 1.91
those transitive paths have been pruned, so call sites must include
the declaring header explicitly. ``050-boost-static-assert.patch``
already does this for ``src/lib/log/logger_level_impl.cc``;
``src/lib/dns/rdataclass.cc`` uses the same macro at SOA::getMinimum()
to size-check ``numdata_`` and was missed.

Extend the existing patch with the matching include in rdataclass.cc.
Same fix shape as the earlier hunk; no behavioural change.

Build log:
https://downloads.openwrt.org/snapshots/faillogs/i386_pentium-mmx/packages/kea/

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agoknot: add functional test.sh covering all CLI subpackages
Alexandru Ardelean [Mon, 25 May 2026 15:55:57 +0000 (18:55 +0300)]
knot: add functional test.sh covering all CLI subpackages

Cover each user-facing subpackage with a real functional check instead
of relying solely on the CI's generic --version probe:

- knot:           knotc conf-check on a minimal YAML server config
- knot-dig:       kdig -h (CLI parser smoke check)
- knot-host:      khost -h
- knot-nsupdate:  feed 'quit' through the REPL
- knot-zonecheck: validate a minimal example.com zone file end to end
- knot-keymgr:    initialise a KASP DB in a temp directory

knot-libs, knot-libzscanner, and knot-tests are library/harness
subpackages; the generic ELF/SONAME checks already cover them.

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agoknot: drop kru.inc.c static_assert that requires lock-free 16-bit atomics
Alexandru Ardelean [Fri, 29 May 2026 15:45:19 +0000 (18:45 +0300)]
knot: drop kru.inc.c static_assert that requires lock-free 16-bit atomics

The RRL module's kru.inc.c has a `static_assert(ATOMIC_CHAR16_T_LOCK_FREE
== 2, ...)` that breaks the build on any target whose toolchain does
not advertise lock-free 16-bit atomics (e.g. ARMv5 arm926ej-s).
Upstream considers the assertion non-essential and plans to drop it;
they recommended a patch over a Makefile-level RRL disable. Bump
PKG_RELEASE for the patch swap.

Suggested-by: Daniel Salzman <redacted>
Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agopython3: pin host curses to the SDK's narrow ncurses
Alexandru Ardelean [Thu, 28 May 2026 10:28:54 +0000 (13:28 +0300)]
python3: pin host curses to the SDK's narrow ncurses

Removing the ncursesw path from include avoids seeing the wide-char
version of ncurses, so the host build picks up the narrow static lib
that the OpenWrt SDK stages. To keep that pin from leaking back in
through other curses headers the build host may have under
/usr/include, also force every header check in Python's configure.ac
AC_CHECK_HEADERS(curses.h ncurses.h ncursesw/ncurses.h
ncursesw/curses.h ncursesw/panel.h panel.h) line to "no" via cached
ac_cv_header_* variables.

The narrow ncursesw_* trio was enough on the original reporter's
host; Jan Kardell's review of the first cut hit a build where
`/usr/include/curses.h` and `/usr/include/ncurses.h` from the
distro's libncurses-dev were still being picked up. Adding the
non-wide entries (and panel.h for symmetry, in case a host also
ships /usr/include/panel.h alone) makes the override insensitive to
whichever curses dev packages the host distro happens to provide.

Reported-by: Jan Kardell <redacted>
Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agolibtheora: disable ARM assembly on pre-ARMv7 targets only
Alexandru Ardelean [Sun, 10 May 2026 09:05:51 +0000 (12:05 +0300)]
libtheora: disable ARM assembly on pre-ARMv7 targets only

libtheora's configure probes the host assembler for NEON support
rather than the target CPU, so on pre-ARMv7 (arm926ej-s, etc.) it
falsely succeeds and the build emits NEON the CPU can't execute.
Force --disable-asm only when the ARM target's TARGET_CFLAGS does
not advertise armv7 or armv8, so cortex-a* keeps the NEON path.

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agostrongswan: add version check override
George Sapkin [Thu, 28 May 2026 13:32:13 +0000 (16:32 +0300)]
strongswan: add version check override

Add version check override script.

Signed-off-by: George Sapkin <redacted>
3 weeks agostrongswan: drop deprecated crypto protocols
Philip Prindeville [Sun, 24 May 2026 19:23:01 +0000 (13:23 -0600)]
strongswan: drop deprecated crypto protocols

AEAD, CCM, MD4, and MS CHAP v2 are all deprecated due to insecurity.

Signed-off-by: Philip Prindeville <redacted>
3 weeks agopython3: bump to 3.14.5
Alexandru Ardelean [Wed, 27 May 2026 16:35:52 +0000 (19:35 +0300)]
python3: bump to 3.14.5

This is the latest 3.14.x point release with assorted bug fixes
from upstream. PYTHON3_PIP_VERSION is bumped from 26.0.1 to 26.1.1
to match the pip wheel bundled in the 3.14.5 source tarball; the
host build's ensurepip lookup of pip-$(PYTHON3_PIP_VERSION).whl
otherwise fails. The set of OpenWrt-side patches still applies
against the new source; only quilt context-line offsets needed
refreshing for the patches that touch Makefile.pre.in.

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agobind: add version check override
George Sapkin [Thu, 28 May 2026 14:06:28 +0000 (17:06 +0300)]
bind: add version check override

Add version check override script.

Signed-off-by: George Sapkin <redacted>
3 weeks agobind: bump to 9.20.23
Noah Meyerhans [Mon, 25 May 2026 15:09:01 +0000 (11:09 -0400)]
bind: bump to 9.20.23

Resolves several security issues:

- CVE-2026-3592: Limit resolver server list size.
- CVE-2026-3039: Fix GSS-API resource leak.
- CVE-2026-5950: Avoid unbounded recursion loop.
- CVE-2026-5947: Fix crash in resolver when SIG(0)-signed responses are
  received under load.
- CVE-2026-3593: Add system test for HTTP/2 SETTINGS frame flood.
- CVE-2026-5946: Disable recursion, UPDATE, and NOTIFY for non-IN views.

Complete list of changes is available upstream at
https://ftp.isc.org/isc/bind9/9.20.23/doc/arm/html/changelog.html

Signed-off-by: Noah Meyerhans <redacted>
3 weeks agobanip: update 1.8.8-5
Dirk Brenken [Fri, 29 May 2026 11:57:31 +0000 (13:57 +0200)]
banip: update 1.8.8-5

* bugfix: only load the configuration once per run: a new `ban_confload`
  guard short-circuits `f_conf()` on subsequent calls, avoiding
  repeated `config_load` invocations
* new: the per-set report now sorts elements by their packet counter in
  descending order before truncating to the top 50, so the report
  shows the most active elements instead of just the first 50 found

Signed-off-by: Dirk Brenken <redacted>
3 weeks agopython-cryptography: update to 48.0.0 + backport cross-include fix
Alexandru Ardelean [Wed, 27 May 2026 12:23:59 +0000 (15:23 +0300)]
python-cryptography: update to 48.0.0 + backport cross-include fix

Bump from 46.0.7 to the current 48.0.0 release. Notable upstream
changes since 46.0.7:

- 48.0.0 drops Python 3.8 support (requires 3.9+); raises
  Py_LIMITED_API floor to 0x030900f0.
- Adds ML-KEM / ML-DSA post-quantum primitives via OpenSSL 3.5.0+
  (in addition to existing AWS-LC / BoringSSL paths).
- BACKWARDS INCOMPATIBLE: stricter X.509 CRL signature-algorithm
  matching (mismatched inner/outer algs now raise ValueError at parse
  time).
- Drops 32-bit Windows wheels and ships macOS only on arm64.

Replace the old downstream cross-compile fix with a backport of the
upstream-merged version from pyca/cryptography PR #14904
(commit 5d072cb2a685, scheduled for the release after 48.0.0).

Release notes:
https://cryptography.io/en/latest/changelog/#v48-0-0

Fixes: https://github.com/openwrt/packages/issues/29521
Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agolibx264: update to git HEAD of 2025-09-10
Daniel Golle [Tue, 26 May 2026 15:56:14 +0000 (16:56 +0100)]
libx264: update to git HEAD of 2025-09-10

Changes since 2024-05-13:
 c24e06c2 configure: Check for SVE support in MS armasm64 via as_check
 3a8b5be2 aarch64: Use elf_aux_info() for CPU feature detection on FreeBSD/OpenBSD
 1243d9ff Provide x264_getauxval() wrapper for getauxvaul() and elf_aux_info()
 80c1c47c configure: Add DragonFly support
 3a21e97b Fix build with Android NDK and API < 24 for 32-bit targets
 b1d2de88 Use getauxval() on Linux and elf_aux_info() on FreeBSD/OpenBSD on arm/ppc
 da14df55 Make use of sysconf(3) _SC_NPROCESSORS_ONLN and _SC_NPROCESSORS_CONF
 023112c6 aarch64: defines involving bit shifts should be unsigned
 938601b9 Use sysctlbyname(3) hw.logicalcpu on macOS
 a64111b1 Enable use of __sync_fetch_and_add() wherever detected instead of just X86
 450946f9 ci: Test compiling for Android
 52f7694d Use sched_getaffinity on Android
 373697b4 Bump dates to 2025
 c80f8a28 msvsdepend: Allow using the script for .S sources too
 27d83708 Makefile: Generate dependency information implicitly while compiling
 a0191bd8 configure: Use as_check for checking for aarch64 features
 72ce1cde configure: Use as_check for the main check for whether NEON is supported
 f87ca183 configure: Check for .arch and .arch_extension for enabling aarch64 extensions
 87044b21 aarch64: Use configure detected directives for enabling SVE/SVE2
 fc4012fb configure: Check for the dotprod and i8mm aarch64 extensions
 0e48d072 aarch64: Add flags for runtime detection of dotprod and i8mm
 570f6c70 aarch64: Add runtime detection of extensions on Windows and macOS
 fe9e4a7f Provide implementations for functions using the instructions SDOT/UDOT in the DotProd Armv8 extension.
 32c3b801 lavf: Update the code to work with the latest libavutil API
 4360ac37 ci: Fix ffmpeg build
 40617ddb ci: Remove vlc-contrib dependency
 85b5ccea Update gas-preprocessor.pl to the latest upstream version
 ff620d0c configure: Use MSYSTEM_CARCH for default arch on msys2
 714e07b4 arm: Don't test x264_cpu_fast_neon_mrc_test on Windows
 291476d7 windows: Fix named pipes detection
 b35605ac i8mm & neon hpel_filter optimization
 0480cb05 riscv64: add compile support

Signed-off-by: Daniel Golle <redacted>
3 weeks agounbound: update to 1.25.1
Tyrel M. McQueen [Wed, 27 May 2026 16:27:31 +0000 (12:27 -0400)]
unbound: update to 1.25.1

From upstream: 1.25.1 consolidates security fixes for issues
reported over a period of time. There are fixes for CVE-2026-33278,
CVE-2026-42944, CVE-2026-42959, CVE-2026-32792, CVE-2026-40622,
CVE-2026-41292, CVE-2026-42534, CVE-2026-42923, CVE-2026-42960,
CVE-2026-44390 and CVE-2026-44608.

Full details at

https://www.nlnetlabs.nl/news/2026/May/20/unbound-1.25.1-released/

and

https://www.nlnetlabs.nl/news/2026/Apr/29/unbound-1.25.0-released/

Signed-off-by: Tyrel M. McQueen <redacted>
3 weeks agopython-marshmallow: fix missing host-build dependencies
Alexandru Ardelean [Tue, 26 May 2026 12:50:06 +0000 (15:50 +0300)]
python-marshmallow: fix missing host-build dependencies

When python3 -m build is invoked during host-compile, it fails with:

  /builder/staging_dir/hostpkg/bin/python3.14: No module named build

The package's HOST_BUILD_DEPENDS only pulled in python3 and
python-packaging, missing the actual host tooling for the new
pyproject build flow:

  - python-build      : provides the 'build' module itself
  - python-installer  : installs the resulting wheel
  - python-wheel      : wheel format support
  - python-flit-core  : marshmallow's declared build-backend
                        (build-backend = "flit_core.buildapi" in
                        pyproject.toml)

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agonlbwmon: add pending PR to fix GCC16 builds
John Audia [Fri, 22 May 2026 17:37:26 +0000 (13:37 -0400)]
nlbwmon: add pending PR to fix GCC16 builds

Add pending https://github.com/jow-/nlbwmon/pull/75

This is needed for: https://github.com/openwrt/openwrt/pull/23194

Signed-off-by: John Audia <redacted>
3 weeks agolm-sensors: fix bad scaling due to use of integer type
Dee HY [Tue, 19 May 2026 09:53:06 +0000 (17:53 +0800)]
lm-sensors: fix bad scaling due to use of integer type

upstream: https://github.com/lm-sensors/lm-sensors/commit/62a955319152ce0595932789d10e955304213beb
Signed-off-by: Dee HY <redacted>
3 weeks agoadblock: update 4.5.5-6
Dirk Brenken [Tue, 26 May 2026 15:16:35 +0000 (17:16 +0200)]
adblock: update 4.5.5-6

- f_search: refactored backup and local block-/allowlist scan to run in parallel
- f_search: raise the search timeout in backups to max. 90 seconds
- f_load: skip f_fetch for search action, no remote download is needed for local lookups
- f_dns: skip destructive paths (file wipe, f_dnsup) for search and report actions
- LuCI: adapt search backend changes in the frontend
- LuCI: minor frontend fixes & improvements

Signed-off-by: Dirk Brenken <redacted>
3 weeks agoovpn-dco: fix build on kernel 6.18.33
Qingfang Deng [Tue, 26 May 2026 03:27:34 +0000 (11:27 +0800)]
ovpn-dco: fix build on kernel 6.18.33

Kernel version 6.18.33 backports kmalloc_obj macros but GFP flags are
required, which causes build failures as ovpn omits GFP flags. Undef
those macros to fix the build.

Signed-off-by: Qingfang Deng <redacted>
3 weeks agolibudev-zero: update to 1.0.4
Alexandru Ardelean [Mon, 25 May 2026 16:09:14 +0000 (19:09 +0300)]
libudev-zero: update to 1.0.4

First upstream release since 2023-07. All four locally-carried patches
are merged in 1.0.4 and can be dropped:

- 0001 (PR #57): udev_device.c TOCTOU race fix
- 0002 (PR #62): avoid OOM on small systems
- 0003 (PR #66): correct touchpad detection
- 0004 (PR #80): hwdb USB ID lookup from usb.ids

The release also pulls in PR #79 (do not assume EV_REL and EV_ABS are
mutually exclusive in udev_device.c).

Release notes:
https://github.com/illiliti/libudev-zero/releases/tag/1.0.4

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agopython-argcomplete: add test-version.sh for CI
Alexandru Ardelean [Mon, 25 May 2026 05:54:10 +0000 (08:54 +0300)]
python-argcomplete: add test-version.sh for CI

The three CLI helpers shipped by python3-argcomplete
(activate-global-python-argcomplete, register-python-argcomplete,
python-argcomplete-check-easy-install-script) don't accept a --version
flag and emit no PKG_VERSION string in their usage output. With all
three executables missing the version, the generic CI test stage
fails with "No executables in the package provided version 3.6.3".

Add a test-version.sh that emits a line containing PKG_VERSION so the
framework's "Version check override" passes. The existing test.sh
already exercises the Python module import.

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agopython-pymysql: update to 1.1.3
Alexandru Ardelean [Fri, 15 May 2026 10:57:44 +0000 (13:57 +0300)]
python-pymysql: update to 1.1.3

Security fix:
- Fix Cursor.callproc() to escape procedure name, preventing SQL injection
  when calling a procedure with a string received from an untrusted source
- NOTICE: Backward compatibility change - procedure names like
  "dbname.funcname" are now backtick-quoted: ``CALL \`dbname.funcname\` ``

Other changes:
- CI: use ubuntu-slim, add dependabot for GitHub Actions
- Bump GitHub Actions (checkout v4→v6, setup-python v5→v6, codecov v5→v6)
- Add publish.yml workflow (copied from psf/requests)
- Upgrade dependencies: cryptography>=46.0.7, PyNaCl>=1.6.2
- Drop Python 3.8, require Python 3.9+

Changelog:
https://github.com/PyMySQL/PyMySQL/releases/tag/v1.1.3

NOTE: added test.sh for basic validation.

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agopython-pipx: update to 1.12.0
Alexandru Ardelean [Fri, 15 May 2026 11:02:25 +0000 (14:02 +0300)]
python-pipx: update to 1.12.0

New features (pipx 1.12.0):
- Add --fetch-python / PIPX_FETCH_PYTHON env var (always|missing|never)
  to control standalone Python interpreter downloads
- Add opt-in "uv" backend: pipx can now use "uv venv" and "uv pip" for
  managing virtual environments
  * When "uv" is on PATH, defaults to using uv for NEW venvs
  * Existing venvs keep their recorded backend (pip or uv)
  * Set PIPX_DEFAULT_BACKEND=pip to force pip even with uv available
  * pipx install pip always uses the pip backend (uv venvs have no pip)

Deprecations:
- --fetch-missing-python and PIPX_FETCH_MISSING_PYTHON deprecated;
  use --fetch-python=missing or PIPX_FETCH_PYTHON=missing instead

Changelog:
https://github.com/pypa/pipx/releases/tag/1.12.0

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agopython-requests: update to 2.34.2
Alexandru Ardelean [Fri, 15 May 2026 10:59:17 +0000 (13:59 +0300)]
python-requests: update to 2.34.2

Fixes:
- Moved "headers" input type back to Mapping to avoid invariance issues
  with MutableMapping and inferred dict types.
  Users calling Request.headers.update() may need to narrow typing in code
  (Closes #7441).

Security:
- CVE-2026-25645: Fixed extract_zipped_paths to extract contents to
  a non-deterministic temp directory, to prevent malicious file replacement.
  Does not affect default usage of Requests, only apps calling this utility
  directly.

Changelog:
https://github.com/psf/requests/releases/tag/v2.34.2

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agopython-click: update to 8.3.3
Alexandru Ardelean [Fri, 15 May 2026 10:56:57 +0000 (13:56 +0300)]
python-click: update to 8.3.3

Fixes (click 8.3.3):
- Fix help strings for "help_option_names" that do not contain "-"
- Help string generation now properly handles option names with dashes

Changelog:
https://github.com/pallets/click/releases

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agortklib: add test.sh and test-version.sh for CI
Alexandru Ardelean [Sun, 24 May 2026 14:20:08 +0000 (17:20 +0300)]
rtklib: add test.sh and test-version.sh for CI

The RTKLIB command-line tools (convbin, pos2kml, rnx2rtkp, rtkrcv,
str2str) don't accept a --version flag; passing any unrecognized option
triggers printhelp()/printusage() which only emits a synopsis block. The
generic CI version probe therefore can't find PKG_VERSION and marks the
package as missing a version match.

Add a test-version.sh that exit-0's for all five subpackages to skip the
generic version check, and a test.sh that exercises each binary's
synopsis output as a basic functional smoke test.

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agortklib: disable MIPS16 to work around GCC ICE
Alexandru Ardelean [Sun, 24 May 2026 13:44:50 +0000 (16:44 +0300)]
rtklib: disable MIPS16 to work around GCC ICE

The MIPS variants (mips_24kc, mips_4kec, mipsel_24kc, mipsel_74kc) all
fail to compile preceph.c with an internal compiler error:

  during RTL pass: reload
  src/preceph.c:317:1: internal compiler error:
    in lra_update_fp2sp_elimination, at lra-eliminations.cc:1416

This is a GCC LRA pass bug triggered when compiling with -mips16. Set
PKG_BUILD_FLAGS:=no-mips16 to strip the -mips16 / -minterlink-mips16
flags from CFLAGS for this package, matching the approach already used
by stress-ng for the same class of issue.

Bump PKG_RELEASE since only the build flags change.

Signed-off-by: Alexandru Ardelean <redacted>
3 weeks agoxupnpd: add version check override
George Sapkin [Sun, 24 May 2026 20:17:14 +0000 (23:17 +0300)]
xupnpd: add version check override

Skip version checks as none of the executables seem to report their
versions.

Signed-off-by: George Sapkin <redacted>
3 weeks agovsftpd: add version check override
George Sapkin [Sun, 24 May 2026 20:33:41 +0000 (23:33 +0300)]
vsftpd: add version check override

Skip version checks as none of the executables seem to report their
versions.

Signed-off-by: George Sapkin <redacted>
3 weeks agotor: add version check override
Wei-Ting Yang [Sat, 23 May 2026 03:55:15 +0000 (11:55 +0800)]
tor: add version check override

Add version check override script.

Signed-off-by: Wei-Ting Yang <redacted>
3 weeks agorsync: add version check override
George Sapkin [Sun, 24 May 2026 20:10:27 +0000 (23:10 +0300)]
rsync: add version check override

Add version check override script.

Signed-off-by: George Sapkin <redacted>
3 weeks agorpcbind: add version check override
Wei-Ting Yang [Fri, 22 May 2026 15:45:07 +0000 (23:45 +0800)]
rpcbind: add version check override

Skip version checks as none of the executables seem to report their
versions.

Signed-off-by: Wei-Ting Yang <redacted>
3 weeks agomikrotik-btest: add version check override
Wei-Ting Yang [Fri, 22 May 2026 15:47:57 +0000 (23:47 +0800)]
mikrotik-btest: add version check override

Skip version checks as none of the executables seem to report their
versions.

Signed-off-by: Wei-Ting Yang <redacted>
3 weeks agolm-sensors: add version check override
Wei-Ting Yang [Fri, 22 May 2026 15:42:11 +0000 (23:42 +0800)]
lm-sensors: add version check override

Add version check override script.

Signed-off-by: Wei-Ting Yang <redacted>
3 weeks agolibwacom: add version check override
George Sapkin [Sun, 24 May 2026 20:12:31 +0000 (23:12 +0300)]
libwacom: add version check override

Skip version checks as none of the executables seem to report their
versions.

Signed-off-by: George Sapkin <redacted>
3 weeks agolibseccomp: add version check override
George Sapkin [Sun, 24 May 2026 20:19:03 +0000 (23:19 +0300)]
libseccomp: add version check override

Skip version checks as none of the executables seem to report their
versions.

Signed-off-by: George Sapkin <redacted>
3 weeks agotreewide: fix typos in version check overrides
George Sapkin [Sat, 23 May 2026 23:22:57 +0000 (02:22 +0300)]
treewide: fix typos in version check overrides

Fix shellcheck shell configuration in version check overrides.

Signed-off-by: George Sapkin <redacted>
3 weeks agotailscale: update to 1.98.3
Sandro Jäckel [Sun, 24 May 2026 21:21:03 +0000 (23:21 +0200)]
tailscale: update to 1.98.3

Changelog: https://tailscale.com/changelog#2026-05-13
Changelog: https://tailscale.com/changelog#2026-05-15
Changelog: https://tailscale.com/changelog#2026-05-21
Signed-off-by: Sandro Jäckel <redacted>
3 weeks agoprometheus-node-exporter-lua: check if status is nil before processing wifi device...
Jun Ouyang [Sat, 11 Oct 2025 03:19:25 +0000 (11:19 +0800)]
prometheus-node-exporter-lua: check if status is nil before processing wifi device metrics interfaces

Signed-off-by: Jun Ouyang <redacted>
3 weeks agoprometheus-node-exporter-lua: expose node_os_info
Evgeni Golov [Sun, 26 Apr 2026 13:22:00 +0000 (15:22 +0200)]
prometheus-node-exporter-lua: expose node_os_info

the original node_exporter exposes a node_os_info metric with a set of
data about the system [1] which is then used by several dashboards.

openwrt.lua already exposes OS info, but using the node_openwrt_info
metric requires changes to existing dashboards, and would require more
complex lookups when there are non-OpenWrt hosts in the overview too.

as we've already called ubus and fetched the data, we can expose it in
two formats easily.

[1] https://github.com/prometheus/node_exporter/blob/d6d0e710bb7daf07a2743fde060f0d5f32c565f3/collector/os_release.go#L190-L192

Signed-off-by: Evgeni Golov <redacted>
3 weeks agoprometheus-node-exporter-lua: fixup uci_dhcp_host
Etienne Champetier [Sun, 24 May 2026 22:49:15 +0000 (18:49 -0400)]
prometheus-node-exporter-lua: fixup uci_dhcp_host

Handle cases where 'mac' is missing (nil), a single string,
or an array (table).

Additionally, add support for the 'duid' field.

Signed-off-by: Etienne Champetier <redacted>
4 weeks agoopenfortivpn: bump PKG_RELEASE
Xing-Kai Wang [Sun, 24 May 2026 14:06:02 +0000 (22:06 +0800)]
openfortivpn: bump PKG_RELEASE

Bump PKG_RELEASE for the newly added `realm` parameter support
(introduced in PR #29414).

Signed-off-by: Xing-Kai Wang <redacted>
4 weeks agoprometheus-node-exporter-lua: add filesystem metrics
Will May [Wed, 11 Dec 2024 12:33:37 +0000 (12:33 +0000)]
prometheus-node-exporter-lua: add filesystem metrics

Add a collector for the various fileystem metrics which matches the
node-exporter behaviour. This collector supports the following metrics:

* node_filesystem_size_bytes
* node_filesystem_free_bytes
* node_filesystem_avail_bytes
* node_filesystem_files
* node_filesystem_files_free
* node_filesystem_readonly

Signed-off-by: Will May <redacted>
4 weeks agoprometheus-node-exporter-lua: add modemmanager exporter
Jean-Laurent Girod [Wed, 6 May 2026 16:32:17 +0000 (16:32 +0000)]
prometheus-node-exporter-lua: add modemmanager exporter

Add a Prometheus collector for ModemManager that exports cellular modem
signal metrics via mmcli. Supports multiple modems (labeled by D-Bus
object path), exports overall signal quality and detailed per-technology
signal parameters (LTE, NR5G, UMTS, GSM, CDMA, ...).

Requires signal refresh to be enabled on the modem:
  mmcli -m <id> --signal-setup=<interval_seconds>

Tested on: ath79/generic, GL.inet GL-X300B, OpenWrt 23.05.5

Co-authored-by: Claude <redacted>
Signed-off-by: Jean-Laurent Girod <redacted>
4 weeks agoerlang: fix PKG_CPE_ID escaping for apk ADB format
Alexandru Ardelean [Fri, 22 May 2026 04:38:13 +0000 (07:38 +0300)]
erlang: fix PKG_CPE_ID escaping for apk ADB format

apk's ADB binary package format rejects both the backslash-escape and
the percent-encoding variants of the previous CPE id:

  cpe:/a:erlang:erlang\/otp     ERROR: info field 'tags' has invalid value
  cpe:/a:erlang:erlang%2Fotp    ERROR: info field 'tags' has invalid value

apk's tag value parser only accepts a restricted alphabet for ADB
package format and neither '\' nor '%' make the cut. The result is
that the package never produces an .apk.

Drop the '/otp' suffix entirely and use cpe:/a:erlang:erlang, which
matches the higher-level Erlang CPE entry. cve scanners that walked
the more specific erlang\/otp entry will fall back to this one.

This effectively reverts the product portion of bfdf01496 ("lang/erlang:
fix PKG_CPE_ID"), which was correct against the NIST 2.3 string but
incompatible with apk's tag parser.

Signed-off-by: Alexandru Ardelean <redacted>
4 weeks agolibxerces-c: fix CI build/test failures for apk + samples
Alexandru Ardelean [Fri, 22 May 2026 04:41:30 +0000 (07:41 +0300)]
libxerces-c: fix CI build/test failures for apk + samples

Two unrelated issues both fixed here so the package + its samples
sub-package land in CI green:

1. PKG_CPE_ID escaping.
   apk's ADB binary package format rejects both the backslash-escape
   and the percent-encoding variants of the previous CPE id:

     cpe:/a:apache:xerces-c\+\+     ERROR: info field 'tags' has invalid value
     cpe:/a:apache:xerces-c%2B%2B   ERROR: info field 'tags' has invalid value

   apk's tag value parser only accepts a restricted alphabet for ADB
   package format and neither '\' nor '%' make the cut. With xerces-c
   unable to build, downstream consumers (notably sumo) also fail at
   cmake configure time with "Failed to find XercesC".

   Drop the '++' suffix entirely and use cpe:/a:apache:xerces-c, which
   matches the higher-level Apache Xerces-C CPE entry. cve scanners
   that walked the more specific xerces-c++ entry will fall back to
   this one.

2. Generic version-check override for libxerces-c-samples.
   The samples sub-package ships upstream demo programs
   (CreateDOMDocument, DOMCount, DOMPrint, SAX2Count, ...) which do
   not accept --version / -v / -V and therefore fail the framework's
   "executable prints PKG_VERSION" probe, making the package overall
   report "Generic tests failed". Add a minimal test-version.sh that
   exits 0 so the version-probe is skipped and the remaining generic
   checks (executable, no hardcoded paths, stripped, linked libs)
   still run for every binary.

Signed-off-by: Alexandru Ardelean <redacted>
4 weeks agolmdb: add a test-version.sh version-check override
Alexandru Ardelean [Fri, 22 May 2026 05:08:32 +0000 (08:08 +0300)]
lmdb: add a test-version.sh version-check override

lmdb-test ships /usr/bin/mtest, a stress test that unconditionally
opens ./testdb in the current directory and aborts (SIGABRT) when
that directory is missing. In the CI runtime container that's
always the case, so the framework's --version probe ends up with
"Aborted" output, no PKG_VERSION match, and the package gets
reported as "Generic tests failed - No executables in the package
provided version 0.9.35".

Add libs/lmdb/test-version.sh that handles each sub-package by name:
lmdb (library) and lmdb-test (no usable version probe) pass the
override, lmdb-utils runs 'mdb_dump -V' and matches against
PKG_VERSION, and unknown sub-packages fail loudly to force this
script to be updated. The other generic checks (no hardcoded paths,
stripped, linked libs) still run for every binary.

Signed-off-by: Alexandru Ardelean <redacted>
4 weeks agodnsdist: update to 2.0.6
Alexandru Ardelean [Thu, 21 May 2026 15:04:01 +0000 (18:04 +0300)]
dnsdist: update to 2.0.6

Bump from 2.0.1 to the latest 2.0 LTS release. This pulls in
upstream commit 53cb738795 ("dnsdist: make code boost-1.91
compatible", Otto Moerbeek, 2026-04-29), which fixes the build
break against Boost 1.91 currently shipped by OpenWrt:

  dnsdist-lua.cc:3086:101: error: converting to
    'boost::optional<unordered_map<...>>' from initializer list
    would use explicit constructor 'constexpr boost::optional<T>::
    optional(U&&) [...]'

Signed-off-by: Alexandru Ardelean <redacted>
4 weeks agoopenfortivpn: add realm parameter support
Xing-Kai Wang [Sun, 10 May 2026 15:52:03 +0000 (23:52 +0800)]
openfortivpn: add realm parameter support

Some FortiGate VPN gateways require a specific authentication realm
when multiple domains or user groups are configured on the same server.

This commit updates the netifd protocol script to parse the 'realm'
option from the UCI configuration and correctly append it to the
openfortivpn command line arguments.

Signed-off-by: Xing-Kai Wang <redacted>
4 weeks agoboinc: resolve openwrt release
Hector Espert [Sat, 23 May 2026 20:35:07 +0000 (22:35 +0200)]
boinc: resolve openwrt release

Allow boinc to read /etc/os-release to resolve openwrt version

Signed-off-by: Hector Espert <redacted>
4 weeks agohev-socks5-tproxy: update to 2.11.0
Ray Wang [Sun, 24 May 2026 04:11:20 +0000 (12:11 +0800)]
hev-socks5-tproxy: update to 2.11.0

Upstream changelog:
https://github.com/heiher/hev-socks5-tproxy/releases/tag/2.11.0

Signed-off-by: Ray Wang <redacted>
4 weeks agohev-socks5-tunnel: update to 2.15.0
Ray Wang [Sun, 24 May 2026 04:13:13 +0000 (12:13 +0800)]
hev-socks5-tunnel: update to 2.15.0

Upstream changelog:
https://github.com/heiher/hev-socks5-tunnel/releases/tag/2.15.0

Signed-off-by: Ray Wang <redacted>
4 weeks agohev-socks5-server: update to 2.12.0
Ray Wang [Sun, 24 May 2026 04:09:18 +0000 (12:09 +0800)]
hev-socks5-server: update to 2.12.0

Upstream changelog:
https://github.com/heiher/hev-socks5-server/releases/tag/2.12.0

Signed-off-by: Ray Wang <redacted>
4 weeks agofsh: update to 4.11.0
Ray Wang [Sat, 23 Aug 2025 09:08:44 +0000 (17:08 +0800)]
fsh: update to 4.11.0

Upstream changelog:
https://github.com/heiher/hev-fsh/releases/tag/4.11.0

Signed-off-by: Ray Wang <redacted>
4 weeks agotor: update to 0.4.9.8 stable
Rui Salvaterra [Tue, 12 May 2026 11:16:57 +0000 (12:16 +0100)]
tor: update to 0.4.9.8 stable

Minor release, see the changelog [1] for what's new.

[1] https://gitlab.torproject.org/tpo/core/tor/-/blob/tor-0.4.9.8/ChangeLog

Signed-off-by: Rui Salvaterra <redacted>
4 weeks agoredsocks: remove package
Yanase Yuki [Fri, 15 May 2026 07:49:41 +0000 (16:49 +0900)]
redsocks: remove package

It seems this software is no longer maintained because
the latest commit is 7 years ago.
Also some people reports UAF bugs.

https://github.com/darkk/redsocks/issues/177
https://github.com/darkk/redsocks/issues/178

No packages depends on this.

Signed-off-by: Yanase Yuki <redacted>
4 weeks agonetatalk: update to 4.4.3
Antonio Pastor [Sun, 17 May 2026 12:45:10 +0000 (08:45 -0400)]
netatalk: update to 4.4.3

Security fixes (from upstream release notes):
CVE-2026-44047, CVE-2026-44048, CVE-2026-44049, CVE-2026-44050,
CVE-2026-44051, CVE-2026-44052, CVE-2026-44054, CVE-2026-44055,
CVE-2026-44057, CVE-2026-44060, CVE-2026-44062, CVE-2026-44064,
CVE-2026-44066, CVE-2026-44068, CVE-2026-44076, CVE-2026-45354,
CVE-2026-45355, CVE-2026-45356, CVE-2026-45698, CVE-2026-45699

As of v4.4.2, upstream added a dependency on libatomic.

UAM hardening improvements also included.

Release notes at:
https://github.com/Netatalk/netatalk/releases/tag/netatalk-4-4-3

Signed-off-by: Antonio Pastor <redacted>
4 weeks agohtop: update to 3.5.1
John Audia [Tue, 28 Apr 2026 18:33:44 +0000 (14:33 -0400)]
htop: update to 3.5.1

https://github.com/htop-dev/htop/compare/3.5.0...3.5.1

Signed-off-by: John Audia <redacted>
4 weeks agotreewide: fix dangling SONAME symlinks when using ABI_VERSION
Josef Schlehofer [Sun, 10 May 2026 20:58:19 +0000 (22:58 +0200)]
treewide: fix dangling SONAME symlinks when using ABI_VERSION

A previous commit attempted to introduce proper SONAME symlinks for
packages utilizing ABI_VERSION. However, it incorrectly copied only
the symlink without the underlying physical library file, resulting
in broken packages with dangling symlinks.

Before:
```
tar -Oxzf bin/packages/arm_cortex-a9_vfpv3-d16/packages/oniguruma_6.9.9-r1_arm_cortex-a9_vfpv3-d16.ipk ./data.tar.gz | tar -tzvf -
drwxr-xr-x  0 0      0           0 Feb  5  2024 ./
drwxr-xr-x  0 0      0           0 Feb  5  2024 ./usr/
drwxr-xr-x  0 0      0           0 Feb  5  2024 ./usr/lib/
lrwxrwxrwx  0 0      0           0 Feb  5  2024 ./usr/lib/libonig.so.5 -> libonig.so.5.4.0
```

After:
```
tar -Oxzf bin/packages/arm_cortex-a9_vfpv3-d16/packages/oniguruma_6.9.9-r1_arm_cortex-a9_vfpv3-d16.ipk ./data.tar.gz | tar -tzvf -
drwxr-xr-x  0 0      0           0 Feb  5  2024 ./
drwxr-xr-x  0 0      0           0 Feb  5  2024 ./usr/
drwxr-xr-x  0 0      0           0 Feb  5  2024 ./usr/lib/
lrwxrwxrwx  0 0      0           0 Feb  5  2024 ./usr/lib/libonig.so.5 -> libonig.so.5.4.0
-rwxr-xr-x  0 0      0      526493 Feb  5  2024 ./usr/lib/libonig.so.5.4.0
```

This properly standardizes shared library packaging, prevents shipping
duplicate full-sized files (as seen previously in packages like libre2),
and aligns the packages feed with core OpenWrt practices.
As you could see in the previous commit (see it in the ``Fixes`` tag):

Before:
```
tar -Oxzf bin/packages/arm_cortex-a9_vfpv3-d16/packages/re2_2023.02.01\~b025c6a3-r1_arm_cortex-a9_vfpv3-d16.ipk ./data.tar.gz | tar -tzvf -
drwxr-xr-x  0 0      0           0 Aug 18  2024 ./
drwxr-xr-x  0 0      0           0 Aug 18  2024 ./usr/
drwxr-xr-x  0 0      0           0 Aug 18  2024 ./usr/lib/
-rw-r--r--  0 0      0      331875 Aug 18  2024 ./usr/lib/libre2.so
-rw-r--r--  0 0      0      331875 Aug 18  2024 ./usr/lib/libre2.so.10
-rw-r--r--  0 0      0      331875 Aug 18  2024 ./usr/lib/libre2.so.10.0.0
```

After:
```
tar -Oxzf bin/packages/arm_cortex-a9_vfpv3-d16/packages/re2_2023.02.01\~b025c6a3-r1_arm_cortex-a9_vfpv3-d16.ipk ./data.tar.gz | tar -tzvf -
drwxr-xr-x  0 0      0           0 Aug 18  2024 ./
drwxr-xr-x  0 0      0           0 Aug 18  2024 ./usr/
drwxr-xr-x  0 0      0           0 Aug 18  2024 ./usr/lib/
lrwxrwxrwx  0 0      0           0 Aug 18  2024 ./usr/lib/libre2.so -> libre2.so.10
lrwxrwxrwx  0 0      0           0 Aug 18  2024 ./usr/lib/libre2.so.10 -> libre2.so.10.0.0
-rwxr-xr-x  0 0      0      331875 Aug 18  2024 ./usr/lib/libre2.so.10.0.0
```

Fixes: 537c2a631dd117564720a80f6976280901b010f5 ("treewide: avoid deref symlinks when installing .so")
Signed-off-by: Josef Schlehofer <redacted>
4 weeks agodocker-compose: update to version 5.1.4
Javier Marcet [Tue, 28 Apr 2026 14:18:41 +0000 (16:18 +0200)]
docker-compose: update to version 5.1.4

Changes: https://github.com/docker/compose/releases/tag/v5.1.0
Changes: https://github.com/docker/compose/releases/tag/v5.1.1
Changes: https://github.com/docker/compose/releases/tag/v5.1.2
Changes: https://github.com/docker/compose/releases/tag/v5.1.3
Changes: https://github.com/docker/compose/releases/tag/v5.1.4

Signed-off-by: Javier Marcet <redacted>
4 weeks agoqemu-ga: skip starting on bare metal device
Andy Chiang [Mon, 18 May 2026 16:56:53 +0000 (23:56 +0700)]
qemu-ga: skip starting on bare metal device

The same firmware image may be deployed on either bare metal device or
virtualized platforms (e.g., Proxmox VE).

On bare metal device, `qemu-ga` may still be started even though no
virtio-serial channel is available, resulting in repeated attempts to
access /dev/virtio-ports/org.qemu.guest_agent.0.

This causes continuous service respawning by procd and unnecessary log
spam.

This commit adds a pre-check for /dev/virtio-ports to avoid starting
`qemu-ga` when virtio-serial support is not present.

Signed-off-by: Andy Chiang <redacted>
4 weeks agovzlogger: add new package
Andy Voigt [Sun, 10 May 2026 19:37:09 +0000 (21:37 +0200)]
vzlogger: add new package

vzlogger is a tool to read and log measurements of a wide variety of smart
meters and sensors to the volkszaehler.org middleware.

Signed-off-by: Andy Voigt <redacted>
4 weeks agolibsml: add new package
Andy Voigt [Sun, 10 May 2026 19:36:29 +0000 (21:36 +0200)]
libsml: add new package

libSML implements the Smart Message Language protocol used by German smart
meters (FNN specification). It is used by projects like volkszaehler for
reading smart meter data.

Signed-off-by: Andy Voigt <redacted>
4 weeks agoddns-scripts: add blazingfast.io Anycast DNS provider
Fotios Kitsantas [Tue, 19 May 2026 18:39:50 +0000 (19:39 +0100)]
ddns-scripts: add blazingfast.io Anycast DNS provider

Add DDNS update support for blazingfast.io Anycast DNS via their
REST API. Authentication is performed via JWT token obtained from
the login endpoint. Zone records are fetched to verify the record
type before update, ensuring IPv4 services only target A records
and IPv6 services only target AAAA records.

Service, zone and record IDs are passed via param_opt as
space-separated key=value pairs:
  service_id=X zone_id=Y record_id=Z

curl --config file approach is used throughout to avoid eval and
shell injection from user-controlled values. Supports both IPv4
and IPv6. For dual-stack, create two separate DDNS service sections
with their respective record IDs.

Tested on GL.iNet MT5000 (Brume 3) running OpenWrt with
ddns-scripts 2.8.2.

Signed-off-by: Fotios Kitsantas <redacted>
4 weeks agofrp: bump to 0.69.0
Roc Lai [Fri, 22 May 2026 00:47:49 +0000 (08:47 +0800)]
frp: bump to 0.69.0

Changes: https://github.com/fatedier/frp/releases/tag/v0.69.0

Signed-off-by: Roc Lai <redacted>
4 weeks agoopenvpn: add missing host routes
Erik Conijn [Thu, 21 May 2026 14:09:40 +0000 (16:09 +0200)]
openvpn: add missing host routes

Maintainer: Alexandru Ardelean <redacted>

ping @feckert

First of all big thanks to all involved devs, porting this to proto is not a minor task and besides some small quirks it is working well.
(Not all that happy with the use of a default route instead of /1 routes, because you loose internet if the tunnel goes down but that is just me nitpicking)

However I had problems with default routing as the host routes to the server endpoint were missing.

I tracked it down to code in the `openvpn-hotplug` script and made some changes and in my testing it appears to work now.
As a bonus I also added code for a future implementation of the `nohostroute` option.

Problem:
The host routes were created by just using route setup this however does not work.

Solution:
using `proto_add_host_dependency` seems the better solution.

Furthermore the correct guard for IPv6 seems to be `net_gateway_ipv6` instead of `route_ipv6_gateway` however even the correct guard is only working if ipv6 source routing is disabled on wan6, so perhaps we should consider removing the guard entirely.
For now I left it in place with a warning.

I have tested it on X86 running master build from 5 days ago, both for IPv4 and IPv6

Please have a look and consider implementing.

Thanks

Signed-off-by: Erik Conijn <redacted>
4 weeks agocurl: enable zlib support by default
Jan Havelka [Mon, 18 May 2026 11:53:11 +0000 (13:53 +0200)]
curl: enable zlib support by default

zlib is already a default package required by apk

Signed-off-by: Jan Havelka <redacted>
4 weeks agoadguardhome: bump to 0.107.76
George Sapkin [Thu, 21 May 2026 19:13:20 +0000 (22:13 +0300)]
adguardhome: bump to 0.107.76

Changes: https://github.com/AdguardTeam/AdGuardHome/releases/tag/v0.107.76
Signed-off-by: George Sapkin <redacted>
4 weeks agoshadow: update to 4.19.4
Alexandru Ardelean [Wed, 22 Apr 2026 09:42:55 +0000 (12:42 +0300)]
shadow: update to 4.19.4

Large version jump from 4.8.1 to 4.19.4 (latest upstream LTS).

Build changes:
- Refresh patches/004-fix-su-controoling-term.patch: su.c moved the
  ioctl() call from line 1122 to 1169 and changed (char *) 0 to
  (char *) NULL; update patch context and re-canonicalise through
  quilt (blank context line spacing).
- New CONFIGURE_ARGS:
  * --disable-logind: 4.19.4 added an optional libsystemd-based
    logind integration which OpenWrt doesn't ship.
  * --without-libbsd: shadow's configure now hard-fails on missing
    readpassphrase() unless libbsd is found; the in-tree
    lib/readpassphrase.c fallback is enabled by --without-libbsd.
  * --without-sssd: avoid dragging in an sssd build dep.
  * --disable-subordinate-ids: 4.19.4 builds libsubid (subuid/subgid
    runtime API) unconditionally when subids are enabled, and its
    libtool -export-symbols-regex generates a version script that
    binutils 2.40+ rejects against libxcrypt's versioned
    crypt_checksalt@@XCRYPT_4.3 symbol. Disabling subordinate-ids
    skips libsubid entirely; OpenWrt doesn't ship libsubid.
- Drop newgidmap, newuidmap, lastlog and groups from SHADOW_APPLETS:
  newgidmap/newuidmap are only built when subordinate-ids are
  enabled, lastlog defaults to disabled in 4.19.4, and the groups
  binary was removed from shadow upstream (use coreutils).

Test coverage:
- Replace the per-applet --version check in test.sh with per-applet
  functional tests:
    pwck     -> 'pwck -r' read-only consistency check; accept
                 non-zero exit since the CI container's /etc/passwd
                 trips minor warnings.
    grpck    -> 'grpck -r' read-only consistency check.
    chage    -> 'chage -l root' lists password aging info.
    useradd  -> 'useradd -D' dumps defaults without modifying state.
    passwd   -> 'passwd -S root' prints the password status line.
    faillog  -> create empty /var/log/faillog then 'faillog -a'
                must emit a header line.
    login/su -> PAM-interactive; presence covered by generic tests.
    Other applets -> verify binary presence (CI's generic tests
                 already check stripped, no build paths, linked-libs).
- Add test-version.sh as a generic-version-check override: shadow
  tools don't honour --version (only --help), so the framework's
  probe finds no PKG_VERSION match in any binary and would otherwise
  fail Generic tests for every sub-package.

Signed-off-by: Alexandru Ardelean <redacted>
4 weeks agolibupnpp: update to 1.0.4
Alexandru Ardelean [Wed, 22 Apr 2026 09:42:50 +0000 (12:42 +0300)]
libupnpp: update to 1.0.4

Update from 0.26.5 to 1.0.4 (major version jump 0.x -> 1.x).

Changes:
- Add +libcurl to DEPENDS: libupnpp 1.0.4 introduced a new mandatory
  dependency on libcurl (used for HTTP/SOAP communications)
- Build system remains meson (already in use)
- No patches needed

Signed-off-by: Alexandru Ardelean <redacted>
git clone https://git.99rst.org/PROJECT