If you have any special requests, please send an email. Only architectures supported by each Linux distribution upstream are listed, and named after the upstream port (e.g. Debian uses amd64 while Alpine uses x86_64).

Note: support for multi-arch builds is underway, but not yet available.

The native column is checked if these builds run on native hardware for that architecture, if unchecked the builds are run on emulated hardware and may suffer from poor performance.

Support lifecycle

The support lifecycle for each build image follows the upstream support cycle. Each supported upstream release is generally offered on sr.ht, as well as the bleeding edge or development releases if applicable. No sooner than two weeks after a release becomes unsupported upstream, it will be unsupported on builds.sr.ht - and anyone who's submitted recent builds using those images will get an email warning them of the impending breakage.

It's recommended that you use aliases like alpine/latest or debian/testing rather than using a specific release in your build manifests.

Alpine Linux

Maintainer: Drew DeVault sir@cmpwn.com

Alpine Edge image: alpine/edge
arch supported native updated
arch: aarch64
arch: armhf
arch: ppc64el
arch: s390x
arch: x86_64 (default) daily
arch: x86
Alpine 3.10 image: alpine/latest or image: alpine/3.10
arch supported native updated
arch: aarch64
arch: armhf
arch: ppc64el
arch: s390x
arch: x86_64 (default) weekly
arch: x86
Alpine 3.9 image: alpine/3.9
arch supported native updated
arch: aarch64
arch: armhf
arch: ppc64el
arch: s390x
arch: x86_64 (default) weekly
arch: x86
Alpine 3.8 image: alpine/3.8
arch supported native updated
arch: aarch64
arch: armhf
arch: ppc64el
arch: s390x
arch: x86_64 (default) monthly
arch: x86

packages

The packages array is installed with apk add.

repositories

To add custom apk repositories, use repo-url key-url key-name (separated with spaces), where repo-url is the URL of the package repository and key-url is a URL from where the signing key may be downloaded, and key-name is the name of the file written to /etc/apk/keys/. If the name of the repo is prefixed with an @, it will use that prefix in apk.

Example:

repositories:
  sr.ht: >
    https://mirror.sr.ht/alpine/sr.ht/
    https://mirror.sr.ht/alpine/sr.ht/alpine%40sr.ht.rsa.pub
    alpine@sr.ht.rsa.pub

Arch Linux

Maintainer: Drew DeVault sir@cmpwn.com

Arch Linux image: archlinux
arch supported native updated
arch: x86_64 (default) daily

packages

The package array is installed with yay -Syu (AUR packages are transparently installed).

repositories

To add custom pacman repositories, use url#key-id, where url is the URL of the package repository and key-id is the ID of the published PGP key the packages are signed with.

Debian

Maintainer: Drew DeVault sir@cmpwn.com

Debian Buster (stable) image: debian/stable or image: debian/buster
arch supported native updated
arch: arm64
arch: amd64 (default) weekly
arch: armel
arch: armhl
arch: i386
arch: mips
arch: mips64el
arch: mipsel
arch: ppc64el
arch: s390x
Debian bullseye (testing) image: debian/testing or image: debian/bullseye
arch supported native updated
arch: arm64
arch: amd64 (default) daily
arch: armel
arch: armhl
arch: i386
arch: mips
arch: mips64el
arch: mipsel
arch: ppc64el
arch: s390x
Debian Sid (unstable) image: debian/unstable or image: debian/sid
arch supported native updated
arch: arm64 (experimental) manually
arch: amd64 (default) daily
arch: armel
arch: armhl
arch: i386
arch: mips
arch: mips64el
arch: mipsel
arch: ppc64el
arch: s390x

packages

The packages array is installed with apt-get install.

repositories

To add custom repositories, specify url distro component key-id (separated by spaces), where url is the URL of the package repository, distro is e.g. jessie or stretch, component is e.g. main or non-free, and key-id is an optional PGP key ID to add to apt-key. Example:

repositories:
  sr.ht: https://mirror.sr.ht/debian/sr.ht/ stretch main DEADBEEFCAFEF00D

Fedora

Maintainer: Timothée Floure timothee.floure@posteo.net

Fedora Rawhide image: fedora/rawhide or image: fedora/31
arch supported native updated
arch: aarch64
arch: armhfp
arch: x86_64 (default) daily
Fedora 30 image: fedora/latest or image: fedora/30
arch supported native updated
arch: aarch64
arch: armhfp
arch: x86_64 (default) weekly
Fedora 29 image: fedora/29
arch supported native updated
arch: aarch64
arch: armhfp
arch: x86_64 (default) monthly

packages

The packages array is installed with dnf install.

repositories

Given the following list of repositories in your manifest:

repositories:
  example: https://example.org

The following commands will be used to configure it:

dnf config-manager --add-repo https://example.org
dnf config-manager --set-enabled example

FreeBSD

Maintainer: Simon Ser contact@emersion.fr

FreeBSD 12.x image: freebsd/latest or image: freebsd/12.x
arch supported native updated
arch: aarch64
arch: amd64 (default) monthly
arch: i386
arch: powerpc
arch: powerpc64
arch: sparc64
FreeBSD 11.x image: freebsd/11.x
arch supported native updated
arch: aarch64
arch: amd64 (default) monthly
arch: i386
arch: powerpc
arch: powerpc64
arch: sparc64
FreeBSD CURRENT image: freebsd/current
arch supported native updated
arch: aarch64
arch: amd64 (default) weekly
arch: i386
arch: powerpc
arch: powerpc64
arch: sparc64

packages

The packages array is installed with pkg install.

repositories

Custom package repositories are not supported on FreeBSD builds.

NixOS

Maintainer: Francesco Gazzetta fgaz@fgaz.me

NixOS 19.09 image: nixos/latest or image: nixos/19.09
arch supported native updated
arch: aarch64
arch: armv6
arch: armv7
arch: x86_64 (default) weekly
NixOS unstable image: nixos/unstable
arch supported native updated
arch: aarch64
arch: armv6
arch: armv7
arch: x86_64 (default) daily

packages

The packages array is installed with nix-env -iA. Since it's possible to specify multiple channels, you must provide the full selection path, for example nixpkgs.hello. Note that the nixpkgs channel is not added by default.

repositories

To add custom channels, use repo-name: channel-url. The repo name is relevant, since repo-name: repo-url will execute the commands nix-channel --add repo-url repo-name and nix-channel --update repo-name. Given the nature of nix, no channels are added by default.

OpenBSD

Maintainer: Jarkko Oranen oranenj@iki.fi

OpenBSD 6.5 image: openbsd/latest or image: openbsd/6.5
arch supported native updated
arch: alpha
arch: amd64 (default) as required
arch: arm64
arch: armv7
arch: hppa
arch: i386
arch: landisk
arch: loongson
arch: luna88k
arch: macppc
arch: octeon
arch: sgi
arch: sparc64

notes

Currently, the image corresponds to OpenBSD 6.5 as it was initially released, not the -stable branch with errata applied.

packages

The packages array is installed with pkg_add.

repositories

Custom package repositories are not supported on OpenBSD builds.

Ubuntu

Maintainer: New maintainer wanted

Ubuntu Eoan (19.10) image: ubuntu/latest or image: ubuntu/eoan or image: ubuntu/19.10
arch supported native updated
arch: arm64
arch: amd64 (default) daily
arch: i386
arch: ppc64el
arch: s390x
Ubuntu Bionic (18.04) image: ubuntu/lts or image: ubuntu/bionic or image: ubuntu/18.04
arch supported native updated
arch: arm64
arch: amd64 (default) weekly
arch: i386
arch: ppc64el
arch: s390x
Ubuntu Disco (19.04) image: ubuntu/disco or image: ubuntu/19.04
arch supported native updated
arch: arm64
arch: amd64 (default) daily
arch: i386
arch: ppc64el
arch: s390x

packages

The packages array is installed with apt-get install.

repositories

To add custom repositories, specify url distro component key-id (separated by spaces), where url is the URL of the package repository, distro is e.g. bionic or cosmic, component is e.g. main or non-free, and key-id is an optional PGP key ID to add to apt-key. Example:

repositories:
  sr.ht: https://mirror.sr.ht/debian/sr.ht/ cosmic main DEADBEEFCAFEF00D

About this wiki

commit 3079cd4fe89637397acfa435274f2670a21fd863
Author: Drew DeVault <sir@cmpwn.com>
Date:   2019-11-12T14:30:34+00:00

Remove Ubuntu Xenial from compat list
Clone this wiki
https://git.sr.ht/~sircmpwn/sr.ht-docs (read-only)
git@git.sr.ht:~sircmpwn/sr.ht-docs (read/write)