{
  programs.plasma = {
    enable = true;
    fonts = {
      fixedWidth = {
        family = "BlexMono Nerd Font";
        pointSize = 11;
      };
      general = {
        family = "IBM Plex Sans";
        pointSize = 11;
      };
      menu = {
        family = "IBM Plex Sans";
        pointSize = 11;
      };
      small = {
        family = "IBM Plex Sans";
        pointSize = 8;
      };
      toolbar = {
        family = "IBM Plex Sans";
        pointSize = 11;
      };
      windowTitle = {
        family = "IBM Plex Sans";
        pointSize = 11;
      };
    };
    krunner = {
      historyBehavior = "disabled";
      position = "center";
      shortcuts.launch = "Meta+Space";
    };
    kscreenlocker = {
      appearance.wallpaper = "/home/chase/nix-config/home/wallpaper.jpg";
    };
    kwin = {
      effects = {
        desktopSwitching.animation = "slide";
        minimization.animation = "squash";
        shakeCursor.enable = true;
      };
      nightLight = {
        enable = true;
        location = {
          latitude = "39.70"; # not my house xD
          longitude = "-86.15";
        };
        mode = "location";
        temperature = {
          day = null;
          night = 4000;
        };
        transitionTime = 15;
      };
      virtualDesktops = {
        names = [
          "一"
          "二"
          "三"
          "四"
          "五"
        ];
        number = 5;
        rows = 1;
      };
    };
    panels = [
      {
        floating = false;
        height = 32;
        hiding = "none";
        lengthMode = "fill";
        location = "top";
        opacity = "opaque";
        widgets = [
          {
            name = "org.kde.plasma.pager";
            config = {
              General = {
                displayedText = "name";
                showWindowOutlines = false;
              };
            };
          }
          "org.kde.plasma.appmenu"
          "org.kde.plasma.panelspacer"
          {
            digitalClock = {
              calendar.firstDayOfWeek = "monday";
              time.format = "24h";
            };
          }
          "org.kde.plasma.panelspacer"
          "org.kde.plasma.systemtray"
        ];
      }
      {
        floating = true;
        height = 48;
        hiding = "dodgewindows";
        lengthMode = "fit";
        location = "bottom";
        opacity = "adaptive";
        widgets = [
          "org.kde.plasma.kicker"
          "org.kde.plasma.icontasks"
        ];
      }
    ];
    shortcuts = {
      kwin = {
        "Switch to Desktop 1" = "Meta+1";
        "Switch to Desktop 2" = "Meta+2";
        "Switch to Desktop 3" = "Meta+3";
        "Switch to Desktop 4" = "Meta+4";
        "Switch to Desktop 5" = "Meta+5";
        "Window to Desktop 1" = "Meta+!";
        "Window to Desktop 2" = "Meta+\"";
        "Window to Desktop 3" = "Meta+#";
        "Window to Desktop 4" = "Meta+$";
        "Window to Desktop 5" = "Meta+%";
      };
      plasmashell = {
        "activate task manager entry 1" = ",none,Activate Task Manager Entry 1";
        "activate task manager entry 2" = ",none,Activate Task Manager Entry 2";
        "activate task manager entry 3" = ",none,Activate Task Manager Entry 3";
        "activate task manager entry 4" = ",none,Activate Task Manager Entry 4";
        "activate task manager entry 5" = ",none,Activate Task Manager Entry 5";
        "next activity" = ",none,Walk through activities";
        "previous activity" = ",none,Walk through activities (Reverse)";
      };
      "services/kitty.desktop"."_launch" = "Meta+X";
    };
    workspace = {
      wallpaper = "/home/chase/nix-config/home/wallpaper.jpg";
    };
  };
}
