{
  config,
  lib,
  pkgs,
  ...
}:
{
  imports = [
    ./configuration.nix
  ];

  nix.settings.trusted-users = [ "plank" ];
  programs.nh.flake = "/home/plank/.nix";

  boot.kernelParams = [
    "mitigations=off"
    "quiet"
    "loglevel=3"
    "systemd.show_status=auto"
    "rd.udev.log_level=3"
    "vt.global_cursor_default=0"
  ];
  boot.initrd.availableKernelModules = [
    "xhci_pci"
    "nvme"
    "usb_storage"
    "sd_mod"
    "rtsx_pci_sdmmc"
  ];
  boot.initrd.kernelModules = [ "dm-snapshot" ];
  boot.kernelModules = [
    "iwlwifi"
    "kvm-intel"
  ];
  boot.kernelPackages = pkgs.linuxPackages;

  fileSystems."/boot" = {
    device = "/dev/disk/by-uuid/1C5C-8FF4";
    fsType = "vfat";
  };

  fileSystems."/" = {
    device = "/dev/disk/by-uuid/26389642-cf51-4c58-98e9-1fe491a11bb9";
    fsType = "ext4";
  };

  swapDevices = [
    { device = "/dev/disk/by-uuid/a732641d-1233-45a7-8614-53caed60f11b"; }
  ];

  boot.loader.systemd-boot.configurationLimit = 2;
  boot.loader.efi.canTouchEfiVariables = true;
  # boot.plymouth.enable = true;

  networking.useDHCP = lib.mkDefault true;
  hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
  powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
  services.power-profiles-daemon.enable = false;
  services.tlp.enable = true;

  environment.sessionVariables = {
    NIXOS_OZONE_WL = "1";
    ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE = "fg=5";
    EDITOR = "hx";
  };

  virtualisation = {
    podman = {
      enable = true;
      dockerCompat = true;
      defaultNetwork.settings.dns_enabled = true;
    };
  };

  services.xserver.videoDrivers = [ "i915" ];
  programs.xwayland.enable = true;

  xdg.portal = {
    enable = true;
    extraPortals = [
      pkgs.xdg-desktop-portal-gtk
    ];
  };

  environment.systemPackages = builtins.attrValues {
    inherit (pkgs)
      wl-clipboard
      wl-clipboard-x11
      xclip
      ;
  };

  networking.hostName = "adrift"; # Define your hostname.
  users.users.plank = {
    isNormalUser = true;
    extraGroups = [ "wheel" ]; # Enable ‘sudo’ for the user.
  };
}
