{ pkgs, lib, config, ... }: let gui = config.custom.gui; # Clipboard wrapper scripts clip = (import ../../scripts/clip.nix { inherit pkgs; }); in with lib; { imports = [ ./wm ./pulseaudio.nix ./statusbar.nix ./terminal.nix ./theme.nix ]; options.custom.gui = { # Use a nested enable option, to allow extension of this option # namespace later on. enable = mkEnableOption "gui applications and window manager"; }; config = mkIf (gui.enable) { # Import some applications I use on all my graphical systems users.users."riley".packages = (with pkgs; [ # My browser google-chrome # Telegram client tdesktop ]) ++ (with clip; [ c p ]); # Add clipboard scripts }; }