# Feature-flag option declarations shared by every NixOS host (imported via # baseModules in flake.nix). Declaring the flags here -- rather than inside the # module that implements them -- means a host can read or set a flag without # importing the (often large) implementation module. In particular, # features.swayDesktop.enable is read by lyrathorpe/user.nix on every host, but a # headless host (e.g. the Pi) must be able to leave it at its default without # pulling in lyrathorpe/swaywm.nix. The implementation lives in swaywm.nix, # gated on this flag. { lib, ... }: { options.features.swayDesktop.enable = lib.mkEnableOption "the Sway desktop"; }