I know Alpine Linux very well, I have an Alpine Linux home server. Should I just install one of the snapshots for testing? I have an ASUS AX59U. If it's helpful I'll try it when none is home Don't want angry complaints of why internet is not working haha.
Also I have another router(ASUS RT-N18U) too at work. I'll try to flash it with that too.
I have set up AX59U with snapshot release. Apk works well, tailscale, wireguard, pppoe, vlans, wifi, smb,ftp servers and ddns work well.
Version was this: SNAPSHOT (r28694-730db6b893)
I had a self-built snapshot working fine for some weeks. Last week, after I upgraded to a 6.6.77 based main branch, I am unable to install the package prosody. apk search -v|wc -l lists 845 packages, but prosody is not among them. If I download the package file from https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/packages/ and try to install the file with apk add prosody-0.11.13-r1.apk, it will complain about an untrusted signature. If I try to bypass that with --allow-untrusted, there will be further complaints about missing dependencies: libidn, luabitop, luaexpat, luafilesystem, luasec. The previous build, maybe a month or two ago, was able to install the package. apk update currently reports the following:
What might I be doing wrong, and is there a way to update the list of packages? Should I have built the sysupgrade.bin image in a different way, with some more packages included in it?
After I enabled all 5 sources, apk update reported 8981 distinct packages available, and apk add prosody worked.
I remember while building my custom image for this currently unsupported device, I didnโt enable telephony or video, or possibly routing. But I donโt remember anything that would explain this.
Is it going to be possible to specify dependency version requirements in Makefile? Something like >=2.0.3. Right now you're basically stuck with whatever the version of a package is in the current branch, which may or may not be compatible. This includes host packages.
Install the graphviz package on your workstation (apt/dnf install graphviz, Windows installers available here: https://graphviz.org/download/).
Pick a package, here I'm using nmap, and run apk dot package. Push the resulting .dot file through Graphviz's dot converter, here I'm generating a png.
Nice! I was tinkering with a script last year that generates directed graph images with opkg package data but paused when I saw apk in the future. I was looking at scalable vector graphics (svg) images that are produced by the script. Could all be done on an OpenWrt device with posix commands using standard built-in tools like the shell and busybox awk. It also works on my linux pc. An svg file can be easily rasterized to .png, .gif, .bmp etc.
EDIT: An idea I had was to be able to graphically show the dependency tree for a proposed package addition with new vs existing packages color coded with the "installed sizes" and a sum of size needed for the new components.
That should be pretty trivial, as the dot format is really quite easy to parse and modify. Years ago I did pretty much that for a Python dependency tool, generating dot output like apk dot does.
If the old version is still available on the package feeds (it's usually not, as OpenWrt feeds are overwritten and not archived), then it's as simple as apk add curl==<old-version>. Otherwise, you need to rebuild the package by reverting its make file and build it from scratch.