{lib, ...}: {
  # Home Manager needs a bit of information about you and the paths it should
  # manage.
  home.username = "admin-jroeger";
  home.homeDirectory = "/home/admin-jroeger";

  # hive modules
  hive.kitty.enable = true;
  hive.ranger.enable = true;
  hive.yubikey.enable = true;
  hive.yubikey.pinentry = "gnome3";
  hive.nix-scripts.enable = true;
  hive.zsh.enable = true;
  hive.doom.enable = true;
  hive.doom.asDefaultEditor = true;
  hive.doom.enableCopilot = true;
  hive.doom.withNixPkgs = true;
  hive.doom.withShellPkgs = true;
  hive.doom.withCXXPkgs = true;
  hive.doom.withPythonPkgs = true;
  hive.jj.enable = true;

  # This value determines the Home Manager release that your configuration is
  # compatible with. This helps avoid breakage when a new Home Manager release
  # introduces backwards incompatible changes.
  #
  # You should not change this value, even if you update Home Manager. If you do
  # want to update the value, then make sure to first check the Home Manager
  # release notes.
  home.stateVersion = "24.11"; # Please read the comment before changing.

  home.sessionVariables = {
    EDITOR = lib.mkDefault "vim";
  };

  # Let Home Manager install and manage itself.
  programs.home-manager.enable = true;

  # Git
  programs.git = {
    enable = true;
    userName = "Jonas Röger";
    userEmail = "jonas.kieran.roeger@iml.fraunhofer.de";
    difftastic.enable = true;
    signing = {
      signByDefault = true;
      key = "4000EB35E1AE0F07";
    };
  };
}
