Sourcehut
Installation
Upstream only officially supports Alpine Linux 3.15.
To enable the package repository, add the following line to /etc/apk/repositories. It must be the first repository checked.
https://mirror.sr.ht/alpine/v3.15/sr.ht
The community package repository must be enabled. See here for more details.
Install the packager's key and update the package index.
wget -q -O /etc/apk/keys/[email protected] https://mirror.sr.ht/alpine/[email protected] apk update
Sourcehut is a modular ecosystem, with meta.sr.ht being the only mandatory package. For example, to run the git and mercurial services, use git.sr.ht and hg.sr.ht, respectively.
Community Packages
Eli Schwartz maintains an unofficial set of packages for Linux/ArchLinux.
Add the mirror to /etc/pacman.conf:
[sr.ht] Server = https://mirror.sr.ht/archlinux/sr.ht
Then install the packagers' keys:
sudo pacman-key --recv-keys C0AAFC1676BD998617C94C42DC59670F1EB0A189 sudo pacman-key --lsign-key C0AAFC1676BD998617C94C42DC59670F1EB0A189
Development Setup
TODO: copy from https://emersion.fr/blog/2021/setting-up-sr.ht-for-local-development/
Administration
Build Service
Anecdotally the build service is the most unreliable component of the Sourcehut ecosystem.
The master server runs the builds.sr.ht package and service. Each runner corresponds to a builds.sr.ht-worker service, which depends on the builds.sr.ht-worker and builds.sr.ht-images packages.
Upstream's production architecture thoroughly encapsulates the runners.