{ config, lib, pkgs, ... }: with lib; let cfg = config.nixfiles.modules.profiles.headful; in { config = mkIf cfg.enable { nixfiles.modules = { chromium.enable = true; firefox.enable = true; sound.enable = true; thunderbird.enable = true; nullmailer.enable = true; dwm.enable = mkDefault false; kde.enable = mkDefault true; xmonad.enable = mkDefault false; }; hm = { home.packages = with pkgs; [ calibre element-desktop imv mumble telegram-desktop tor-browser-bundle-bin ]; programs.bash.shellAliases.open = "xdg-open"; }; boot = { kernelPackages = mkDefault pkgs.linuxPackages_latest; kernelParams = [ # https://wiki.archlinux.org/title/improving_performance#Watchdogs "nowatchdog" "kernel.nmi_watchdog=0" # A security risk I'm willing to take for a reason[1]. # # [1]: https://www.phoronix.com/scan.php?page=article&item=spectre-meltdown-2&num=11 "mitigations=off" ]; loader = { efi.canTouchEfiVariables = true; systemd-boot = { enable = true; configurationLimit = 10; }; }; }; hardware.opengl = { enable = true; driSupport = true; }; programs = { dconf.enable = true; iftop.enable = true; mtr.enable = true; }; services = { upower.enable = true; psd.enable = true; }; environment.systemPackages = with pkgs; [lm_sensors]; my.extraGroups = [ "audio" "input" "render" "video" ]; }; }