diff mbox series

[v3,1/1] package/tailscale: new package

Message ID 20240727202340.1484781-1-james.hilliard1@gmail.com
State Changes Requested
Headers show
Series [v3,1/1] package/tailscale: new package | expand

Commit Message

James Hilliard July 27, 2024, 8:23 p.m. UTC
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
Changes v2 -> v3:
  - set required CONFIG_TUN kernel config option
Changes v1 -> v2:
  - don't set GOPROXY
---
 package/Config.in                |  1 +
 package/tailscale/Config.in      |  8 ++++++++
 package/tailscale/tailscale.hash |  3 +++
 package/tailscale/tailscale.mk   | 22 ++++++++++++++++++++++
 4 files changed, 34 insertions(+)
 create mode 100644 package/tailscale/Config.in
 create mode 100644 package/tailscale/tailscale.hash
 create mode 100644 package/tailscale/tailscale.mk

Comments

Thomas Petazzoni July 29, 2024, 6:33 p.m. UTC | #1
Hello James,

On Sat, 27 Jul 2024 14:23:40 -0600
James Hilliard <james.hilliard1@gmail.com> wrote:

> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> ---
> Changes v2 -> v3:
>   - set required CONFIG_TUN kernel config option
> Changes v1 -> v2:
>   - don't set GOPROXY
> ---
>  package/Config.in                |  1 +
>  package/tailscale/Config.in      |  8 ++++++++
>  package/tailscale/tailscale.hash |  3 +++
>  package/tailscale/tailscale.mk   | 22 ++++++++++++++++++++++
>  4 files changed, 34 insertions(+)
>  create mode 100644 package/tailscale/Config.in
>  create mode 100644 package/tailscale/tailscale.hash
>  create mode 100644 package/tailscale/tailscale.mk

Thanks James for this new package. I tried building it, but it fails
during the download with:

verifying fybrik.io/crdoc@v0.6.3: checksum mismatch
	downloaded: h1:Awi+v+URtj5DvPr0LLdVrW2Nn9/G1Y7aGpUPG1IATE4=
	go.sum:     h1:jNNAVINu8up5vrLa0jrV7z7HSlyHF/6lNOrAtrXwYlI=

Could you have a look into this?

Also, could you make sure to add the entry in the DEVELOPERS file?

Thanks a lot!

Thomas
Christian Stewart July 29, 2024, 7:26 p.m. UTC | #2
Thomas, James,

On Mon, Jul 29, 2024 at 11:33 AM Thomas Petazzoni
<thomas.petazzoni@bootlin.com> wrote:
>
> Hello James,
>
> On Sat, 27 Jul 2024 14:23:40 -0600
> James Hilliard <james.hilliard1@gmail.com> wrote:
>
> > Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> > ---
> > Changes v2 -> v3:
> >   - set required CONFIG_TUN kernel config option
> > Changes v1 -> v2:
> >   - don't set GOPROXY
> > ---
> >  package/Config.in                |  1 +
> >  package/tailscale/Config.in      |  8 ++++++++
> >  package/tailscale/tailscale.hash |  3 +++
> >  package/tailscale/tailscale.mk   | 22 ++++++++++++++++++++++
> >  4 files changed, 34 insertions(+)
> >  create mode 100644 package/tailscale/Config.in
> >  create mode 100644 package/tailscale/tailscale.hash
> >  create mode 100644 package/tailscale/tailscale.mk
>
> Thanks James for this new package. I tried building it, but it fails
> during the download with:
>
> verifying fybrik.io/crdoc@v0.6.3: checksum mismatch
>         downloaded: h1:Awi+v+URtj5DvPr0LLdVrW2Nn9/G1Y7aGpUPG1IATE4=
>         go.sum:     h1:jNNAVINu8up5vrLa0jrV7z7HSlyHF/6lNOrAtrXwYlI=
>
> Could you have a look into this?

This was solved already on Tailscale master branch:

https://github.com/tailscale/tailscale/issues/12859#issuecomment-2239157563

It was fixed in this commit:

https://github.com/tailscale/tailscale/commit/0f57b9340b1449de811a9dacd098a769192c4344

I don't see a release yet with this commit. We could either take the
latest master commit hash for now or apply a patch with this commit.

> Also, could you make sure to add the entry in the DEVELOPERS file?

You could add me to that list as well if you like.

Best regards,
Christian Stewart
Christian Stewart July 29, 2024, 7:29 p.m. UTC | #3
Thomas, James,

On Mon, Jul 29, 2024 at 12:26 PM Christian Stewart
<christian@aperture.us> wrote:
> > Thanks James for this new package. I tried building it, but it fails
> > during the download with:
> >
> > verifying fybrik.io/crdoc@v0.6.3: checksum mismatch
> >         downloaded: h1:Awi+v+URtj5DvPr0LLdVrW2Nn9/G1Y7aGpUPG1IATE4=
> >         go.sum:     h1:jNNAVINu8up5vrLa0jrV7z7HSlyHF/6lNOrAtrXwYlI=
> >
> > Could you have a look into this?
>
> This was solved already on Tailscale master branch:
>
> https://github.com/tailscale/tailscale/issues/12859#issuecomment-2239157563
>
> It was fixed in this commit:
>
> https://github.com/tailscale/tailscale/commit/0f57b9340b1449de811a9dacd098a769192c4344
>
> I don't see a release yet with this commit. We could either take the
> latest master commit hash for now or apply a patch with this commit.
>
> > Also, could you make sure to add the entry in the DEVELOPERS file?
>
> You could add me to that list as well if you like.

Upon some further testing:

export GOPROXY=direct
git clone https://github.com/tailscale/tailscale
cd tailscale
go mod vendor

I now see:

github.com/go-toolsmith/pkgload:
gvisor.dev/gvisor@v0.0.0-20240306221502-ee1e1f6070e3: invalid version:
unknown revision ee1e1f6070e3

Reported here:

https://github.com/tailscale/tailscale/issues/12859#issuecomment-2256734426

Best regards,
Christian Stewart
Thomas Petazzoni July 29, 2024, 8:10 p.m. UTC | #4
On Mon, 29 Jul 2024 12:26:46 -0700
Christian Stewart <christian@aperture.us> wrote:

> This was solved already on Tailscale master branch:
> 
> https://github.com/tailscale/tailscale/issues/12859#issuecomment-2239157563
> 
> It was fixed in this commit:
> 
> https://github.com/tailscale/tailscale/commit/0f57b9340b1449de811a9dacd098a769192c4344

Thanks for having looked into this!

> I don't see a release yet with this commit. We could either take the
> latest master commit hash for now or apply a patch with this commit.

I think applying a patch doesn't work because this error happens during
the vendoring step, which is part of the download step, and is
therefore *before* we apply any patches.

Thomas
James Hilliard July 30, 2024, 3:15 p.m. UTC | #5
On Mon, Jul 29, 2024 at 2:10 PM Thomas Petazzoni
<thomas.petazzoni@bootlin.com> wrote:
>
> On Mon, 29 Jul 2024 12:26:46 -0700
> Christian Stewart <christian@aperture.us> wrote:
>
> > This was solved already on Tailscale master branch:
> >
> > https://github.com/tailscale/tailscale/issues/12859#issuecomment-2239157563
> >
> > It was fixed in this commit:
> >
> > https://github.com/tailscale/tailscale/commit/0f57b9340b1449de811a9dacd098a769192c4344
>
> Thanks for having looked into this!
>
> > I don't see a release yet with this commit. We could either take the
> > latest master commit hash for now or apply a patch with this commit.
>
> I think applying a patch doesn't work because this error happens during
> the vendoring step, which is part of the download step, and is
> therefore *before* we apply any patches.

I'm thinking maybe one option is to automatically fallback to attempting
to vendor using GOPROXY=https://proxy.golang.org whenever we get
a vendoring failure using GOPROXY=direct as it seems other packages
may be affected by this sort of issue.


>
> Thomas
> --
> Thomas Petazzoni, co-owner and CEO, Bootlin
> Embedded Linux and Kernel engineering and training
> https://bootlin.com
diff mbox series

Patch

diff --git a/package/Config.in b/package/Config.in
index 90f1ecc877..15965ecb87 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -2617,6 +2617,7 @@  endif
 	source "package/stunnel/Config.in"
 	source "package/suricata/Config.in"
 	source "package/system-config-printer/Config.in"
+	source "package/tailscale/Config.in"
 	source "package/tcpdump/Config.in"
 	source "package/tcping/Config.in"
 	source "package/tcpreplay/Config.in"
diff --git a/package/tailscale/Config.in b/package/tailscale/Config.in
new file mode 100644
index 0000000000..c81a7134ee
--- /dev/null
+++ b/package/tailscale/Config.in
@@ -0,0 +1,8 @@ 
+config BR2_PACKAGE_TAILSCALE
+	bool "tailscale"
+	depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
+	select BR2_PACKAGE_HOST_GO
+	help
+	  The easiest, most secure way to use WireGuard and 2FA.
+
+	  https://github.com/tailscale/tailscale
diff --git a/package/tailscale/tailscale.hash b/package/tailscale/tailscale.hash
new file mode 100644
index 0000000000..882ff9d5d0
--- /dev/null
+++ b/package/tailscale/tailscale.hash
@@ -0,0 +1,3 @@ 
+# Locally computed
+sha256  a961aa07a3b0927cd647d6ae69fc212afbbdb0e4c47b8aeb181cb64360b7f143  tailscale-1.70.0-go2.tar.gz
+sha256  d1ee1c7947d4b2c1963ea214d5324f1d4c89f2f1d0f0224889b4dfb868dad725  LICENSE
diff --git a/package/tailscale/tailscale.mk b/package/tailscale/tailscale.mk
new file mode 100644
index 0000000000..13604c9e27
--- /dev/null
+++ b/package/tailscale/tailscale.mk
@@ -0,0 +1,22 @@ 
+################################################################################
+#
+# tailscale
+#
+################################################################################
+
+TAILSCALE_VERSION = 1.70.0
+TAILSCALE_SITE = $(call github,tailscale,tailscale,v$(TAILSCALE_VERSION))
+TAILSCALE_LICENSE = BSD-3-Clause
+TAILSCALE_LICENSE_FILES = LICENSE
+TAILSCALE_GOMOD = tailscale.com
+TAILSCALE_BUILD_TARGETS = cmd/tailscale cmd/tailscaled
+TAILSCALE_INSTALL_BINS = tailscale tailscaled
+TAILSCALE_LDFLAGS = \
+	-X tailscale.com/version.longStamp=$(TAILSCALE_VERSION) \
+	-X tailscale.com/version.shortStamp=$(TAILSCALE_VERSION)
+
+define TAILSCALE_LINUX_CONFIG_FIXUPS
+	$(call KCONFIG_ENABLE_OPT,CONFIG_TUN)
+endef
+
+$(eval $(golang-package))