summary refs log tree commit diff
path: root/pkgs/data
diff options
context:
space:
mode:
authorgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>2022-01-19 00:09:13 +0000
committerGitHub <noreply@github.com>2022-01-19 00:09:13 +0000
commit4ce5d016525bab7e12802f3f8e83be6d4d8663da (patch)
treef6bbc09f2c05fc08a6d7fdfd28421a59c87add7c /pkgs/data
parent89b3b42c78b0cc15921fea3aeb3922d1bb8a81d7 (diff)
parent48965506a1ac5b0a08a0224551e8604c323691d1 (diff)
downloadnixpkgs-4ce5d016525bab7e12802f3f8e83be6d4d8663da.tar
nixpkgs-4ce5d016525bab7e12802f3f8e83be6d4d8663da.tar.gz
nixpkgs-4ce5d016525bab7e12802f3f8e83be6d4d8663da.tar.bz2
nixpkgs-4ce5d016525bab7e12802f3f8e83be6d4d8663da.tar.lz
nixpkgs-4ce5d016525bab7e12802f3f8e83be6d4d8663da.tar.xz
nixpkgs-4ce5d016525bab7e12802f3f8e83be6d4d8663da.tar.zst
nixpkgs-4ce5d016525bab7e12802f3f8e83be6d4d8663da.zip
Merge master into haskell-updates
Diffstat (limited to 'pkgs/data')
-rw-r--r--pkgs/data/themes/sierra/default.nix61
1 files changed, 51 insertions, 10 deletions
diff --git a/pkgs/data/themes/sierra/default.nix b/pkgs/data/themes/sierra/default.nix
index d3fbb5fe788..e87f6466141 100644
--- a/pkgs/data/themes/sierra/default.nix
+++ b/pkgs/data/themes/sierra/default.nix
@@ -1,26 +1,67 @@
-{ lib, stdenv, fetchFromGitHub, libxml2, gdk-pixbuf, librsvg, gtk-engine-murrine }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, gdk-pixbuf
+, gtk-engine-murrine
+, jdupes
+, librsvg
+, libxml2
+, buttonVariants ? [] # default to all
+, colorVariants ? [] # default to all
+, opacityVariants ? [] # default to all
+, sizeVariants ? [] # default to all
+}:
 
-stdenv.mkDerivation rec {
+let
   pname = "sierra-gtk-theme";
-  version = "2019-12-16";
+in
+lib.checkListOfEnum "${pname}: button variants" [ "standard" "alt" ] buttonVariants
+lib.checkListOfEnum "${pname}: color variants" [ "light" "dark" ] colorVariants
+lib.checkListOfEnum "${pname}: opacity variants" [ "standard" "solid" ] opacityVariants
+lib.checkListOfEnum "${pname}: size variants" [ "standard" "compact" ] sizeVariants
+
+stdenv.mkDerivation {
+  inherit pname;
+  version = "unstable-2021-05-24";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
-    rev = version;
-    sha256 = "14hlz8kbrjypyd6wyrwmnj2wm9w3kc8y00ms35ard7x8lmhs56hr";
+    rev = "05899001c4fc2fec87c4d222cb3997c414e0affd";
+    sha256 = "174l5mryc34ma1r42pk6572c6i9hmzr9vj1a6w06nqz5qcfm1hds";
   };
 
-  nativeBuildInputs = [ libxml2 ];
+  nativeBuildInputs = [
+    jdupes
+    libxml2
+  ];
 
-  buildInputs = [ gdk-pixbuf librsvg ];
+  buildInputs = [
+    gdk-pixbuf
+    librsvg
+  ];
 
-  propagatedUserEnvPkgs = [ gtk-engine-murrine ];
+  propagatedUserEnvPkgs = [
+    gtk-engine-murrine
+  ];
 
   installPhase = ''
-    patchShebangs .
+    runHook preInstall
+
+    patchShebangs install.sh
+
     mkdir -p $out/share/themes
-    name= ./install.sh --dest $out/share/themes
+    name= ./install.sh --dest $out/share/themes \
+      ${lib.optionalString (buttonVariants != []) "--alt " + builtins.toString buttonVariants} \
+      ${lib.optionalString (colorVariants != []) "--color " + builtins.toString colorVariants} \
+      ${lib.optionalString (opacityVariants != []) "--opacity " + builtins.toString opacityVariants} \
+      ${lib.optionalString (sizeVariants != []) "--flat " + builtins.toString sizeVariants}
+
+    # Replace duplicate files with hardlinks to the first file in each
+    # set of duplicates, reducing the installed size in about 79%
+    jdupes -L -r $out/share
+
+    runHook postInstall
   '';
 
   meta = with lib; {