{ config, inputs, lib, pkgs, this, ... }: with lib; let cfg = config.nixfiles.modules.profiles.headful; in { options.nixfiles.modules.profiles.headful.enable = mkEnableOption "headful profile" // { default = this.isHeadful; }; config = mkIf cfg.enable { nixfiles.modules = { profiles.dev.enable = true; alacritty.enable = mkDefault true; aria2.enable = true; chromium.enable = true; dwm.enable = mkDefault false; emacs.enable = true; firefox.enable = true; foot.enable = mkDefault true; kde.enable = mkDefault true; mpv.enable = true; nullmailer.enable = true; openssh.client.enable = true; password-store.enable = true; sound.enable = true; thunderbird.enable = true; vscode.enable = true; wayland.enable = mkDefault true; x11.enable = mkDefault true; zathura.enable = true; }; hm = { imports = [ inputs.nix-index-database.hmModules.nix-index ]; home = { file.".digrc".text = '' +answer +multiline +recurse ''; packages = with pkgs; [ element-desktop fd imv libreoffice-fresh mumble ripgrep sd telegram-desktop tldr tor-browser-bundle-bin vesktop ]; }; programs = { bash.shellAliases.open = "xdg-open"; nix-index-database.comma.enable = true; }; }; 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; }; }; consoleLogLevel = 3; }; hardware.graphics.enable = true; programs = { dconf.enable = true; iftop.enable = true; mtr.enable = true; }; services = { fwupd.enable = true; libinput.enable = true; psd.enable = true; upower.enable = true; }; time.timeZone = "Europe/Moscow"; environment.systemPackages = with pkgs; [ arping dnsutils inetutils ldns lm_sensors socat tcpdump usbutils ]; my.extraGroups = [ "audio" "input" "render" "video" ]; }; }