{
  imports = [
    ./hardware-configuration.nix
    ../../common/fragments/graphical
    ../../common/fragments/yubikey.nix
    ../../common/home_manager/common.nix
  ];

  # Bootloader.
  boot.loader.systemd-boot.enable = true;
  boot.loader.efi.canTouchEfiVariables = true;
  boot.loader.efi.efiSysMountPoint = "/boot/efi";

  boot.loader.systemd-boot.configurationLimit = 5;

  # Setup keyfile
  boot.initrd.secrets = { "/crypto_keyfile.bin" = null; };

  networking.hostName = "ritual";

  # Enable networking
  networking.networkmanager.enable = true;

  # Enable the OpenSSH daemon.
  services.openssh = {
    enable = true;
    banner = ''
      Hello mistress ^,,^
    '';
    settings.PasswordAuthentication = false;
  };

  virtualisation = {
    podman = {
      enable = true;
      dockerCompat = true;
      defaultNetwork.settings.dns_enabled = true;
    };
    oci-containers = { backend = "podman"; };
  };

  # Don't suspend when closed and plugged into power
  services.logind.lidSwitchExternalPower = "lock";

  home-manager.users.agatha = {
    xsession.windowManager.bspwm = {
      monitors = { eDP-1 = [ "I" "II" "III" "IV" "V" "VI" "VII" "VIII" ]; };
      rules = {
        "Element".desktop = "II";
        "TelegramDesktop".desktop = "III";
        "Spotify".desktop = "IV";
        "Geary".desktop = "V";
        "firefox" = {
          desktop = "I";
          state = "tiled";
          follow = false;
        };
      };
    };

    services.polybar = {
      script = "polybar right &";
      settings."bar/right".monitor = "\${env:MONITOR:eDP-1}";
    };
  };

  environment.graphical.theme.name = "dark";

  services.syncthing.dataDir = "/home/agatha/syncthing";

  # This value determines the NixOS release from which the default
  # settings for stateful data, like file locations and database versions
  # on your system were taken. It‘s perfectly fine and recommended to leave
  # this value at the release version of the first install of this system.
  # Before changing this value read the documentation for this option
  # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
  system.stateVersion = "22.11"; # Did you read the comment?
}

