{ pkgs, lib, ... }:
let
  theme = import (lib.snowfall.fs.get-file "modules/home/desktop/theme/nord.nix");
  fontName = "JetBrainsMono NFM";
  fontPackage = pkgs.nerd-fonts.jetbrains-mono;
  displayLeft = {
    input = "DP-1";
    resolution = "3840x2160";
    refreshRate = "240.00000";
  };
  displayRight = {
    input = "DP-2";
    resolution = "3840x2160";
    refreshRate = "240.00000";
  };
in
{

  mjallen = {
    desktop.hyprland = {
      enable = true;
      primaryDisplay = "DP-1";

      wallpaper = [
        "${displayLeft.input}, /run/wallpaper.jpg"
        "${displayRight.input}, /run/wallpaper.jpg"
      ];

      monitor = [
        "${displayLeft.input},${displayLeft.resolution}@${displayLeft.refreshRate},0x0,1,bitdepth,10,cm,hdr,sdrbrightness,1.2,sdrsaturation,0.98"
        "${displayRight.input},${displayRight.resolution}@${displayRight.refreshRate},3840x0,1,bitdepth,10,cm,hdr,sdrbrightness,1.5,sdrsaturation,0.98"
      ];

      workspace = [
        "name:firefox, monitor:${displayRight.input}, default:false, special, class:(.*firefox.*)"
        "name:discord, monitor:${displayRight.input}, default:true, special, title:(.*vesktop.*), title:(.*Apple Music.*)"
        "name:steam, monitor:${displayLeft.input}, default:false, special, class:(.*[Ss]team.*)"
      ];

      windowRule = [
        "size 2160 7680, tag:horizonrdp"
      ];

      extraConfig = ''
        exec-once = nm-applet
        exec-once = [silent] firefox
        exec-once = [silent] vesktop
        exec-once = [silent] chromium --app="https://music.apple.com"
        exec-once = [silent] steam
      '';

      defaultApps = {
        browser = pkgs.firefox;
      };
    };
    programs = {
      btop.enable = true;
      kitty = {
        enable = true;
        font = {
          name = fontName;
          package = fontPackage;
        };
      };
      mako = {
        enable = true;
        fontName = fontName;
      };
      nwg-dock.enable = true;
      nwg-drawer.enable = true;
      nwg-panel = {
        enable = true;
        defaultApps = {
          browser = pkgs.firefox;
        };
      };
      waybar = {
        enable = true;

        layer = "bottom";

        networkInterface = "wlp9s0";

        modules-right = [
          "custom/lights"
          "temperature"
          "temperature#gpu"
          "keyboard-state#capslock"
          "keyboard-state#numlock"
          "wireplumber#sink"
          "wireplumber#source"
          "bluetooth"
          "network"
          "idle_inhibitor"
          "clock"
          "custom/weather"
        ];

        extraModules = {
          "custom/lights" = {
            tooltip = false;
            exec = "waybar-hass --get_light light.living_room_lights";
            interval = "once";
            format = "{text}"; # "󱉓";
            on-click = "waybar-hass --toggle_light light.living_room_lights";
            return-type = "json";
          };
        };

        extraModulesStyle = ''
          #custom-lights {
            color: ${theme.frost.nord8};
            background-color: ${theme.polarNight.nord0};
            ${theme.defaultOpacity}
            ${theme.borderLeft}
          }

          #custom-lights:hover {
            background: ${theme.polarNight.nord3};
          }
        '';
      };
      wlogout.enable = true;
      wofi.enable = true;
    };
  };
}
