{
  systemConfiguration = { config, ... }: {
    isNormalUser = true;
    # TODO: Don't hard-code `persist`.  Use
    # config.sydnix.impermanence.persistGroupName.
    extraGroups = [ "wheel" "persist" "input" "networkmanager" ];
    initialHashedPassword =
      "$y$j9T$aEFDDwdTZbAc6VQRXrkBJ0$K8wxTGTWDihyX1wxJ.ZMH//wmQFfrGGUkLkxIU0Lyq8";

    openssh.authorizedKeys.keyFiles = [
      ../../public-keys/ssh/crumb-at-guix-rebound.pub
    ];
  };

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

    home.packages = [
      (pkgs.stdenv.mkDerivation rec {
        pname = "berkeley-mono";
        version = "2.002";
    
        src = pkgs.fetchzip {
          url = "https://deertopia.net/~msyds/berkeley-mono-${version}.zip";
          hash = "sha256-o/G9+IXTGrr0lMLiq13nhIKZ2NfXkR6wd72W+d7Stqw=";
          stripRoot = false;
        };
    
        installPhase = ''
          mkdir -p $out/share/fonts/truetype/berkeley-mono
          cp -r *.ttf $out/share/fonts/truetype/berkeley-mono
        '';
      })
    ];

    sydnix = {
      gpg.enable = true;
      zotero.enable = true;
      drawing-tablet.enable = true;
      xdg.enable = true;
      slippi.enable = true;
      openutau.enable = true;
      sops = {
        enable = true;
        keyFile = "/persist/private-keys/age/${config.home.username}";
      };
      # Personal configurations.
      users.crumb = {
        age.enable = true;
        default-applications.enable = true;
        fcitx5.enable = true;
        bash.enable = true;
        direnv.enable = true;
        firefox.enable = true;
        git.enable = true;
        haskell.enable = true;
        mpd.enable = true;
        nvim.enable = true;
        emacs.enable = true;
        niri.enable = true;
        waybar.enable = true;
        # discord.enable = true;
        ghostty.enable = true;
        readline.enable = true;
        mumble.enable = true;
        tf2.enable = true;
        quake-live.enable = true;
      };
      steam.enable = true;
    };

    # Don't touch!
    home.stateVersion = "18.09";
  };
}
