feat: add linux/riscv64 build
This commit is contained in:
@@ -85,7 +85,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
file: ./packaging/docker/alpine/Dockerfile
|
file: ./packaging/docker/alpine/Dockerfile
|
||||||
platforms: linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64
|
platforms: linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64,linux/riscv64
|
||||||
push: ${{ github.event_name != 'pull_request' }}
|
push: ${{ github.event_name != 'pull_request' }}
|
||||||
tags: ${{ steps.docker_alpine_tags.outputs.tags }}
|
tags: ${{ steps.docker_alpine_tags.outputs.tags }}
|
||||||
|
|
||||||
@@ -94,6 +94,6 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
file: ./packaging/docker/distroless/Dockerfile
|
file: ./packaging/docker/distroless/Dockerfile
|
||||||
platforms: linux/amd64,linux/arm64
|
platforms: linux/amd64,linux/arm64,linux/riscv64
|
||||||
push: ${{ github.event_name != 'pull_request' }}
|
push: ${{ github.event_name != 'pull_request' }}
|
||||||
tags: ${{ steps.docker_distroless_tags.outputs.tags }}
|
tags: ${{ steps.docker_distroless_tags.outputs.tags }}
|
||||||
|
|||||||
+1
-1
@@ -103,7 +103,7 @@ You can also use an existing PostgreSQL instance. Make sure to set the `DATABASE
|
|||||||
### Cross-Platform Support
|
### Cross-Platform Support
|
||||||
|
|
||||||
Miniflux supports multiple architectures. When making changes, ensure compatibility across:
|
Miniflux supports multiple architectures. When making changes, ensure compatibility across:
|
||||||
- Linux (amd64, arm64, armv7, armv6, armv5)
|
- Linux (amd64, arm64, armv7, armv6, armv5, riscv64)
|
||||||
- macOS (amd64, arm64)
|
- macOS (amd64, arm64)
|
||||||
- FreeBSD, OpenBSD, Windows (amd64)
|
- FreeBSD, OpenBSD, Windows (amd64)
|
||||||
|
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ export PGPASSWORD := postgres
|
|||||||
linux-armv7 \
|
linux-armv7 \
|
||||||
linux-armv6 \
|
linux-armv6 \
|
||||||
linux-armv5 \
|
linux-armv5 \
|
||||||
|
linux-riscv64 \
|
||||||
darwin-amd64 \
|
darwin-amd64 \
|
||||||
darwin-arm64 \
|
darwin-arm64 \
|
||||||
freebsd-amd64 \
|
freebsd-amd64 \
|
||||||
@@ -61,6 +62,10 @@ linux-armv5:
|
|||||||
@ CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=5 go build -ldflags=$(LD_FLAGS) -o $(APP)-$@
|
@ CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=5 go build -ldflags=$(LD_FLAGS) -o $(APP)-$@
|
||||||
@ sha256sum $(APP)-$@ > $(APP)-$@.sha256
|
@ sha256sum $(APP)-$@ > $(APP)-$@.sha256
|
||||||
|
|
||||||
|
linux-riscv64:
|
||||||
|
@ CGO_ENABLED=0 GOOS=linux GOARCH=riscv64 go build -ldflags=$(LD_FLAGS) -o $(APP)-$@
|
||||||
|
@ sha256sum $(APP)-$@ > $(APP)-$@.sha256
|
||||||
|
|
||||||
darwin-amd64:
|
darwin-amd64:
|
||||||
@ GOOS=darwin GOARCH=amd64 go build -ldflags=$(LD_FLAGS) -o $(APP)-$@
|
@ GOOS=darwin GOARCH=amd64 go build -ldflags=$(LD_FLAGS) -o $(APP)-$@
|
||||||
@ sha256sum $(APP)-$@ > $(APP)-$@.sha256
|
@ sha256sum $(APP)-$@ > $(APP)-$@.sha256
|
||||||
@@ -77,7 +82,7 @@ openbsd-amd64:
|
|||||||
@ GOOS=openbsd GOARCH=amd64 go build -ldflags=$(LD_FLAGS) -o $(APP)-$@
|
@ GOOS=openbsd GOARCH=amd64 go build -ldflags=$(LD_FLAGS) -o $(APP)-$@
|
||||||
@ sha256sum $(APP)-$@ > $(APP)-$@.sha256
|
@ sha256sum $(APP)-$@ > $(APP)-$@.sha256
|
||||||
|
|
||||||
build: linux-amd64 linux-arm64 linux-armv7 linux-armv6 linux-armv5 darwin-amd64 darwin-arm64 freebsd-amd64 openbsd-amd64
|
build: linux-amd64 linux-arm64 linux-armv7 linux-armv6 linux-armv5 linux-riscv64 darwin-amd64 darwin-arm64 freebsd-amd64 openbsd-amd64
|
||||||
|
|
||||||
run:
|
run:
|
||||||
@ LOG_DATE_TIME=1 LOG_LEVEL=debug RUN_MIGRATIONS=1 CREATE_ADMIN=1 ADMIN_USERNAME=admin ADMIN_PASSWORD=test123 go run main.go
|
@ LOG_DATE_TIME=1 LOG_LEVEL=debug RUN_MIGRATIONS=1 CREATE_ADMIN=1 ADMIN_USERNAME=admin ADMIN_PASSWORD=test123 go run main.go
|
||||||
@@ -135,7 +140,7 @@ docker-image-distroless:
|
|||||||
|
|
||||||
docker-images:
|
docker-images:
|
||||||
docker buildx build \
|
docker buildx build \
|
||||||
--platform linux/amd64,linux/arm64,linux/arm/v7,linux/arm/v6 \
|
--platform linux/amd64,linux/arm64,linux/arm/v7,linux/arm/v6,linux/riscv64 \
|
||||||
--file packaging/docker/alpine/Dockerfile \
|
--file packaging/docker/alpine/Dockerfile \
|
||||||
--tag $(DOCKER_IMAGE):$(VERSION) \
|
--tag $(DOCKER_IMAGE):$(VERSION) \
|
||||||
--push .
|
--push .
|
||||||
@@ -162,3 +167,4 @@ debian-packages: clean
|
|||||||
$(MAKE) debian DOCKER_PLATFORM=amd64
|
$(MAKE) debian DOCKER_PLATFORM=amd64
|
||||||
$(MAKE) debian DOCKER_PLATFORM=arm64
|
$(MAKE) debian DOCKER_PLATFORM=arm64
|
||||||
$(MAKE) debian DOCKER_PLATFORM=arm/v7
|
$(MAKE) debian DOCKER_PLATFORM=arm/v7
|
||||||
|
$(MAKE) debian DOCKER_PLATFORM=riscv64
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ Features
|
|||||||
- Compatible only with modern browsers.
|
- Compatible only with modern browsers.
|
||||||
- Adheres to the [Twelve-Factor App](https://12factor.net/) methodology.
|
- Adheres to the [Twelve-Factor App](https://12factor.net/) methodology.
|
||||||
- Provides official Debian/RPM packages and pre-built binaries.
|
- Provides official Debian/RPM packages and pre-built binaries.
|
||||||
- Publishes a Docker image to Docker Hub, GitHub Registry, and Quay.io Registry, with ARM architecture support.
|
- Publishes a Docker image to Docker Hub, GitHub Registry, and Quay.io Registry, with ARM and RISC-V architecture support.
|
||||||
- Uses a limited amount of third-party go dependencies
|
- Uses a limited amount of third-party go dependencies
|
||||||
- Has a comprehensive testsuite, with both unit tests and integration tests.
|
- Has a comprehensive testsuite, with both unit tests and integration tests.
|
||||||
- Only uses a couple of MB of memory and a negligible amount of CPU, even with several hundreds of feeds.
|
- Only uses a couple of MB of memory and a negligible amount of CPU, even with several hundreds of feeds.
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ echo "PKG_DATE=$PKG_DATE"
|
|||||||
|
|
||||||
cd /src
|
cd /src
|
||||||
|
|
||||||
if [ "$PKG_ARCH" = "armhf" ]; then
|
if [ "$PKG_ARCH" = "armhf" ] || [ "$PKG_ARCH" = "riscv64" ]; then
|
||||||
make miniflux-no-pie
|
make miniflux-no-pie
|
||||||
else
|
else
|
||||||
CGO_ENABLED=0 make miniflux
|
CGO_ENABLED=0 make miniflux
|
||||||
|
|||||||
Reference in New Issue
Block a user