Building instructions #9

Closed
opened 2025-09-08 19:12:39 +00:00 by m724 · 0 comments
Owner

You should follow the official Forgejo Contributor Guide. However it lacks a few useful things, below you can find.

It's recommended to use the devcontainer.

Building

To build, the official instructions generally suffice

Build a single image for multiple architectures:

podman build --platform linux/amd64,linux/arm64 --manifest user/repo:tag .

Replace the tag. You can add more architectures, if you wish.

Live reload

TAGS='sqlite sqlite_unlock_notify' make watch

Merge

Make sure you checked out the branch to merge to.

git remote add upstream https://codeberg.org/forgejo/forgejo.git
git fetch --no-tags upstream
git merge upstream/$BRANCH

Tag a release

git tag $TAG
git push origin tag $TAG

Build & release to hub

RELEASE_VERSION=13.0.4
podman build --build-arg RELEASE_VERSION=$RELEASE_VERSION --platform linux/amd64,linux/arm64 --manifest docker.io/git724/forgejo:$RELEASE_VERSION .
podman manifest push docker.io/git724/forgejo:$RELEASE_VERSION
podman manifest push git724/forgejo:$RELEASE_VERSION docker.io/git724/forgejo:latest

Binary:

TAGS="bindata timetzdata sqlite sqlite_unlock_notify" make build
make frontend
You should follow the official [*Forgejo Contributor Guide*](https://forgejo.org/docs/next/contributor). However it lacks a few useful things, below you can find. It's recommended to use the devcontainer. ### Building To build, [the official instructions generally suffice](https://forgejo.org/docs/next/contributor/from-source/) Build a single image for multiple architectures: ```bash podman build --platform linux/amd64,linux/arm64 --manifest user/repo:tag . ``` Replace the tag. You can add more architectures, if you wish. ### Live reload ```bash TAGS='sqlite sqlite_unlock_notify' make watch ``` ### Merge Make sure you checked out the branch to merge to. ```bash git remote add upstream https://codeberg.org/forgejo/forgejo.git git fetch --no-tags upstream git merge upstream/$BRANCH ``` ### Tag a release ```bash git tag $TAG git push origin tag $TAG ``` ### Build & release to hub ```bash RELEASE_VERSION=13.0.4 podman build --build-arg RELEASE_VERSION=$RELEASE_VERSION --platform linux/amd64,linux/arm64 --manifest docker.io/git724/forgejo:$RELEASE_VERSION . podman manifest push docker.io/git724/forgejo:$RELEASE_VERSION podman manifest push git724/forgejo:$RELEASE_VERSION docker.io/git724/forgejo:latest ``` Binary: ```bash TAGS="bindata timetzdata sqlite sqlite_unlock_notify" make build make frontend ```
m724 closed this issue 2025-09-08 19:12:50 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
git724/forgejo#9
No description provided.