sliver icon indicating copy to clipboard operation
sliver copied to clipboard

Configurable Go Versions for `generate`

Open gedw99 opened this issue 2 years ago • 2 comments

Is your feature request related to a problem? Please describe.

WASM and WASI can be build with gotip.

gotip is much faster than tinygo and from what i can see will be the way to compile to wasm and wasi.

I have been using gotip with success so far with no issues. It works with wazero and wasirun already.


Describe the solution you'd like

Extend https://github.com/BishopFox/sliver/blob/master/server/generate/binaries.go to allow using either go or gotip.

Expose this so that users can build wasm, binaries, libs with either go or gotip.

Keep tinygo as is, so that it is still an option for building.


Describe alternatives you've considered


Additional context

gedw99 avatar Jun 20 '23 12:06 gedw99

Maybe add the gotip download feature to the binaries.go, so that it can install and bootstrap it for us.

EX:

go install golang.org/dl/gotip@$latest
gotip download

FYI - the go tooling is installed away from the standard go tooling. That is the only difference between "go env" and "gotip env" output.

gotip env GOTOOLDIR 
/Users/apple/sdk/gotip/pkg/tool/darwin_amd64

go env GOTOOLDIR 
/Users/apple/.gobrew/current/go/pkg/tool/darwin_amd64

gedw99 avatar Jun 20 '23 12:06 gedw99

We've been considering configurable go versions in v1.6.x already as v1.20 will be the last to support Windows 7, so being able to go back to older versions seems useful too.

moloch-- avatar Jun 20 '23 14:06 moloch--