summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorScott Worley <scottworley@scottworley.com>2021-06-07 15:59:24 -0700
committergithub-actions[bot] <github-actions[bot]@users.noreply.github.com>2022-01-05 18:42:13 +0000
commitcb6a45386bf10e73ead7501513d57e2fd6b9a252 (patch)
tree865a89e13431d30cc89338ce7794ff19f397edf3
parentllvmPackages_{12,13,git}.compiler-rt: remove new runtimes in useLLVM (diff)
downloadnixpkgs-cb6a45386bf10e73ead7501513d57e2fd6b9a252.tar.gz
opentoonz: 1.4.0 -> 1.5.0
(The qtbase diamond-dependency problem was resolved in 4bac8a7a0098) (cherry picked from commit a20e31bf09daf629f36c6b773044663d04d6c536)
-rw-r--r--pkgs/applications/graphics/opentoonz/default.nix6
-rw-r--r--pkgs/applications/graphics/opentoonz/libtiff.nix36
-rw-r--r--pkgs/applications/graphics/opentoonz/source.nix6
-rw-r--r--pkgs/top-level/all-packages.nix9
4 files changed, 40 insertions, 17 deletions
diff --git a/pkgs/applications/graphics/opentoonz/default.nix b/pkgs/applications/graphics/opentoonz/default.nix
index 14a130d7f412..7fd9606f3abc 100644
--- a/pkgs/applications/graphics/opentoonz/default.nix
+++ b/pkgs/applications/graphics/opentoonz/default.nix
@@ -1,6 +1,6 @@
{ boost, cmake, fetchFromGitHub, freeglut, freetype, glew, libjpeg, libmypaint
-, libpng, libtiff, libusb1, lz4, xz, lzo, openblas, pkg-config, qtbase
-, qtmultimedia, qtscript, lib, stdenv, superlu, wrapQtAppsHook, }:
+, libpng, libtiff, libusb1, lz4, xz, lzo, openblas, opencv, pkg-config, qtbase
+, qtmultimedia, qtscript, qtserialport, lib, stdenv, superlu, wrapQtAppsHook, }:
let source = import ./source.nix { inherit fetchFromGitHub; };
in stdenv.mkDerivation rec {
inherit (source) src;
@@ -24,9 +24,11 @@ in stdenv.mkDerivation rec {
xz
lzo
openblas
+ opencv
qtbase
qtmultimedia
qtscript
+ qtserialport
superlu
];
diff --git a/pkgs/applications/graphics/opentoonz/libtiff.nix b/pkgs/applications/graphics/opentoonz/libtiff.nix
index 6663c47553e3..4ab6a44a39b3 100644
--- a/pkgs/applications/graphics/opentoonz/libtiff.nix
+++ b/pkgs/applications/graphics/opentoonz/libtiff.nix
@@ -2,20 +2,38 @@
# opentoonz requires its own modified version of libtiff. We still build it as
# a separate package
# 1. For visibility for tools like vulnix, and
-# 2. To avoid a diamond-dependency problem with qt linking the normal libtiff
-# and opentoonz linking qt and this modified libtiff, we build a qt against
-# this modified libtiff as well.
+# 2. To avoid a diamond-dependency problem with opencv linking the normal libtiff
+# and opentoonz linking opencv and this modified libtiff, we build an opencv
+# against this modified libtiff as well.
+#
+# We use a separate mkDerivation rather than a minimal libtiff.overrideAttrs
+# because the main libtiff builds with cmake and this version of libtiff was
+# forked before libtiff gained CMake build capability (added in libtiff-4.0.5).
+
+{ lib, fetchFromGitHub, stdenv, pkg-config, zlib, libjpeg, xz, libtiff, }:
-{ fetchFromGitHub, libtiff }:
let source = import ./source.nix { inherit fetchFromGitHub; };
-in libtiff.overrideAttrs (old: {
- inherit (source) src;
+
+in stdenv.mkDerivation {
+ pname = "libtiff";
version = source.versions.libtiff + "-opentoonz";
- postUnpack = (old.postUnpack or "") + ''
+
+ inherit (source) src;
+ outputs = [ "bin" "dev" "out" "man" "doc" ];
+
+ nativeBuildInputs = [ pkg-config ];
+ propagatedBuildInputs = [ zlib libjpeg xz ];
+
+ postUnpack = ''
sourceRoot="$sourceRoot/thirdparty/tiff-${source.versions.libtiff}"
'';
+
# opentoonz uses internal libtiff headers
- postInstall = (old.postInstall or "") + ''
+ postInstall = ''
cp libtiff/{tif_config,tif_dir,tiffiop}.h $dev/include
'';
-})
+
+ meta = libtiff.meta // {
+ maintainers = with lib.maintainers; [ chkno ];
+ };
+}
diff --git a/pkgs/applications/graphics/opentoonz/source.nix b/pkgs/applications/graphics/opentoonz/source.nix
index 7378d2f5f965..27a4b8c0b0d2 100644
--- a/pkgs/applications/graphics/opentoonz/source.nix
+++ b/pkgs/applications/graphics/opentoonz/source.nix
@@ -3,14 +3,14 @@
{ fetchFromGitHub, }: rec {
versions = {
- opentoonz = "1.4.0";
- libtiff = "4.0.3";
+ opentoonz = "1.5.0";
+ libtiff = "4.0.3"; # The version in thirdparty/tiff-*
};
src = fetchFromGitHub {
owner = "opentoonz";
repo = "opentoonz";
rev = "v${versions.opentoonz}";
- sha256 = "0vgclx2yydsm5i2smff3fj8m750nhf35wfhva37kywgws01s189b";
+ sha256 = "1rw30ksw3zjph1cwxkfvqj0330v8wd4333gn0fdf3cln1w0549lk";
};
}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index b50a1222dd1d..d9da6ec69ebe 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -27383,9 +27383,12 @@ with pkgs;
opentimestamps-client = python3Packages.callPackage ../tools/misc/opentimestamps-client {};
- opentoonz = (qt514.overrideScope' (_: _: {
- libtiff = callPackage ../applications/graphics/opentoonz/libtiff.nix { };
- })).callPackage ../applications/graphics/opentoonz { };
+ opentoonz = let
+ opentoonz-libtiff = callPackage ../applications/graphics/opentoonz/libtiff.nix { };
+ in qt5.callPackage ../applications/graphics/opentoonz {
+ libtiff = opentoonz-libtiff;
+ opencv = opencv.override { libtiff = opentoonz-libtiff; };
+ };
opentabletdriver = callPackage ../tools/X11/opentabletdriver { };