{ pkgs, lib, config, ... }: let cfg = config.custom.gui; in { options.custom.gui = { enable = lib.mkEnableOption "Nix-managed GUI"; }; imports = [ ./sway.nix ./term.nix ./waybar.nix ]; config = lib.mkIf (cfg.enable) { fonts.fontconfig.enable = true; home.packages = with pkgs; [ # Fonts fira-code # GUI programs pavucontrol # We want `pactl` from the `pulseaudio` package pulseaudio ]; }; }