OpenWrt is changing to using alpine like `apk` for package installation
over its previous opkg. Additionally, they are not using the same repo
files as alpine making installation fail.
Add support for the new repository files and ensure that the required
package detection system uses apk.
Updates #18535
Signed-off-by: Claus Lensbøl <claus@tailscale.com>
logf("The latest Tailscale release for Linux is %q, but your apk repository only provides %q.\nYou may need to upgrade your Alpine system to get the latest Tailscale version: https://wiki.alpinelinux.org/wiki/Upgrading_Alpine",latest,apkVer)
}
alpineVer:=apkRepoVersionRE.FindString(s.Text())
ifalpineVer!=""{
logf("The latest Tailscale release for Linux is %q, but your apk repository only provides %q.\nYour Alpine version is %q, you may need to upgrade the system to get the latest Tailscale version: https://wiki.alpinelinux.org/wiki/Upgrading_Alpine",latest,apkVer,alpineVer)
}
returnnil
}
returnnil
}
func(up*Updater)updateMacSys()error{
returnerrors.New("NOTREACHED: On MacSys builds, `tailscale update` is handled in Swift to launch the GUI updater")
logf("kernel/drivers/net/tun.ko found on disk, but not for current kernel; are you in middle of a system update and haven't rebooted? found: %s",findOut)
}
casedistro.OpenWrt:
// OpenWRT switched to using apk as a package manager as of OpenWrt 25.12.0.
// Find out what is used on this system and use that, Maybe we can get rid
// of opkg in the future but for now keep checking.