NixithOS

nixpkgs 26.05 · s6 or dinit · x86_64

NixOS without systemd

The same nixpkgs packages and the same declarative configuration. s6-rc starts and supervises the system, or dinit, if you choose it; everything else stays as it is in NixOS.

The NixithOS mark: a hexagon between two forks, brackets on both sides, dashed axes

What changes

Only the init system and what is tied to it. Nothing is added on top of NixOS, and packages are not rebuilt: they come from the nixpkgs binary cache.

NixOSNixithOS
PID 1systemds6-svscan, or dinit
Servicessystemd unitss6-rc or dinit services; unitc translates the units of nixpkgs modules
Sessionssystemd-logindelogind
Rebuildingnixos-rebuild switchnixith switch, or part of it with --only
Boot loadersystemd-boot, GRUBsystemd-boot, GRUB, rEFInd, Limine
Packagesnixpkgsnixpkgs, unchanged
configuration.nixNixOS modulesthe same modules

nixpkgs modules still describe services as systemd.services.*. NixithOS builds s6-rc or dinit services out of those descriptions, so services.openssh.enable = true works as is. Which of the two runs the machine is one line, nixithos.init = "dinit";, or a step of the installer.

The nixith command

It takes the place of nixos-rebuild. It applies the whole configuration or a single branch of it.

$ sudo nixith switch --only services.openssh
$ nixith parts
system:  /nix/store/…-nixith-system-nixith-26.05
base:    /etc/nixith/configuration.nix
part 1:  services.openssh
         from /etc/nixith/configuration.nix
switch
build it and switch to it now
boot
use it from the next boot
test
switch to it without a boot entry
build
only build it
--only PATH
rebuild one part of the configuration
parts
what the running system was built from
generations
list the generations
install
install the system on a disk
generate-config
describe the hardware in hardware-configuration.nix

The installer

The image starts its installer by itself: a small program in the console, in English or Russian, with a screenshot of every choice, the way Calamares showed them. Seventeen short steps, and nothing is written to the disk until the summary is confirmed.

The installer's welcome screen: the NixithOS mark drawn in characters, the steps on the left, a choice of English or Russian
Welcome. The language comes first; the column on the left shows every step and where you are.
The Network step: a hidden Wi-Fi network with WPA Enterprise (802.1X), the method, the login and the password filled in, the optional fields below
Network. A cable connects by itself. A network is a form, not just a password: WPA2, WPA3, WEP or 802.1X with a login, hidden networks, a cable with the address, DNS and MAC by hand, DSL / PPPoE. The connection stays in the installed system.
The Time zone step with the search narrowed to Berlin
Time zone. Type a city to find it; the time there is shown below.
The User step filled in for Ada Lovelace
User. The login is made from your name (Cyrillic is transliterated); the same password can go to root.
The Desktop step with Parallax selected: its screenshot on the right, its description below
Desktop. A screenshot of the choice is next to the list, here and for the login screen, the shell and the boot loader. Parallax is on the image; the others are downloaded during the installation.
The Init system step with dinit selected, s6 above it, the description of dinit below
Init system. s6, which NixithOS was built on, or dinit. Both run the same configuration, with the same systemctl and logs; it can be changed later with a line and a reboot.
The Summary step listing every choice, dinit as the init system among them, and the disk to be erased
Summary. Every answer on one screen, and what will be erased.
The Install step under way: the stages, a slide about adding a desktop with a screenshot of the ly login screen, the last lines of the log
Install. The stages, and slides with tips and screenshots while it works (← → turn them, Tab shows the whole log); in QEMU with Parallax it took about 16 minutes.

Desktop

  • Parallax ours
  • GNOME 50
  • KDE Plasma
  • Hyprland
  • niri
  • dwl

Login

  • ly
  • greetd tuigreet
  • console

Shell

  • Bash
  • Zsh
  • fish
  • Nushell

Boot loader

  • systemd-boot UEFI
  • Limine UEFI
  • GRUB BIOS / UEFI
  • rEFInd UEFI

Kernel

  • Linux 6.18 LTS
  • Linux 7.3 newest
  • Linux 6.12 LTS
  • Linux 6.6 LTS
  • Zen
  • XanMod

Init

  • s6 s6-rc
  • dinit

Download

One image for UEFI and BIOS, 1.8 GB, released on 3 November 2026. Write it to a USB stick (or put it on Ventoy) and boot from it.

The checksum is in SHA256SUMS next to the image. The image also builds from the source with one command.

$ sha256sum -c SHA256SUMS
$ sudo dd if=nixithos-26.05-x86_64-linux.iso \
      of=/dev/sdX bs=4M status=progress
# or from the source:
$ nix-build -A iso

Tests

Every part of the init system is checked in a virtual machine, the way NixOS does it.

  • boot
  • units
  • switch
  • login
  • replace
  • elogind
  • user-services
  • bootloader
  • sandbox
  • timesync
  • module