Skip to content
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

buildtool: support running in debian 11 #2664

Closed
4 tasks done
bassosimone opened this issue Feb 1, 2024 · 0 comments · Fixed by ooni/probe-cli#1482
Closed
4 tasks done

buildtool: support running in debian 11 #2664

bassosimone opened this issue Feb 1, 2024 · 0 comments · Fixed by ooni/probe-cli#1482

Comments

@bassosimone
Copy link
Contributor

bassosimone commented Feb 1, 2024

We want users using Debian stable to be able to build. To this end we need two things to happen:

  • ./internal/cmd/buildtool must compile and run with go1.18+ (Debian stable uses go1.19);
  • ./internal/cmd/buildtool has a gofixpath subcommand that downloads the correct go version if needed and then ensures that this version is the "go" we find in PATH (if needed);
  • ./script/go.bash is such that we use gofixpath to invoke commands with the right "go" in PATH;
  • .Makefile must use ./script/go.bash.

If we do this, we simplify @aanorbel's life in ooni/probe-android#650.

In turn, by doing this, we enable better cross-integration tests across repositories.

@bassosimone bassosimone self-assigned this Feb 1, 2024
bassosimone added a commit to ooni/probe-cli that referenced this issue Feb 1, 2024
bassosimone added a commit to ooni/probe-cli that referenced this issue Feb 1, 2024
bassosimone added a commit to ooni/probe-cli that referenced this issue Feb 1, 2024
This subcommand executes another command ensuring a PATH lookup for this
subcommand resolves "go" as the version of Go specified in the
`GOVERSION` file. This is a building block for
ooni/probe#2664.
bassosimone added a commit to ooni/probe-cli that referenced this issue Feb 1, 2024
This wrapper invokes buildtool's gofixpath to ensure we end up
executing the correct version of golang.

Part of ooni/probe#2664.
bassosimone added a commit to ooni/probe-cli that referenced this issue Feb 1, 2024
This wrapper invokes buildtool's gofixpath to ensure we end up executing
the correct version of golang.

Part of ooni/probe#2664.
bassosimone added a commit to ooni/probe-cli that referenced this issue Feb 1, 2024
By using ./script/go.bash in the `Makefile`, we ensure that we're using
the correct version of Go.

This should be enough to close
ooni/probe#2664.
bassosimone added a commit to ooni/probe-cli that referenced this issue Feb 2, 2024
While there, zap the ./MONOREPO/tools/setupgo script, which has now
been superseded by using ./script/go.bash as  development tool.

Part of ooni/probe#2664.
bassosimone added a commit to ooni/probe-cli that referenced this issue Feb 2, 2024
While there, zap the ./MONOREPO/tools/setupgo script, which has now been
superseded by using ./script/go.bash as development tool. Part of
ooni/probe#2664.
bassosimone added a commit to ooni/probe-cli that referenced this issue Feb 2, 2024
This commit is part of ooni/probe#2664. We use
a different strategy for downloading and executing the correct version
of Go. We have vendored and adapted to code at `golang.org/dl` such that
it works with versions of Go as old as the version of Go used by Ubuntu
22.04 LTS and Debian 11.
@bassosimone bassosimone changed the title buildtool: support running in debian stable buildtool: support running in debian 11 Feb 2, 2024
Murphy-OrangeMud pushed a commit to Murphy-OrangeMud/probe-cli that referenced this issue Feb 13, 2024
Murphy-OrangeMud pushed a commit to Murphy-OrangeMud/probe-cli that referenced this issue Feb 13, 2024
This subcommand executes another command ensuring a PATH lookup for this
subcommand resolves "go" as the version of Go specified in the
`GOVERSION` file. This is a building block for
ooni/probe#2664.
Murphy-OrangeMud pushed a commit to Murphy-OrangeMud/probe-cli that referenced this issue Feb 13, 2024
This wrapper invokes buildtool's gofixpath to ensure we end up executing
the correct version of golang.

Part of ooni/probe#2664.
Murphy-OrangeMud pushed a commit to Murphy-OrangeMud/probe-cli that referenced this issue Feb 13, 2024
By using ./script/go.bash in the `Makefile`, we ensure that we're using
the correct version of Go.

This should be enough to close
ooni/probe#2664.
Murphy-OrangeMud pushed a commit to Murphy-OrangeMud/probe-cli that referenced this issue Feb 13, 2024
While there, zap the ./MONOREPO/tools/setupgo script, which has now been
superseded by using ./script/go.bash as development tool. Part of
ooni/probe#2664.
Murphy-OrangeMud pushed a commit to Murphy-OrangeMud/probe-cli that referenced this issue Feb 13, 2024
This commit is part of ooni/probe#2664. We use
a different strategy for downloading and executing the correct version
of Go. We have vendored and adapted to code at `golang.org/dl` such that
it works with versions of Go as old as the version of Go used by Ubuntu
22.04 LTS and Debian 11.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant