Packages / forgejo / Ubuntu 22.04

Install guide · Ubuntu 22.04 (jammy)printed 29 Oct 2026, 02:19 UTC

Install Forgejo 17 on Ubuntu 22.04

Ubuntu 22.04 doesn't ship Forgejo. The current release is 17.0.1. freshdeb builds it for jammy from upstream's release with packaging in Debian's style, so it updates with apt upgrade like the rest of the system.

Ubuntu 22.04 ships
nothing
main
17.0.1follows every upstream release, minors and majors included. Currently 17.0.1.
lts
15.0.11stays on 15.x, minor releases included, until it moves to a newer line. Currently 15.0.11, upstream support until Jul 2027.
Built for
amd64 and arm64, natively

1Trust the signing key (once per machine)

sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.freshdeb.com/freshdeb-archive-keyring.gpg \
  | sudo tee /etc/apt/keyrings/freshdeb-archive-keyring.gpg >/dev/null

Fingerprint 3BBD F03A 9C0B F890 F8CA 9510 7595 CC55 468F 3161. How to verify.

2Add the source for jammy

sudo tee /etc/apt/sources.list.d/freshdeb-forgejo.sources >/dev/null <<EOF
Types: deb
URIs: https://deb.freshdeb.com/forgejo
Suites: jammy
Components: main
Signed-By: /etc/apt/keyrings/freshdeb-archive-keyring.gpg
EOF

main follows every upstream release, minors and majors included. Currently 17.0.1. Other components: lts, listed with the versions.

3Install

sudo apt update && sudo apt install forgejo
apt policy forgejo   # expect 17.0.1-2+freshdeb~ubuntu22.04

How it's packaged.

Before you install

Neither Debian nor Ubuntu ship Forgejo: the packaging is ours, written the way Debian would, and there's nothing to replace.

First
The service isn't enabled on install: until the install wizard is done, the first visitor to port 3000 configures the instance and becomes its administrator. Run systemctl enable --now forgejo when you're ready to complete it, then make /etc/forgejo read-only for Forgejo, as upstream's guide says. A new major migrates the database on its first start, with no way back: take a forgejo dump before one. The package's NEWS entry says how.

Why a package

Upstream's guide installs its binary by hand, or runs the container image. This package is that binary, laid out the way the guide describes, with the git user and upstream's systemd unit, and apt upgrade brings each release. lts keeps you on the long-term support release.

Forgejo elsewhere

Maintained by Blendbyte

Blendbyte builds cloud infrastructure, web apps, and developer tools. We've been shipping software to production for 20+ years.

These packages run in our own stack, which is why we keep them maintained. Issues and PRs get read. Good ones get merged.

Also from Blendbytenginx-modules.com: pre-built nginx dynamic modules (Brotli, GeoIP2, ModSecurity and more) for nginx.org's nginx, on the same Debian and Ubuntu releases.

Tindra: self-hosted error tracking and monitoring that works with Sentry SDKs. Packaged here, like everything else.