{ pkgs, lib, inputs, ... }:

{
  imports = [
    # Modules
    ../../modules/home/default.nix
  ];

  config = {
    home = {
      username = "xeovalyte";
      homeDirectory = "/home/xeovalyte";
    };

    settings = {
      applications.common.enable = true;
      applications.alacritty.enable = true;
      applications.devenv.enable = true;
      applications.firefox.enable = true;
      applications.git.enable = true;
      applications.helix = {
        enable = true;
        markdown = true;
        rust = true;
        systemverilog = true;
        nix = true;
        latex = true;
        vue = true;
      };
      applications.zsh.enable = true;
      applications.ssh.enable = true;
      applications.thunderbird.enable = true;
      applications.yazi.enable = true;
      applications.zellij.enable = true;
      applications.wezterm.enable = true;
      applications.nushell.enable = false;
      applications.typst.enable = true;
      # applications.obs-studio.enable = true;

      services.nextcloud-sync.enable = true;

      theming.fonts.enable = true;
      theming.stylix.enable = true;
      theming.stylix.wallpaper = "wallpaper-2.png";
      theming.stylix.theme = "da-one-ocean";

      desktop-environments.hyprland.enable = false;
    };

    home.packages = with pkgs; [
      # Desktop Applications
      prismlauncher
      unstable.prusa-slicer
      signal-desktop
      unstable.vesktop
      unstable.webcord
      blender
      unstable.freecad-wayland
      loupe
      unstable.rnote
      unstable.bottles
      unstable.hoppscotch
      unstable.apostrophe
      unstable.surfer # waveform viewer
      unstable.vscode
      pomodoro-gtk

      # Office
      libreoffice

      # Image editing
      gimp
      inkscape

      unstable.moonlight-qt

      # Scripts
      (import ../../modules/scripts/save_image.nix { inherit pkgs; })
    ];

    # Enable home-manager
    programs.home-manager.enable = true;

    home.stateVersion = "24.05";
  };
}
