{
  config,
  pkgs,
  lib,
  flakes,
  ...
}: {
  imports = [
    flakes.home-manager.nixosModules.home-manager
    flakes.impermanence.nixosModule
    ./hardware-configuration.nix
  ];

  local.sys = {
    baseline.enable = true;

    yubikey.enable = true;
    audio.enable = true;
    graphics.enable = true;
    virtualisation.enable = true;
    androidSupport.enable = true;
    steam.enable = true;
    gtklock.enable = true;
    borgsync = {
      enable = true;
      paths = [
        "/home/fabian/nix"
        "/home/fabian/safe"
        "/xtern/backup"
      ];
      repoName = "posixlycorrect";
    };

    users = {
      fabian = {
        enable = true;
        unixId = 1002;
      };
      vanessa.enable = true;
    };
  };

  local.sway.enable = true;
  local.trivionomiconMotd.enable = true;

  networking = {
    hostName = "posixlycorrect";
    networkmanager.enable = true;
    hostId = "0414a727";

    useDHCP = false; # The global useDHCP flag is deprecated, therefore explicitly set to false here.
    interfaces.enp7s0.useDHCP = true; # Per-interface useDHCP will be mandatory in the future, so this generated config
    interfaces.wlp6s0.useDHCP = true; # replicates the default behaviour.
  };

  boot = {
    loader = {
      systemd-boot.enable = true;
      efi.canTouchEfiVariables = true;
    };
    tmp.useTmpfs = true;
    supportedFilesystems = ["zfs"];
    zfs = {
      forceImportRoot = false;
      useKeyringForCredentials = true;
    };
  };

  time.timeZone = "America/Costa_Rica";
}
