finix- an experimental os, featuring finit as pid 1, to explore the NixOS design space
While exploring the NixOS design space I had several topics in mind:
- NixOS evaluation speed regression
- NixOS always imports all modules
- modular services
- decoupling services
- NixNG
- sixos
- nixbsd
Now that finix is running on my laptop I have a working base for experimentation. More to come.
An example of defining a finit service in nix:
{ config, pkgs, lib, ... }:
{
finit.services.network-manager = {
description = "network manager service";
runlevels = "2345";
conditions = "service/syslogd/ready";
command = "${pkgs.networkmanager}/bin/NetworkManager -n";
};
}
finix is currently running on my spare primary laptop:
- without the excellent
systemdinit system - with
seatdinstead ofelogind - using niri as my
waylandcompositor
finix initially ran:
- in an
incuscontainer - in a
nspawncontainer - on
virtualbox - with
x11
None of the above methods have been attempted in some time.