Skip to content

Commit e2dfb0b

Browse files
committed
Fix #1904
32-bit ARM builds
1 parent 764ac37 commit e2dfb0b

File tree

4 files changed

+7
-6
lines changed

4 files changed

+7
-6
lines changed

.github/workflows/docker.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ on:
99
- "*"
1010
env:
1111
# Docker & Registries
12-
ARCHITECTURES: linux/arm64,linux/amd64
12+
ARCHITECTURES: linux/arm64,linux/amd64,linux/arm/v7
1313
IMAGE_NAME: silverbullet
1414
WEBSITE_IMAGE: zefhemel/silverbullet-website
1515
NAMESPACE_GITHUB: silverbulletmd

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ ARG TARGETARCH
66
ENV GO_VERSION=1.25.1
77

88
# Install Go
9-
RUN set -e; actual_arch=${TARGETARCH:-$(dpkg --print-architecture)}; wget -P /tmp "https://dl.google.com/go/go${GO_VERSION}.linux-${actual_arch}.tar.gz"; tar -C /usr/local -xzf "/tmp/go${GO_VERSION}.linux-${actual_arch}.tar.gz"; rm "/tmp/go${GO_VERSION}.linux-${actual_arch}.tar.gz"
9+
RUN set -e; actual_arch=${TARGETARCH:-$(dpkg --print-architecture)}; case "$actual_arch" in arm) actual_arch=armv6l ;; esac; wget -P /tmp "https://dl.google.com/go/go${GO_VERSION}.linux-${actual_arch}.tar.gz"; tar -C /usr/local -xzf "/tmp/go${GO_VERSION}.linux-${actual_arch}.tar.gz"; rm "/tmp/go${GO_VERSION}.linux-${actual_arch}.tar.gz"
1010

1111
ENV GOPATH=/go
1212
ENV PATH=$GOPATH/bin:/usr/local/go/bin:$PATH

Makefile

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,21 +15,23 @@ build:
1515
build-for-docker: build
1616
GOOS=linux GOARCH=arm64 go build -ldflags "$(LDFLAGS)" -o silverbullet-arm64 .
1717
GOOS=linux GOARCH=amd64 go build -ldflags "$(LDFLAGS)" -o silverbullet-amd64 .
18+
GOOS=linux GOARCH=arm GOARM=7 go build -ldflags "$(LDFLAGS)" -o silverbullet-arm .
1819

1920
docker: build-for-docker
20-
docker buildx build --platform linux/arm64,linux/amd64 --push .
21+
docker buildx build --platform linux/arm64,linux/amd64,linux/arm/v7 --push .
2122

2223
build-server-releases:
2324
GOOS=linux GOARCH=arm64 go build -ldflags "$(LDFLAGS)" -o silverbullet . && zip silverbullet-server-linux-aarch64.zip silverbullet
2425
GOOS=linux GOARCH=amd64 go build -ldflags "$(LDFLAGS)" -o silverbullet . && zip silverbullet-server-linux-x86_64.zip silverbullet
2526
GOOS=darwin GOARCH=arm64 go build -ldflags "$(LDFLAGS)" -o silverbullet . && zip silverbullet-server-darwin-aarch64.zip silverbullet
2627
GOOS=darwin GOARCH=amd64 go build -ldflags "$(LDFLAGS)" -o silverbullet . && zip silverbullet-server-darwin-x86_64.zip silverbullet
2728
GOOS=windows GOARCH=amd64 go build -ldflags "$(LDFLAGS)" -o silverbullet.exe . && zip silverbullet-server-windows-x86_64.zip silverbullet.exe
29+
GOOS=linux GOARCH=arm GOARM=7 go build -ldflags "$(LDFLAGS)" -o silverbullet . && zip silverbullet-server-linux-armv7.zip silverbullet
2830
GOOS=freebsd GOARCH=amd64 go build -ldflags "$(LDFLAGS)" -o silverbullet . && zip silverbullet-server-freebsd-x86_64.zip silverbullet
2931

3032
clean:
3133
rm -rf client_bundle/{base_fs,client} dist public_version.ts
32-
rm -f silverbullet silverbullet-arm64 silverbullet-amd64 silverbullet.exe silverbullet-server-*.zip
34+
rm -f silverbullet silverbullet-arm64 silverbullet-amd64 silverbullet-arm silverbullet.exe silverbullet-server-*.zip
3335

3436
check:
3537
# Frontend type check

website/Install/Docker.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,7 @@ Conveniently, SilverBullet is published as a [docker image on GHCR](https://gith
66

77
* 64-bit Intel
88
* 64-bit ARM (e.g. for Raspberry Pis and Apple Silicon macs)
9-
10-
There is no 32-bit version of SilverBullet. Most people run 64-bit OSes these days, an exception may be Raspberry Pis. Recent (RPI 3 and later) can run 64-bit Linux as well.
9+
* 32-bit ARM (ARMv7, e.g. for older Raspberry Pis running 32-bit Linux)
1110

1211
> **warning** Warning
1312
> To access SilverBullet outside of `localhost` you will need to set up [[TLS]].

0 commit comments

Comments
 (0)