File disable-auto-update.patch of Package failed_tailscale
diff --git a/clientupdate/clientupdate.go b/clientupdate/clientupdate.go
--- tailscale/clientupdate/clientupdate.go 2024-03-14 04:13:53.421047482 +0100
+++ tailscale-patched/clientupdate/clientupdate.go 2024-03-14 04:28:58.518529194 +0100
@@ -205,6 +205,10 @@
// The distro.Debian switch case above should catch most apt-based
// systems, but add this fallback just in case.
return up.updateDebLike, true
+ case haveExecutable("zypper"):
+ // Zypper must come before dfn/yum as SUSE-based distros can have both alongside zypper.
+ // This should catch both transactional (Micro) and non-transactional (Leap/Tumbleweed/SLES/SLED).
+ return up.updateSUSE, false
case haveExecutable("dnf"):
return up.updateFedoraLike("dnf"), true
case haveExecutable("yum"):
@@ -526,6 +530,12 @@
you can use "pacman --sync --refresh --sysupgrade" or "pacman -Syu" to upgrade the system, including Tailscale.`)
}
+func (up *Updater) updateSUSE() error {
+ // SUSE-based distros should update manually.
+ // The package can come from official Tailscale repos or not and the system can be transactional or not.
+ return errors.New(`Use Zypper or transactional-update (on applicable systems) to update Tailscale on openSUSE or SUSE Linux Enterprise installations.`)
+}
+
func (up *Updater) updateNixos() error {
// NixOS package updates are managed on a system level and not individually.
// Direct users to update their nix channel or nixpkgs flake input to