{ lib, ... }: let username = "henrov"; waybarAssets = ../../../assets/system/conf/waybar; waybarFiles = builtins.readDir waybarAssets; waybarConfs = lib.genAttrs (builtins.attrNames waybarFiles) (name: { src = "${waybarAssets}/${name}"; }); enableWaybar = true; in { # Declare a top-level module option options.enableWaybar = lib.mkEnableOption "Enable Waybar status bar"; # All actual module configuration wrapped safely config = lib.mkIf enableWaybar { waybar = { enable = true; # symbolic enable flag user = username; assetsDir = waybarAssets; files = waybarConfs; # contains "config" and "style.css" keys }; }; }