saltext-apk
A Salt extension that restores the apkpkg execution module — the pkg provider for apk-based systems (OpenWrt 25.12+, Alpine Linux).
Source: https://gitlab.com/paulto/saltext-apk
Why this exists
Salt 3008 removed salt/modules/apkpkg.py in its purge of community extensions (it was last present in v3007.14). Unlike many purged modules — saltext-zfs, for example — no replacement extension was published, so on Salt 3008 there is no pkg provider for apk at all. This package restores it.
It matters now because OpenWrt 25.12 switched its package manager from opkg to apk: Salt 3008 minions on OpenWrt have no working pkg module without this.
What differs from the original
The first commit is the verbatim v3007.14 module, so the git history shows every change since. On top of that:
__virtual__loads the module aspkgon any host wheresalt.utils.path.which("apk")finds anapkexecutable onPATH— covering OpenWrt (grainos_family: OpenWrt) as well as Alpine. The upstream module only enabled onos_family == "Alpine", so OpenWrt previously needed aproviders: pkg: apkpkgoverride; with this it doesn't.list_pkgsusesapk list --installed --manifestinstead of fragile string-splitting. The original assumed Alpine'sname+X.Y.Z-rNform and mis-parsed packages whose names contain hyphens or whose versions lack a-rNsuffix — e.g.luci-app-mwan3 25.360.65088~78a62f2, which it recorded under the wrong name sopkg.installedcould never confirm it.
Install
Into the same environment as Salt (onedir / uv / system):
salt-pip install saltext-apk
or as a Salt state:
saltext.apk:
pip.installed:
- bin_env: /usr/bin/salt-pip
Once installed, it loads as the pkg provider on any minion with an apk executable on PATH.
License
Apache-2.0 — the same license as the Salt code it derives from; see LICENSE. The apkpkg module is derived from SaltStack's salt/modules/apkpkg.py; copyright of the original portions remains with the SaltStack authors.
Release files for saltext-apk 0.4.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| saltext_apk-0.4.1.tar.gz | 13.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| saltext_apk-0.4.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 25.3 kB
Release files / saltext_apk-0.4.1.tar.gz
| Download URL | saltext_apk-0.4.1.tar.gz |
|---|---|
| Size | 13.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b8661ac5d02101e48ec5e6615265effbf63aa2fd74bc00e172c27e4587b55a4b
|
|
BLAKE2b-256 checksum How to use checksums |
56e9219c6871989372d890c838dc7a0b94775804ea0972d528991a74a912cce2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / saltext_apk-0.4.1-py3-none-any.whl
| Download URL | saltext_apk-0.4.1-py3-none-any.whl |
|---|---|
| Size | 11.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4f34894ee0c7a2e9c7e72c6de2b9d665559d2e4c0f42f29febca224fdf8b8636
|
|
BLAKE2b-256 checksum How to use checksums |
673fa25b532b1d72f23bbc4e058a98ebe66e2ad2fbb484a63aa4c2d63ae1f6b5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|