Skip to content

finix-community/finix

Repository files navigation

finix

Built with Nix Discord

finix - a daily-drivable 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:

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:

  • with finit instead of systemd as the init system
  • with seatd instead of elogind as the seat manager
  • with mdevd instead of eudev as the device manager
  • using niri as my wayland compositor

niri-desktop-screenshot

finix initially ran:

  • in an incus container
  • in a nspawn container
  • on virtualbox
  • with x11

None of the above methods have been attempted in some time.

Installation

finix does not yet have a disk image available to download - installation will need to take place from a standard NixOS image, which can be downloaded here. You may download and burn either the minimal image or the graphical image and the steps will remain the same.

For an installation guide, please see one of the following repositories on Codeberg. Credits to @xZecora for writing these.

See also

About

A daily-drivable experimental os, featuring finit as pid 1, to explore the NixOS design space

Resources

License

Stars

Watchers

Forks

Contributors