From 1f571be35b4f4ee2bb560e7c3d98edc8792216b9 Mon Sep 17 00:00:00 2001 From: Johann MacDonagh Date: Fri, 3 Jan 2025 22:24:59 -0500 Subject: [PATCH 1/4] Fix tailscale sysext - Place binaries in /usr/{bin,sbin} instead of /usr/local/{bin,sbin} to match provided systemd service definition - Add tmpfiles.d config to copy vendor supplied tailscaled.defaults to /etc/default/tailscaled so service can start --- create_tailscale_sysext.sh | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/create_tailscale_sysext.sh b/create_tailscale_sysext.sh index 8e6e0db2..131e850b 100755 --- a/create_tailscale_sysext.sh +++ b/create_tailscale_sysext.sh @@ -34,13 +34,16 @@ curl -o "${TMP_DIR}/${TARBALL}" -fsSL "${URL}" tar xf "${TMP_DIR}/${TARBALL}" -C "${TMP_DIR}" --strip-components=1 -mkdir -p "${SYSEXTNAME}"/usr/local/{bin,sbin,lib/{systemd/system,extension-release.d}} +mkdir -p "${SYSEXTNAME}"/usr/{bin,sbin,lib/{systemd/system,extension-release.d,tmpfiles.d},share/tailscale} -mv "${TMP_DIR}/tailscale" "${SYSEXTNAME}/usr/local/bin/tailscale" -mv "${TMP_DIR}/tailscaled" "${SYSEXTNAME}/usr/local/sbin/tailscaled" -mv "${TMP_DIR}/systemd/tailscaled.service" "${SYSEXTNAME}/usr/local/lib/systemd/system/tailscaled.service" +mv "${TMP_DIR}/tailscale" "${SYSEXTNAME}/usr/bin/tailscale" +mv "${TMP_DIR}/tailscaled" "${SYSEXTNAME}/usr/sbin/tailscaled" +mv "${TMP_DIR}/systemd/tailscaled.service" "${SYSEXTNAME}/usr/lib/systemd/system/tailscaled.service" +mv "${TMP_DIR}/systemd/tailscaled.defaults" "${SYSEXTNAME}/usr/share/tailscale/tailscaled.defaults" -sed -i 's/--port.*//g' "${SYSEXTNAME}/usr/local/lib/systemd/system/tailscaled.service" +cat <"${SYSEXTNAME}"/usr/lib/tmpfiles.d/10-tailscale.conf +C /etc/default/tailscaled - - - - /usr/share/tailscale/tailscaled.defaults +EOF rm -rf "${TMP_DIR}" From e5b27acd801bdaba21bca8ba42dd1205971d7dca Mon Sep 17 00:00:00 2001 From: Johann MacDonagh Date: Sat, 4 Jan 2025 09:33:53 -0500 Subject: [PATCH 2/4] Ensure tailscale* interfaces aren't managed by networkd for MagicDNS --- create_tailscale_sysext.sh | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/create_tailscale_sysext.sh b/create_tailscale_sysext.sh index 131e850b..44279fe3 100755 --- a/create_tailscale_sysext.sh +++ b/create_tailscale_sysext.sh @@ -34,17 +34,33 @@ curl -o "${TMP_DIR}/${TARBALL}" -fsSL "${URL}" tar xf "${TMP_DIR}/${TARBALL}" -C "${TMP_DIR}" --strip-components=1 -mkdir -p "${SYSEXTNAME}"/usr/{bin,sbin,lib/{systemd/system,extension-release.d,tmpfiles.d},share/tailscale} +mkdir -p "${SYSEXTNAME}"/usr/{bin,sbin,lib/{systemd/system/tailscaled.service.d,systemd/network,extension-release.d,tmpfiles.d},share/tailscale} mv "${TMP_DIR}/tailscale" "${SYSEXTNAME}/usr/bin/tailscale" mv "${TMP_DIR}/tailscaled" "${SYSEXTNAME}/usr/sbin/tailscaled" mv "${TMP_DIR}/systemd/tailscaled.service" "${SYSEXTNAME}/usr/lib/systemd/system/tailscaled.service" mv "${TMP_DIR}/systemd/tailscaled.defaults" "${SYSEXTNAME}/usr/share/tailscale/tailscaled.defaults" +cat <"${SYSEXTNAME}"/usr/lib/systemd/system/tailscaled.service.d/10-networkd-reload.conf +# Reload systemd-networkd.service to pick up 50-tailscale.network + +[Service] +ExecStartPre=systemctl reload systemd-networkd.service +EOF + cat <"${SYSEXTNAME}"/usr/lib/tmpfiles.d/10-tailscale.conf C /etc/default/tailscaled - - - - /usr/share/tailscale/tailscaled.defaults EOF +cat <"${SYSEXTNAME}"/usr/lib/systemd/network/50-tailscale.network +[Match] +Kind=tun +Name=tailscale* + +[Link] +Unmanaged=yes +EOF + rm -rf "${TMP_DIR}" RELOAD=1 "${SCRIPTFOLDER}"/bake.sh "${SYSEXTNAME}" From f3d628726dabdd3fa6b6d85e2d0d0b25a2ca4d84 Mon Sep 17 00:00:00 2001 From: Johann MacDonagh Date: Tue, 7 Jan 2025 10:12:35 -0500 Subject: [PATCH 3/4] Bump tailscale to 1.78.1 --- release_build_versions.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/release_build_versions.txt b/release_build_versions.txt index 976f6f50..fd2e9cff 100644 --- a/release_build_versions.txt +++ b/release_build_versions.txt @@ -23,7 +23,7 @@ wasmcloud-1.0.0 wasmcloud-1.1.1 wasmcloud-1.2.1 -tailscale-1.76.6 +tailscale-1.78.1 nvidia_runtime-v1.16.2 From 55bbec92bba86e34ed8dcacd7166ae02caa76c2b Mon Sep 17 00:00:00 2001 From: Johann MacDonagh Date: Sun, 19 Jan 2025 11:15:38 -0500 Subject: [PATCH 4/4] Rely on ensure-sysext to reload networkd --- create_tailscale_sysext.sh | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/create_tailscale_sysext.sh b/create_tailscale_sysext.sh index 44279fe3..3a3e2d1f 100755 --- a/create_tailscale_sysext.sh +++ b/create_tailscale_sysext.sh @@ -34,20 +34,13 @@ curl -o "${TMP_DIR}/${TARBALL}" -fsSL "${URL}" tar xf "${TMP_DIR}/${TARBALL}" -C "${TMP_DIR}" --strip-components=1 -mkdir -p "${SYSEXTNAME}"/usr/{bin,sbin,lib/{systemd/system/tailscaled.service.d,systemd/network,extension-release.d,tmpfiles.d},share/tailscale} +mkdir -p "${SYSEXTNAME}"/usr/{bin,sbin,lib/{systemd/system,systemd/network,extension-release.d,tmpfiles.d},share/tailscale} mv "${TMP_DIR}/tailscale" "${SYSEXTNAME}/usr/bin/tailscale" mv "${TMP_DIR}/tailscaled" "${SYSEXTNAME}/usr/sbin/tailscaled" mv "${TMP_DIR}/systemd/tailscaled.service" "${SYSEXTNAME}/usr/lib/systemd/system/tailscaled.service" mv "${TMP_DIR}/systemd/tailscaled.defaults" "${SYSEXTNAME}/usr/share/tailscale/tailscaled.defaults" -cat <"${SYSEXTNAME}"/usr/lib/systemd/system/tailscaled.service.d/10-networkd-reload.conf -# Reload systemd-networkd.service to pick up 50-tailscale.network - -[Service] -ExecStartPre=systemctl reload systemd-networkd.service -EOF - cat <"${SYSEXTNAME}"/usr/lib/tmpfiles.d/10-tailscale.conf C /etc/default/tailscaled - - - - /usr/share/tailscale/tailscaled.defaults EOF