1 # SPDX-License-Identifier: GPL-2.0-only
3 { config, options, pkgs, ... }:
7 <nixpkgs/nixos/modules/installer/cd-dvd/channel.nix>
8 <nixpkgs/nixos/modules/installer/cd-dvd/iso-image.nix>
11 system.stateVersion = "24.05";
14 makeEfiBootable = true;
15 makeUsbBootable = true;
16 isoName = "${config.isoImage.isoBaseName}-${config.system.nixos.label}-${pkgs.stdenv.hostPlatform.system}.iso";
23 # Tell the Nix evaluator to garbage collect more aggressively.
24 # This is desirable in memory-constrained environments that don't
25 # (yet) have swap set up.
26 GC_INITIAL_HEAP_SIZE = "1M";
28 shellAliases.vim = "nvim";
33 "console=ttyS0,115200"
36 "spi_intel.writeable=1"
38 # pkgs.linuxPackages == lts
39 # pkgs.linuxPackages_latest == stable
40 kernelPackages = pkgs.linuxPackages;
41 extraModulePackages = with config.boot.kernelPackages; [
46 # Make programs more likely to work in low memory
47 # environments. The kernel's overcommit heustistics bite us
48 # fairly often, preventing processes from forking even if
49 # there is plenty of free memory.
50 kernel.sysctl."vm.overcommit_memory" = "1";
51 loader.grub.memtest86.enable = true;
57 console.packages = options.console.packages.default ++ [ pkgs.terminus_font ];
59 nixpkgs.config.allowUnfree = true;
61 cpu.intel.updateMicrocode = true;
62 cpu.amd.updateMicrocode = true;
63 enableAllFirmware = true;
72 udev.packages = with pkgs; [
77 settings.PermitRootLogin = "yes";
82 hostName = "devsystem";
83 networkmanager.enable = true;
86 security.sudo.wheelNeedsPassword = false;
91 root.initialHashedPassword = "";
95 extraGroups = [ "users" "wheel" "networkmanager" "uucp" "flashrom" ];
96 initialHashedPassword = "";
101 programs.flashrom.enable = true;
103 environment.systemPackages = with pkgs; [
173 uefitoolPackages.old-engine