{
  pkgs,
  localPkgs,
  config,
  inputs,
  ...
}:
{

  user.packages =
    let
      inherit (config.rice) icons cursor;
    in
    icons.pkgs
    ++ [
      cursor.package
    ];

  rice = {

    icons =
      let
        package = pkgs.papirus-icon-theme;
      in
      {
        inherit package;
        name = "Papirus-Dark";
        pkgs = [
          package
        ];
      };

    gtk-theme = {
      name = "nix-rice";
      package = localPkgs.gtk-theme.override { palette = config.rice.palette.shortHex; };
    };

    borders = {
      thickness = 6;
      rounding = 0;
      gaps = 48;
    };

    bg = {
      src = builtins.path {
        name = "wallpaper.jpg";
        path = ./rice/wallpaper.jpg;
        sha256 = "2db3f9d0397fbd4746ada297bd14c0c7d3e22c7d4e894968fcfece90bbfb902a";
      };
    };

    cursor = {
      package = pkgs.afterglow-cursors-recolored.override {
        themeVariants = [ "Dracula" ];
        draculaColorVariants = [ "Orange" ];
      };
      name = "Afterglow-Recolored-Dracula-Orange";
    };

    plymouth = {
      theme = "starship";
      font = "${config.rice.fonts.sans.package}/share/fonts/truetype/InriaSans-Regular.ttf";
      themePackages = [
        inputs.hudcore.packages.${pkgs.system}.default
      ];
    };
  };
}
