summary refs log tree commit diff
path: root/pkgs/applications/graphics
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2021-06-25 01:25:41 +0200
committerJan Tojnar <jtojnar@gmail.com>2021-06-25 12:41:11 +0200
commit5efd65b2d94b0ac0cf155e013b6747fa22bc04c3 (patch)
treebc1e4e5ecf279e354c926bc52515f90af0d9e81e /pkgs/applications/graphics
parent75ea980211fcc35c472a1dad534d42e838471e20 (diff)
downloadnixpkgs-5efd65b2d94b0ac0cf155e013b6747fa22bc04c3.tar
nixpkgs-5efd65b2d94b0ac0cf155e013b6747fa22bc04c3.tar.gz
nixpkgs-5efd65b2d94b0ac0cf155e013b6747fa22bc04c3.tar.bz2
nixpkgs-5efd65b2d94b0ac0cf155e013b6747fa22bc04c3.tar.lz
nixpkgs-5efd65b2d94b0ac0cf155e013b6747fa22bc04c3.tar.xz
nixpkgs-5efd65b2d94b0ac0cf155e013b6747fa22bc04c3.tar.zst
nixpkgs-5efd65b2d94b0ac0cf155e013b6747fa22bc04c3.zip
inkscape-with-extension: make enabling all extensions easier
Previously, we needed something like

	inkscape-with-extensions.override { inkscapeExtensions = builtins.filter lib.isDerivation (builtins.attrValues inkscape-extensions); }

Now, we can just do

	inkscape-with-extensions.override { inkscapeExtensions = null; }
Diffstat (limited to 'pkgs/applications/graphics')
-rw-r--r--pkgs/applications/graphics/inkscape/with-extensions.nix10
1 files changed, 8 insertions, 2 deletions
diff --git a/pkgs/applications/graphics/inkscape/with-extensions.nix b/pkgs/applications/graphics/inkscape/with-extensions.nix
index c558a6bb062..14fffadd036 100644
--- a/pkgs/applications/graphics/inkscape/with-extensions.nix
+++ b/pkgs/applications/graphics/inkscape/with-extensions.nix
@@ -2,13 +2,19 @@
 , inkscape
 , symlinkJoin
 , makeWrapper
-, inkscapeExtensions ? []
+, inkscapeExtensions ? [ ]
+, inkscape-extensions
 }:
 
+let
+  allExtensions = lib.filter (pkg: lib.isDerivation pkg && !pkg.meta.broken or false) (lib.attrValues inkscape-extensions);
+  selectedExtensions = if inkscapeExtensions == null then allExtensions else inkscapeExtensions;
+in
+
 symlinkJoin {
   name = "inkscape-with-extensions-${lib.getVersion inkscape}";
 
-  paths = [ inkscape ] ++ inkscapeExtensions;
+  paths = [ inkscape ] ++ selectedExtensions;
 
   nativeBuildInputs = [ makeWrapper ];