Arctic Linux

documentation
                   .xx
                   xxxx
                  xxxxxx
                 xxxxxxx
                xxxxxxxxx
               .xx ;xxxxxx
               xx   xxxxxxx
              xx+    xxxxxx+
             xxx      xxxxxx
            xxx        xxxxxx
           .xx         ;xxxxxx
           xx           xxxxxxx
          xx+            xxxxxx;
         xxxxxxxxxxxxxxxxxxxxxxx
        xxx                xxxxxx
       .xx                 +xxxxxx
       xx                   xxxxxxx
      xx+                    xxxxxx:
     xxx                      xxxxxx
    xxxx                      xxxxxxx
 xxxxxxxxx;:              :xxxxxxxxxxxxx:

What Arctic is

Arctic is a Linux distribution built from source, managed declaratively. The machine is described in a file; a command makes the machine match the file. If an edit turns out to be wrong, you roll back to a numbered generation — from the shell, or from the boot menu if it will not boot.

It is not a fork of anything at the distribution level. The package manager (alpm), the installer, the init scripts and the ports tree were all written for it, specifically, from nothing. The kernel is a genuine fork of Linux LTS with the ZEN patchset on top, maintained as its own project.

Nothing here is a toy re-skin of Arch or Gentoo tooling wearing a different name. The install flow, the package format, the declarative layer and the boot-time generation switching are Arctic's own design, built to solve problems that came up while actually running this system — most of the "why" notes throughout these docs point at a real bug that was found and fixed, not a hypothetical.

The shape of it

/etc/arctic/install.conf what to install, read once by arctic-strap
/etc/arctic/system.conf what the machine is, read by every arctic-rebuild
alpm packages: install, remove, build from source, snapshot, roll back
arctic-rebuild make the system match system.conf
arctic rollback go back to an earlier generation
arctic-shell a throwaway environment with packages in it, gone when you exit
/run/arctic/boot.log what actually happened during the last boot, always

Start here

Install covers getting it onto a machine. Declarative configuration covers everything after that, and is the part worth reading properly — it is what makes Arctic different from an ordinary source distribution. If something is not working, troubleshooting covers the real issues found and fixed while building this, with the actual root cause of each one rather than a generic checklist.

More: install · declarative configuration · generations and rollback · init systems · kernels · packages (alpm) · desktops and audio · networking · ephemeral shells · musl · building from source · troubleshooting · install.conf reference