opentoonz: Init at 1.4.0
This commit is contained in:
parent
7b39d85fc7
commit
4085661911
51
pkgs/applications/graphics/opentoonz/default.nix
Normal file
51
pkgs/applications/graphics/opentoonz/default.nix
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
{ boost, cmake, fetchFromGitHub, freeglut, freetype, glew, libjpeg, libmypaint
|
||||||
|
, libpng, libtiff, libusb1, lz4, lzma, lzo, openblas, pkgconfig, qtbase
|
||||||
|
, qtmultimedia, qtscript, stdenv, superlu, wrapQtAppsHook, }:
|
||||||
|
let source = import ./source.nix { inherit fetchFromGitHub; };
|
||||||
|
in stdenv.mkDerivation rec {
|
||||||
|
inherit (source) src;
|
||||||
|
|
||||||
|
pname = "opentoonz";
|
||||||
|
version = source.versions.opentoonz;
|
||||||
|
|
||||||
|
nativeBuildInputs = [ cmake pkgconfig wrapQtAppsHook ];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
boost
|
||||||
|
freeglut
|
||||||
|
freetype
|
||||||
|
glew
|
||||||
|
libjpeg
|
||||||
|
libmypaint
|
||||||
|
libpng
|
||||||
|
libtiff
|
||||||
|
libusb1
|
||||||
|
lz4
|
||||||
|
lzma
|
||||||
|
lzo
|
||||||
|
openblas
|
||||||
|
qtbase
|
||||||
|
qtmultimedia
|
||||||
|
qtscript
|
||||||
|
superlu
|
||||||
|
];
|
||||||
|
|
||||||
|
postUnpack = "sourceRoot=$sourceRoot/toonz";
|
||||||
|
|
||||||
|
cmakeDir = "../sources";
|
||||||
|
cmakeFlags = [
|
||||||
|
"-DTIFF_INCLUDE_DIR=${libtiff.dev}/include"
|
||||||
|
"-DTIFF_LIBRARY=${libtiff.out}/lib/libtiff.so"
|
||||||
|
];
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
sed -i '/cp -r .*stuff/a\ chmod -R u+w $HOME/.config/OpenToonz/stuff' $out/bin/opentoonz
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Full-featured 2D animation creation software";
|
||||||
|
homepage = "https://opentoonz.github.io/";
|
||||||
|
license = stdenv.lib.licenses.bsd3;
|
||||||
|
maintainers = with stdenv.lib.maintainers; [ chkno ];
|
||||||
|
};
|
||||||
|
}
|
21
pkgs/applications/graphics/opentoonz/libtiff.nix
Normal file
21
pkgs/applications/graphics/opentoonz/libtiff.nix
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
# Per https://github.com/opentoonz/opentoonz/blob/master/doc/how_to_build_linux.md ,
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
{ fetchFromGitHub, libtiff }:
|
||||||
|
let source = import ./source.nix { inherit fetchFromGitHub; };
|
||||||
|
in libtiff.overrideAttrs (old: {
|
||||||
|
inherit (source) src;
|
||||||
|
version = source.versions.libtiff + "-opentoonz";
|
||||||
|
postUnpack = (old.postUnpack or "") + ''
|
||||||
|
sourceRoot="$sourceRoot/thirdparty/tiff-${source.versions.libtiff}"
|
||||||
|
'';
|
||||||
|
# opentoonz uses internal libtiff headers
|
||||||
|
postInstall = (old.postInstall or "") + ''
|
||||||
|
cp libtiff/{tif_config,tif_dir,tiffiop}.h $dev/include
|
||||||
|
'';
|
||||||
|
})
|
16
pkgs/applications/graphics/opentoonz/source.nix
Normal file
16
pkgs/applications/graphics/opentoonz/source.nix
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
# opentoonz's source archive contains both opentoonz's source and a modified
|
||||||
|
# version of libtiff that opentoonz requires.
|
||||||
|
|
||||||
|
{ fetchFromGitHub, }: rec {
|
||||||
|
versions = {
|
||||||
|
opentoonz = "1.4.0";
|
||||||
|
libtiff = "4.0.3";
|
||||||
|
};
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "opentoonz";
|
||||||
|
repo = "opentoonz";
|
||||||
|
rev = "v${versions.opentoonz}";
|
||||||
|
sha256 = "0vgclx2yydsm5i2smff3fj8m750nhf35wfhva37kywgws01s189b";
|
||||||
|
};
|
||||||
|
}
|
@ -21227,6 +21227,10 @@ in
|
|||||||
|
|
||||||
opentimestamps-client = python3Packages.callPackage ../tools/misc/opentimestamps-client {};
|
opentimestamps-client = python3Packages.callPackage ../tools/misc/opentimestamps-client {};
|
||||||
|
|
||||||
|
opentoonz = (qt5.overrideScope' (_: _: {
|
||||||
|
libtiff = callPackage ../applications/graphics/opentoonz/libtiff.nix { };
|
||||||
|
})).callPackage ../applications/graphics/opentoonz { };
|
||||||
|
|
||||||
opentx = libsForQt5.callPackage ../applications/misc/opentx { };
|
opentx = libsForQt5.callPackage ../applications/misc/opentx { };
|
||||||
|
|
||||||
opera = callPackage ../applications/networking/browsers/opera {};
|
opera = callPackage ../applications/networking/browsers/opera {};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user