{ pkgs, namespace, ... }:
{
  home = {
    username = "admin";
    packages = with pkgs; [
      heroic
    ];
  };

  ${namespace} = {
    sops.enable = true;
  };

  sops = {
    age.keyFile = "/home/admin/.config/sops/age/keys.txt";
    defaultSopsFile = "/etc/nixos/secrets/secrets.yaml";
    validateSopsFiles = false;
    secrets = {
      "ssh-keys-public/jallen-nas" = {
        path = "/home/admin/.ssh/id_ed25519.pub";
        mode = "0644";
      };
      "ssh-keys-private/jallen-nas" = {
        path = "/home/admin/.ssh/id_ed25519";
        mode = "0600";
      };
      "ssh-keys-public/desktop-nixos" = {
        path = "/home/admin/.ssh/authorized_keys";
        mode = "0600";
      };

      "ssh-keys-public/desktop-nixos-root" = {
        path = "/home/admin/.ssh/authorized_keys2";
        mode = "0600";
      };

      "ssh-keys-public/desktop-windows" = {
        path = "/home/admin/.ssh/authorized_keys3";
        mode = "0600";
      };

      "ssh-keys-public/macbook-macos" = {
        path = "/home/admin/.ssh/authorized_keys4";
        mode = "0600";
      };
    };
  };

  programs = {
    neovim = {
      enable = true;
      viAlias = true;
      vimAlias = true;
      defaultEditor = true;
      plugins = [
        pkgs.vimPlugins.nvim-tree-lua
        {
          plugin = pkgs.vimPlugins.vim-startify;
          config = "let g:startify_change_to_vcs_root = 0";
        }
      ];
    };
    steam-rom-manager = {
      enable = true;
      steamUsername = "mjallen18";

      # Optional: override default paths if needed
      environmentVariables = {
        romsDirectory = "/home/admin/Emulation/roms";
        steamDirectory = "/home/admin/.local/share/Steam";
      };

      emulators = {
        "Non-SRM Shortcuts" = {
          enable = true;
          parserType = "Non-SRM Shortcuts";
          extraArgs = "";
        };
      };
    };
  };
}
