# Base system settings and options { pkgs, config, lib, ... }: let cfg = config.aux.system; in { options = { aux.system.packages = lib.mkOption { description = "Additional system packages to install. This is just a wrapper for environment.systemPackages."; type = lib.types.listOf lib.types.package; default = [ ]; example = lib.literalExpression "[ pkgs.firefox pkgs.thunderbird ]"; }; }; config = { # Set up the environment environment = { # Install base packages systemPackages = config.aux.system.packages ++ (with pkgs; [ bash dconf # Needed to fix an issue with Home-manager. See https://github.com/nix-community/home-manager/issues/3113 direnv git home-manager p7zip ]); }; services = { # Enable fwupd (firmware updater) fwupd.enable = true; # Enable trim on supported drives fstrim.enable = true; # Enable disk monitoring smartd = { enable = true; autodetect = true; }; }; }; }