Skip to content

Package "tailscale" broken on debian trixie #1396

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
Entze opened this issue Apr 14, 2025 · 6 comments
Open

Package "tailscale" broken on debian trixie #1396

Entze opened this issue Apr 14, 2025 · 6 comments

Comments

@Entze
Copy link

Entze commented Apr 14, 2025

When running:

$ deb-get update
$ deb-get install tailscale
--2025-04-14 12:47:27--  https://pkgs.tailscale.com/stable/debian/13.noarmor.gpg
Resolving pkgs.tailscale.com (pkgs.tailscale.com)... 199.38.181.239, 2607:f740:f::d19
Connecting to pkgs.tailscale.com (pkgs.tailscale.com)|199.38.181.239|:443... connected.
HTTP request sent, awaiting response... 404 Not Found
2025-04-14 12:47:28 ERROR 404: Not Found.

  [+] Updating: /etc/apt/sources.list.d/tailscale.list
Ign:1 https://pkgs.tailscale.com/stable/debian 13 InRelease
Err:2 https://pkgs.tailscale.com/stable/debian 13 Release
  404  Not Found [IP: 199.38.181.239 443]
Reading package lists... Done
E: The repository 'https://pkgs.tailscale.com/stable/debian 13 Release' does not have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

Seems like UPSTREAM_CODENAME is 13 instead of trixie. Can you help me identify what the issue is? For context this is on a freshly installed machine.

@philclifford
Copy link
Member

hmmm UPSTREAM_CODENAME should be trixie - it is set here


# Debian Sid doesn't have it's own unique os-release file. It is the same as Debian stable.
# So we first check /etc/debian_version to see if we're running sid. If not, we will trust what os-release says.
if [[ "${UPSTREAM_ID}" == "debian" ]] && grep -q "sid" /etc/debian_version; then
    UPSTREAM_CODENAME="sid"
    OS_CODENAME="sid"
else
    local codename
    for codename in UBUNTU_CODENAME DEBIAN_CODENAME VERSION_CODENAME; do
        UPSTREAM_CODENAME=$(sed -n -e "/^$codename=/ {s/^$codename=//p;q}" "${OS_RELEASE}")
        [ -z "${UPSTREAM_CODENAME}" ] || break
    done
fi

case "${UPSTREAM_CODENAME}" in
    buster)   UPSTREAM_RELEASE="10";;
    bullseye) UPSTREAM_RELEASE="11";;
    bookworm) UPSTREAM_RELEASE="12";;
    trixie)   UPSTREAM_RELEASE="13";;
    sid)      UPSTREAM_RELEASE="unstable";;
    focal)    UPSTREAM_RELEASE="20.04";;
    jammy)    UPSTREAM_RELEASE="22.04";;
    kinetic)  UPSTREAM_RELEASE="22.10";;
    lunar)    UPSTREAM_RELEASE="23.04";;
    mantic)   UPSTREAM_RELEASE="23.10";;
    noble)    UPSTREAM_RELEASE="24.04";;
    oracular) UPSTREAM_RELEASE="24.10";;
    plucky)   UPSTREAM_RELEASE="25.04";;
    questing) UPSTREAM_RELEASE="25.10";;

    *) fancy_message fatal "${OS_ID_PRETTY} ${OS_CODENAME^} is not supported because it is not derived from a supported Debian or Ubuntu release.";;
esac
}

Can you share the output of deb-get show tailscale ? - on Ubuntu 22.04 it gives

Tailscale
  Package:	tailscale
  Repository:	01-main
  Updater:	apt
  Installed:	1.82.0
  Architecture:	amd64
  Repository:	https://pkgs.tailscale.com/stable/ubuntu jammy main
  Website:	https://tailscale.com/
  Summary:	Zero config VPN. Works on any device, manages firewall rules for you, and works from anywhere.

Also please share what you have in /etc/os-release (or /usr/lib/os-release), /etc/debian_version and the output of lsb_release --codename --short

You might also try a workaround by

sed 's|UPSTREAM_CODENAME|UPSTREAM_CODENAME/13/trixie|' /etc/deb-get/01-main.d/tailscale >/etc/deb-get/99-local.d/tailscale

and running deb-get show tailscale again - that would possibly get tailscale working again if UPSTREAM_CODENAME is indeed getting to be 13 (which should be in UPSTREAM_RELEASE) somehow

@silentJET85
Copy link
Contributor

silentJET85 commented Apr 15, 2025

This should've been fixed in #1312.
Since a new release of deb-get was put out today, updating deb-get itself should give you the fix. (Assuming you're running the stable release and not the git version.)

-    trixie)   UPSTREAM_CODENAME="13";;
+    trixie)   UPSTREAM_RELEASE="13";;

@Entze
Copy link
Author

Entze commented Apr 18, 2025

Sorry for the delay. I have upgraded deb-get to 0.4.5, and I am unsure if it is fixed.

$ deb-get version
0.4.5
$ deb-get show tailscale
Tailscale
  Package:      tailscale
  Repository:   01-main
  Updater:      apt
  Installed:    No
  Architecture: amd64
  Repository:   https://pkgs.tailscale.com/stable/debian sid main
  Website:      https://tailscale.com/
  Summary:      Zero config VPN. Works on any device, manages firewall rules for you, and works from anywhere.
$ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux trixie/sid"
NAME="Debian GNU/Linux"
VERSION_CODENAME=trixie
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
$ cat /usr/lib/os-release
PRETTY_NAME="Debian GNU/Linux trixie/sid"
NAME="Debian GNU/Linux"
VERSION_CODENAME=trixie
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
$ cat /etc/debian_version
trixie/sid
$ lsb_release --codename --short
trixie

My best guess is that because it is debian testing, it is called trixie/sid at some places. Perhaps that is the issue?

@silentJET85
Copy link
Contributor

Yeah, at the moment deb-get can't really distinguish between testing and sid. I'm not sure if there's any good way to do that.

What happens if you try to install it?
It seems like it should be installing Tailscale's sid repo for you. From what I could see on their site, it doesn't look like they have a Trixie-specific repo yet.

@philclifford
Copy link
Member

They do indeed have separate repos for sid and trixie.

@silentJET85
Copy link
Contributor

silentJET85 commented Apr 22, 2025

Oh interesting. I guess I had been looking in the wrong place: https://tailscale.com/download/linux

Anyway, I think I may have come up with a way to distinguish Debian Testing, using apt-cache policy. I'll do some more testing and hopefully make a PR soon.
EDIT: Done. #1418

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants