Jump to content

Modular Services

From Official NixOS Wiki
Revision as of 01:46, 14 July 2026 by Eveeifyeve (talk | contribs) (Added some information to wiki)
⚠︎
Warning: Work in progress

Modular Services are a new experimental module system support in Nixpkgs, that aims to expand the module systems (Eg. NixOS, home-manager, nix-darwin, etc) ecosystem with modularity and portability. Modular services is designed to integrate/compose with other modules systems such as NixOS.

Difference between Traditional Module Systems (such as NixOS) vs Modular Services

Modular services are built for composability, re-usability, are not defined in sets of options, portable. Where as traditional modules are the opposite.

How to use

  • System:
  system.services.<name> = {
    # Usage inside of the traditional module system like NixOS...
    imports = [ pkgs.example.services.default ];
    example.allowAll = false;
  };
  • User:
⚠︎
Warning: Not all module systems support this, like for example NixOS.
  system.user.services.<name> = {
    # Usage inside of the traditional module system like NixOS...
    imports = [ pkgs.example.services.default ];
    example.allowAll = false;
  };


References