{ config, pkgs, lib, ... }: let type = config.device.type; in { options = { device = { type = lib.mkOption { default = "desktop"; description = "device preset: desktop, laptop, server"; }; }; }; config = { apps = { audio = { base.enable = (lib.mkIf (type == "desktop")) true; media.enable = true; editing.enable = true; }; video = { base.enable = true; media.enable = true; editing.enable = true; }; image = { base.enable = true; editing.enable = true; }; gaming = { steam.enable = true; }; terminal = { kitty = { enable = true; }; default = "kitty"; toys = true; }; }; desktop = { window-managers = { hyprland = { enable = true; }; niri = { enable = true; }; sway = { enable = false; }; }; shell = { noctalia = { enable = true; }; swww = { enable = false; }; walker = { enable = true; }; waybar = { enable = false; }; }; utilities = { grimblast = { enable = true; }; }; }; }; }