gmic: cosmetic changes
- reorder input set - use rec-less, finalAttrs-style attributes - include cimg and gmic to passthru.tests - use `preConfigure` instead of `sourceRoot` - remove nested `with` from meta attributes
This commit is contained in:
parent
79101d8f8a
commit
136b947128
|
@ -1,26 +1,27 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, variant ? "standalone"
|
||||
, fetchzip
|
||||
, cimg
|
||||
, cmake
|
||||
, pkg-config
|
||||
, curl
|
||||
, fftw
|
||||
, gimp
|
||||
, gimpPlugins
|
||||
, gmic
|
||||
, graphicsmagick
|
||||
, libjpeg
|
||||
, libpng
|
||||
, libtiff
|
||||
, ninja
|
||||
, wrapQtAppsHook
|
||||
, nix-update-script
|
||||
, opencv3
|
||||
, openexr
|
||||
, graphicsmagick
|
||||
, fftw
|
||||
, zlib
|
||||
, libjpeg
|
||||
, libtiff
|
||||
, libpng
|
||||
, curl
|
||||
, gimp ? null
|
||||
, gmic
|
||||
, pkg-config
|
||||
, qtbase
|
||||
, qttools
|
||||
, nix-update-script
|
||||
, gimpPlugins
|
||||
, wrapQtAppsHook
|
||||
, zlib
|
||||
, variant ? "standalone"
|
||||
}:
|
||||
|
||||
let
|
||||
|
@ -40,21 +41,23 @@ let
|
|||
|
||||
in
|
||||
|
||||
assert lib.assertMsg (builtins.hasAttr variant variants) "gmic-qt variant “${variant}” is not supported. Please use one of ${lib.concatStringsSep ", " (builtins.attrNames variants)}.";
|
||||
assert lib.assertMsg
|
||||
(builtins.hasAttr variant variants)
|
||||
"gmic-qt variant \"${variant}\" is not supported. Please use one of ${lib.concatStringsSep ", " (builtins.attrNames variants)}.";
|
||||
|
||||
assert lib.assertMsg (builtins.all (d: d != null) variants.${variant}.extraDeps or []) "gmic-qt variant “${variant}” is missing one of its dependencies.";
|
||||
assert lib.assertMsg
|
||||
(builtins.all (d: d != null) variants.${variant}.extraDeps or [])
|
||||
"gmic-qt variant \"${variant}\" is missing one of its dependencies.";
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "gmic-qt${lib.optionalString (variant != "standalone") "-${variant}"}";
|
||||
version = "3.2.4";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://gmic.eu/files/source/gmic_${version}.tar.gz";
|
||||
url = "https://gmic.eu/files/source/gmic_${finalAttrs.version}.tar.gz";
|
||||
hash = "sha256-FJ2zlsah/3Jf5ie4UhQsPvMoxDMc6iHl3AkhKsZSuqE=";
|
||||
};
|
||||
|
||||
sourceRoot = "source/gmic-qt";
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
|
@ -77,11 +80,9 @@ stdenv.mkDerivation rec {
|
|||
curl
|
||||
] ++ variants.${variant}.extraDeps or [];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DGMIC_QT_HOST=${if variant == "standalone" then "none" else variant}"
|
||||
"-DENABLE_SYSTEM_GMIC=ON"
|
||||
"-DENABLE_DYNAMIC_LINKING=ON"
|
||||
];
|
||||
preConfigure = ''
|
||||
cd gmic-qt
|
||||
'';
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs \
|
||||
|
@ -89,6 +90,12 @@ stdenv.mkDerivation rec {
|
|||
translations/lrelease.sh
|
||||
'';
|
||||
|
||||
cmakeFlags = [
|
||||
"-DGMIC_QT_HOST=${if variant == "standalone" then "none" else variant}"
|
||||
"-DENABLE_SYSTEM_GMIC=ON"
|
||||
"-DENABLE_DYNAMIC_LINKING=ON"
|
||||
];
|
||||
|
||||
postFixup = lib.optionalString (variant == "gimp") ''
|
||||
echo "wrapping $out/${gimp.targetPluginDir}/gmic_gimp_qt/gmic_gimp_qt"
|
||||
wrapQtApp "$out/${gimp.targetPluginDir}/gmic_gimp_qt/gmic_gimp_qt"
|
||||
|
@ -97,17 +104,19 @@ stdenv.mkDerivation rec {
|
|||
passthru = {
|
||||
tests = {
|
||||
gimp-plugin = gimpPlugins.gmic;
|
||||
# Needs to update them all in lockstep.
|
||||
inherit cimg gmic;
|
||||
};
|
||||
|
||||
updateScript = nix-update-script { };
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = variants.${variant}.description;
|
||||
meta = {
|
||||
homepage = "http://gmic.eu/";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = [ maintainers.lilyinstarlight ];
|
||||
platforms = platforms.unix;
|
||||
inherit (variants.${variant}) description;
|
||||
license = lib.licenses.gpl3Plus;
|
||||
maintainers = [ lib.maintainers.lilyinstarlight ];
|
||||
platforms = lib.platforms.unix;
|
||||
mainProgram = "gmic_qt";
|
||||
};
|
||||
}
|
||||
})
|
||||
|
|
Loading…
Reference in a new issue