{
  flakes,
  config,
  pkgs,
  lib,
  ...
}: {
  imports = [
    ./systemd
    ./isolation.nix
  ];

  nix.registry = {
    "system".to = {
      type = "path";
      path = "/home/fabian/nix";
    };

    "nixpkgs".flake = flakes.nixpkgs;
    "unstable".flake = flakes.unstable;
  };

  local = {
    baseline.enable = true;

    services = {
      zsh = {
        enable = true;
        prompt = "%B[%~] \${vcs_info_msg_0_}%b";
      };
      accounts.enable = true;
      gpg = {
        enable = true;
        defaultKey = "7206D8EE2474F3DF18EA876F0EC1691FF8C1A81F";
      };
    };

    apps = {
      terminal.enable = true;
      neovim.enable = true;
      gaming.enable = true;
      yubikey.enable = true;
      browsers.enable = true;
      defaultDesktopPack.enable = true;
    };

    gui = {
      enable = true;
      monitors = {
        eDP-1 = {
          primary = true;
          position = "0x0";
          mode = "1920x1080";
          rate = "60.00";
          fingerprint = "00ffffffffffff000dae0a1400000000291d0104a51f11780328659759548e271e505400000001010101010101010101010101010101363680a0703820403020a60035ad10000018000000fe004e3134304843412d4541450a20000000fe00434d4e0a202020202020202020000000fe004e3134304843412d4541450a200002";
          initialI3Workspace = 1;
        };
      };
    };
  };

  home = {
    packages = with pkgs; [
    ];

    username = "fabian";
    homeDirectory = "/home/fabian";
  };

  programs.home-manager.enable = true;
}