diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/graphics')
65 files changed, 1002 insertions, 631 deletions
diff --git a/nixpkgs/pkgs/applications/graphics/ImageMagick/7.0.nix b/nixpkgs/pkgs/applications/graphics/ImageMagick/7.0.nix index c227416b021..e7abc94a426 100644 --- a/nixpkgs/pkgs/applications/graphics/ImageMagick/7.0.nix +++ b/nixpkgs/pkgs/applications/graphics/ImageMagick/7.0.nix @@ -13,8 +13,8 @@ let else throw "ImageMagick is not supported on this platform."; cfg = { - version = "7.0.10-14"; - sha256 = "1qcsq5884iqis1adpfbx3cwki8v4q9wwh70fpcaqnwwmznmqfq4j"; + version = "7.0.10-27"; + sha256 = "1fqwbg2ws6ix3bymx7ncb4k4f6bg8q44n9xnlvngjapflnrmhcph"; patches = []; }; in @@ -71,7 +71,7 @@ stdenv.mkDerivation { moveToOutput "lib/ImageMagick-*/config-Q16HDRI" "$dev" # includes configure params for file in "$dev"/bin/*-config; do substituteInPlace "$file" --replace pkg-config \ - "PKG_CONFIG_PATH='$dev/lib/pkgconfig' '${pkgconfig}/bin/pkg-config'" + "PKG_CONFIG_PATH='$dev/lib/pkgconfig' '${pkgconfig}/bin/${pkgconfig.targetPrefix}pkg-config'" done '' + lib.optionalString (ghostscript != null) '' for la in $out/lib/*.la; do diff --git a/nixpkgs/pkgs/applications/graphics/ImageMagick/default.nix b/nixpkgs/pkgs/applications/graphics/ImageMagick/default.nix index 56f88fc4ef7..7a2ae8e4d66 100644 --- a/nixpkgs/pkgs/applications/graphics/ImageMagick/default.nix +++ b/nixpkgs/pkgs/applications/graphics/ImageMagick/default.nix @@ -85,9 +85,9 @@ stdenv.mkDerivation { moveToOutput "lib/ImageMagick-*/config-Q16" "$dev" # includes configure params for file in "$dev"/bin/*-config; do substituteInPlace "$file" --replace "${pkgconfig}/bin/pkg-config -config" \ - ${pkgconfig}/bin/pkg-config + ${pkgconfig}/bin/${pkgconfig.targetPrefix}pkg-config substituteInPlace "$file" --replace ${pkgconfig}/bin/pkg-config \ - "PKG_CONFIG_PATH='$dev/lib/pkgconfig' '${pkgconfig}/bin/pkg-config'" + "PKG_CONFIG_PATH='$dev/lib/pkgconfig' '${pkgconfig}/bin/${pkgconfig.targetPrefix}pkg-config'" done '' + lib.optionalString (ghostscript != null) '' for la in $out/lib/*.la; do diff --git a/nixpkgs/pkgs/applications/graphics/PythonMagick/default.nix b/nixpkgs/pkgs/applications/graphics/PythonMagick/default.nix deleted file mode 100644 index 487648d07ca..00000000000 --- a/nixpkgs/pkgs/applications/graphics/PythonMagick/default.nix +++ /dev/null @@ -1,28 +0,0 @@ -# This expression provides Python bindings to ImageMagick. Python libraries are supposed to be called via `python-packages.nix`. - -{ stdenv, fetchurl, python, pkgconfig, imagemagick, autoreconfHook }: - -stdenv.mkDerivation rec { - pname = "pythonmagick"; - version = "0.9.16"; - - src = fetchurl { - url = "mirror://imagemagick/python/releases/PythonMagick-${version}.tar.xz"; - sha256 = "137278mfb5079lns2mmw73x8dhpzgwha53dyl00mmhj2z25varpn"; - }; - - postPatch = '' - rm configure - ''; - - configureFlags = [ "--with-boost=${python.pkgs.boost}" ]; - - nativeBuildInputs = [ pkgconfig autoreconfHook ]; - buildInputs = [ python python.pkgs.boost imagemagick ]; - - meta = with stdenv.lib; { - homepage = "http://www.imagemagick.org/script/api.php"; - license = licenses.imagemagick; - description = "PythonMagick provides object oriented bindings for the ImageMagick Library."; - }; -} diff --git a/nixpkgs/pkgs/applications/graphics/akira/default.nix b/nixpkgs/pkgs/applications/graphics/akira/default.nix index adbc1eac379..4038d653a3d 100644 --- a/nixpkgs/pkgs/applications/graphics/akira/default.nix +++ b/nixpkgs/pkgs/applications/graphics/akira/default.nix @@ -23,13 +23,13 @@ stdenv.mkDerivation rec { pname = "akira"; - version = "2019-10-12"; + version = "0.0.13"; src = fetchFromGitHub { owner = "akiraux"; repo = "Akira"; - rev = "cab952dee4591b6bde34d670c1f853f5a3ff6b19"; - sha256 = "1fp3a79hkh6xwwqqdrx4zqq2zhsm236c6fhhl5f2nmi108yxz04q"; + rev = "v${version}"; + sha256 = "1i20q78jagy8xky68nmd0n7mqvh88r98kp626rnlgyzvlc3c22cm"; }; nativeBuildInputs = [ @@ -59,8 +59,6 @@ stdenv.mkDerivation rec { mesonFlags = [ "-Dprofile=default" ]; - patches = [ ./fix-build-with-vala-0-44-or-later.patch ]; - postPatch = '' chmod +x build-aux/meson/post_install.py patchShebangs build-aux/meson/post_install.py @@ -70,7 +68,7 @@ stdenv.mkDerivation rec { description = "Native Linux Design application built in Vala and GTK"; homepage = "https://github.com/akiraux/Akira"; license = licenses.gpl3; - maintainers = with maintainers; [ filalex77 ] ++ pantheon.maintainers; + maintainers = with maintainers; [ filalex77 neonfuz ] ++ pantheon.maintainers; platforms = platforms.linux; }; } diff --git a/nixpkgs/pkgs/applications/graphics/akira/fix-build-with-vala-0-44-or-later.patch b/nixpkgs/pkgs/applications/graphics/akira/fix-build-with-vala-0-44-or-later.patch deleted file mode 100644 index 3c35900c04f..00000000000 --- a/nixpkgs/pkgs/applications/graphics/akira/fix-build-with-vala-0-44-or-later.patch +++ /dev/null @@ -1,88 +0,0 @@ -From bcda8fd53f6f232db0b6411269ba108af551629f Mon Sep 17 00:00:00 2001 -From: Alberto Fanjul <albertofanjul@gmail.com> -Date: Tue, 9 Apr 2019 09:45:36 +0200 -Subject: [PATCH] Build on vala >= 0.44.2 - ---- - src/FileFormat/JsonObject.vala | 2 +- - src/FileFormat/JsonObjectArray.vala | 2 +- - src/FileFormat/ZipArchiveHandler.vala | 18 +++++++++++++++++- - 3 files changed, 19 insertions(+), 3 deletions(-) - -diff --git a/src/FileFormat/JsonObject.vala b/src/FileFormat/JsonObject.vala -index 7bfe46f..805fbad 100644 ---- a/src/FileFormat/JsonObject.vala -+++ b/src/FileFormat/JsonObject.vala -@@ -31,7 +31,7 @@ public abstract class Akira.FileFormat.JsonObject : GLib.Object { - - private ObjectClass obj_class; - -- public JsonObject.from_object (Json.Object object) { -+ protected JsonObject.from_object (Json.Object object) { - Object (object: object); - } - -diff --git a/src/FileFormat/JsonObjectArray.vala b/src/FileFormat/JsonObjectArray.vala -index 4f6e573..d0a7dad 100644 ---- a/src/FileFormat/JsonObjectArray.vala -+++ b/src/FileFormat/JsonObjectArray.vala -@@ -31,7 +31,7 @@ public abstract class Akira.FileFormat.JsonObjectArray : Object { - * - * Your JsonObject implementation should have it's own list of items - */ -- public JsonObjectArray (Json.Object object, string property_name) { -+ protected JsonObjectArray (Json.Object object, string property_name) { - Object (object: object, property_name: property_name); - } - -diff --git a/src/FileFormat/ZipArchiveHandler.vala b/src/FileFormat/ZipArchiveHandler.vala -index ca60dd0..5d65aa2 100644 ---- a/src/FileFormat/ZipArchiveHandler.vala -+++ b/src/FileFormat/ZipArchiveHandler.vala -@@ -262,11 +262,17 @@ public class Akira.FileFormat.ZipArchiveHandler : GLib.Object { - continue; - } - -+ Posix.off_t offset; -+#if VALA_0_42 -+ uint8[] buffer; -+ while (archive.read_data_block (out buffer, out offset) == Archive.Result.OK) { -+ if (extractor.write_data_block (buffer, offset) != Archive.Result.OK) { -+#else - void* buffer = null; - size_t buffer_length; -- Posix.off_t offset; - while (archive.read_data_block (out buffer, out buffer_length, out offset) == Archive.Result.OK) { - if (extractor.write_data_block (buffer, buffer_length, offset) != Archive.Result.OK) { -+#endif - break; - } - } -@@ -316,9 +322,15 @@ public class Akira.FileFormat.ZipArchiveHandler : GLib.Object { - // Add an entry to the archive - Archive.Entry entry = new Archive.Entry (); - entry.set_pathname (initial_folder.get_relative_path (current_file)); -+#if VALA_0_42 -+ entry.set_size ((Archive.int64_t) file_info.get_size ()); -+ entry.set_filetype (Archive.FileType.IFREG); -+ entry.set_perm (Archive.FileType.IFREG); -+#else - entry.set_size (file_info.get_size ()); - entry.set_filetype ((uint) Posix.S_IFREG); - entry.set_perm (0644); -+#endif - - if (archive.write_header (entry) != Archive.Result.OK) { - critical ("Error writing '%s': %s (%d)", current_file.get_path (), archive.error_string (), archive.errno ()); -@@ -333,7 +345,11 @@ public class Akira.FileFormat.ZipArchiveHandler : GLib.Object { - break; - } - -+#if VALA_0_42 -+ archive.write_data (buffer[0:bytes_read]); -+#else - archive.write_data (buffer, bytes_read); -+#endif - } - } - } diff --git a/nixpkgs/pkgs/applications/graphics/avocode/default.nix b/nixpkgs/pkgs/applications/graphics/avocode/default.nix index d72d52f3c2f..53779041fc9 100644 --- a/nixpkgs/pkgs/applications/graphics/avocode/default.nix +++ b/nixpkgs/pkgs/applications/graphics/avocode/default.nix @@ -5,11 +5,11 @@ stdenv.mkDerivation rec { pname = "avocode"; - version = "4.6.3"; + version = "4.7.0"; src = fetchurl { url = "https://media.avocode.com/download/avocode-app/${version}/avocode-${version}-linux.zip"; - sha256 = "1s8i82963fdx5q4wgh0cn211h0p1r1mzyss0g99bplp8d9ll40kw"; + sha256 = "0kn0422k4vi2qifasnkd0cjf5l6z0rmkqv6l46ygxk3qyykjnqcm"; }; libPath = stdenv.lib.makeLibraryPath (with xorg; [ @@ -52,7 +52,7 @@ stdenv.mkDerivation rec { icon = "avocode"; desktopName = "Avocode"; genericName = "Design Inspector"; - categories = "Application;Development;"; + categories = "Development;"; comment = "The bridge between designers and developers"; }; diff --git a/nixpkgs/pkgs/applications/graphics/cloudcompare/default.nix b/nixpkgs/pkgs/applications/graphics/cloudcompare/default.nix new file mode 100644 index 00000000000..209a6a4753b --- /dev/null +++ b/nixpkgs/pkgs/applications/graphics/cloudcompare/default.nix @@ -0,0 +1,82 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, dxflib +, eigen +, flann +, gdal +, LASzip +, libLAS +, pdal +, qtbase +, qtsvg +, qttools +, tbb +, xercesc +}: + +mkDerivation rec { + pname = "cloudcompare"; + version = "2.11.0"; + + src = fetchFromGitHub { + owner = "CloudCompare"; + repo = "CloudCompare"; + rev = "v${version}"; + sha256 = "02ahhhivgb9k1aygw1m35wdvhaizag1r98mb0r6zzrs5p4y64wlb"; + # As of writing includes (https://github.com/CloudCompare/CloudCompare/blob/a1c589c006fc325e8b560c77340809b9c7e7247a/.gitmodules): + # * libE57Format + # * PoissonRecon + # In > 2.11 it will also contain + # * CCCoreLib + fetchSubmodules = true; + }; + + nativeBuildInputs = [ + cmake + eigen # header-only + ]; + + buildInputs = [ + dxflib + flann + gdal + LASzip + libLAS + pdal + qtbase + qtsvg + qttools + tbb + xercesc + ]; + + cmakeFlags = [ + # TODO: This will become -DCCCORELIB_USE_TBB=ON in > 2.11.0, see + # https://github.com/CloudCompare/CloudCompare/commit/f5a0c9fd788da26450f3fa488b2cf0e4a08d255f + "-DCOMPILE_CC_CORE_LIB_WITH_TBB=ON" + "-DOPTION_USE_DXF_LIB=ON" + "-DOPTION_USE_GDAL=ON" + "-DOPTION_USE_SHAPE_LIB=ON" + + "-DPLUGIN_GL_QEDL=ON" + "-DPLUGIN_GL_QSSAO=ON" + "-DPLUGIN_IO_QADDITIONAL=ON" + "-DPLUGIN_IO_QCORE=ON" + "-DPLUGIN_IO_QCSV_MATRIX=ON" + "-DPLUGIN_IO_QE57=ON" + "-DPLUGIN_IO_QFBX=OFF" # Autodesk FBX SDK is gratis+proprietary; not packaged in nixpkgs + "-DPLUGIN_IO_QPDAL=ON" # required for .las/.laz support + "-DPLUGIN_IO_QPHOTOSCAN=ON" + "-DPLUGIN_IO_QRDB=OFF" # Riegl rdblib is proprietary; not packaged in nixpkgs + ]; + + meta = with lib; { + description = "3D point cloud and mesh processing software"; + homepage = "https://cloudcompare.org"; + license = licenses.gpl2Plus; + maintainers = with maintainers; [ nh2 ]; + platforms = with platforms; linux; # only tested here; might work on others + }; +} diff --git a/nixpkgs/pkgs/applications/graphics/cq-editor/default.nix b/nixpkgs/pkgs/applications/graphics/cq-editor/default.nix index a6cfd256ac5..036edf80ab9 100644 --- a/nixpkgs/pkgs/applications/graphics/cq-editor/default.nix +++ b/nixpkgs/pkgs/applications/graphics/cq-editor/default.nix @@ -6,13 +6,13 @@ mkDerivationWith python3Packages.buildPythonApplication rec { pname = "cq-editor"; - version = "0.1RC2"; + version = "0.1.1"; src = fetchFromGitHub { owner = "CadQuery"; repo = "CQ-editor"; rev = version; - sha256 = "0zima4pmn34s8b2axxwy6qd1f1r5ki34byq4x3rrd7n3g0hagxz5"; + sha256 = "1970izjaa60r5cg9i35rzz9lk5c5d8q1vw1rh2skvfbf63z1hnzv"; }; propagatedBuildInputs = with python3Packages; [ diff --git a/nixpkgs/pkgs/applications/graphics/darktable/default.nix b/nixpkgs/pkgs/applications/graphics/darktable/default.nix index b021c186b5c..71c2de08a56 100644 --- a/nixpkgs/pkgs/applications/graphics/darktable/default.nix +++ b/nixpkgs/pkgs/applications/graphics/darktable/default.nix @@ -7,12 +7,12 @@ }: stdenv.mkDerivation rec { - version = "3.0.2"; + version = "3.2.1"; pname = "darktable"; src = fetchurl { url = "https://github.com/darktable-org/darktable/releases/download/release-${version}/darktable-${version}.tar.xz"; - sha256 = "1yrnkw8c47kmy2x6m1xp69hwyk02xyc8pd9kvcmyj54lzrhzdfka"; + sha256 = "035rvqmw386hm0jpi14lf4dnpr5rjkalzjkyprqh42nwi3m86dkf"; }; nativeBuildInputs = [ cmake ninja llvm pkgconfig intltool perl desktop-file-utils wrapGAppsHook ]; @@ -34,8 +34,6 @@ stdenv.mkDerivation rec { "-DUSE_KWALLET=OFF" ]; - # Reduce the risk of collisions - postInstall = "rm -r $out/share/doc"; # darktable changed its rpath handling in commit # 83c70b876af6484506901e6b381304ae0d073d3c and as a result the @@ -45,6 +43,10 @@ stdenv.mkDerivation rec { libPathEnvVar = if stdenv.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH"; libPathPrefix = "$out/lib/darktable" + stdenv.lib.optionalString stdenv.isLinux ":${ocl-icd}/lib"; in '' + for f in $out/share/darktable/kernels/*.cl; do + sed -r "s|#include \"(.*)\"|#include \"$out/share/darktable/kernels/\1\"|g" -i "$f" + done + gappsWrapperArgs+=( --prefix ${libPathEnvVar} ":" "${libPathPrefix}" ) diff --git a/nixpkgs/pkgs/applications/graphics/digikam/default.nix b/nixpkgs/pkgs/applications/graphics/digikam/default.nix index 63b8d7b3f60..2c0dbd5f3f0 100644 --- a/nixpkgs/pkgs/applications/graphics/digikam/default.nix +++ b/nixpkgs/pkgs/applications/graphics/digikam/default.nix @@ -1,4 +1,4 @@ -{ mkDerivation, lib, fetchFromGitHub, cmake, doxygen, extra-cmake-modules, wrapGAppsHook +{ mkDerivation, lib, fetchurl, cmake, doxygen, extra-cmake-modules, wrapGAppsHook # For `digitaglinktree` , perl, sqlite @@ -26,14 +26,12 @@ , exiv2 , ffmpeg , flex -, jasper ? null, withJpeg2k ? false # disable JPEG2000 support, jasper has unfixed CVE , lcms2 , lensfun , libgphoto2 , libkipi , libksane , liblqr1 -, libqtav , libusb1 , marble , libGL @@ -52,13 +50,11 @@ mkDerivation rec { pname = "digikam"; - version = "6.2.0"; + version = "6.4.0"; - src = fetchFromGitHub { - owner = "KDE"; - repo = "digikam"; - rev = "v${version}"; - sha256 = "1l1nb1nwicmip2jxhn5gzr7h60igvns0zs3kzp36r6qf4wvg3v2z"; + src = fetchurl { + url = "https://download.kde.org/stable/${pname}/${version}/${pname}-${version}.tar.xz"; + sha256 = "0vwd97zkxv30y8x0z76s4fsj4w9ysgsmpjclp2h2bpava7zi4l3p"; }; nativeBuildInputs = [ cmake doxygen extra-cmake-modules kdoctools wrapGAppsHook ]; @@ -76,7 +72,6 @@ mkDerivation rec { libkipi libksane liblqr1 - libqtav libusb1 libGL libGLU @@ -102,8 +97,7 @@ mkDerivation rec { marble oxygen threadweaver - ] - ++ lib.optionals withJpeg2k [ jasper ]; + ]; enableParallelBuilding = true; diff --git a/nixpkgs/pkgs/applications/graphics/displaycal/default.nix b/nixpkgs/pkgs/applications/graphics/displaycal/default.nix index 7a99361a03d..5b324a5974d 100644 --- a/nixpkgs/pkgs/applications/graphics/displaycal/default.nix +++ b/nixpkgs/pkgs/applications/graphics/displaycal/default.nix @@ -12,16 +12,16 @@ }: let - inherit (python2.pkgs) buildPythonApplication wxPython numpy; -in buildPythonApplication { + inherit (python2.pkgs) buildPythonApplication wxPython numpy dbus-python; +in buildPythonApplication rec { pname = "displaycal"; - version = "3.5.0.0"; + version = "3.8.9.3"; enableParallelBuilding = true; src = fetchurl { - url = "mirror://sourceforge/project/dispcalgui/release/3.5.0.0/DisplayCAL-3.5.0.0.tar.gz"; - sha256 = "1j496sv8pbhby5hkkbp07k6bs3f7mb1l3dijmn2iga3kmix0fn5q"; + url = "mirror://sourceforge/project/dispcalgui/release/${version}/DisplayCAL-${version}.tar.gz"; + sha256 = "1sivi4q7sqsrc95qg5gh37bsm2761md4mpl89hflzwk6kyyxyd3w"; }; propagatedBuildInputs = [ @@ -34,6 +34,7 @@ in buildPythonApplication { argyllcms wxPython numpy + dbus-python ]; nativeBuildInputs = [ @@ -42,7 +43,8 @@ in buildPythonApplication { preConfigure = '' mkdir dist - cp {misc,dist}/DisplayCAL.appdata.xml + cp {misc,dist}/net.displaycal.DisplayCAL.appdata.xml + touch dist/copyright mkdir -p $out ln -s $out/share/DisplayCAL $out/Resources ''; diff --git a/nixpkgs/pkgs/applications/graphics/draftsight/default.nix b/nixpkgs/pkgs/applications/graphics/draftsight/default.nix deleted file mode 100644 index ccd4fd660f7..00000000000 --- a/nixpkgs/pkgs/applications/graphics/draftsight/default.nix +++ /dev/null @@ -1,88 +0,0 @@ -{ stdenv, fetchurl, dpkg, makeWrapper, gcc, libGLU, libGL, xdg_utils, - dbus, alsaLib, cups, fontconfig, glib, icu, libpng12, - xkeyboard_config, zlib, libxslt, libxml2, sqlite, orc, - libX11, libXcursor, libXrandr, libxcb, libXi, libSM, libICE, - libXrender, libXcomposite }: - -let version = "2018SP2"; in -stdenv.mkDerivation { - pname = "draftsight"; - inherit version; - - nativeBuildInputs = [ dpkg makeWrapper ]; - - unpackPhase = '' - mkdir $out - mkdir $out/draftsight - dpkg -x $src $out/draftsight - ''; - - # Both executables and bundled libraries need patching to find their - # dependencies. The makeWrapper & QT_XKB_CONFIG_ROOT is to - # alleviate "xkbcommon: ERROR: failed to add default include path - # /usr/share/X11/xkb" and "Qt: Failed to create XKB context!". - installPhase = '' - mkdir $out/bin - for exe in DraftSight dsHttpApiController dsHttpApiService FxCrashRptApp HelpGuide; do - echo "Patching $exe..." - patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ - --set-rpath $libPath:\$ORIGIN/../Libraries \ - $out/draftsight/opt/dassault-systemes/DraftSight/Linux/$exe - makeWrapper $out/draftsight/opt/dassault-systemes/DraftSight/Linux/$exe \ - $out/bin/$exe \ - --prefix "QT_XKB_CONFIG_ROOT" ":" "${xkeyboard_config}/share/X11/xkb" - done - for lib in $out/draftsight/opt/dassault-systemes/DraftSight/Libraries/*.so*; do - # DraftSight ships with broken symlinks for some reason - if [ -f $(readlink -f $lib) ] - then - echo "Patching $lib..." - patchelf --set-rpath $libPath:\$ORIGIN/../Libraries $lib - else - echo "Ignoring broken link $lib" - fi - done - for lib in $out/draftsight/opt/dassault-systemes/DraftSight/APISDK/lib/cpp/*.so*; do - if [ -f $(readlink $lib) ] - then - echo "Patching $lib..." - chmod u+w $lib - patchelf --set-rpath $libPath:\$ORIGIN/../Libraries $lib - else - echo "Ignoring broken link $lib" - fi - done - # These libraries shouldn't really be here anyway: - find $out/draftsight/opt/dassault-systemes/DraftSight/APISDK/Samples/C++ \ - -type d -name _lib | xargs rm -r - ''; - - # TODO: Figure out why HelpGuide segfaults at startup. - - # This must be here for main window graphics to appear (without it - # it also gives the error: "QXcbIntegration: Cannot create platform - # OpenGL context, neither GLX nor EGL are enabled"). My guess is - # that it dlopen()'s libraries in paths removed by shrinking RPATH. - dontPatchELF = true; - - src = fetchurl { - name = "draftSight.deb"; - url = "http://dl-ak.solidworks.com/nonsecure/draftsight/${version}/draftSight.deb"; - sha256 = "05lrvml0zkzqg0sj6sj2h8h66hxdmsw5fg9fwz923r1y8j48qxdx"; - }; - - libPath = stdenv.lib.makeLibraryPath [ gcc.cc libGLU libGL xdg_utils - dbus alsaLib cups.lib fontconfig glib icu libpng12 - xkeyboard_config zlib libxslt libxml2 sqlite orc libX11 - libXcursor libXrandr libxcb libXi libSM libICE libXrender - libXcomposite ]; - - meta = with stdenv.lib; { - description = "2D design & drafting application, meant to be similar to AutoCAD"; - longDescription = "Professional-grade 2D design and drafting solution from Dassault Systรจmes that lets you create, edit, view and mark up any kind of 2D CAD drawing."; - homepage = "https://www.3ds.com/products-services/draftsight-cad-software/"; - license = stdenv.lib.licenses.unfree; - maintainers = with maintainers; [ hodapp ]; - platforms = [ "x86_64-linux" ]; - }; -} diff --git a/nixpkgs/pkgs/applications/graphics/drawio/default.nix b/nixpkgs/pkgs/applications/graphics/drawio/default.nix index 8281596374c..5d037bba5ba 100644 --- a/nixpkgs/pkgs/applications/graphics/drawio/default.nix +++ b/nixpkgs/pkgs/applications/graphics/drawio/default.nix @@ -11,11 +11,11 @@ stdenv.mkDerivation rec { pname = "drawio"; - version = "13.0.3"; + version = "13.6.2"; src = fetchurl { url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/draw.io-x86_64-${version}.rpm"; - sha256 = "104pfwipm8ch9xqlsz1gh18icr1p6i3n4c77bbdjakxcy4s5n7sg"; + sha256 = "17nahdv06d41vyqkcqflf652wjp410i3hn4rhlv5cnd3jcr5vgih"; }; nativeBuildInputs = [ @@ -56,7 +56,7 @@ stdenv.mkDerivation rec { ]; runtimeDependencies = [ - systemd.lib + (lib.getLib systemd) ]; dontBuild = true; @@ -88,6 +88,7 @@ stdenv.mkDerivation rec { description = "A desktop application for creating diagrams"; homepage = "https://about.draw.io/"; license = licenses.asl20; + changelog = "https://github.com/jgraph/drawio-desktop/releases/tag/v${version}"; maintainers = with maintainers; [ danieldk ]; platforms = [ "x86_64-linux" ]; }; diff --git a/nixpkgs/pkgs/applications/graphics/drawpile/default.nix b/nixpkgs/pkgs/applications/graphics/drawpile/default.nix index 0ffcb5cdb41..e210d03406b 100644 --- a/nixpkgs/pkgs/applications/graphics/drawpile/default.nix +++ b/nixpkgs/pkgs/applications/graphics/drawpile/default.nix @@ -1,7 +1,8 @@ -{ lib +{ stdenv +, lib , mkDerivation -, fetchurl -, cmake +, fetchFromGitHub +, fetchpatch , extra-cmake-modules # common deps @@ -9,9 +10,11 @@ # client deps , qtbase +, qtkeychain , qtmultimedia , qtsvg , qttools +, libsecret # optional client deps , giflib @@ -23,6 +26,8 @@ # optional server deps , libmicrohttpd , libsodium +, withSystemd ? stdenv.isLinux +, systemd ? null # options , buildClient ? true @@ -35,54 +40,70 @@ with lib; let - commonDeps = [ - karchive - ]; clientDeps = [ qtbase + qtkeychain qtmultimedia qtsvg qttools + libsecret # optional: giflib # gif animation export support kdnssd # local server discovery with Zeroconf libvpx # WebM video export miniupnpc # automatic port forwarding ]; + serverDeps = [ # optional: libmicrohttpd # HTTP admin api libsodium # ext-auth support - ]; + ] ++ optional withSystemd systemd; + kisDeps = [ qtx11extras ]; + boolToFlag = bool: + if bool then "ON" else "OFF"; + in mkDerivation rec { pname = "drawpile"; version = "2.1.17"; - src = fetchurl { - url = "https://drawpile.net/files/src/drawpile-${version}.tar.gz"; - sha256 = "11lhn1mymhqk9g5sh384xhj3qw8h9lv88pr768y9q6kg3sl7nzzf"; + src = fetchFromGitHub { + owner = "drawpile"; + repo = "drawpile"; + rev = "${version}"; + sha256 = "sha256-AFFY+FcY9ExAur13OoWR9285RZtBe6jnRIrwi5raiCM="; }; - nativeBuildInputs = [ - cmake - extra-cmake-modules + patches = [ + # fix for libmicrohttpd 0.9.71 + (fetchpatch { + url = "https://github.com/drawpile/Drawpile/commit/ed1a75deb113da2d1df91a28f557509c4897130e.diff"; + sha256 = "sha256-54wabH5F3Hf+6vv9rpCwCRdhjSaUFtuF/mE1/U+CpOA="; + name = "mhdfix.patch"; }) + ]; + + nativeBuildInputs = [ extra-cmake-modules ]; + + buildInputs = [ + karchive + ] + ++ optionals buildClient clientDeps + ++ optionals buildServer serverDeps + ++ optionals enableKisTablet kisDeps; + + cmakeFlags = [ + "-Wno-dev" + "-DINITSYS=systemd" + "-DCLIENT=${boolToFlag buildClient}" + "-DSERVER=${boolToFlag buildServer}" + "-DSERVERGUI=${boolToFlag buildServerGui}" + "-DTOOLS=${boolToFlag buildExtraTools}" + "-DKIS_TABLET=${boolToFlag enableKisTablet}" ]; - buildInputs = - commonDeps ++ - optionals buildClient clientDeps ++ - optionals buildServer serverDeps ++ - optionals enableKisTablet kisDeps ; - - cmakeFlags = - optional (!buildClient ) "-DCLIENT=off" ++ - optional (!buildServer ) "-DSERVER=off" ++ - optional (!buildServerGui ) "-DSERVERGUI=off" ++ - optional ( buildExtraTools) "-DTOOLS=on" ++ - optional ( enableKisTablet) "-DKIS_TABLET=on"; meta = { description = "A collaborative drawing program that allows multiple users to sketch on the same canvas simultaneously"; diff --git a/nixpkgs/pkgs/applications/graphics/evilpixie/default.nix b/nixpkgs/pkgs/applications/graphics/evilpixie/default.nix new file mode 100644 index 00000000000..1f6a52aa0b0 --- /dev/null +++ b/nixpkgs/pkgs/applications/graphics/evilpixie/default.nix @@ -0,0 +1,59 @@ +{ mkDerivation +, lib +, fetchFromGitHub +, makeDesktopItem +, qmake +, qtbase +, libpng +, giflib +, impy +}: + +let + desktopItem = makeDesktopItem { + name = "EvilPixie"; + desktopName = "EvilPixie"; + exec = "evilpixie %F"; + icon = "evilpixie"; + genericName = "Image Editor"; + categories = "Graphics;2DGraphics;RasterGraphics;"; + mimeType = "image/bmp;image/gif;image/jpeg;image/jpg;image/png;image/x-pcx;image/x-targa;image/x-tga;"; + }; + +in mkDerivation rec { + pname = "evilpixie"; + version = "0.2"; + + src = fetchFromGitHub { + owner = "bcampbell"; + repo = "evilpixie"; + rev = "v${version}"; + sha256 = "1yg4ic3kcxqmr7k5bbvrv5iavlnhpdx6510z5wha9k9k5q9c4dvh"; + }; + + nativeBuildInputs = [ + qmake + ]; + + buildInputs = [ + qtbase + libpng + giflib + impy + ]; + + postInstall = '' + ln -s ${desktopItem}/share/applications $out/share + install -Dm 444 icon_128x128.png $out/share/icons/hicolor/128x128/apps/evilpixie.png + ''; + + meta = with lib; { + description = "Pixel-oriented paint program, modelled on Deluxe Paint"; + homepage = "http://evilpixie.scumways.com/"; + downloadPage = "https://github.com/bcampbell/evilpixie/releases"; + license = licenses.gpl3; + maintainers = with maintainers; [ fgaz ]; + platforms = platforms.all; + }; +} + diff --git a/nixpkgs/pkgs/applications/graphics/feh/default.nix b/nixpkgs/pkgs/applications/graphics/feh/default.nix index a0e04bf4ad3..82128f81353 100644 --- a/nixpkgs/pkgs/applications/graphics/feh/default.nix +++ b/nixpkgs/pkgs/applications/graphics/feh/default.nix @@ -1,16 +1,17 @@ { stdenv, fetchurl, makeWrapper , xorg, imlib2, libjpeg, libpng -, curl, libexif, jpegexiforient, perlPackages }: +, curl, libexif, jpegexiforient, perlPackages +, enableAutoreload ? true }: with stdenv.lib; stdenv.mkDerivation rec { pname = "feh"; - version = "3.4"; + version = "3.5"; src = fetchurl { url = "https://feh.finalrewind.org/${pname}-${version}.tar.bz2"; - sha256 = "0r83zincbfnk8g13xwm2qaccml9srnwlsmpc1f0nhwjkqyjmqm0q"; + sha256 = "07jklibpi4ig9pbdrwhllsfffxn2h8xf4ma36qii00w4hb69v3rq"; }; outputs = [ "out" "man" "doc" ]; @@ -21,7 +22,8 @@ stdenv.mkDerivation rec { makeFlags = [ "PREFIX=${placeholder "out"}" "exif=1" - ] ++ optional stdenv.isDarwin "verscmp=0"; + ] ++ optional stdenv.isDarwin "verscmp=0" + ++ optional enableAutoreload "inotify=1"; installTargets = [ "install" ]; postInstall = '' diff --git a/nixpkgs/pkgs/applications/graphics/fluxus/default.nix b/nixpkgs/pkgs/applications/graphics/fluxus/default.nix index a53eb806bcf..f560ad45c57 100644 --- a/nixpkgs/pkgs/applications/graphics/fluxus/default.nix +++ b/nixpkgs/pkgs/applications/graphics/fluxus/default.nix @@ -18,7 +18,7 @@ , openal , openssl , racket -, scons +, sconsPackages , zlib }: let @@ -69,7 +69,7 @@ stdenv.mkDerivation rec { openssl.dev racket ]; - nativeBuildInputs = [ scons.py2 ]; + nativeBuildInputs = [ sconsPackages.scons_3_1_2 ]; patches = [ ./fix-build.patch ]; sconsFlags = [ diff --git a/nixpkgs/pkgs/applications/graphics/fondo/default.nix b/nixpkgs/pkgs/applications/graphics/fondo/default.nix index cd0ee8e662b..e80fbee1b71 100644 --- a/nixpkgs/pkgs/applications/graphics/fondo/default.nix +++ b/nixpkgs/pkgs/applications/graphics/fondo/default.nix @@ -1,5 +1,6 @@ { stdenv , fetchFromGitHub +, nix-update-script , pantheon , vala , pkgconfig @@ -57,7 +58,7 @@ stdenv.mkDerivation rec { ''; passthru = { - updateScript = pantheon.updateScript { + updateScript = nix-update-script { attrPath = pname; }; }; diff --git a/nixpkgs/pkgs/applications/graphics/freecad/default.nix b/nixpkgs/pkgs/applications/graphics/freecad/default.nix index eb087c42ce0..657caeca8b3 100644 --- a/nixpkgs/pkgs/applications/graphics/freecad/default.nix +++ b/nixpkgs/pkgs/applications/graphics/freecad/default.nix @@ -1,7 +1,7 @@ -{ stdenv, mkDerivation, fetchFromGitHub, fetchpatch, cmake, ninja, coin3d, xercesc, ode -, eigen, qtbase, qttools, qtwebkit, opencascade-occt, gts, hdf5, vtk, medfile -, zlib, python3Packages, swig, gfortran, libXmu, soqt, libf2c, libGLU -, makeWrapper, pkgconfig, mpi ? null }: +{ stdenv, mkDerivation, fetchFromGitHub, fetchpatch, cmake, ninja, coin3d, +xercesc, ode, eigen, qtbase, qttools, qtwebkit, wrapQtAppsHook, +opencascade-occt, gts, hdf5, vtk, medfile, zlib, python3Packages, swig, +gfortran, libXmu, soqt, libf2c, libGLU, makeWrapper, pkgconfig, mpi ? null }: assert mpi != null; @@ -18,8 +18,16 @@ in mkDerivation rec { sha256 = "1phs9a0px5fnzpyx930cz39p5dis0f0yajxzii3c3sazgkzrd55s"; }; - nativeBuildInputs = [ cmake ninja pkgconfig pythonPackages.pyside2-tools ]; - buildInputs = [ cmake coin3d xercesc ode eigen opencascade-occt gts + nativeBuildInputs = [ + cmake + ninja + pkgconfig + pythonPackages.pyside2-tools + wrapQtAppsHook + ]; + + buildInputs = [ + cmake coin3d xercesc ode eigen opencascade-occt gts zlib swig gfortran soqt libf2c makeWrapper mpi vtk hdf5 medfile libGLU libXmu qtbase qttools qtwebkit ] ++ (with pythonPackages; [ diff --git a/nixpkgs/pkgs/applications/graphics/gcolor3/default.nix b/nixpkgs/pkgs/applications/graphics/gcolor3/default.nix index 1c1c6ba08ee..2962825e49b 100644 --- a/nixpkgs/pkgs/applications/graphics/gcolor3/default.nix +++ b/nixpkgs/pkgs/applications/graphics/gcolor3/default.nix @@ -1,31 +1,40 @@ -{ stdenv, fetchFromGitLab, meson, ninja, gettext, pkgconfig, libxml2, gtk3, hicolor-icon-theme, wrapGAppsHook -, fetchpatch }: +{ stdenv +, fetchFromGitLab +, meson +, ninja +, gettext +, pkg-config +, libxml2 +, gtk3 +, libportal +, wrapGAppsHook +}: -let - version = "2.3.1"; -in stdenv.mkDerivation { +stdenv.mkDerivation rec { pname = "gcolor3"; - inherit version; + version = "2.4.0"; src = fetchFromGitLab { domain = "gitlab.gnome.org"; owner = "World"; repo = "gcolor3"; rev = "v${version}"; - sha256 = "10cfzlkflwkb7f51rnrxmgxpfryh1qzvqaydj6lffjq9zvnhigg7"; + sha256 = "rHIAjk2m3Lkz11obgNZaapa1Zr2GDH7XzgzuAJmq+MU="; }; - patches = [ - # Remove useage of deprecrated G_PARAM_PRIVATE - (fetchpatch { - url = "https://gitlab.gnome.org/World/gcolor3/commit/96612cdd6c2cc71e28eb97ee17956004a05e5140.patch"; - sha256 = "134wv5x15bd7k0fjzifrddwssaq213sx2l38r3xw6x1j625qwzq9"; - }) + nativeBuildInputs = [ + meson + ninja + gettext + pkg-config + libxml2 # xml-stripblanks preprocessing of GResource + wrapGAppsHook ]; - nativeBuildInputs = [ meson ninja gettext pkgconfig libxml2 wrapGAppsHook ]; - - buildInputs = [ gtk3 hicolor-icon-theme ]; + buildInputs = [ + gtk3 + libportal + ]; postPatch = '' chmod +x meson_install.sh # patchShebangs requires executable file @@ -34,7 +43,7 @@ in stdenv.mkDerivation { meta = with stdenv.lib; { description = "A simple color chooser written in GTK3"; - homepage = "https://www.hjdskes.nl/projects/gcolor3/"; + homepage = "https://gitlab.gnome.org/World/gcolor3"; license = licenses.gpl2Plus; maintainers = with maintainers; [ jtojnar ]; platforms = platforms.unix; diff --git a/nixpkgs/pkgs/applications/graphics/gimp/default.nix b/nixpkgs/pkgs/applications/graphics/gimp/default.nix index b5df3d768d2..6ec15bf02ab 100644 --- a/nixpkgs/pkgs/applications/graphics/gimp/default.nix +++ b/nixpkgs/pkgs/applications/graphics/gimp/default.nix @@ -2,6 +2,7 @@ , lib , fetchurl , substituteAll +, autoreconfHook , pkgconfig , intltool , babl @@ -28,9 +29,10 @@ , ghostscript , aalib , shared-mime-info -, python2Packages +, python2 , libexif , gettext +, makeWrapper , xorg , glib-networking , libmypaint @@ -47,23 +49,37 @@ }: let - inherit (python2Packages) pygtk wrapPython python; + python = python2.withPackages (pp: [ pp.pygtk ]); in stdenv.mkDerivation rec { pname = "gimp"; - version = "2.10.18"; + version = "2.10.20"; outputs = [ "out" "dev" ]; src = fetchurl { url = "http://download.gimp.org/pub/gimp/v${lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; - sha256 = "Zb/hEejuv/093jAWzLUH+ZSNJmPZSXy0ONm7YJ4R1xY="; + sha256 = "4S+fh0saAHxCd7YKqB4LZzML5+YVPldJ6tg5uQL8ezw="; }; + patches = [ + # to remove compiler from the runtime closure, reference was retained via + # gimp --version --verbose output + (substituteAll { + src = ./remove-cc-reference.patch; + cc_version = stdenv.cc.cc.name; + }) + + # Use absolute paths instead of relying on PATH + # to make sure plug-ins are loaded by the correct interpreter. + ./hardcode-plugin-interpreters.patch + ]; + nativeBuildInputs = [ + autoreconfHook # hardcode-plugin-interpreters.patch changes Makefile.am pkgconfig intltool gettext - wrapPython + makeWrapper ]; buildInputs = [ @@ -97,7 +113,6 @@ in stdenv.mkDerivation rec { libwebp libheif python - pygtk libexif xorg.libXpm glib-networking @@ -116,7 +131,20 @@ in stdenv.mkDerivation rec { gegl ]; - pythonPath = [ pygtk ]; + configureFlags = [ + "--without-webkit" # old version is required + "--disable-check-update" + "--with-bug-report-url=https://github.com/NixOS/nixpkgs/issues/new" + "--with-icc-directory=/run/current-system/sw/share/color/icc" + # fix libdir in pc files (${exec_prefix} needs to be passed verbatim) + "--libdir=\${exec_prefix}/lib" + ]; + + enableParallelBuilding = true; + + # on Darwin, + # test-eevl.c:64:36: error: initializer element is not a compile-time constant + doCheck = !stdenv.isDarwin; # Check if librsvg was built with --disable-pixbuf-loader. PKG_CONFIG_GDK_PIXBUF_2_0_GDK_PIXBUF_MODULEDIR = "${librsvg}/${gdk-pixbuf.moduleDir}"; @@ -126,19 +154,8 @@ in stdenv.mkDerivation rec { export GIO_EXTRA_MODULES="${glib-networking}/lib/gio/modules:$GIO_EXTRA_MODULES" ''; - patches = [ - # to remove compiler from the runtime closure, reference was retained via - # gimp --version --verbose output - (substituteAll { - src = ./remove-cc-reference.patch; - cc_version = stdenv.cc.cc.name; - }) - ]; - postFixup = '' - wrapPythonProgramsIn $out/lib/gimp/${passthru.majorVersion}/plug-ins/ wrapProgram $out/bin/gimp-${lib.versions.majorMinor version} \ - --prefix PYTHONPATH : "$PYTHONPATH" \ --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" ''; @@ -153,21 +170,6 @@ in stdenv.mkDerivation rec { gtk = gtk2; }; - configureFlags = [ - "--without-webkit" # old version is required - "--disable-check-update" - "--with-bug-report-url=https://github.com/NixOS/nixpkgs/issues/new" - "--with-icc-directory=/run/current-system/sw/share/color/icc" - # fix libdir in pc files (${exec_prefix} needs to be passed verbatim) - "--libdir=\${exec_prefix}/lib" - ]; - - # on Darwin, - # test-eevl.c:64:36: error: initializer element is not a compile-time constant - doCheck = !stdenv.isDarwin; - - enableParallelBuilding = true; - meta = with lib; { description = "The GNU Image Manipulation Program"; homepage = "https://www.gimp.org/"; diff --git a/nixpkgs/pkgs/applications/graphics/gimp/hardcode-plugin-interpreters.patch b/nixpkgs/pkgs/applications/graphics/gimp/hardcode-plugin-interpreters.patch new file mode 100644 index 00000000000..1528404c31d --- /dev/null +++ b/nixpkgs/pkgs/applications/graphics/gimp/hardcode-plugin-interpreters.patch @@ -0,0 +1,11 @@ +--- a/plug-ins/pygimp/Makefile.am ++++ b/plug-ins/pygimp/Makefile.am +@@ -157,7 +157,7 @@ install-interp-file: + echo 'python=$(PYBIN_PATH)' > '$(DESTDIR)$(pyinterpfile)' + echo 'python2=$(PYBIN_PATH)' >> '$(DESTDIR)$(pyinterpfile)' + echo '/usr/bin/python=$(PYBIN_PATH)' >> '$(DESTDIR)$(pyinterpfile)' +- echo ":Python:E::py::`basename $(PYTHON)`:" >> '$(DESTDIR)$(pyinterpfile)' ++ echo ":Python:E::py::$(PYTHON):" >> '$(DESTDIR)$(pyinterpfile)' + + install-data-local: install-env-file install-interp-file + diff --git a/nixpkgs/pkgs/applications/graphics/gnome-photos/default.nix b/nixpkgs/pkgs/applications/graphics/gnome-photos/default.nix index 8660f6f218e..337b8f4cba6 100644 --- a/nixpkgs/pkgs/applications/graphics/gnome-photos/default.nix +++ b/nixpkgs/pkgs/applications/graphics/gnome-photos/default.nix @@ -111,7 +111,7 @@ stdenv.mkDerivation rec { }; tests = { - installed-tests = nixosTests.gnome-photos; + installed-tests = nixosTests.installed-tests.gnome-photos; }; }; diff --git a/nixpkgs/pkgs/applications/graphics/goxel/default.nix b/nixpkgs/pkgs/applications/graphics/goxel/default.nix index 6fb5b91c2a9..40d0f4a3db8 100644 --- a/nixpkgs/pkgs/applications/graphics/goxel/default.nix +++ b/nixpkgs/pkgs/applications/graphics/goxel/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { pname = "goxel"; - version = "0.10.5"; + version = "0.10.6"; src = fetchFromGitHub { owner = "guillaumechereau"; repo = "goxel"; rev = "v${version}"; - sha256 = "1b63jqryq19qa81g1ml6d85f27wj1ci3h56r02cl9xn8di5p674f"; + sha256 = "1wmxy5wfk1xrqgz0y0zcr4vkddylqc70cv4vzk117x6whjnldsm3"; }; patches = [ ./disable-imgui_ini.patch ]; diff --git a/nixpkgs/pkgs/applications/graphics/gscan2pdf/default.nix b/nixpkgs/pkgs/applications/graphics/gscan2pdf/default.nix index 352b6b900cc..2906026c48f 100644 --- a/nixpkgs/pkgs/applications/graphics/gscan2pdf/default.nix +++ b/nixpkgs/pkgs/applications/graphics/gscan2pdf/default.nix @@ -10,11 +10,11 @@ with stdenv.lib; perlPackages.buildPerlPackage rec { pname = "gscan2pdf"; - version = "2.6.5"; + version = "2.8.1"; src = fetchurl { url = "mirror://sourceforge/gscan2pdf/${version}/${pname}-${version}.tar.xz"; - sha256 = "0x8931i5zs4zl3iqjhlp7h8y6ssklxiqsddz5kh84nl3p0izbg0y"; + sha256 = "00g2vw7lz3yb4nq358x8d3r4mf3hkrq2vw1g9lli27zdp5p6jja1"; }; nativeBuildInputs = [ wrapGAppsHook ]; @@ -64,6 +64,7 @@ perlPackages.buildPerlPackage rec { # Add runtime dependencies wrapProgram "$out/bin/gscan2pdf" \ + --prefix PATH : "${sane-backends}/bin" \ --prefix PATH : "${imagemagick}/bin" \ --prefix PATH : "${libtiff}/bin" \ --prefix PATH : "${djvulibre}/bin" \ diff --git a/nixpkgs/pkgs/applications/graphics/ideogram/default.nix b/nixpkgs/pkgs/applications/graphics/ideogram/default.nix index 4bf414cf8dd..9ae7ae2cb8c 100644 --- a/nixpkgs/pkgs/applications/graphics/ideogram/default.nix +++ b/nixpkgs/pkgs/applications/graphics/ideogram/default.nix @@ -1,5 +1,6 @@ { stdenv , fetchFromGitHub +, nix-update-script , fetchpatch , vala , pkgconfig @@ -51,7 +52,7 @@ stdenv.mkDerivation rec { ''; passthru = { - updateScript = pantheon.updateScript { + updateScript = nix-update-script { attrPath = pname; }; }; diff --git a/nixpkgs/pkgs/applications/graphics/inkscape/default.nix b/nixpkgs/pkgs/applications/graphics/inkscape/default.nix index 86fb6e03491..810b19ba90a 100644 --- a/nixpkgs/pkgs/applications/graphics/inkscape/default.nix +++ b/nixpkgs/pkgs/applications/graphics/inkscape/default.nix @@ -3,14 +3,18 @@ , boost , cairo , cmake -, fetchpatch +, double-conversion , fetchurl , gettext +, gdl , glib +, glib-networking , glibmm , gsl -, gtkmm2 -, gtkspell2 +, gtk-mac-integration +, gtkmm3 +, gtkspell3 +, gdk-pixbuf , imagemagick , lcms , libcdr @@ -19,18 +23,20 @@ , librevenge , librsvg , libsigcxx +, libsoup , libvisio , libwpg , libXft , libxml2 , libxslt -, makeWrapper +, ninja , perlPackages , pkg-config , poppler , popt , potrace , python3 +, substituteAll , wrapGAppsHook , zlib }: @@ -44,11 +50,11 @@ let in stdenv.mkDerivation rec { pname = "inkscape"; - version = "0.92.5"; + version = "1.0.1"; src = fetchurl { - url = "https://media.inkscape.org/dl/resources/file/${pname}-${version}.tar.bz2"; - sha256 = "ge5/aeK9ZKlzQ9g5Wkp6eQWyG4YVZu1eXZF5F41Rmgs="; + url = "https://media.inkscape.org/dl/resources/file/${pname}-${version}.tar.xz"; + sha256 = "1hjp5nnyx2m3miji6q4lcb6zgbi498v641dc7apkqqvayknrb4ng"; }; # Inkscape hits the ARGMAX when linking on macOS. It appears to be @@ -57,21 +63,28 @@ stdenv.mkDerivation rec { # will leave us under ARGMAX. strictDeps = true; + patches = [ + (substituteAll { + src = ./fix-python-paths.patch; + # Python is used at run-time to execute scripts, + # e.g., those from the "Effects" menu. + python3 = "${python3Env}/bin/python"; + }) + ]; + postPatch = '' patchShebangs share/extensions - patchShebangs fix-roff-punct - - # Python is used at run-time to execute scripts, e.g., those from - # the "Effects" menu. - substituteInPlace src/extension/implementation/script.cpp \ - --replace '"python-interpreter", "python"' '"python-interpreter", "${python3Env}/bin/python"' + patchShebangs share/templates + patchShebangs man/fix-roff-punct ''; nativeBuildInputs = [ pkg-config cmake - makeWrapper + ninja python3Env + glib # for setup hook + gdk-pixbuf # for setup hook wrapGAppsHook ] ++ (with perlPackages; [ perl @@ -81,11 +94,14 @@ stdenv.mkDerivation rec { buildInputs = [ boehmgc boost + double-conversion + gdl gettext glib + glib-networking glibmm gsl - gtkmm2 + gtkmm3 imagemagick lcms libcdr @@ -94,6 +110,7 @@ stdenv.mkDerivation rec { librevenge librsvg # for loading icons libsigcxx + libsoup libvisio libwpg libXft @@ -106,9 +123,10 @@ stdenv.mkDerivation rec { python3Env zlib ] ++ stdenv.lib.optionals (!stdenv.isDarwin) [ - gtkspell2 + gtkspell3 ] ++ stdenv.lib.optionals stdenv.isDarwin [ cairo + gtk-mac-integration ]; # Make sure PyXML modules can be found at run-time. diff --git a/nixpkgs/pkgs/applications/graphics/inkscape/extensions.nix b/nixpkgs/pkgs/applications/graphics/inkscape/extensions.nix new file mode 100644 index 00000000000..66a758f9fe5 --- /dev/null +++ b/nixpkgs/pkgs/applications/graphics/inkscape/extensions.nix @@ -0,0 +1,37 @@ +{ stdenv +, fetchFromGitHub +}: + +{ + hexmap = stdenv.mkDerivation { + name = "hexmap"; + version = "2020-06-06"; + + src = fetchFromGitHub { + owner = "lifelike"; + repo = "hexmapextension"; + rev = "11401e23889318bdefb72df6980393050299d8cc"; + sha256 = "1a4jhva624mbljj2k43wzi6hrxacjz4626jfk9y2fg4r4sga22mm"; + }; + + preferLocalBuild = true; + + installPhase = '' + runHook preInstall + + mkdir -p "$out/share/inkscape/extensions" + cp -p *.inx *.py "$out/share/inkscape/extensions/" + find "$out/share/inkscape/extensions/" -name "*.py" -exec chmod +x {} \; + + runHook postInstall + ''; + + meta = with stdenv.lib; { + description = "This is an extension for creating hex grids in Inkscape. It can also be used to make brick patterns of staggered rectangles"; + homepage = "https://github.com/lifelike/hexmapextension"; + license = licenses.gpl2Plus; + maintainers = [ maintainers.raboof ]; + platforms = platforms.all; + }; + }; +} diff --git a/nixpkgs/pkgs/applications/graphics/inkscape/fix-python-paths.patch b/nixpkgs/pkgs/applications/graphics/inkscape/fix-python-paths.patch new file mode 100644 index 00000000000..9428ade8863 --- /dev/null +++ b/nixpkgs/pkgs/applications/graphics/inkscape/fix-python-paths.patch @@ -0,0 +1,15 @@ +--- a/src/extension/implementation/script.cpp ++++ b/src/extension/implementation/script.cpp +@@ -77,10 +77,10 @@ const std::map<std::string, Script::inte + { "python", {"python-interpreter", {"pythonw" }}}, + #elif defined __APPLE__ + { "perl", {"perl-interpreter", {"perl" }}}, +- { "python", {"python-interpreter", {"python3" }}}, ++ { "python", {"python-interpreter", {"@python3@" }}}, + #else + { "perl", {"perl-interpreter", {"perl" }}}, +- { "python", {"python-interpreter", {"python3", "python" }}}, ++ { "python", {"python-interpreter", {"@python3@" }}}, + #endif + { "python2", {"python2-interpreter", {"python2", "python" }}}, + { "ruby", {"ruby-interpreter", {"ruby" }}}, diff --git a/nixpkgs/pkgs/applications/graphics/inkscape/with-extensions.nix b/nixpkgs/pkgs/applications/graphics/inkscape/with-extensions.nix new file mode 100644 index 00000000000..cca7b1fc3a5 --- /dev/null +++ b/nixpkgs/pkgs/applications/graphics/inkscape/with-extensions.nix @@ -0,0 +1,21 @@ +{ lib +, inkscape +, symlinkJoin +, makeWrapper +, inkscapeExtensions ? [] +}: + +symlinkJoin { + name = "inkscape-with-extensions-${lib.getVersion inkscape}"; + + paths = [ inkscape ] ++ inkscapeExtensions; + + buildInputs = [ makeWrapper ]; + + postBuild = '' + rm -f $out/bin/inkscape + makeWrapper "${inkscape}/bin/inkscape" "$out/bin/inkscape" --set INKSCAPE_DATADIR "$out/share" + ''; + + inherit (inkscape) meta; +} diff --git a/nixpkgs/pkgs/applications/graphics/jpeg-archive/default.nix b/nixpkgs/pkgs/applications/graphics/jpeg-archive/default.nix index 97c15d2eec0..8beaf43c089 100644 --- a/nixpkgs/pkgs/applications/graphics/jpeg-archive/default.nix +++ b/nixpkgs/pkgs/applications/graphics/jpeg-archive/default.nix @@ -35,7 +35,7 @@ stdenv.mkDerivation { meta = with stdenv.lib; { description = "Utilities for archiving photos for saving to long term storage or serving over the web"; homepage = "https://github.com/danielgtaylor/jpeg-archive"; - # license = ...; # mixed? + license = licenses.mit; maintainers = [ maintainers.srghma ]; platforms = platforms.all; }; diff --git a/nixpkgs/pkgs/applications/graphics/krita/default.nix b/nixpkgs/pkgs/applications/graphics/krita/default.nix index f98edd1e8ae..95a3e1e0928 100644 --- a/nixpkgs/pkgs/applications/graphics/krita/default.nix +++ b/nixpkgs/pkgs/applications/graphics/krita/default.nix @@ -10,11 +10,11 @@ mkDerivation rec { pname = "krita"; - version = "4.2.9"; + version = "4.3.0"; src = fetchurl { url = "https://download.kde.org/stable/${pname}/${version}/${pname}-${version}.tar.xz"; - sha256 = "0rvm9mpaq66lxyq4f09x9w6xxhgys0phza223hm5zv6kgn413xsf"; + sha256 = "19qlpp9ds60bab73pwi64dq1zn4zn2hcdkrxhjr1j438mc4pflsd"; }; # *somtimes* fails with can't find ui_manager.h, also see https://github.com/NixOS/nixpkgs/issues/35359 diff --git a/nixpkgs/pkgs/applications/graphics/krop/default.nix b/nixpkgs/pkgs/applications/graphics/krop/default.nix index 2337dfb370e..ee490676977 100644 --- a/nixpkgs/pkgs/applications/graphics/krop/default.nix +++ b/nixpkgs/pkgs/applications/graphics/krop/default.nix @@ -2,22 +2,24 @@ python3Packages.buildPythonApplication rec { pname = "krop"; - version = "0.5.1"; + version = "0.6.0"; src = fetchFromGitHub { owner = "arminstraub"; repo = pname; rev = "v${version}"; - sha256 = "0b1zqpks4vzq7sfhf7r9qrshr77f1ncj18x7d0fa3g29rxa42dcr"; + sha256 = "1ygzc7vlwszqmsd3v1dsqp1dpsn6inx7g8gck63alvf88dbn8m3s"; }; propagatedBuildInputs = with python3Packages; [ pyqt5 pypdf2 poppler-qt5 - libsForQt5.poppler ghostscript ]; + buildInputs = [ + libsForQt5.poppler + ]; nativeBuildInputs = [ qt5.wrapQtAppsHook ]; makeWrapperArgs = [ diff --git a/nixpkgs/pkgs/applications/graphics/ktikz/default.nix b/nixpkgs/pkgs/applications/graphics/ktikz/default.nix index 4ddc2074f2f..f817a332160 100644 --- a/nixpkgs/pkgs/applications/graphics/ktikz/default.nix +++ b/nixpkgs/pkgs/applications/graphics/ktikz/default.nix @@ -1,6 +1,7 @@ { stdenv, fetchFromGitHub, fetchpatch , pkgconfig, wrapQtAppsHook -, poppler, qt5, gnuplot +, poppler, gnuplot +, qmake, qtbase, qttools }: # This package only builds ktikz without KDE integration because KDE4 is @@ -36,10 +37,10 @@ stdenv.mkDerivation rec { }) ]; - nativeBuildInputs = [ pkgconfig qt5.qttools qt5.qmake wrapQtAppsHook ]; - QT_PLUGIN_PATH = "${qt5.qtbase}/${qt5.qtbase.qtPluginPrefix}"; + nativeBuildInputs = [ pkgconfig qttools qmake wrapQtAppsHook ]; + QT_PLUGIN_PATH = "${qtbase}/${qtbase.qtPluginPrefix}"; - buildInputs = [ qt5.qtbase poppler ]; + buildInputs = [ qtbase poppler ]; enableParallelBuilding = true; qmakeFlags = [ diff --git a/nixpkgs/pkgs/applications/graphics/lazpaint/default.nix b/nixpkgs/pkgs/applications/graphics/lazpaint/default.nix new file mode 100644 index 00000000000..d8ea4924318 --- /dev/null +++ b/nixpkgs/pkgs/applications/graphics/lazpaint/default.nix @@ -0,0 +1,72 @@ +{ stdenv, fetchFromGitHub, lazarus, fpc, pango, cairo, glib +, atk, gtk2, libX11, gdk-pixbuf, busybox, python3, makeWrapper }: + +with stdenv; + +let + bgrabitmap = fetchFromGitHub { + owner = "bgrabitmap"; + repo = "bgrabitmap"; + rev = "v11.1"; + sha256 = "0bcmiiwly4a7w8p3m5iskzvk8rz87qhc0gcijrdvwg87cafd88gz"; + }; + bgracontrols = fetchFromGitHub { + owner = "bgrabitmap"; + repo = "bgracontrols"; + rev = "v6.7.2"; + sha256 = "0cwxzv0rl6crkf6f67mvga5cn5pyhr6ksm8cqhpxjiqi937dnyxx"; + }; +in stdenv.mkDerivation rec { + pname = "lazpaint"; + version = "7.1.3"; + + src = fetchFromGitHub { + owner = "bgrabitmap"; + repo = "lazpaint"; + rev = "v${version}"; + sha256 = "1sfb5hmhzscz3nv4cmc192jimkg70l4z3q3yxkivhw1hwwsv9cbg"; + }; + + nativeBuildInputs = [ lazarus fpc makeWrapper ]; + + buildInputs = [ pango cairo glib atk gtk2 libX11 gdk-pixbuf ]; + + NIX_LDFLAGS = "--as-needed -rpath ${lib.makeLibraryPath buildInputs}"; + + buildPhase = '' + cp -r --no-preserve=mode ${bgrabitmap} bgrabitmap + cp -r --no-preserve=mode ${bgracontrols} bgracontrols + + lazbuild --lazarusdir=${lazarus}/share/lazarus \ + --build-mode=Release \ + bgrabitmap/bgrabitmap/bgrabitmappack.lpk \ + bgracontrols/bgracontrols.lpk \ + lazpaintcontrols/lazpaintcontrols.lpk \ + lazpaint/lazpaint.lpi + ''; + + installPhase = '' + # Reuse existing install script + cd lazpaint/release/debian + substituteInPlace makedeb.sh --replace "rm -rf" "ls" + patchShebangs ./makedeb.sh + PATH=$PATH:${busybox}/bin ./makedeb.sh + cp -r staging/usr $out + + # Python is needed for scripts + makeWrapper $out/share/lazpaint/lazpaint $out/bin/lazpaint \ + --prefix PATH : ${stdenv.lib.makeBinPath [ python3 ]} + + substituteInPlace $out/share/applications/lazpaint.desktop \ + --replace /usr/share/pixmaps/lazpaint.png $out/share/pixmaps/lazpaint.png \ + --replace /usr/share/lazpaint/lazpaint $out/bin/lazpaint + ''; + + meta = with stdenv.lib; { + description = "Image editor like PaintBrush or Paint.Net"; + homepage = "https://sourceforge.net/projects/lazpaint/"; + license = licenses.gpl3; + platforms = platforms.linux; + maintainers = with maintainers; [ gnidorah ]; + }; +} diff --git a/nixpkgs/pkgs/applications/graphics/lightburn/default.nix b/nixpkgs/pkgs/applications/graphics/lightburn/default.nix new file mode 100644 index 00000000000..7fcec93446d --- /dev/null +++ b/nixpkgs/pkgs/applications/graphics/lightburn/default.nix @@ -0,0 +1,49 @@ +{ stdenv, patchelf, fetchurl, p7zip +, nss, nspr, libusb1 +, qtbase, qtmultimedia, qtserialport +, autoPatchelfHook, wrapQtAppsHook +}: + +stdenv.mkDerivation rec { + pname = "lightburn"; + version = "0.9.16"; + + nativeBuildInputs = [ + p7zip + autoPatchelfHook + wrapQtAppsHook + ]; + + src = fetchurl { + url = "https://github.com/LightBurnSoftware/deployment/releases/download/${version}/LightBurn-Linux64-v${version}.7z"; + sha256 = "0xmpglfzff3jpxbr304czsa24fbp497b69yd8kjkjdp2cd0l70qc"; + }; + + buildInputs = [ + nss nspr libusb1 + qtbase qtmultimedia qtserialport + ]; + + # We nuke the vendored Qt5 libraries that LightBurn ships and instead use our + # own. + unpackPhase = '' + 7z x $src + rm -rf LightBurn/lib LightBurn/plugins + ''; + + installPhase = '' + mkdir -p $out/share $out/bin + cp -ar LightBurn $out/share/LightBurn + ln -s $out/share/LightBurn/LightBurn $out/bin + + wrapQtApp $out/bin/LightBurn + ''; + + meta = { + description = "LightBurn is layout, editing, and control software for your laser cutter."; + homepage = "https://lightburnsoftware.com/"; + license = stdenv.lib.licenses.unfree; + maintainers = with stdenv.lib.maintainers; [ q3k ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/nixpkgs/pkgs/applications/graphics/mandelbulber/default.nix b/nixpkgs/pkgs/applications/graphics/mandelbulber/default.nix index 53d1c5c3f73..a3ab52ba871 100644 --- a/nixpkgs/pkgs/applications/graphics/mandelbulber/default.nix +++ b/nixpkgs/pkgs/applications/graphics/mandelbulber/default.nix @@ -19,13 +19,13 @@ assert withOpenCL -> ocl-icd != null; mkDerivation rec { pname = "mandelbulber"; - version = "2.21"; + version = "2.22"; src = fetchFromGitHub { owner = "buddhi1980"; repo = "mandelbulber2"; rev = version; - sha256 = "1bmk71vbxc1n8cnizlmzfqlvgxjb95cydbzxlvq1s5givxr2jwli"; + sha256 = "011y2nl0jakf29cxprjmj1ifqc9iva61q5f4kk47b03gq7jw8sl4"; }; nativeBuildInputs = [ diff --git a/nixpkgs/pkgs/applications/graphics/meshlab/default.nix b/nixpkgs/pkgs/applications/graphics/meshlab/default.nix index 6ac937dcb93..bde8999eb41 100644 --- a/nixpkgs/pkgs/applications/graphics/meshlab/default.nix +++ b/nixpkgs/pkgs/applications/graphics/meshlab/default.nix @@ -1,4 +1,6 @@ -{ mkDerivation, lib, fetchFromGitHub +{ mkDerivation +, lib +, fetchFromGitHub , fetchpatch , libGLU , qtbase @@ -7,112 +9,26 @@ , lib3ds , bzip2 , muparser +, eigen +, glew +, gmp , levmar +, qhull +, cmake }: -let - meshlabRev = "25f3d17b1d1d47ddc51179cb955f3027b7638745"; - vcglibRev = "910da4c3e310f2e6557bd7a39c4f1529e61573e5"; - # ^ this should be the latest commit in the vcglib devel branch at the time of the meshlab revision - # We keep it separate here instead of using the `vcg` nix package because - # as of writing, meshlab upstream does not seem to follow a proper - # release process, and the other dependencies of `vcg` may no longer - # work when we upgrade it for the purpose of meshlab. +mkDerivation rec { + pname = "meshlab"; + version = "2020.07"; - # Unfixed upstream compile error; see - # https://github.com/cnr-isti-vclab/meshlab/issues/188#issuecomment-364785362 - # that has with fixed line endings. - import_bundle_out_patch = fetchpatch { - name = "import_bundle_out.patch"; - url = "https://aur.archlinux.org/cgit/aur.git/plain/import_bundle_out.patch?h=meshlab-git&id=f7250ea818470f07dc9b86726407091d39c0be6f"; - sha256 = "1g6nli15i3fjd6jsgkxvb33kzbcv67xjkc3jv9r51lrwlm1ifzxi"; + src = fetchFromGitHub { + owner = "cnr-isti-vclab"; + repo = "meshlab"; + rev = "Meshlab-${version}"; + sha256 = "0vj849b57zk3k6lx35zzcjhr9gdy4hxqnnkb8chwy7hw262cm3ri"; + fetchSubmodules = true; # for vcglib }; - # Reduces amount of vendored libraries, fixes `/linux` vs `linux-g++` - # directory name linker errors. - external_patch = fetchpatch { - name = "external.patch"; - url = "https://aur.archlinux.org/cgit/aur.git/plain/external.patch?h=meshlab-git&id=f7250ea818470f07dc9b86726407091d39c0be6f"; - sha256 = "1rxwkxhmxis1420rc1w7dg89gkmym68lpszsq6snl6dzpl3ingsb"; - }; - _3ds_patch = fetchpatch { - name = "3ds.patch"; - url = "https://aur.archlinux.org/cgit/aur.git/plain/3ds.patch?h=meshlab-git&id=f7250ea818470f07dc9b86726407091d39c0be6f"; - sha256 = "1w435b7p1ggi2bzib4yyszmk54drjgpbn8n9mnsk1slsxnp2vmg8"; - }; - muparser_patch = fetchpatch { - name = "muparser.patch"; - url = "https://aur.archlinux.org/cgit/aur.git/plain/muparser.patch?h=meshlab-git&id=f7250ea818470f07dc9b86726407091d39c0be6f"; - sha256 = "1sf7xqwc2j8xxdx2yklwifii9qqgknvx6ahk2hq76mg78ry1nzhq"; - }; - -in mkDerivation { - name = "meshlab-20190129-beta"; - - srcs = - [ - (fetchFromGitHub { - owner = "cnr-isti-vclab"; - repo = "meshlab"; - rev = meshlabRev; - sha256 = "16d2i91hrxvrr5p0k33g3fzis9zp4gsy3n5y2nhafvsgdmaidiij"; - name = "meshlab-${meshlabRev}"; - }) - (fetchFromGitHub { - owner = "cnr-isti-vclab"; - repo = "vcglib"; - rev = vcglibRev; - sha256 = "0xpnjpwpj57hgai184rzyk9lbq6d9vbjzr477dvl5nplpwa420m1"; - name = "vcglib-${vcglibRev}"; - }) - ]; - - sourceRoot = "meshlab-${meshlabRev}"; - - # Meshlab is not format-security clean; without disabling hardening, we get: - # ../../external/qhull-2003.1/src/io.c:2169:3: error: format not a string literal and no format arguments [-Werror=format-security] - # fprintf(fp, endfmt); - # ^~~~~~~ - hardeningDisable = [ "format" ]; - - enableParallelBuilding = true; - - prePatch = - '' - # MeshLab has ../vcglib hardcoded everywhere, so move the source dir - mv ../vcglib-${vcglibRev} ../vcglib - - # Make all source files writable so that patches can be applied. - chmod -R u+w .. - - patch -Np1 --directory=../vcglib -i ${import_bundle_out_patch} - - patch -Np1 -i ${external_patch} - # Individual libraries - patch -Np1 -i ${_3ds_patch} - patch -Np1 -i ${muparser_patch} - '' - ; - - buildPhase = '' - cd src - export NIX_LDFLAGS="-rpath $out/opt/meshlab $NIX_LDFLAGS" - - pushd external - qmake -recursive $QMAKE_FLAGS external.pro - buildPhase - popd - qmake -recursive $QMAKE_FLAGS meshlab_full.pro - buildPhase - ''; - - installPhase = '' - mkdir -p $out/opt/meshlab $out/bin - cp -Rv distrib/* $out/opt/meshlab - ln -s $out/opt/meshlab/meshlab $out/bin/meshlab - ln -s $out/opt/meshlab/meshlabserver $out/bin/meshlabserver - ''; - buildInputs = [ libGLU qtbase @@ -121,14 +37,60 @@ in mkDerivation { lib3ds bzip2 muparser + eigen + glew + gmp levmar + qhull + ]; + + nativeBuildInputs = [ cmake ]; + + patches = [ + # Make cmake use the system qhull. The next meshlab will not need this patch because it is already in master. + (fetchpatch { + url = "https://patch-diff.githubusercontent.com/raw/cnr-isti-vclab/meshlab/pull/747.patch"; + sha256 = "0wx9f6zn458xz3lsqcgvsbwh1pgi3g0lah93nlbsb0sagng7n565"; + }) + ]; + + preConfigure = '' + substituteAll ${./meshlab.desktop} install/linux/resources/meshlab.desktop + cd src + ''; + + cmakeFlags = [ + "-DALLOW_BUNDLED_EIGEN=OFF" + "-DALLOW_BUNDLED_GLEW=OFF" + "-DALLOW_BUNDLED_LIB3DS=OFF" + "-DALLOW_BUNDLED_MUPARSER=OFF" + "-DALLOW_BUNDLED_QHULL=OFF" + # disable when available in nixpkgs + "-DALLOW_BUNDLED_OPENCTM=ON" + "-DALLOW_BUNDLED_SSYNTH=ON" + # some plugins are disabled unless these are on + "-DALLOW_BUNDLED_NEWUOA=ON" + "-DALLOW_BUNDLED_LEVMAR=ON" ]; + postFixup = '' + patchelf --add-needed $out/lib/meshlab/libmeshlab-common.so $out/bin/.meshlab-wrapped + patchelf --add-needed $out/lib/meshlab/libmeshlab-common.so $out/bin/.meshlabserver-wrapped + ''; + + # Meshlab is not format-security clean; without disabling hardening, we get: + # src/common/GLLogStream.h:61:37: error: format not a string literal and no format arguments [-Werror=format-security] + # 61 | int chars_written = snprintf(buf, buf_size, f, std::forward<Ts>(ts)...); + # | + hardeningDisable = [ "format" ]; + + enableParallelBuilding = true; + meta = { description = "A system for processing and editing 3D triangular meshes."; homepage = "http://www.meshlab.net/"; license = lib.licenses.gpl3; - maintainers = with lib.maintainers; [viric]; + maintainers = with lib.maintainers; [ viric ]; platforms = with lib.platforms; linux; }; } diff --git a/nixpkgs/pkgs/applications/graphics/meshlab/meshlab.desktop b/nixpkgs/pkgs/applications/graphics/meshlab/meshlab.desktop new file mode 100644 index 00000000000..aa8de186440 --- /dev/null +++ b/nixpkgs/pkgs/applications/graphics/meshlab/meshlab.desktop @@ -0,0 +1,14 @@ +[Desktop Entry] +Name=MeshLab +Version=@version@ +Name[en_GB]=MeshLab +GenericName=Mesh processing +GenericName[en_GB]=Mesh processing +Comment=View and process meshes +Type=Application +Exec=@out@/bin/meshlab %U +TryExec=@out@/bin/meshlab +Icon=@out@/share/icons/hicolor/meshlab.png +Terminal=false +MimeType=model/mesh;application/x-3ds;image/x-3ds;model/x-ply;application/sla;model/x-quad-object;model/x-geomview-off;application/x-cyclone-ptx;application/x-vmi;application/x-bre;model/vnd.collada+xml;model/openctm;application/x-expe-binary;application/x-expe-ascii;application/x-xyz;application/x-gts;chemical/x-pdb;application/x-tri;application/x-asc;model/x3d+xml;model/x3d+vrml;model/vrml;model/u3d;model/idtf; +Categories=Graphics;3DGraphics;Viewer;Qt; diff --git a/nixpkgs/pkgs/applications/graphics/mypaint/default.nix b/nixpkgs/pkgs/applications/graphics/mypaint/default.nix index 5ebbee0e4d6..7267e840160 100644 --- a/nixpkgs/pkgs/applications/graphics/mypaint/default.nix +++ b/nixpkgs/pkgs/applications/graphics/mypaint/default.nix @@ -1,13 +1,14 @@ { stdenv , fetchFromGitHub , gtk3 -, intltool +, gettext , json_c , lcms2 , libpng , librsvg , gobject-introspection , libmypaint +, hicolor-icon-theme , mypaint-brushes , gdk-pixbuf , pkgconfig @@ -20,23 +21,25 @@ let inherit (python3.pkgs) pycairo pygobject3 numpy buildPythonApplication; in buildPythonApplication rec { pname = "mypaint"; - version = "2.0.0"; + version = "2.0.1"; src = fetchFromGitHub { owner = "mypaint"; repo = "mypaint"; rev = "v${version}"; - sha256 = "180kyilhf81ndhwl1hlvy82gh6hxpcvka2d1nkghbpgy431rls6r"; + sha256 = "rVKcxzWZRLcuxK8xRyRgvitXAh4uOEyqHswLeTdA2Mk="; fetchSubmodules = true; }; nativeBuildInputs = [ - intltool + gettext pkgconfig swig wrapGAppsHook gobject-introspection # for setup hook + hicolor-icon-theme # fรณr setup hook ]; + buildInputs = [ gtk3 gdk-pixbuf @@ -48,6 +51,9 @@ in buildPythonApplication rec { librsvg pycairo pygobject3 + + # Mypaint checks for a presence of this theme scaffold and crashes when not present. + hicolor-icon-theme ]; propagatedBuildInputs = [ diff --git a/nixpkgs/pkgs/applications/graphics/nomacs/default.nix b/nixpkgs/pkgs/applications/graphics/nomacs/default.nix index 67e95aec758..d23c02dbbdf 100644 --- a/nixpkgs/pkgs/applications/graphics/nomacs/default.nix +++ b/nixpkgs/pkgs/applications/graphics/nomacs/default.nix @@ -18,13 +18,13 @@ mkDerivation rec { pname = "nomacs"; - version = "3.14.2"; + version = "3.17.2206"; src = fetchFromGitHub { owner = "nomacs"; repo = "nomacs"; rev = version; - sha256 = "1vms13kyg7cpqi2hxvrrhlnl7cq92ijr7dm1kl5ryglpcagqv811"; + sha256 = "1bq7bv4p7w67172y893lvpk90d6fgdpnylynbj2kn8m2hs6khya4"; }; enableParallelBuilding = true; diff --git a/nixpkgs/pkgs/applications/graphics/odafileconverter/default.nix b/nixpkgs/pkgs/applications/graphics/odafileconverter/default.nix new file mode 100644 index 00000000000..0378c4db13b --- /dev/null +++ b/nixpkgs/pkgs/applications/graphics/odafileconverter/default.nix @@ -0,0 +1,53 @@ +{ lib, stdenv, mkDerivation, dpkg, fetchurl, qtbase }: + +let + # To obtain the version you will need to run the following command: + # + # dpkg-deb -I ${odafileconverter.src} | grep Version + version = "21.7.0.0"; + rpath = "$ORIGIN:${lib.makeLibraryPath [ stdenv.cc.cc qtbase ]}"; + +in mkDerivation { + pname = "oda-file-converter"; + inherit version; + nativeBuildInputs = [ dpkg ]; + + src = fetchurl { + # NB: this URL is not stable (i.e. the underlying file and the corresponding version will change over time) + url = "https://download.opendesign.com/guestfiles/ODAFileConverter/ODAFileConverter_QT5_lnxX64_7.2dll.deb"; + sha256 = "0sa21nnwzqb6g7gl0z43smqgcd9h3xipj3cq2cl7ybfh3cvcxfi9"; + }; + + unpackPhase = '' + dpkg -x $src oda_unpacked + sourceRoot=$PWD/oda_unpacked + ''; + + installPhase = '' + mkdir -p $out/bin $out/lib + cp -vr $sourceRoot/usr/bin/ODAFileConverter_${version} $out/libexec + cp -vr $sourceRoot/usr/share $out/share + ''; + + dontWrapQtApps = true; + fixupPhase = '' + echo "setting interpreter" + patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $out/libexec/ODAFileConverter + patchelf --set-rpath '${rpath}' $out/libexec/ODAFileConverter + wrapQtApp $out/libexec/ODAFileConverter + mv $out/libexec/ODAFileConverter $out/bin + + find $out/libexec -type f -executable | while read file; do + echo "patching $file" + patchelf --set-rpath '${rpath}' $file + done + ''; + + meta = with stdenv.lib; { + description = "For converting between different versions of .dwg and .dxf"; + homepage = "https://www.opendesign.com/guestfiles/oda_file_converter"; + license = licenses.unfree; + maintainers = with maintainers; [ nagisa ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/nixpkgs/pkgs/applications/graphics/opentoonz/default.nix b/nixpkgs/pkgs/applications/graphics/opentoonz/default.nix new file mode 100644 index 00000000000..68830699699 --- /dev/null +++ b/nixpkgs/pkgs/applications/graphics/opentoonz/default.nix @@ -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 ]; + }; +} diff --git a/nixpkgs/pkgs/applications/graphics/opentoonz/libtiff.nix b/nixpkgs/pkgs/applications/graphics/opentoonz/libtiff.nix new file mode 100644 index 00000000000..6663c47553e --- /dev/null +++ b/nixpkgs/pkgs/applications/graphics/opentoonz/libtiff.nix @@ -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 + ''; +}) diff --git a/nixpkgs/pkgs/applications/graphics/opentoonz/source.nix b/nixpkgs/pkgs/applications/graphics/opentoonz/source.nix new file mode 100644 index 00000000000..7378d2f5f96 --- /dev/null +++ b/nixpkgs/pkgs/applications/graphics/opentoonz/source.nix @@ -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"; + }; +} diff --git a/nixpkgs/pkgs/applications/graphics/paraview/default.nix b/nixpkgs/pkgs/applications/graphics/paraview/default.nix index 15d70d14308..b201f9dbf0d 100644 --- a/nixpkgs/pkgs/applications/graphics/paraview/default.nix +++ b/nixpkgs/pkgs/applications/graphics/paraview/default.nix @@ -1,26 +1,33 @@ -{ stdenv, fetchFromGitHub, cmake, makeWrapper, qtbase , qttools, python -, libGLU, libGL , libXt, qtx11extras, qtxmlpatterns , mkDerivation }: +{ boost, cmake, fetchFromGitHub, ffmpeg, qtbase, qtx11extras, + qttools, qtxmlpatterns, qtsvg, gdal, gfortran, libXt, makeWrapper, + mkDerivation, ninja, openmpi, python3, stdenv, tbb, libGLU, libGL }: mkDerivation rec { pname = "paraview"; - version = "5.6.3"; + version = "5.8.0"; - # fetching from GitHub instead of taking an "official" source - # tarball because of missing submodules there src = fetchFromGitHub { owner = "Kitware"; repo = "ParaView"; rev = "v${version}"; - sha256 = "0zcij59pg47c45gfddnpbin13w16smzhcbivzm1k4pg4366wxq1q"; + sha256 = "1mka6wwg9mbkqi3phs29mvxq6qbc44sspbm4awwamqhilh4grhrj"; fetchSubmodules = true; }; - cmakeFlags = [ - "-DPARAVIEW_ENABLE_PYTHON=ON" - "-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON" - "-DPARAVIEW_ENABLE_EMBEDDED_DOCUMENTATION=OFF" - "-DOpenGL_GL_PREFERENCE=GLVND" - ]; + # Avoid error: format not a string literal and + # no format arguments [-Werror=format-security] + preConfigure = '' + substituteInPlace VTK/Common/Core/vtkLogger.h \ + --replace 'vtkLogScopeF(verbosity_name, __func__)' 'vtkLogScopeF(verbosity_name, "%s", __func__)' + + substituteInPlace VTK/Common/Core/vtkLogger.h \ + --replace 'vtkVLogScopeF(level, __func__)' 'vtkVLogScopeF(level, "%s", __func__)' + ''; + + # Find the Qt platform plugin "minimal" + patchPhase = '' + export QT_PLUGIN_PATH=${qtbase.bin}/${qtbase.qtPluginPrefix} + ''; # During build, binaries are called that rely on freshly built # libraries. These reside in build/lib, and are not found by @@ -29,37 +36,50 @@ mkDerivation rec { export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/lib:$PWD/VTK/ThirdParty/vtkm/vtk-m/lib ''; - enableParallelBuilding = true; + cmakeFlags = [ + "-DCMAKE_BUILD_TYPE=Release" + "-DPARAVIEW_ENABLE_FFMPEG=ON" + "-DPARAVIEW_ENABLE_GDAL=ON" + "-DPARAVIEW_ENABLE_MOTIONFX=ON" + "-DPARAVIEW_ENABLE_VISITBRIDGE=ON" + "-DPARAVIEW_ENABLE_XDMF3=ON" + "-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON" + "-DPARAVIEW_USE_MPI=ON" + "-DPARAVIEW_USE_PYTHON=ON" + "-DVTK_SMP_IMPLEMENTATION_TYPE=TBB" + "-DVTKm_ENABLE_MPI=ON" + "-DCMAKE_INSTALL_LIBDIR=lib" + "-DCMAKE_INSTALL_INCLUDEDIR=include" + "-DCMAKE_INSTALL_BINDIR=bin" + "-DOpenGL_GL_PREFERENCE=GLVND" + "-GNinja" + ]; nativeBuildInputs = [ cmake makeWrapper + ninja + gfortran ]; buildInputs = [ - python - python.pkgs.numpy libGLU libGL libXt + openmpi + (python3.withPackages (ps: with ps; [ numpy matplotlib mpi4py ])) + tbb + boost + ffmpeg + gdal qtbase qtx11extras qttools qtxmlpatterns + qtsvg ]; - # Paraview links into the Python library, resolving symbolic links on the way, - # so we need to put the correct sitePackages (with numpy) back on the path - preFixup = '' - wrapQtApp $out/bin/paraview \ - --prefix PYTHONPATH "${python.pkgs.numpy}/${python.sitePackages}" - wrapQtApp $out/bin/pvbatch \ - --prefix PYTHONPATH "${python.pkgs.numpy}/${python.sitePackages}" - wrapQtApp $out/bin/pvpython \ - --prefix PYTHONPATH "${python.pkgs.numpy}/${python.sitePackages}" - ''; - meta = with stdenv.lib; { - homepage = "http://www.paraview.org/"; + homepage = "https://www.paraview.org/"; description = "3D Data analysis and visualization application"; license = licenses.free; maintainers = with maintainers; [ guibert ]; diff --git a/nixpkgs/pkgs/applications/graphics/pdfcpu/default.nix b/nixpkgs/pkgs/applications/graphics/pdfcpu/default.nix index e667f7c0f1a..08dc87f6684 100644 --- a/nixpkgs/pkgs/applications/graphics/pdfcpu/default.nix +++ b/nixpkgs/pkgs/applications/graphics/pdfcpu/default.nix @@ -2,16 +2,19 @@ buildGoModule rec { pname = "pdfcpu"; - version = "0.3.3"; + version = "0.3.5"; src = fetchFromGitHub { owner = "pdfcpu"; repo = pname; rev = "v${version}"; - sha256 = "09z4z2csp7ld47q36x2id5zadaihisbnk7bkdvci826hwm8km7sl"; + sha256 = "0fb7l1h4dhn100y2ydq50cgj63fbr4p11x8h803rv6x3xwmviwcg"; }; - vendorSha256 = "09alkpfyxapycv6zsaz7prgbr0a1jzd78n7w2mh01mg4hhb2j3k7"; + vendorSha256 = "06xlwygqw3kzbjqlx09rs9hl4pfsmay5pj4c5hvkrj5z123ldvyw"; + + # No tests + doCheck = false; subPackages = [ "cmd/pdfcpu" ]; @@ -20,6 +23,5 @@ buildGoModule rec { homepage = "https://pdfcpu.io"; license = licenses.asl20; maintainers = with maintainers; [ doronbehar ]; - platforms = platforms.all; }; -}
\ No newline at end of file +} diff --git a/nixpkgs/pkgs/applications/graphics/pencil/default.nix b/nixpkgs/pkgs/applications/graphics/pencil/default.nix index edd923822ea..19e8121ac08 100644 --- a/nixpkgs/pkgs/applications/graphics/pencil/default.nix +++ b/nixpkgs/pkgs/applications/graphics/pencil/default.nix @@ -91,7 +91,7 @@ in stdenv.mkDerivation rec { $out/opt/pencil/pencil # fix missing libudev - ln -s ${systemd.lib}/lib/libudev.so.1 $out/opt/pencil/libudev.so.1 + ln -s ${lib.getLib systemd}/lib/libudev.so.1 $out/opt/pencil/libudev.so.1 wrapProgram $out/opt/pencil/pencil \ --prefix LD_LIBRARY_PATH : $out/opt/pencil ''; diff --git a/nixpkgs/pkgs/applications/graphics/pqiv/default.nix b/nixpkgs/pkgs/applications/graphics/pqiv/default.nix index 505f28a2451..bb29101b4c7 100644 --- a/nixpkgs/pkgs/applications/graphics/pqiv/default.nix +++ b/nixpkgs/pkgs/applications/graphics/pqiv/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchFromGitHub, pkgconfig -, ffmpeg, gtk3, imagemagick, libarchive, libspectre, libwebp, poppler +, ffmpeg_3, gtk3, imagemagick, libarchive, libspectre, libwebp, poppler }: stdenv.mkDerivation (rec { @@ -14,7 +14,7 @@ stdenv.mkDerivation (rec { }; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ ffmpeg gtk3 imagemagick libarchive libspectre libwebp poppler ]; + buildInputs = [ ffmpeg_3 gtk3 imagemagick libarchive libspectre libwebp poppler ]; prePatch = "patchShebangs ."; diff --git a/nixpkgs/pkgs/applications/graphics/processing/default.nix b/nixpkgs/pkgs/applications/graphics/processing/default.nix index cad6a35ce3f..de5ae4fcbfd 100644 --- a/nixpkgs/pkgs/applications/graphics/processing/default.nix +++ b/nixpkgs/pkgs/applications/graphics/processing/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "processing"; - version = "3.5.3"; + version = "3.5.4"; src = fetchFromGitHub { owner = "processing"; repo = "processing"; - rev = "processing-0269-${version}"; - sha256 = "0ajniy3a0i0rx7is46r85yh3ah4zm4ra1gbllmihw9pmnfjgfajn"; + rev = "processing-0270-${version}"; + sha256 = "0cvv8jda9y8qnfcsziasyv3w7h3w22q78ihr23cm4an63ghxci58"; }; nativeBuildInputs = [ ant rsync makeWrapper ]; @@ -22,8 +22,10 @@ stdenv.mkDerivation rec { # do not download a file during build ${xmlstarlet}/bin/xmlstarlet ed --inplace -P -d '//get[@src="http://download.processing.org/reference.zip"]' build/build.xml install -D -m0444 ${fetchurl { - url = "http://download.processing.org/reference.zip"; - sha256 = "198bpk8mzns6w5h0zdf50wr6iv7sgdi6v7jznj5rbsnpgyilxz35"; + # Use archive.org link for reproducibility until the following issue is fixed: + # https://github.com/processing/processing/issues/5711 + url = "https://web.archive.org/web/20200406132357/https://download.processing.org/reference.zip"; + sha256 = "093hc7kc9wfxqgf5dzfmfp68pbsy8x647cj0a25vgjm1swi61zbi"; } } ./java/reference.zip diff --git a/nixpkgs/pkgs/applications/graphics/qosmic/default.nix b/nixpkgs/pkgs/applications/graphics/qosmic/default.nix new file mode 100644 index 00000000000..96823441b6e --- /dev/null +++ b/nixpkgs/pkgs/applications/graphics/qosmic/default.nix @@ -0,0 +1,70 @@ +{ mkDerivation +, fetchFromGitHub +, fetchpatch +, qmake +, wrapQtAppsHook +, qtbase +, pkg-config +, lua +, flam3 +, libxml2 +, libpng +, libjpeg +, lib +}: + +mkDerivation rec { + pname = "qosmic"; + version = "1.6.0"; + + src = fetchFromGitHub { + owner = "bitsed"; + repo = "qosmic"; + rev = "v${version}"; + sha256 = "13nw1mkdib14430r21mj352v62vi546vf184vyhxm7yjjygyra1w"; + }; + + patches = [ + # Allow overriding PREFIX (to install to $out, + # written while creating this derivation) + # https://github.com/bitsed/qosmic/pull/39 + (fetchpatch { + name = "allow-overriding-PREFIX.patch"; + url = "https://github.com/bitsed/qosmic/commit/77fb3a577b0710efae2a1d9ed97c26ae16f3a5ba.patch"; + sha256 = "0v9hj9s78cb6bg8ca0wjkbr3c7ml1n51n8h4a70zpzzgzz7rli5b"; + }) + # Fix QButtonGroup include errors with Qt 5.11: + # Will be part of the next post-1.6.0 release + (fetchpatch { + name = "fix-class-QButtonGroup-include-errors-with-Qt-5.11.patch"; + url = "https://github.com/bitsed/qosmic/commit/3f6e1ea8d384a124dbc2d568171a4da798480752.patch"; + sha256 = "0bp6b759plkqs32nvfpkfvf3qqzc9716k3ycwnjvwabbvpg1xwbl"; + }) + ]; + + nativeBuildInputs = [ qmake wrapQtAppsHook pkg-config ]; + + buildInputs = [ + qtbase + lua + flam3 + libxml2 + libpng + libjpeg + ]; + + qmakeFlags = [ + # Use pkg-config to correctly locate library paths + "-config" "link_pkgconfig" + ]; + + meta = with lib; { + description = "A cosmic recursive flame fractal editor"; + homepage = "https://github.com/bitsed/qosmic"; + license = licenses.gpl3Plus; + maintainers = [ maintainers.raboof ]; + # It might be possible to make it work on OSX, + # but this has not been tested. + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/applications/graphics/renderdoc/default.nix b/nixpkgs/pkgs/applications/graphics/renderdoc/default.nix index bf0b92b6f6d..5f39116e85f 100644 --- a/nixpkgs/pkgs/applications/graphics/renderdoc/default.nix +++ b/nixpkgs/pkgs/applications/graphics/renderdoc/default.nix @@ -13,14 +13,14 @@ let pythonPackages = python3Packages; in mkDerivation rec { - version = "1.7"; + version = "1.9"; pname = "renderdoc"; src = fetchFromGitHub { owner = "baldurk"; repo = "renderdoc"; rev = "v${version}"; - sha256 = "0r0y0lx48hkyf39pgippsc9q8hdcf57bdva6gx7f35vlhicx5hlz"; + sha256 = "18nparkd435hdbm924jfdvmym7f3xd2fcy96jr4lrkl5rhj2sf85"; }; buildInputs = [ diff --git a/nixpkgs/pkgs/applications/graphics/runwayml/default.nix b/nixpkgs/pkgs/applications/graphics/runwayml/default.nix index eb8ecc34b8f..9366276ebf8 100644 --- a/nixpkgs/pkgs/applications/graphics/runwayml/default.nix +++ b/nixpkgs/pkgs/applications/graphics/runwayml/default.nix @@ -6,20 +6,19 @@ let pname = "runwayml"; - version = "0.10.20"; + version = "0.14.3"; name = "${pname}-${version}"; src = fetchurl { - url = "https://runway-releases.s3.amazonaws.com/Runway%20${version}.AppImage"; - sha256 = "1wi94xi8nrwfc4v2j1crlmwr0nxg95ffp5h4hxd84crvya8ibxgz"; - name="${pname}-${version}.AppImage"; + url = "https://runway-releases.s3.amazonaws.com/Runway-${version}.AppImage"; + sha256 = "1bx8j39wd2z6f32hdvmk9z77bivnizzdhn296kin2nnqgq6v6y93"; }; binary = appimageTools.wrapType2 { name = pname; inherit src; }; - # we only use this to extract the icon + # we only use this to extract the icon and desktop file appimage-contents = appimageTools.extractType2 { inherit name src; }; diff --git a/nixpkgs/pkgs/applications/graphics/sane/backends/airscan/default.nix b/nixpkgs/pkgs/applications/graphics/sane/backends/airscan/default.nix index 75f4a466b27..3cce81ef8af 100644 --- a/nixpkgs/pkgs/applications/graphics/sane/backends/airscan/default.nix +++ b/nixpkgs/pkgs/applications/graphics/sane/backends/airscan/default.nix @@ -1,17 +1,17 @@ -{ lib, stdenv, fetchFromGitHub, pkg-config, avahi, libsoup, libjpeg, libpng +{ lib, stdenv, fetchFromGitHub, pkg-config, avahi, libsoup, libjpeg, libpng, gnutls , sane-backends, meson, ninja }: stdenv.mkDerivation rec { pname = "sane-airscan"; - version = "0.99.0"; + version = "0.99.16"; nativeBuildInputs = [ meson ninja pkg-config ]; - buildInputs = [ avahi libsoup libjpeg libpng sane-backends ]; + buildInputs = [ avahi libsoup libjpeg libpng gnutls sane-backends ]; src = fetchFromGitHub { owner = "alexpevzner"; repo = pname; rev = version; - sha256 = "0bbw3s95v5fmkpmmd26v9cf1c40dm85bgxlhs06ski5my803ck0a"; + sha256 = "00lgcdbpns0shwlpkvrpfm4z05s7v5q3al4kcw6ii7xnkzmv1721"; }; meta = with lib; { diff --git a/nixpkgs/pkgs/applications/graphics/sane/backends/default.nix b/nixpkgs/pkgs/applications/graphics/sane/backends/default.nix index 6aba42d33e6..ad2681d25fe 100644 --- a/nixpkgs/pkgs/applications/graphics/sane/backends/default.nix +++ b/nixpkgs/pkgs/applications/graphics/sane/backends/default.nix @@ -1,10 +1,10 @@ { callPackage, fetchurl, ... } @ args: callPackage ./generic.nix (args // rec { - version = "1.0.28"; + version = "1.0.30"; src = fetchurl { - url = "https://gitlab.com/sane-project/backends/uploads/9e718daff347826f4cfe21126c8d5091/sane-backends-${version}.tar.gz"; - sha256 = "00yy8q9hqdf0zjxxl4d8njr9zf0hhi3a9ib23ikc2anqf8zhy9ii"; + url = "https://gitlab.com/sane-project/backends/uploads/c3dd60c9e054b5dee1e7b01a7edc98b0/sane-backends-${version}.tar.gz"; + sha256 = "18vryaycps3zpjzxh0wjgg8nv2f4pdvcfxxmdfj28qbzqjlrcp9z"; }; }) diff --git a/nixpkgs/pkgs/applications/graphics/shotwell/default.nix b/nixpkgs/pkgs/applications/graphics/shotwell/default.nix index b03d0a01dd6..c041d2dde8c 100644 --- a/nixpkgs/pkgs/applications/graphics/shotwell/default.nix +++ b/nixpkgs/pkgs/applications/graphics/shotwell/default.nix @@ -17,6 +17,7 @@ , libgudev , libraw , glib +, glib-networking , json-glib , gcr , libgee @@ -39,11 +40,11 @@ stdenv.mkDerivation rec { pname = "shotwell"; - version = "0.31.1"; + version = "0.31.2"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "0mbgrad4d4snffw2z3rkhwqq1bkxdgy52pblx99vjadvpgspb034"; + sha256 = "0ywzr6vgcz8yy60v0jp55na9lgqi4dbh2vakfphkcml1gpah0r2l"; }; nativeBuildInputs = [ @@ -77,6 +78,7 @@ stdenv.mkDerivation rec { libraw json-glib glib + glib-networking gdk-pixbuf librsvg librest diff --git a/nixpkgs/pkgs/applications/graphics/swingsane/default.nix b/nixpkgs/pkgs/applications/graphics/swingsane/default.nix index fc9132ec0b4..ffc19653dad 100644 --- a/nixpkgs/pkgs/applications/graphics/swingsane/default.nix +++ b/nixpkgs/pkgs/applications/graphics/swingsane/default.nix @@ -27,7 +27,7 @@ stdenv.mkDerivation rec { desktopName = "SwingSane"; genericName = "Scan from local or remote SANE servers"; comment = meta.description; - categories = "Office;Application;"; + categories = "Office;"; }; in '' diff --git a/nixpkgs/pkgs/applications/graphics/tev/default.nix b/nixpkgs/pkgs/applications/graphics/tev/default.nix index f6ad16d7f90..2f47ebab66e 100644 --- a/nixpkgs/pkgs/applications/graphics/tev/default.nix +++ b/nixpkgs/pkgs/applications/graphics/tev/default.nix @@ -5,14 +5,14 @@ stdenv.mkDerivation rec { pname = "tev"; - version = "1.15"; + version = "1.16"; src = fetchFromGitHub { owner = "Tom94"; repo = pname; rev = "v${version}"; fetchSubmodules = true; - sha256 = "173nxvj30xmbdj8fc3rbw0mlicxy6zbhxv01i7z5nmcdvpamkdx6"; + sha256 = "0fn5j9klzrjvz3bq8p9yp9nqikn2fr7bp98c1sxwpwwaadkqy9xf"; }; nativeBuildInputs = [ cmake wrapGAppsHook ]; diff --git a/nixpkgs/pkgs/applications/graphics/viewnior/default.nix b/nixpkgs/pkgs/applications/graphics/viewnior/default.nix index 41463a7627a..1addb2d7bd5 100644 --- a/nixpkgs/pkgs/applications/graphics/viewnior/default.nix +++ b/nixpkgs/pkgs/applications/graphics/viewnior/default.nix @@ -1,24 +1,38 @@ -{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, gtk2, libpng, exiv2, lcms +{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig, desktop-file-utils, gtk2, libpng, exiv2, lcms , intltool, gettext, shared-mime-info, glib, gdk-pixbuf, perl}: stdenv.mkDerivation rec { pname = "viewnior"; - version = "1.6"; + version = "1.7"; src = fetchFromGitHub { - owner = "xsisqox"; + owner = "hellosiyan"; repo = "Viewnior"; rev = "${pname}-${version}"; - sha256 = "06ppv3r85l3id4ij6h4y5fgm3nib2587fdrdv9fccyi75zk7fs0p"; + sha256 = "0y4hk3vq8psba5k615w18qj0kbdfp5w0lm98nv5apy6hmcpwfyig"; }; - nativeBuildInputs = [ autoreconfHook ]; - buildInputs = - [ pkgconfig gtk2 libpng exiv2 lcms intltool gettext - shared-mime-info glib gdk-pixbuf perl - ]; - - meta = { + nativeBuildInputs = [ + meson + ninja + pkgconfig + desktop-file-utils + intltool + gettext + ]; + + buildInputs = [ + gtk2 + libpng + exiv2 + lcms + shared-mime-info + glib + gdk-pixbuf + perl + ]; + + meta = with stdenv.lib; { description = "Fast and simple image viewer"; longDescription = '' Viewnior is insipred by big projects like Eye of Gnome, because of it's @@ -27,13 +41,9 @@ stdenv.mkDerivation rec { with the quality of it's functions. The program is made with better integration in mind (follows Gnome HIG2). ''; - - license = stdenv.lib.licenses.gpl3; - + license = licenses.gpl3; homepage = "http://siyanpanayotov.com/project/viewnior/"; - - maintainers = [ stdenv.lib.maintainers.smironov ]; - - platforms = stdenv.lib.platforms.gnu ++ stdenv.lib.platforms.linux; + maintainers = with maintainers; [ smironov artturin ]; + platforms = platforms.gnu ++ platforms.linux; }; } diff --git a/nixpkgs/pkgs/applications/graphics/write_stylus/default.nix b/nixpkgs/pkgs/applications/graphics/write_stylus/default.nix index 31fc4045026..8396ce72e50 100644 --- a/nixpkgs/pkgs/applications/graphics/write_stylus/default.nix +++ b/nixpkgs/pkgs/applications/graphics/write_stylus/default.nix @@ -1,29 +1,22 @@ -{ mkDerivation, stdenv, lib, qtbase, qtsvg, libglvnd, fetchurl, makeDesktopItem }: +{ mkDerivation, stdenv, lib, qtbase, qtsvg, libglvnd, libX11, libXi, fetchurl, makeDesktopItem }: let - # taken from: https://www.iconfinder.com/icons/50835/edit_pencil_write_icon - # license: Free for commercial use - desktopIcon = fetchurl { - url = "https://www.iconfinder.com/icons/50835/download/png/256"; - sha256 = "0abdya42yf9alxbsmc2nf8jwld50zfria6z3d4ncvp1zw2a9jhb8"; - }; -in -mkDerivation rec { - pname = "write_stylus"; - version = "209"; - desktopItem = makeDesktopItem { name = "Write"; exec = "Write"; comment = "A word processor for handwriting"; - icon = desktopIcon; + icon = "write_stylus"; desktopName = "Write"; genericName = "Write"; categories = "Office;Graphics"; }; +in +mkDerivation rec { + pname = "write_stylus"; + version = "300"; src = fetchurl { url = "http://www.styluslabs.com/write/write${version}.tar.gz"; - sha256 = "1p6glp4vdpwl8hmhypayc4cvs3j9jfmjfhhrgqm2xkgl5bfbv2qd"; + sha256 = "0h1wf3af7jzp3f3l8mlnshi83d7a4v4y8nfqfai4lmskyicqlz7c"; }; sourceRoot = "."; @@ -36,15 +29,20 @@ mkDerivation rec { # symlink the binary to bin/ ln -s $out/Write/Write $out/bin/Write + # Create desktop item mkdir -p $out/share/applications ln -s ${desktopItem}/share/applications/* $out/share/applications/ + mkdir -p $out/share/icons + ln -s $out/Write/Write144x144.png $out/share/icons/write_stylus.png ''; preFixup = let libPath = lib.makeLibraryPath [ qtbase # libQt5PrintSupport.so.5 qtsvg # libQt5Svg.so.5 stdenv.cc.cc.lib # libstdc++.so.6 - libglvnd # ibGL.so.1 + libglvnd # libGL.so.1 + libX11 # libX11.so.6 + libXi # libXi.so.6 ]; in '' patchelf \ diff --git a/nixpkgs/pkgs/applications/graphics/xara/debian-patches.nix b/nixpkgs/pkgs/applications/graphics/xara/debian-patches.nix deleted file mode 100644 index dd306146186..00000000000 --- a/nixpkgs/pkgs/applications/graphics/xara/debian-patches.nix +++ /dev/null @@ -1,30 +0,0 @@ -# Generated by debian-patches.sh from debian-patches.txt -let - prefix = "http://patch-tracker.debian.org/patch/series/dl/xaralx/0.7r1785-5"; -in -[ - { - url = "${prefix}/30_gtk_wxwidgets_symbol_clash"; - sha256 = "1rc9dh9mnp93mad96dkp7idyhhcw7h6w0g5s92mqgzj79hqgaziz"; - } - { - url = "${prefix}/40_algorithm_include"; - sha256 = "03jhl1qnxj7nl8malf6v1y24aldfz87x1p2jxp04mrr35nzvyyc0"; - } - { - url = "${prefix}/50_update_imagemagick_version_parser"; - sha256 = "1nilsqghlr649sc14n1aqkhdx7f66rq91gqccdpi17jwijs27497"; - } - { - url = "${prefix}/remove-icon-suffix"; - sha256 = "160zmkgwlsanqivnip89558yvd9zvqp8ks2wbyr2aigl2rafin22"; - } - { - url = "${prefix}/45_fix_gcc4"; - sha256 = "06zsj0z9v5n557gj8337v6xd26clbvm4dc0qhvpvzbisq81l9jyi"; - } - { - url = "${prefix}/55_fix_contstuctor_call"; - sha256 = "0b14glrcwhv0ja960h56n5jm4f9563ladap2pgaywihq485ql1c1"; - } -] diff --git a/nixpkgs/pkgs/applications/graphics/xara/debian-patches.txt b/nixpkgs/pkgs/applications/graphics/xara/debian-patches.txt deleted file mode 100644 index 5c95d401a32..00000000000 --- a/nixpkgs/pkgs/applications/graphics/xara/debian-patches.txt +++ /dev/null @@ -1,7 +0,0 @@ -xaralx/0.7r1785-5 -30_gtk_wxwidgets_symbol_clash -40_algorithm_include -50_update_imagemagick_version_parser -remove-icon-suffix -45_fix_gcc4 -55_fix_contstuctor_call diff --git a/nixpkgs/pkgs/applications/graphics/xara/default.nix b/nixpkgs/pkgs/applications/graphics/xara/default.nix deleted file mode 100644 index 5e3c252435c..00000000000 --- a/nixpkgs/pkgs/applications/graphics/xara/default.nix +++ /dev/null @@ -1,22 +0,0 @@ -{stdenv, fetchurl, automake, gettext, freetype, libxml2, pango, pkgconfig -, wxGTK, gtk2, perl, zip}: - -stdenv.mkDerivation { - name = "xaralx-0.7r1785"; - - src = fetchurl { - url = "http://downloads2.xara.com/opensource/XaraLX-0.7r1785.tar.bz2"; - sha256 = "05xbzq1i1vw2mdsv7zjqfpxfv3g1j0g5kks0gq6sh373xd6y8lyh"; - }; - - nativeBuildInputs = [ automake pkgconfig gettext perl zip ]; - buildInputs = [ wxGTK gtk2 libxml2 freetype pango ]; - - configureFlags = [ "--disable-svnversion" ]; - - patches = map fetchurl (import ./debian-patches.nix); - - prePatch = "patchShebangs Scripts"; - - meta.broken = true; -} diff --git a/nixpkgs/pkgs/applications/graphics/xfractint/default.nix b/nixpkgs/pkgs/applications/graphics/xfractint/default.nix index 8d36e4630dc..08ef0cd7b58 100644 --- a/nixpkgs/pkgs/applications/graphics/xfractint/default.nix +++ b/nixpkgs/pkgs/applications/graphics/xfractint/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl, libX11, libXft}: stdenv.mkDerivation rec { pname = "xfractint"; - version = "20.04p14"; + version = "20.04p16"; # or fetchFromGitHub(owner,repo,rev) or fetchgit(rev) src = fetchurl { url = "https://www.fractint.net/ftp/current/linux/xfractint-${version}.tar.gz"; - sha256 = "0jdqr639z862qrswwk5srmv4fj5d7rl8kcscpn6mlkx4jvjmca0f"; + sha256 = "1ba77jifxv8jql044mdydh4p4ms4w5vw3qrqmcfzlvqfxk7h2m2f"; }; buildInputs = [libX11 libXft]; diff --git a/nixpkgs/pkgs/applications/graphics/yeetgif/default.nix b/nixpkgs/pkgs/applications/graphics/yeetgif/default.nix index 157ef3753e0..84bcdee5b76 100644 --- a/nixpkgs/pkgs/applications/graphics/yeetgif/default.nix +++ b/nixpkgs/pkgs/applications/graphics/yeetgif/default.nix @@ -2,7 +2,7 @@ buildGoPackage rec { pname = "yeetgif"; - version = "1.23.5"; + version = "1.23.6"; goPackagePath = "github.com/sgreben/yeetgif"; @@ -10,7 +10,7 @@ buildGoPackage rec { owner = "sgreben"; repo = pname; rev = version; - sha256 = "1yz4pps8g378lvmi92cnci6msjj7fprp9bxqmnsyn6lqw7s2wb47"; + sha256 = "05z1ylsra60bb4cvr383g9im94zsph1dgicqbv5p73qgs634ckk7"; }; meta = with lib; { @@ -18,6 +18,5 @@ buildGoPackage rec { homepage = "https://github.com/sgreben/yeetgif"; license = with licenses; [ mit asl20 cc-by-nc-sa-40 ]; maintainers = with maintainers; [ ajs124 ]; - platforms = platforms.all; }; } |