aboutsummaryrefslogblamecommitdiffstats
path: root/builds.sr.ht/compatibility.md
blob: 4633da25515833bb8ce08fe1c44424aad70845aa (plain) (tree)
1
2
3
4
5
6
7
8



                                        

                                                                                

                                                                            


                                                                           



                                                                              

                     





                                                                               



                                                                              


                                          

         
                          







                                                                      



                      







                                                                                                         








                                                                                                     
                         

                                                                      
                                      

















                                                                                                         
                     
         



                                                                                                     





























                                                                                                         





















                                                                               



                                          
        



                                                                      

         



                                                   
         






                                                           
         


          










                                                                              



                                          
        

                                                                      

                                                             
           

         



                                                   
         







                                                                                                       
         












                                                                                                          
        

                                                                      

                                                              
           

         



                                                   
         







                                                                                                       
         












                                                                                                          
        

                                                                      

                                                               
           

         



                                                   
         


                              
                                                      


                                              
         




                                                           
         










                                                                                                          















                                                                                




























                                                                                                         
                                                                           



















                                                          



                                          
        
                           
                                                                      

                                                              
           

         



                                                   
         






                                                                                                         
                      










                                                                                                           
                           
                                                                      
                                        


























                                                                                                           
                              
                                                                      
                                           














                                                                                                         
                     
         






                                                                                                           







                                                                

        

                                          
        
                          

                                                                      
                                       
           

         



                                                   
         









                                                                                                         
         




                                          
        



                                                                      

         



                                                   
         









                                                                                                         
         

          


            
                                                                          














                                                                                
                                   
                                                                      


                                                            














                                                                                                       
                    





























                                                                                                         
                     









                                                                                                         
                                    
                                                                      


                                                             














                                                                                                       






























                                                                                                         





















                                                                                                         
---
title: builds.sr.ht compatibility matrix
---

If you have any special requests, please [send an
email](mailto:~sircmpwn/sr.ht-discuss@lists.sr.ht). 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

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>Alpine Edge</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: alpine/edge</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><code>arch: aarch64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: armhf</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: ppc64el</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: s390x</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr class="table-primary">
      <td><code>arch: x86_64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>daily</td>
    </tr>
    <tr><td><code>arch: x86</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
  </tbody>
</table>

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>Alpine 3.9</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: alpine/latest</code> <strong>or</strong>
        <code>image: alpine/3.9</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><code>arch: aarch64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: armhf</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: ppc64el</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: s390x</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr class="table-primary">
      <td><code>arch: x86_64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>weekly</td>
    </tr>
    <tr><td><code>arch: x86</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
  </tbody>
</table>

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>Alpine 3.8</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: alpine/3.8</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><code>arch: aarch64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: armhf</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: ppc64el</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: s390x</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr class="table-primary">
      <td><code>arch: x86_64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>monthly</td>
    </tr>
    <tr><td><code>arch: x86</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
  </tbody>
</table>

**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:

```yaml
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

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>Arch Linux</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: archlinux</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr class="table-primary">
      <td><code>arch: x86_64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>daily</td>
    </tr>
  </tbody>
</table>

**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

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>Debian Stretch (stable)</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: debian/stable</code> <strong>or</strong>
        <code>image: debian/stretch</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><code>arch: arm64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr class="table-primary">
      <td><code>arch: amd64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>weekly</td>
    </tr>
    <tr><td><code>arch: armel</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: armhl</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: i386</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: mips</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: mips64el</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: mipsel</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: ppc64el</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: s390x</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
  </tbody>
</table>

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>Debian Buster (testing)</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: debian/testing</code> <strong>or</strong>
        <code>image: debian/buster</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><code>arch: arm64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr class="table-primary">
      <td><code>arch: amd64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>daily</td>
    </tr>
    <tr><td><code>arch: armel</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: armhl</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: i386</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: mips</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: mips64el</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: mipsel</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: ppc64el</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: s390x</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
  </tbody>
</table>

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>Debian Sid (unstable)</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: debian/unstable</code> <strong>or</strong>
        <code>image: debian/sid</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr class="table-success">
      <td><code>arch: arm64</code> (experimental)</td>
      <td style="text-align: center;">✓</td>
      <td style="text-align: center;">✗</td>
      <td>manually</td>
    </tr>
    <tr class="table-primary">
      <td><code>arch: amd64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>daily</td>
    </tr>
    <tr><td><code>arch: armel</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: armhl</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: i386</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: mips</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: mips64el</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: mipsel</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: ppc64el</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: s390x</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
  </tbody>
</table>

**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:

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

## Fedora

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>Fedora 29</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: fedora/latest</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><code>arch: aarch64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: armhfp</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr class="table-primary">
      <td><code>arch: x86_64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>weekly</td>
    </tr>
  </tbody>
</table>

**Note**: Fedora support is a work-in-progress. As such, both Fedora 28 and
Rawhide are currently unavailable.

**packages**

The packages array is installed with `dnf install`.

**repositories**

Given the following list of repositories in your manifest:

```yml
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

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>FreeBSD 12.x</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: freebsd/latest</code> <strong>or</strong>
        <code>image: freebsd/12.x</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><code>arch: aarch64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr class="table-primary">
      <td><code>arch: amd64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>monthly</td>
    </tr>
    <tr><td><code>arch: i386</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: powerpc</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: powerpc64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: sparc64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
  </tbody>
</table>

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>FreeBSD 11.x</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: freebsd/11.x</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><code>arch: aarch64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr class="table-primary">
      <td><code>arch: amd64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>monthly</td>
    </tr>
    <tr><td><code>arch: i386</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: powerpc</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: powerpc64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: sparc64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
  </tbody>
</table>

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>FreeBSD CURRENT</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: freebsd/current</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><code>arch: aarch64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr class="table-primary">
      <td><code>arch: amd64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>weekly</td>
    </tr>
    <tr><td><code>arch: i386</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: powerpc</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: powerpc64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: sparc64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
  </tbody>
</table>

**packages**

The packages array is installed with `pkg install`.

**repositories**

Custom package repositories are not supported on FreeBSD builds.

## NixOS

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>NixOS 19.03</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: nixos/latest</code> <strong>or</strong>
        <code>image: nixos/19.03</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><code>arch: aarch64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: armv6</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: armv7</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr class="table-primary">
      <td><code>arch: x86_64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>weekly</td>
    </tr>
  </tbody>
</table>

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>NixOS unstable</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: nixos/unstable</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><code>arch: aarch64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: armv6</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: armv7</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr class="table-primary">
      <td><code>arch: x86_64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>daily</td>
    </tr>
  </tbody>
</table>

**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.

## Ubuntu

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>Ubuntu Disco (19.04)</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: ubuntu/next</code> <strong>or</strong>
        <code>image: ubuntu/disco</code> <strong>or</strong>
        <code>image: ubuntu/19.04</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><code>arch: arm64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr class="table-primary">
      <td><code>arch: amd64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>daily</td>
    </tr>
    <tr><td><code>arch: i386</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: ppc64el</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: s390x</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
  </tbody>
</table>

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>Ubuntu Cosmic (18.10)</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: ubuntu/latest</code> <strong>or</strong>
        <code>image: ubuntu/cosmic</code> <strong>or</strong>
        <code>image: ubuntu/18.10</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><code>arch: arm64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr class="table-primary">
      <td><code>arch: amd64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>weekly</td>
    </tr>
    <tr><td><code>arch: i386</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: ppc64el</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: s390x</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
  </tbody>
</table>

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>Ubuntu Bionic (18.04)</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: ubuntu/lts</code> <strong>or</strong>
        <code>image: ubuntu/bionic</code> <strong>or</strong>
        <code>image: ubuntu/18.04</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><code>arch: arm64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr class="table-primary">
      <td><code>arch: amd64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>weekly</td>
    </tr>
    <tr><td><code>arch: i386</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: ppc64el</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: s390x</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
  </tbody>
</table>

<table class="table table-sm table-hover">
  <thead>
    <tr>
      <th>Ubuntu Xenial (16.04)</th>
      <th colspan="3" style="font-weight: normal; text-align: center">
        <code>image: ubuntu/xenial</code> <strong>or</strong>
        <code>image: ubuntu/16.04</code>
      </th>
    </tr>
    <tr>
      <th>arch</th>
      <th style="text-align: center">supported</th>
      <th style="text-align: center">native</th>
      <th>updated</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><code>arch: arm64</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr class="table-primary">
      <td><code>arch: amd64</code> (default)</td>
      <td style="text-align: center; color: green">✓</td>
      <td style="text-align: center; color: green">✓</td>
      <td>monthly</td>
    </tr>
    <tr><td><code>arch: i386</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: ppc64el</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
    <tr><td><code>arch: s390x</code></td><td style="text-align: center">✗</td><td></td><td></td></tr>
  </tbody>
</table>

**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:

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