For the last year or so1 I’ve been working on replacing the package manager OPKG with APK (Alpine Package Keeper)2. Different from our OPKG fork is APK an actively developed project. OPKG is replaced entirely, both on device as well as the build system.
Using some CI I started to build all available snapshot firmware images and published them for others to test3. Some targets fail to build but I’m working on it. Please feel free to give it a try and provide feedback!
At this point only the base system is compiled without the community feeds, the installation of remote packages already works (e.g.
apk add tc-full). Other commands like
apk audit allow system integrity checks and more.
The SDK already works to create
.apk packages, the ImageBuilder requires a bit more work. Overall APK still depends on OpenSSL and libfetch, after getting the base up and running I’ll start to look into replacing those with more lightweight alternatives like WolfSSL and uclient-fetch.
Within the next month I hope to create documentation in collaboration with Daniel to explain how APK, uvol and uxc can work together. Essentially it allows to install containers on OpenWrt devices. Just a few days ago we ran Alpine Linux within a container on a Belkin RT3200, simply installed from an
alpine.apk package, the same works for Debian containers. In future this could allow to run arbitrary container setups on routers.
This work required a bunch of help, so thanks to John, Timo, Ariadne and Daniel!