Skip to content

Commit e22541c

Browse files
committed
fix: add musl linux installer assets
1 parent 7496e3f commit e22541c

12 files changed

Lines changed: 1041 additions & 43 deletions

File tree

.goreleaser.yml

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,40 @@ before:
33
hooks:
44
- go mod download
55
builds:
6-
- env: [ CGO_ENABLED=0 ]
6+
- id: gate
7+
env: [ CGO_ENABLED=0 ]
78
ldflags:
89
- "-s -w"
910
- "-X 'go.minekube.com/gate/pkg/version.Version={{.Version}}'"
1011
goos:
1112
- linux
1213
- windows
1314
- darwin
15+
- id: gate-musl
16+
env: [ CGO_ENABLED=0 ]
17+
tags:
18+
- musl
19+
ldflags:
20+
- "-s -w"
21+
- "-X 'go.minekube.com/gate/pkg/version.Version={{.Version}}'"
22+
goos:
23+
- linux
24+
goarch:
25+
- amd64
26+
- arm64
27+
- '386'
1428
archives:
15-
- format: binary
29+
- id: gate
30+
ids:
31+
- gate
32+
formats:
33+
- binary
34+
- id: gate-musl
35+
ids:
36+
- gate-musl
37+
formats:
38+
- binary
39+
name_template: "{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}{{ with .Arm }}v{{ . }}{{ end }}{{ with .Mips }}_{{ . }}{{ end }}{{ if not (eq .Amd64 \"v1\") }}{{ .Amd64 }}{{ end }}_musl"
1640
checksum:
1741
name_template: 'checksums.txt'
1842
changelog:

.web/docs/guide/install/binaries.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,13 @@ If you encounter any issues:
9494
- Try running the installation again
9595
- If it persists, please report it on our GitHub issues
9696

97-
3. **Permission Denied**:
97+
3. **Linux binary does not run**:
98+
99+
- The installer selects `gate_*_linux_*_musl` automatically on Alpine/musl systems
100+
- The musl binary is statically linked, but excludes native GeyserLite managed mode and Honeycomb OpenTelemetry auto-configuration
101+
- For managed Bedrock on musl, set `bedrock.managed.engine: java`; for native GeyserLite or full OTEL support, use a glibc-based distribution/image such as Debian, Ubuntu, or Fedora, or run the official Docker image
102+
103+
4. **Permission Denied**:
98104
- Our scripts install to user space and shouldn't require elevated privileges
99105
- If you see permission errors, ensure you have write access to the installation directory
100106

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#!/bin/sh
2+
set -eu
3+
4+
deps=$(go list -tags musl -deps ./cmd/gate)
5+
6+
if printf '%s\n' "$deps" | grep -Eq '^(github.com/ebitengine/purego|go.minekube.com/geyserlite|github.com/honeycombio/otel-config-go/otelconfig)$'; then
7+
echo "musl build still depends on geyserlite, purego, or Honeycomb OTEL auto-config" >&2
8+
exit 1
9+
fi
10+
11+
go test -tags musl ./cmd/gate ./pkg/internal/otelutil ./pkg/edition/bedrock/geyser

0 commit comments

Comments
 (0)