{
  config,
  pkgs,
  lib,
  ...
}: {
  imports = [
    ./programs/neovim/.
    ./programs/helix.nix
    ./programs/git.nix
    ./programs/lf/.
    ./programs/zsh.nix
    ./programs/tmux.nix
  ];

  programs.home-manager.enable = true;

  home.homeDirectory = "/home/${config.home.username}";

  xdg.userDirs.enable = true;
  xdg.mimeApps.enable = true;

  manual.html.enable = true;

  home.packages = with pkgs; [
    home-manager
    libnotify
    dig
    jq
    fx
    mosh
    ripgrep
    usbutils
    du-dust
    htop
    btop
    libsixel
    yt-dlp
    fastfetch
    tree
    ytfzf
  ];

  programs.zoxide.enable = true;

  programs.rbw = {
    enable = true;
    settings = {
      email = "tristan@tristans.cloud";
      base_url = "https://vault.tristans.cloud";
      pinentry = lib.mkDefault pkgs.pinentry-tty;
    };
  };

  programs.ssh = {
    enable = true;
    matchBlocks = {
      "git.tristans.cloud" = {
        user = "forgejo";
        hostname = "100.106.241.122";
      };
      "alpine" = {
        hostname = "100.106.241.122";
        user = "tristan";
      };
    };
  };

  programs.fzf = {
    enable = true;
    enableZshIntegration = true;
  };

  programs.direnv.enable = true;
}
