Modulix: Module system for the configuration of flake-based single user NixOS and Home Manager systems

Modulix provides a module system tailored for the configuration of flake-based single user NixOS and Home Manager systems. It also provides a flake generator that allows to decentralize flake inputs. Modulix grew out of my fork of FlafyDev’s Combined Manager project. You can read about the differences between the two projects here.

The main advantage of Modulix is the elimination of the following separations:

  • Splitting your configuration into NixOS and Home Manager modules, which are typically put into different files, even though they may be semantically related.
  • Putting all flake inputs into flake.nix, even though they may only be relevant to one module.

Modulix provides a module system consisting of modules that can add flake inputs, import NixOS and Home Manager modules, and define NixOS and Home Manager options.

Another advantage of not using the NixOS or Home Manager module system directly is the freedom you gain when declaring your own options, because you don’t have to worry about your options colliding with any NixOS or Home Manager options.

You can read more about this project on github.

Give it a try and see how it can clean up your configurations.

3 Likes