about summary refs log tree commit diff
path: root/pkgs/data/icons
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/data/icons')
-rw-r--r--pkgs/data/icons/apple-cursor/default.nix43
-rw-r--r--pkgs/data/icons/beauty-line-icon-theme/default.nix6
-rw-r--r--pkgs/data/icons/bibata-cursors/default.nix32
-rw-r--r--pkgs/data/icons/bibata-cursors/extra.nix2
-rw-r--r--pkgs/data/icons/bibata-cursors/translucent.nix4
-rw-r--r--pkgs/data/icons/capitaine-cursors-themed/default.nix29
-rw-r--r--pkgs/data/icons/catppuccin-cursors/default.nix66
-rw-r--r--pkgs/data/icons/catppuccin-papirus-folders/default.nix54
-rw-r--r--pkgs/data/icons/colloid-icon-theme/default.nix6
-rw-r--r--pkgs/data/icons/comixcursors/default.nix2
-rw-r--r--pkgs/data/icons/dracula-icon-theme/default.nix39
-rw-r--r--pkgs/data/icons/fluent-icon-theme/default.nix13
-rw-r--r--pkgs/data/icons/gnome-icon-theme/default.nix9
-rw-r--r--pkgs/data/icons/graphite-cursors/default.nix32
-rw-r--r--pkgs/data/icons/hicolor-icon-theme/default.nix1
-rw-r--r--pkgs/data/icons/kora-icon-theme/default.nix4
-rw-r--r--pkgs/data/icons/nordzy-cursor-theme/default.nix12
-rw-r--r--pkgs/data/icons/nordzy-icon-theme/default.nix4
-rw-r--r--pkgs/data/icons/numix-icon-theme-circle/default.nix4
-rw-r--r--pkgs/data/icons/numix-icon-theme-square/default.nix4
-rw-r--r--pkgs/data/icons/numix-icon-theme/default.nix4
-rw-r--r--pkgs/data/icons/papirus-icon-theme/default.nix4
-rw-r--r--pkgs/data/icons/papirus-nord/default.nix75
-rw-r--r--pkgs/data/icons/qogir-icon-theme/default.nix4
-rw-r--r--pkgs/data/icons/rose-pine/default.nix47
-rw-r--r--pkgs/data/icons/simp1e-cursors/default.nix42
-rw-r--r--pkgs/data/icons/super-tiny-icons/default.nix34
-rw-r--r--pkgs/data/icons/tango-icon-theme/default.nix9
-rw-r--r--pkgs/data/icons/tela-circle-icon-theme/default.nix18
-rw-r--r--pkgs/data/icons/tela-icon-theme/default.nix7
-rw-r--r--pkgs/data/icons/vanilla-dmz/default.nix28
-rw-r--r--pkgs/data/icons/vimix-icon-theme/default.nix26
-rw-r--r--pkgs/data/icons/volantes-cursors/default.nix32
-rw-r--r--pkgs/data/icons/whitesur-icon-theme/default.nix9
34 files changed, 611 insertions, 94 deletions
diff --git a/pkgs/data/icons/apple-cursor/default.nix b/pkgs/data/icons/apple-cursor/default.nix
new file mode 100644
index 0000000000000..46b4b37f78df9
--- /dev/null
+++ b/pkgs/data/icons/apple-cursor/default.nix
@@ -0,0 +1,43 @@
+{ lib
+, fetchzip
+, stdenv
+}:
+
+let
+  _src = variant: suffix: hash: fetchzip ({
+    name = variant;
+    url = "https://github.com/ful1e5/apple_cursor/releases/download/v${version}/${variant}.${suffix}";
+    hash = hash;
+  } // (lib.optionalAttrs (suffix == "zip") { stripRoot = false; }));
+
+  version = "2.0.0";
+  srcs = [
+    (_src "macOS-BigSur-White" "tar.gz" "sha256-3Ax2hMfkEL4cyJtGQpK3PqC/L5wtmgO0LsY4gkTQ2Bg=")
+    (_src "macOS-BigSur-White-Windows" "zip" "sha256-V6J2Ddgq46BkgxCWVReZrvE7CsOczzV7slOpilKFG9E=")
+    (_src "macOS-BigSur" "tar.gz" "sha256-VZWFf1AHum2xDJPMZrBmcyVrrmYGKwCdXOPATw7myOA=")
+    (_src "macOS-BigSur-Windows" "zip" "sha256-lp28ACsK8BXe6rSDELL4GdXb1QEdOVC8Y6eLofctkR4=")
+    (_src "macOS-Monterey-White" "tar.gz" "sha256-IfFYUbDW6mBe209iU1sBhFzolZd6YDVdJf+DPe9AQDM=")
+    (_src "macOS-Monterey-White-Windows" "zip" "sha256-gUuBFOi0nDBoX9TWPg4eQhCAhwYeEhfDEbYpc+XsQNE=")
+    (_src "macOS-Monterey" "tar.gz" "sha256-MHmaZs56Q1NbjkecvfcG1zAW85BCZDn5kXmxqVzPc7M=")
+    (_src "macOS-Monterey-Windows" "zip" "sha256-ajxEgq7besaRajLn0gTPpp4euOWVqbzc78u720PWlyE=")
+  ];
+in stdenv.mkDerivation rec {
+  pname = "apple_cursor";
+  inherit version;
+  inherit srcs;
+
+  sourceRoot = ".";
+
+  installPhase = ''
+    install -dm 0755 $out/share/icons
+    cp -r macOS* $out/share/icons/
+  '';
+
+  meta = with lib; {
+    description = "Opensource macOS Cursors.";
+    homepage = "https://github.com/ful1e5/apple_cursor";
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ colemickens ];
+  };
+}
diff --git a/pkgs/data/icons/beauty-line-icon-theme/default.nix b/pkgs/data/icons/beauty-line-icon-theme/default.nix
index 66e5ac57dd175..dc332b0fc3281 100644
--- a/pkgs/data/icons/beauty-line-icon-theme/default.nix
+++ b/pkgs/data/icons/beauty-line-icon-theme/default.nix
@@ -18,9 +18,9 @@ stdenvNoCC.mkDerivation rec {
     owner = "gvolpe";
     repo = pname;
     rev = version;
-    sparseCheckout = ''
-      BeautyLine-V3
-    '';
+    sparseCheckout = [
+      "BeautyLine-V3"
+    ];
     sha256 = "sha256-IkkypAj250+OXbf19TampCnqYsSbJVIjeYlxJoyhpzk=";
   };
 
diff --git a/pkgs/data/icons/bibata-cursors/default.nix b/pkgs/data/icons/bibata-cursors/default.nix
index b27b96cb5efb5..06c8becd64e51 100644
--- a/pkgs/data/icons/bibata-cursors/default.nix
+++ b/pkgs/data/icons/bibata-cursors/default.nix
@@ -3,47 +3,37 @@
 , fetchFromGitHub
 , fetchurl
 , clickgen
-, unzip
+, attrs
 }:
 
 stdenvNoCC.mkDerivation rec {
   pname = "bibata-cursors";
-  version = "1.1.2";
+  version = "2.0.3";
 
   src = fetchFromGitHub {
     owner = "ful1e5";
     repo = "Bibata_Cursor";
     rev = "v${version}";
-    sha256 = "1q2wdbrmdnr9mwiilm5cc9im3zwbl7yaj1zpy5wwn44ypq3hcngy";
+    sha256 = "zCk7qgPeae0BfzhxxU2Dk1SOWJQOxiWyJuzH/ri+Gq4=";
   };
 
-  bitmaps = fetchurl {
-    url = "https://github.com/ful1e5/Bibata_Cursor/releases/download/v${version}/bitmaps.zip";
-    sha256 = "1pcn6par0f0syyhzpzmqr3c6b9ri4lprkdd2ncwzdas01p2d9v1i";
-  };
-
-  nativeBuildInputs = [ unzip ];
-
-  buildInputs = [ clickgen ];
+  buildInputs = [ clickgen attrs ];
 
   buildPhase = ''
-    mkdir bitmaps
-    unzip $bitmaps -d bitmaps
-    rm -rf themes
-    cd builder && make build_unix
+    ctgen build.toml -p x11 -d 'bitmaps/Bibata-Modern-Amber' -n 'Bibata-Modern-Amber' -c 'Yellowish and rounded edge bibata cursors.'
+    ctgen build.toml -p x11 -d 'bitmaps/Bibata-Modern-Classic' -n 'Bibata-Modern-Classic' -c 'Black and rounded edge Bibata cursors.'
+    ctgen build.toml -p x11 -d 'bitmaps/Bibata-Modern-Ice' -n 'Bibata-Modern-Ice' -c 'White and rounded edge Bibata cursors.'
+
+    ctgen build.toml -p x11 -d 'bitmaps/Bibata-Original-Amber' -n 'Bibata-Original-Amber' -c 'Yellowish and sharp edge Bibata cursors.'
+    ctgen build.toml -p x11 -d 'bitmaps/Bibata-Original-Classic' -n 'Bibata-Original-Classic' -c 'Black and sharp edge Bibata cursors.'
+    ctgen build.toml -p x11 -d 'bitmaps/Bibata-Original-Ice' -n 'Bibata-Original-Ice' -c 'White and sharp edge Bibata cursors.'
   '';
 
   installPhase = ''
     install -dm 0755 $out/share/icons
-    cd ../
     cp -rf themes/* $out/share/icons/
   '';
 
-  postPatch = ''
-    substituteInPlace "builder/Makefile" \
-      --replace "/bin/bash" "bash"
-  '';
-
   meta = with lib; {
     description = "Material Based Cursor Theme";
     homepage = "https://github.com/ful1e5/Bibata_Cursor";
diff --git a/pkgs/data/icons/bibata-cursors/extra.nix b/pkgs/data/icons/bibata-cursors/extra.nix
index 15a746eabffb7..ed9a70a6d3213 100644
--- a/pkgs/data/icons/bibata-cursors/extra.nix
+++ b/pkgs/data/icons/bibata-cursors/extra.nix
@@ -50,5 +50,7 @@ stdenvNoCC.mkDerivation rec {
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ dtzWill AdsonCicilioti ];
+    # unmaintained as of Nov 9, 2022. unable to be build with clickgen version 2.x
+    broken = true;
   };
 }
diff --git a/pkgs/data/icons/bibata-cursors/translucent.nix b/pkgs/data/icons/bibata-cursors/translucent.nix
index efaf25c59f2bf..fa01e05766b44 100644
--- a/pkgs/data/icons/bibata-cursors/translucent.nix
+++ b/pkgs/data/icons/bibata-cursors/translucent.nix
@@ -2,13 +2,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "bibata-cursors-translucent";
-  version = "1.1.1";
+  version = "1.1.2";
 
   src = fetchFromGitHub {
     owner = "Silicasandwhich";
     repo = "Bibata_Cursor_Translucent";
     rev = "v${version}";
-    sha256 = "1ddnwqkxricnd731blckcxvksbgql8k4pfiz65591p81n5095k8y";
+    sha256 = "sha256-RroynJfdFpu+Wl9iw9NrAc9wNZsSxWI+heJXUTwEe7s=";
   };
 
   installPhase = ''
diff --git a/pkgs/data/icons/capitaine-cursors-themed/default.nix b/pkgs/data/icons/capitaine-cursors-themed/default.nix
new file mode 100644
index 0000000000000..bd0147fecde31
--- /dev/null
+++ b/pkgs/data/icons/capitaine-cursors-themed/default.nix
@@ -0,0 +1,29 @@
+{ lib, stdenvNoCC, fetchzip }:
+
+stdenvNoCC.mkDerivation rec {
+  pname = "capitaine-cursors-themed";
+  version = "5";
+
+  src = fetchzip {
+    url = "https://github.com/sainnhe/capitaine-cursors/releases/download/r${version}/Linux.zip";
+    stripRoot = false;
+    hash = "sha256-ipPpmZKU/xLA45fdOvxVbtFDCUsCYIvzeps/DjhFkNg=";
+  };
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/share/icons
+    cp -r ./ $out/share/icons
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "A fork of the capitaine cursor theme, with some additional variants (Gruvbox, Nord, Palenight) and support for HiDPI";
+    homepage = "https://github.com/sainnhe/capitaine-cursors";
+    license = licenses.lgpl3Only;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.math-42 ];
+  };
+}
diff --git a/pkgs/data/icons/catppuccin-cursors/default.nix b/pkgs/data/icons/catppuccin-cursors/default.nix
new file mode 100644
index 0000000000000..450484b463272
--- /dev/null
+++ b/pkgs/data/icons/catppuccin-cursors/default.nix
@@ -0,0 +1,66 @@
+{ lib
+, stdenvNoCC
+, fetchFromGitHub
+, unzip
+}:
+
+let
+  dimensions = {
+    palette = [ "Frappe" "Latte" "Macchiato" "Mocha" ];
+    color = [ "Blue" "Dark" "Flamingo" "Green" "Lavender" "Light" "Maroon" "Mauve" "Peach" "Pink" "Red" "Rosewater" "Sapphire" "Sky" "Teal" "Yellow" ];
+  };
+  product = lib.attrsets.cartesianProductOfSets dimensions;
+  variantName = { palette, color }: (lib.strings.toLower palette) + color;
+  variants = map variantName product;
+in
+stdenvNoCC.mkDerivation rec {
+  pname = "catppuccin-cursors";
+  version = "0.2.0";
+  dontBuild = true;
+
+  src = fetchFromGitHub {
+    owner = "catppuccin";
+    repo = "cursors";
+    rev = "v${version}";
+    sha256 = "sha256-TgV5f8+YWR+h61m6WiBMg3aBFnhqShocZBdzZHSyU2c=";
+    sparseCheckout = [ "cursors" ];
+  };
+
+  nativeBuildInputs = [ unzip ];
+
+  outputs = variants ++ [ "out" ]; # dummy "out" output to prevent breakage
+
+  outputsToInstall = [];
+
+  installPhase = ''
+    runHook preInstall
+
+    for output in $(getAllOutputNames); do
+      if [ "$output" != "out" ]; then
+        local outputDir="''${!output}"
+        local iconsDir="$outputDir"/share/icons
+
+        mkdir -p "$iconsDir"
+
+        # Convert to kebab case with the first letter of each word capitalized
+        local variant=$(sed 's/\([A-Z]\)/-\1/g' <<< "$output")
+        local variant=''${variant^}
+
+        unzip "cursors/Catppuccin-$variant-Cursors.zip" -d "$iconsDir"
+      fi
+    done
+
+    # Needed to prevent breakage
+    mkdir -p "$out"
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Catppuccin cursor theme based on Volantes";
+    homepage = "https://github.com/catppuccin/cursors";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ PlayerNameHere ];
+  };
+}
diff --git a/pkgs/data/icons/catppuccin-papirus-folders/default.nix b/pkgs/data/icons/catppuccin-papirus-folders/default.nix
new file mode 100644
index 0000000000000..70529a6337b7e
--- /dev/null
+++ b/pkgs/data/icons/catppuccin-papirus-folders/default.nix
@@ -0,0 +1,54 @@
+{
+  stdenvNoCC,
+  lib,
+  fetchFromGitHub,
+  gtk3,
+  papirus-icon-theme,
+  flavor ? "mocha",
+  accent ? "blue"
+}: let
+  validAccents = ["blue" "flamingo" "green" "lavender" "maroon" "mauve" "peach" "pink" "red" "rosewater" "sapphire" "sky" "teal" "yellow"];
+  validFlavors = ["latte" "frappe" "macchiato" "mocha"];
+  pname = "catppuccin-papirus-folders";
+in
+  lib.checkListOfEnum "${pname}: accent colors" validAccents [ accent ]
+  lib.checkListOfEnum "${pname}: flavors" validFlavors [ flavor ]
+
+  stdenvNoCC.mkDerivation {
+    inherit pname;
+    version = "unstable-2023-08-02";
+
+    src = fetchFromGitHub {
+      owner = "catppuccin";
+      repo = "papirus-folders";
+      rev = "fcf96737fffc343a1bf129732c37d19f2d77fa5c";
+      sha256 = "sha256-3yjIGzN+/moP2OVGDIAy4zPqUroSjx3c2mJjdZGhTsY=";
+    };
+
+    nativeBuildInputs = [ gtk3 ];
+
+    postPatch = ''
+      patchShebangs ./papirus-folders
+    '';
+
+    installPhase = ''
+      runHook preInstall
+      mkdir -p $out/share/icons
+      cp -r --no-preserve=mode ${papirus-icon-theme}/share/icons/Papirus* $out/share/icons
+      cp -r src/* $out/share/icons/Papirus
+      for theme in $out/share/icons/*; do
+          USER_HOME=$HOME DISABLE_UPDATE_ICON_CACHE=1 \
+            ./papirus-folders -t $theme -o -C cat-${flavor}-${accent}
+          gtk-update-icon-cache --force $theme
+      done
+      runHook postInstall
+    '';
+
+    meta = with lib; {
+      description = "Soothing pastel theme for Papirus Icon Theme folders";
+      homepage = "https://github.com/catppuccin/papirus-folders";
+      license = licenses.mit;
+      platforms = platforms.linux;
+      maintainers = with maintainers; [ rubyowo ];
+    };
+  }
diff --git a/pkgs/data/icons/colloid-icon-theme/default.nix b/pkgs/data/icons/colloid-icon-theme/default.nix
index c94135f86fa2b..7806f3e814ad1 100644
--- a/pkgs/data/icons/colloid-icon-theme/default.nix
+++ b/pkgs/data/icons/colloid-icon-theme/default.nix
@@ -13,18 +13,18 @@ let
   pname = "colloid-icon-theme";
 
 in
-lib.checkListOfEnum "${pname}: scheme variants" [ "default" "nord" "dracula" ] schemeVariants
+lib.checkListOfEnum "${pname}: scheme variants" [ "default" "nord" "dracula" "all" ] schemeVariants
 lib.checkListOfEnum "${pname}: color variants" [ "default" "purple" "pink" "red" "orange" "yellow" "green" "teal" "grey" "all" ] colorVariants
 
 stdenvNoCC.mkDerivation rec {
   inherit pname;
-  version = "2022-04-22";
+  version = "2023-07-01";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    hash = "sha256-0lUdsTjIfZ76Mm327jE1uudxtKVQbt17fsel6c2RdVM=";
+    hash = "sha256-2J6LmDV/Y2+x+nK3mO+t4MnmZCbVwDLX0tDG6BmLgqo=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/data/icons/comixcursors/default.nix b/pkgs/data/icons/comixcursors/default.nix
index b63877b282098..1c4fdc195180b 100644
--- a/pkgs/data/icons/comixcursors/default.nix
+++ b/pkgs/data/icons/comixcursors/default.nix
@@ -52,7 +52,7 @@ stdenvNoCC.mkDerivation rec {
   '';
 
   installPhase = ''
-    for outputName in $outputs ; do
+    for outputName in $(getAllOutputNames) ; do
       if [ $outputName != out ]; then
         local outputDir=''${!outputName};
         local iconsDir=$outputDir/share/icons
diff --git a/pkgs/data/icons/dracula-icon-theme/default.nix b/pkgs/data/icons/dracula-icon-theme/default.nix
new file mode 100644
index 0000000000000..d09037cad1148
--- /dev/null
+++ b/pkgs/data/icons/dracula-icon-theme/default.nix
@@ -0,0 +1,39 @@
+{ lib, stdenvNoCC, fetchFromGitHub, jdupes }:
+
+stdenvNoCC.mkDerivation {
+  pname = "dracula-icon-theme";
+  version = "unstable-2021-07-21";
+
+  src = fetchFromGitHub {
+    owner = "m4thewz";
+    repo = "dracula-icons";
+    rev = "2d3c83caa8664e93d956cfa67a0f21418b5cdad8";
+    hash = "sha256-GY+XxTM22jyNq8kaB81zNfHRhfXujArFcyzDa8kjxCQ=";
+  };
+
+  nativeBuildInputs = [
+    jdupes
+  ];
+
+  dontDropIconThemeCache = true;
+
+  dontPatchELF = true;
+  dontRewriteSymlinks = true;
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/share/icons/Dracula
+    cp -a * $out/share/icons/Dracula/
+    jdupes --quiet --link-soft --recurse $out/share
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Dracula Icon theme";
+    homepage = "https://github.com/m4thewz/dracula-icons";
+    platforms = platforms.linux;
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ therealr5 ];
+  };
+}
diff --git a/pkgs/data/icons/fluent-icon-theme/default.nix b/pkgs/data/icons/fluent-icon-theme/default.nix
index 8898fb0e186fc..6933a0ecb9286 100644
--- a/pkgs/data/icons/fluent-icon-theme/default.nix
+++ b/pkgs/data/icons/fluent-icon-theme/default.nix
@@ -6,23 +6,23 @@
 , jdupes
 , roundedIcons ? false
 , blackPanelIcons ? false
+, allColorVariants ? false
 , colorVariants ? [ ]
 ,
 }:
-let
-  pname = "Fluent-icon-theme";
+let pname = "Fluent-icon-theme";
 in
-lib.checkListOfEnum "${pname}: available color variants" [ "standard" "green" "grey" "orange" "pink" "purple" "red" "yellow" "teal" "all" ] colorVariants
+lib.checkListOfEnum "${pname}: available color variants" [ "standard" "green" "grey" "orange" "pink" "purple" "red" "yellow" "teal" ] colorVariants
 
 stdenvNoCC.mkDerivation rec {
   inherit pname;
-  version = "2022-09-20";
+  version = "2023-06-07";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    sha256 = "Ce8LTIxKabeqV9QVK68DqUVwtwG5lyxDPDQx0mLIr5o=";
+    hash = "sha256-drEAjIY/lacqncSeVeNmeRX6v4PnLvGo66Na1fuFXRg=";
   };
 
   nativeBuildInputs = [ gtk3 jdupes ];
@@ -44,10 +44,11 @@ stdenvNoCC.mkDerivation rec {
     ./install.sh --dest $out/share/icons \
       --name Fluent \
       ${builtins.toString colorVariants} \
+      ${lib.optionalString allColorVariants "--all"} \
       ${lib.optionalString roundedIcons "--round"} \
       ${lib.optionalString blackPanelIcons "--black"}
 
-    jdupes --link-soft --recurse $out/share
+    jdupes --quiet --link-soft --recurse $out/share
 
     runHook postInstall
   '';
diff --git a/pkgs/data/icons/gnome-icon-theme/default.nix b/pkgs/data/icons/gnome-icon-theme/default.nix
index 239cf052ca9e2..44b92c465bbef 100644
--- a/pkgs/data/icons/gnome-icon-theme/default.nix
+++ b/pkgs/data/icons/gnome-icon-theme/default.nix
@@ -9,8 +9,11 @@ stdenv.mkDerivation rec {
     sha256 = "0fjh9qmmgj34zlgxb09231ld7khys562qxbpsjlaplq2j85p57im";
   };
 
-  nativeBuildInputs = [
+  depsBuildBuild = [
     pkg-config
+  ];
+
+  nativeBuildInputs = [
     intltool
     iconnamingutils
     gtk2
@@ -18,11 +21,13 @@ stdenv.mkDerivation rec {
 
   dontDropIconThemeCache = true;
 
-  postInstall = ''
+  postInstall = lib.optionalString (!stdenv.hostPlatform.isMusl) ''
     # remove a tree of dirs with no files within
     rm -r "$out/share/locale"
   '';
 
+  allowedReferences = [ ];
+
   meta = with lib; {
     description = "Collection of icons for the GNOME 2 desktop";
     homepage = "https://download.gnome.org/sources/gnome-icon-theme/";
diff --git a/pkgs/data/icons/graphite-cursors/default.nix b/pkgs/data/icons/graphite-cursors/default.nix
new file mode 100644
index 0000000000000..b64e7567b25f1
--- /dev/null
+++ b/pkgs/data/icons/graphite-cursors/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+}:
+
+stdenv.mkDerivation rec {
+  pname = "graphite-cursors";
+  version = "2021-11-26";
+
+  src = fetchFromGitHub {
+    owner = "vinceliuice";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-Kopl2NweYrq9rhw+0EUMhY/pfGo4g387927TZAhI5/A=";
+  };
+
+  installPhase = ''
+    install -dm 755 $out/share/icons
+    mv dist-dark $out/share/icons/graphite-dark
+    mv dist-light $out/share/icons/graphite-light
+    mv dist-dark-nord $out/share/icons/graphite-dark-nord
+    mv dist-light-nord $out/share/icons/graphite-light-nord
+  '';
+
+  meta = with lib; {
+    description = "Graphite cursor theme";
+    homepage = "https://github.com/vinceliuice/Graphite-cursors";
+    license = licenses.gpl3Only;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ oluceps ];
+  };
+}
diff --git a/pkgs/data/icons/hicolor-icon-theme/default.nix b/pkgs/data/icons/hicolor-icon-theme/default.nix
index 4fb1ada66540c..096baa49acea9 100644
--- a/pkgs/data/icons/hicolor-icon-theme/default.nix
+++ b/pkgs/data/icons/hicolor-icon-theme/default.nix
@@ -15,5 +15,6 @@ stdenvNoCC.mkDerivation rec {
     description = "Default fallback theme used by implementations of the icon theme specification";
     homepage = "https://icon-theme.freedesktop.org/releases/";
     platforms = platforms.unix;
+    license = licenses.gpl2Only;
   };
 }
diff --git a/pkgs/data/icons/kora-icon-theme/default.nix b/pkgs/data/icons/kora-icon-theme/default.nix
index c3064aeb9b7fb..a2c705c8f3da2 100644
--- a/pkgs/data/icons/kora-icon-theme/default.nix
+++ b/pkgs/data/icons/kora-icon-theme/default.nix
@@ -10,13 +10,13 @@
 
 stdenvNoCC.mkDerivation rec  {
   pname = "kora-icon-theme";
-  version = "1.5.3";
+  version = "1.5.7";
 
   src = fetchFromGitHub  {
     owner = "bikass";
     repo = "kora";
     rev = "v${version}";
-    sha256 = "sha256-j4W9w/icGjfkbbb0xYF3NfSFsp5RkNCc805E089JaFQ=";
+    sha256 = "sha256-VAlfrUWgxcG17ZTlA357gengXTilwuZOBscIzadAsaU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/data/icons/nordzy-cursor-theme/default.nix b/pkgs/data/icons/nordzy-cursor-theme/default.nix
index ee18fe2877270..394626cec3371 100644
--- a/pkgs/data/icons/nordzy-cursor-theme/default.nix
+++ b/pkgs/data/icons/nordzy-cursor-theme/default.nix
@@ -5,24 +5,18 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "nordzy-cursor-theme";
-  version = "0.1.0";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "alvatip";
     repo = "Nordzy-cursors";
     rev = "v${version}";
-    sha256 = "XabfKFyeII7Xl+ozzpPnc4xFH4B7GzCTLq4M1QPSZPw=";
+    sha256 = "sha256-q9PEEyxejRQ8UCwbqsfOCL7M70pLCOLyCx8gEFmZkWA=";
   };
 
   installPhase = ''
     mkdir -p $out/share/icons
-
-    cp -r nordzy-dark/ $out/share/icons/Nordzy-cursors
-    mv $out/share/icons/Nordzy-cursors/index.theme $out/share/icons/Nordzy-cursors/cursor.theme
-    mv $out/share/icons/Nordzy-cursors/Nordzy-cursors $out/share/icons/Nordzy-cursors/cursors
-    cp -r nordzy-white/ $out/share/icons/Nordzy-white-cursors
-    mv $out/share/icons/Nordzy-white-cursors/index.theme $out/share/icons/Nordzy-white-cursors/cursor.theme
-    mv $out/share/icons/Nordzy-white-cursors/Nordzy-white-cursors $out/share/icons/Nordzy-white-cursors/cursors
+    cp -r Nordzy-cursors{,-white,-lefthand} $out/share/icons
   '';
 
   meta = with lib; {
diff --git a/pkgs/data/icons/nordzy-icon-theme/default.nix b/pkgs/data/icons/nordzy-icon-theme/default.nix
index 23bb6564d4514..cbe06641bc64d 100644
--- a/pkgs/data/icons/nordzy-icon-theme/default.nix
+++ b/pkgs/data/icons/nordzy-icon-theme/default.nix
@@ -8,13 +8,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "nordzy-icon-theme";
-  version = "1.7";
+  version = "1.8.5";
 
   src = fetchFromGitHub {
     owner = "alvatip";
     repo = "Nordzy-icon";
     rev = version;
-    sha256 = "sha256-pyWEHP7tqg7Cca38a7cGTCx/PCQ+OqG2koxQB6PSzkA=";
+    sha256 = "sha256-ea5OBvZrwH5Wvd7aieI9x3S10E8qcyg99Mh9B5RHkjo=";
   };
 
   # In the post patch phase we should first make sure to patch shebangs.
diff --git a/pkgs/data/icons/numix-icon-theme-circle/default.nix b/pkgs/data/icons/numix-icon-theme-circle/default.nix
index be667047120b2..b06b6b35f37fc 100644
--- a/pkgs/data/icons/numix-icon-theme-circle/default.nix
+++ b/pkgs/data/icons/numix-icon-theme-circle/default.nix
@@ -2,13 +2,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "numix-icon-theme-circle";
-  version = "22.10.05";
+  version = "23.07.08";
 
   src = fetchFromGitHub {
     owner = "numixproject";
     repo = pname;
     rev = version;
-    sha256 = "sha256-fQSAyVf3IwsTTUxzvYRvu5uUEyaPPdbuK2tQ3o16zDA=";
+    sha256 = "sha256-JToou95HIrfqdT0IVh0colgGFXq3GR2D3FQU0Qc57Y4=";
   };
 
   nativeBuildInputs = [ gtk3 ];
diff --git a/pkgs/data/icons/numix-icon-theme-square/default.nix b/pkgs/data/icons/numix-icon-theme-square/default.nix
index 2c27fa8ebf966..ecfea598a55ec 100644
--- a/pkgs/data/icons/numix-icon-theme-square/default.nix
+++ b/pkgs/data/icons/numix-icon-theme-square/default.nix
@@ -2,13 +2,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "numix-icon-theme-square";
-  version = "22.10.05";
+  version = "23.07.21";
 
   src = fetchFromGitHub {
     owner = "numixproject";
     repo = pname;
     rev = version;
-    sha256 = "sha256-uOS6oWcB+2A26u9NTT+xhLHWqaKy5WMSR6WddKS6gEw=";
+    sha256 = "sha256-rHT4lD+RcwRmE63Dd7/oXVAltRTfpisptzyD1EQG4Aw=";
   };
 
   nativeBuildInputs = [ gtk3 ];
diff --git a/pkgs/data/icons/numix-icon-theme/default.nix b/pkgs/data/icons/numix-icon-theme/default.nix
index 410439da6ca68..af84d20c16a48 100644
--- a/pkgs/data/icons/numix-icon-theme/default.nix
+++ b/pkgs/data/icons/numix-icon-theme/default.nix
@@ -11,13 +11,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "numix-icon-theme";
-  version = "22.08.16";
+  version = "23.04.26";
 
   src = fetchFromGitHub {
     owner = "numixproject";
     repo = pname;
     rev = version;
-    sha256 = "sha256-EveIr5XYyQYhz0AqZQBql3j0LnD8taNdzB/6IV7Mz2k=";
+    sha256 = "sha256-6tkE23G67nH/aZjDEtW64RcZsBrcd9iNj1r9lDlUFsk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/data/icons/papirus-icon-theme/default.nix b/pkgs/data/icons/papirus-icon-theme/default.nix
index cf90cf6757293..0548ac07cedb1 100644
--- a/pkgs/data/icons/papirus-icon-theme/default.nix
+++ b/pkgs/data/icons/papirus-icon-theme/default.nix
@@ -2,13 +2,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "papirus-icon-theme";
-  version = "20220910";
+  version = "20230601";
 
   src = fetchFromGitHub {
     owner = "PapirusDevelopmentTeam";
     repo = pname;
     rev = version;
-    sha256 = "sha256-ohZe7TCvbQcJmUyFY7DN6BgfAAqW1HhXi1UXXPh0t4Q=";
+    sha256 = "sha256-p47Vt1nR94bXtpWjNaIWJNKbdgFFMc0qCBeh2V98CJg=";
   };
 
   nativeBuildInputs = [ gtk3 papirus-folders ];
diff --git a/pkgs/data/icons/papirus-nord/default.nix b/pkgs/data/icons/papirus-nord/default.nix
new file mode 100644
index 0000000000000..178b1ba3470a7
--- /dev/null
+++ b/pkgs/data/icons/papirus-nord/default.nix
@@ -0,0 +1,75 @@
+{ stdenvNoCC
+, lib
+, fetchFromGitHub
+, gtk3
+, getent
+, papirus-icon-theme
+, accent ? "frostblue1"
+}:
+let
+  validAccents = [
+    "auroragreen"
+    "auroragreenb"
+    "auroramagenta"
+    "auroramagentab"
+    "auroraorange"
+    "auroraorangeb"
+    "aurorared"
+    "auroraredb"
+    "aurorayellow"
+    "aurorayellowb"
+    "frostblue1"
+    "frostblue2"
+    "frostblue3"
+    "frostblue4"
+    "polarnight1"
+    "polarnight2"
+    "polarnight3"
+    "polarnight3"
+    "snowstorm1"
+    "snowstorm1b"
+  ];
+  pname = "papirus-nord";
+  version = "3.2.0";
+in
+lib.checkListOfEnum "${pname}: accent colors" validAccents [ accent ]
+
+stdenvNoCC.mkDerivation {
+  inherit pname version;
+
+  src = fetchFromGitHub {
+    owner = "adapta-projects";
+    repo = "papirus-nord";
+    rev = version;
+    sha256 = "sha256-KwwTDGJQ4zN9XH/pKFQDQ+EgyuSCFhN2PQAI35G+3YM=";
+  };
+
+  nativeBuildInputs = [ gtk3 getent ];
+
+  postPatch = ''
+    patchShebangs ./papirus-folders
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/share/icons
+    cp -r --no-preserve=mode ${papirus-icon-theme}/share/icons/Papirus* $out/share/icons
+    for size in 64x64 48x48 32x32 24x24 22x22; do
+      cp -f Icons/$size/* $out/share/icons/Papirus/$size/places
+    done
+    for theme in $out/share/icons/*; do
+        USER_HOME=$HOME DISABLE_UPDATE_ICON_CACHE=1 \
+          ./papirus-folders -t $theme -o -C ${accent}
+        gtk-update-icon-cache --force $theme
+    done
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Nord version of Papirus Icon Theme";
+    homepage = "https://github.com/Adapta-Projects/Papirus-Nord";
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ aacebedo ];
+  };
+}
diff --git a/pkgs/data/icons/qogir-icon-theme/default.nix b/pkgs/data/icons/qogir-icon-theme/default.nix
index 69a4ea664ea50..bfa4e33fc8ca6 100644
--- a/pkgs/data/icons/qogir-icon-theme/default.nix
+++ b/pkgs/data/icons/qogir-icon-theme/default.nix
@@ -18,13 +18,13 @@ lib.checkListOfEnum "${pname}: theme variants" [ "default" "manjaro" "ubuntu" "a
 
 stdenvNoCC.mkDerivation rec {
   inherit pname;
-  version = "2022-10-08";
+  version = "2023-06-05";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    sha256 = "sha256-BZhZyPnmiS5mxJp4/QnE7bTynB/cZ0QsUKFMhyd/Ox4=";
+    sha256 = "sha256-qiHmA/K4hdXVSFzergGhgssKR+kXp3X0cqtX1X5ayM4=";
   };
 
   nativeBuildInputs = [ gtk3 jdupes ];
diff --git a/pkgs/data/icons/rose-pine/default.nix b/pkgs/data/icons/rose-pine/default.nix
new file mode 100644
index 0000000000000..051294c5d3a89
--- /dev/null
+++ b/pkgs/data/icons/rose-pine/default.nix
@@ -0,0 +1,47 @@
+{ stdenvNoCC
+, lib
+, fetchFromGitHub
+, gtk3
+}:
+
+stdenvNoCC.mkDerivation rec {
+  pname = "rose-pine-icon-theme";
+  version = "unstable-2022-09-01";
+
+  src = fetchFromGitHub {
+    owner = "rose-pine";
+    repo = "gtk";
+    rev = "7a4c40989fd42fd8d4a797f460c79fc4a085c304";
+    sha256 = "0q74wjyrsjyym770i3sqs071bvanwmm727xzv50wk6kzvpyqgi67";
+  };
+
+  nativeBuildInputs = [
+    gtk3
+  ];
+
+  # avoid the makefile which is only for the theme maintainers
+  dontBuild = true;
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/share/icons
+    mv icons/rose-pine-icons $out/share/icons/rose-pine
+    mv icons/rose-pine-dawn-icons $out/share/icons/rose-pine-dawn
+    mv icons/rose-pine-moon-icons $out/share/icons/rose-pine-moon
+
+    for theme in $out/share/icons/*; do
+      gtk-update-icon-cache $theme
+    done
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Rosé Pine icon theme for GTK";
+    homepage = "https://github.com/rose-pine/gtk";
+    license = licenses.gpl3Only;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [romildo the-argus];
+  };
+}
diff --git a/pkgs/data/icons/simp1e-cursors/default.nix b/pkgs/data/icons/simp1e-cursors/default.nix
new file mode 100644
index 0000000000000..962f4ea2618ab
--- /dev/null
+++ b/pkgs/data/icons/simp1e-cursors/default.nix
@@ -0,0 +1,42 @@
+{ lib, stdenvNoCC, fetchFromGitLab, python3, librsvg, xcursorgen }:
+
+stdenvNoCC.mkDerivation rec {
+  pname = "simp1e-cursors";
+  version = "20221103.2";
+
+  src = fetchFromGitLab {
+    owner = "cursors";
+    repo = "simp1e";
+    rev = version;
+    sha256 = "sha256-3DCF6TwxWwYK5pF2Ykr3OwF76H7J03vLNZch/XoZZZk=";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [
+    (python3.withPackages (ps: with ps; [ pillow ]))
+    librsvg
+    xcursorgen
+  ];
+
+  buildPhase = ''
+    runHook preBuild
+    patchShebangs ./build.sh ./cursor-generator
+    HOME=$TMP ./build.sh
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    install -dm 755 $out/share/icons
+    cp -r built_themes/* $out/share/icons/
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "An aesthetic cursor theme for Linux desktops";
+    homepage = "https://gitlab.com/cursors/simp1e";
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ natto1784 ];
+  };
+}
diff --git a/pkgs/data/icons/super-tiny-icons/default.nix b/pkgs/data/icons/super-tiny-icons/default.nix
new file mode 100644
index 0000000000000..502086be41a22
--- /dev/null
+++ b/pkgs/data/icons/super-tiny-icons/default.nix
@@ -0,0 +1,34 @@
+{ pkgs, lib, stdenvNoCC, fetchFromGitHub, }:
+
+stdenvNoCC.mkDerivation {
+  pname = "super-tiny-icons";
+  version = "unstable-2023-05-22";
+
+  src = fetchFromGitHub {
+    owner = "edent";
+    repo = "SuperTinyIcons";
+    rev = "69689fc05d6a14a865723a01b67c1af4741ed357";
+    sha256 = "F1Qw1SLP7+LEiUch0YjBXQcpfU17YLCBk8q6cM77plU=";
+  };
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/share/icons/SuperTinyIcons
+    find $src/images -type d -exec cp -r {} $out/share/icons/SuperTinyIcons/ \;
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Miniscule SVG versions of common logos";
+    longDescription = ''
+      Super Tiny Web Icons are minuscule SVG versions of your favourite logos.
+      The average size is under 568 bytes!
+    '';
+    homepage = "https://github.com/edent/SuperTinyIcons";
+    license = licenses.mit;
+    maintainers = [ maintainers.h7x4 ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/data/icons/tango-icon-theme/default.nix b/pkgs/data/icons/tango-icon-theme/default.nix
index 9e6b0666a1189..a607748c7c38b 100644
--- a/pkgs/data/icons/tango-icon-theme/default.nix
+++ b/pkgs/data/icons/tango-icon-theme/default.nix
@@ -13,8 +13,8 @@ stdenv.mkDerivation rec {
 
   patches = [ ./rsvg-convert.patch ];
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ intltool iconnamingutils imagemagick librsvg ];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ iconnamingutils imagemagick librsvg ];
   propagatedBuildInputs = [ gnome-icon-theme hicolor-icon-theme ];
   # still missing parent icon themes: cristalsvg
 
@@ -24,9 +24,10 @@ stdenv.mkDerivation rec {
 
   postInstall = '''${gtk.out}/bin/gtk-update-icon-cache' "$out/share/icons/Tango" '';
 
-  meta = {
+  meta = with lib; {
     description = "A basic set of icons";
     homepage = "http://tango.freedesktop.org/Tango_Icon_Library";
-    platforms = lib.platforms.linux;
+    platforms = platforms.linux;
+    license = licenses.publicDomain;
   };
 }
diff --git a/pkgs/data/icons/tela-circle-icon-theme/default.nix b/pkgs/data/icons/tela-circle-icon-theme/default.nix
index 44e8fdb6c05fa..6e32d09dac680 100644
--- a/pkgs/data/icons/tela-circle-icon-theme/default.nix
+++ b/pkgs/data/icons/tela-circle-icon-theme/default.nix
@@ -1,6 +1,8 @@
 { lib
 , stdenvNoCC
 , fetchFromGitHub
+, adwaita-icon-theme
+, libsForQt5
 , gtk3
 , hicolor-icon-theme
 , jdupes
@@ -13,17 +15,17 @@
 let
   pname = "tela-circle-icon-theme";
 in
-lib.checkListOfEnum "${pname}: color variants" [ "standard" "black" "blue" "brown" "green" "grey" "orange" "pink" "purple" "red" "yellow" "manjaro" "ubuntu" ] colorVariants
+lib.checkListOfEnum "${pname}: color variants" [ "standard" "black" "blue" "brown" "green" "grey" "orange" "pink" "purple" "red" "yellow" "manjaro" "ubuntu" "dracula" "nord" ] colorVariants
 
 stdenvNoCC.mkDerivation rec {
   inherit pname;
-  version = "2022-03-07";
+  version = "2023-06-25";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    sha256 = "vQeWGZmurvT/UQJ1dx6t+ZeKdJ1Oq9TdHBADw64x18g=";
+    sha256 = "nob0Isx785YRP4QIj2CK+v99CUiRwtkge1dNXCCwaDs=";
   };
 
   nativeBuildInputs = [
@@ -32,6 +34,8 @@ stdenvNoCC.mkDerivation rec {
   ];
 
   propagatedBuildInputs = [
+    adwaita-icon-theme
+    libsForQt5.breeze-icons
     hicolor-icon-theme
   ];
 
@@ -42,16 +46,18 @@ stdenvNoCC.mkDerivation rec {
   dontPatchELF = true;
   dontRewriteSymlinks = true;
 
+  postPatch = ''
+    patchShebangs install.sh
+  '';
+
   installPhase = ''
     runHook preInstall
 
-    patchShebangs install.sh
-
     ./install.sh -d $out/share/icons \
       ${lib.optionalString circularFolder "-c"} \
       ${if allColorVariants then "-a" else builtins.toString colorVariants}
 
-    jdupes --link-soft --recurse $out/share
+    jdupes --quiet --link-soft --recurse $out/share
 
     runHook postInstall
   '';
diff --git a/pkgs/data/icons/tela-icon-theme/default.nix b/pkgs/data/icons/tela-icon-theme/default.nix
index da37b5887e02c..f77ab73032c3c 100644
--- a/pkgs/data/icons/tela-icon-theme/default.nix
+++ b/pkgs/data/icons/tela-icon-theme/default.nix
@@ -2,13 +2,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "tela-icon-theme";
-  version = "2022-08-28";
+  version = "2023-06-25";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
-    repo = pname;
+    repo = "tela-icon-theme";
     rev = version;
-    sha256 = "sha256-SW4MNvtrHpJm6yiS9k11XzzzGSMXdZ71cnvASK1dzno=";
+    hash = "sha256-tv0C4mW2A3dScUXBWa7a3lkG4lPIjZTsj5b1/oEVuiw=";
   };
 
   nativeBuildInputs = [ gtk3 jdupes ];
@@ -35,6 +35,7 @@ stdenvNoCC.mkDerivation rec {
   meta = with lib; {
     description = "A flat colorful Design icon theme";
     homepage = "https://github.com/vinceliuice/tela-icon-theme";
+    changelog = "https://github.com/vinceliuice/Tela-icon-theme/releases/tag/${src.rev}";
     license = licenses.gpl3Only;
     # darwin systems use case-insensitive filesystems that cause hash mismatches
     platforms = subtractLists platforms.darwin platforms.unix;
diff --git a/pkgs/data/icons/vanilla-dmz/default.nix b/pkgs/data/icons/vanilla-dmz/default.nix
index 0d3f273d5bb22..22b66b1c65dcb 100644
--- a/pkgs/data/icons/vanilla-dmz/default.nix
+++ b/pkgs/data/icons/vanilla-dmz/default.nix
@@ -25,18 +25,30 @@ stdenvNoCC.mkDerivation rec {
   dontDropIconThemeCache = true;
 
   buildPhase = ''
-    cd DMZ-White/pngs; ./make.sh; cd -
-    cd DMZ-Black/pngs; ./make.sh; cd -
+    runHook preBuild
+
+    for theme in DMZ-{White,Black}; do
+      pushd $theme/pngs
+      ./make.sh
+      popd
+    done
+
+    runHook postBuild
   '';
 
   installPhase = ''
-    install -d $out/share/icons/Vanilla-DMZ/cursors
-    cp -a DMZ-White/xcursors/* $out/share/icons/Vanilla-DMZ/cursors
-    install -Dm644 DMZ-White/index.theme $out/share/icons/Vanilla-DMZ/index.theme
+    runHook preInstall
+
+    for theme in DMZ-{White,Black}; do
+      mkdir -p $out/share/icons/$theme/cursors
+      cp -a $theme/xcursors/* $out/share/icons/$theme/cursors/
+      install -m644 $theme/index.theme $out/share/icons/$theme/index.theme
+    done
+
+    ln -s $out/share/icons/{DMZ-White,Vanilla-DMZ}
+    ln -s $out/share/icons/{DMZ-Black,Vanilla-DMZ-AA}
 
-    install -d $out/share/icons/Vanilla-DMZ-AA/cursors
-    cp -a DMZ-Black/xcursors/* $out/share/icons/Vanilla-DMZ-AA/cursors
-    install -Dm644 DMZ-Black/index.theme $out/share/icons/Vanilla-DMZ-AA/index.theme
+    runHook postInstall
   '';
 
   meta = with lib; {
diff --git a/pkgs/data/icons/vimix-icon-theme/default.nix b/pkgs/data/icons/vimix-icon-theme/default.nix
index 7ef0abb85c227..45ac27b496504 100644
--- a/pkgs/data/icons/vimix-icon-theme/default.nix
+++ b/pkgs/data/icons/vimix-icon-theme/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenvNoCC
 , fetchFromGitHub
+, gitUpdater
 , gtk3
 , hicolor-icon-theme
 , jdupes
@@ -11,22 +12,27 @@ let
   pname = "vimix-icon-theme";
 
 in
-lib.checkListOfEnum "${pname}: color variants" [ "standard" "Amethyst" "Beryl" "Doder" "Ruby" "Black" "White" ] colorVariants
+lib.checkListOfEnum "${pname}: color variants" [ "standard" "Amethyst" "Beryl" "Doder" "Ruby" "Jade" "Black" "White" ] colorVariants
 
 stdenvNoCC.mkDerivation rec {
   inherit pname;
-  version = "2021-11-09";
+  version = "2023-06-26";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    sha256 = "1ali128027yw5kllip7p32c92pby5gaqs0i393m3bp69547np1d4";
+    sha256 = "5pTYsWdmjSDyrEK+Jbg/9dQ1FHI2rdnr1n0Ysd5mg/U=";
   };
 
-  nativeBuildInputs = [ gtk3 jdupes ];
+  nativeBuildInputs = [
+    gtk3
+    jdupes
+  ];
 
-  propagatedBuildInputs = [ hicolor-icon-theme ];
+  propagatedBuildInputs = [
+    hicolor-icon-theme
+  ];
 
   dontDropIconThemeCache = true;
 
@@ -34,21 +40,25 @@ stdenvNoCC.mkDerivation rec {
   dontPatchELF = true;
   dontRewriteSymlinks = true;
 
+  postPatch = ''
+    patchShebangs install.sh
+  '';
+
   installPhase = ''
     runHook preInstall
 
-    patchShebangs install.sh
-
     ./install.sh \
       ${if colorVariants != [] then builtins.toString colorVariants else "-a"} \
       -d $out/share/icons
 
     # replace duplicate files with symlinks
-    jdupes -L -r $out/share/icons
+    jdupes --quiet --link-soft --recurse $out/share
 
     runHook postInstall
   '';
 
+  passthru.updateScript = gitUpdater { };
+
   meta = with lib; {
     description = "A Material Design icon theme based on Paper icon theme";
     homepage = "https://github.com/vinceliuice/vimix-icon-theme";
diff --git a/pkgs/data/icons/volantes-cursors/default.nix b/pkgs/data/icons/volantes-cursors/default.nix
new file mode 100644
index 0000000000000..b7ef49135e93d
--- /dev/null
+++ b/pkgs/data/icons/volantes-cursors/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, inkscape
+, xcursorgen
+}:
+stdenv.mkDerivation {
+  pname = "volantes-cursors";
+  version = "2022-08-27";
+
+  src = fetchFromGitHub {
+    owner = "varlesh";
+    repo = "volantes-cursors";
+    rev = "b13a4bbf6bd1d7e85fadf7f2ecc44acc198f8d01";
+    hash = "sha256-vJe1S+YHrUBwJSwt2+InTu5ho2FOtz7FjDxu0BIA1Js=";
+  };
+
+  strictDeps = true;
+  nativeBuildInputs = [ inkscape xcursorgen ];
+
+  makeTargets = [ "build" ];
+
+  makeFlags = [ "DESTDIR=$(out)" "PREFIX=" ];
+
+  meta = with lib; {
+    homepage = "https://www.pling.com/p/1356095/";
+    description = "Classic cursor theme with a flying style";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ jordanisaacs ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/data/icons/whitesur-icon-theme/default.nix b/pkgs/data/icons/whitesur-icon-theme/default.nix
index 6270d2a664298..a6514b3fe0d41 100644
--- a/pkgs/data/icons/whitesur-icon-theme/default.nix
+++ b/pkgs/data/icons/whitesur-icon-theme/default.nix
@@ -6,11 +6,11 @@
 , jdupes
 , boldPanelIcons ? false
 , blackPanelIcons ? false
+, alternativeIcons ? false
 , themeVariants ? []
 }:
 
-let
-  pname = "Whitesur-icon-theme";
+let pname = "Whitesur-icon-theme";
 in
 lib.checkListOfEnum "${pname}: theme variants" [
   "default"
@@ -27,13 +27,13 @@ lib.checkListOfEnum "${pname}: theme variants" [
 
 stdenvNoCC.mkDerivation rec {
   inherit pname;
-  version = "2022-08-30";
+  version = "2023-07-03";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    sha256 = "pcvRD4CUwUT46/kmMbnerj5mqPCcHIRreVIh9wz6Kfg=";
+    hash = "sha256-lq6d3BForrvzEJYeEMQZplvn/p6dPjggTToAU9UcPoM=";
   };
 
   nativeBuildInputs = [ gtk3 jdupes ];
@@ -55,6 +55,7 @@ stdenvNoCC.mkDerivation rec {
     ./install.sh --dest $out/share/icons \
       --name WhiteSur \
       --theme ${builtins.toString themeVariants} \
+      ${lib.optionalString alternativeIcons "--alternative"} \
       ${lib.optionalString boldPanelIcons "--bold"} \
       ${lib.optionalString blackPanelIcons "--black"}