From cb77f7e227dd0953beceeebbc8f4842c51e389be Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Thu, 27 Jun 2019 03:16:46 -0400 Subject: [PATCH 01/14] exiv2: 0.26.2018.12.30 -> 0.27.1 Also run tests and remove additionally installed stuff. Co-authored-by: periklis Co-authored-by: vcunat --- pkgs/development/libraries/exiv2/default.nix | 73 ++++++++++++++++--- .../libraries/exiv2/fix-cmake.patch | 16 ++++ 2 files changed, 78 insertions(+), 11 deletions(-) create mode 100644 pkgs/development/libraries/exiv2/fix-cmake.patch diff --git a/pkgs/development/libraries/exiv2/default.nix b/pkgs/development/libraries/exiv2/default.nix index d3095099d3c..c37bacefcab 100644 --- a/pkgs/development/libraries/exiv2/default.nix +++ b/pkgs/development/libraries/exiv2/default.nix @@ -1,28 +1,79 @@ -{ stdenv, fetchFromGitHub, zlib, expat, gettext -, autoconf }: +{ stdenv +, fetchFromGitHub +, zlib +, expat +, cmake +, which +, libxml2 +, python3 +, gettext +}: stdenv.mkDerivation rec { - name = "exiv2-0.26.2018.12.30"; + pname = "exiv2"; + version = "0.27.1"; - #url = "https://www.exiv2.org/builds/${name}-trunk.tar.gz"; src = fetchFromGitHub rec { owner = "exiv2"; repo = "exiv2"; - rev = "f5d0b25"; # https://github.com/Exiv2/exiv2/commits/0.26 - sha256 = "1blaz3g8dlij881g14nv2nsgr984wy6ypbwgi2pixk978p0gm70i"; + rev = version; + sha256 = "0b5m921070fkyif0zlyb49gly3p6xd0hv1jyym4j25hx12gzbx0c"; }; - postPatch = "patchShebangs ./src/svn_version.sh"; - - preConfigure = "make config"; # needed because not using tarball + patches = [ + # https://github.com/Exiv2/exiv2/commit/aae88060ca85a483cd7fe791ba116c04d96c0bf9#comments + ./fix-cmake.patch + ]; outputs = [ "out" "dev" ]; nativeBuildInputs = [ + cmake gettext - autoconf # needed because not using tarball ]; - propagatedBuildInputs = [ zlib expat ]; + + propagatedBuildInputs = [ + expat + zlib + ]; + + checkInputs = [ + libxml2.bin + python3 + which + ]; + + doCheck = stdenv.isLinux; + + # Test setup found by inspecting ${src}/.travis/run.sh; problems without cmake. + checkTarget = "tests"; + + preCheck = '' + patchShebangs ../test/ + mkdir ../test/tmp + export LD_LIBRARY_PATH="$(realpath ../build/lib)" + + # Fix tests on Aarch64 + ${stdenv.lib.optionalString stdenv.isAarch64 '' + rm -f ../tests/bugfixes/github/test_CVE_2018_12265.py + ''} + ''; + + postCheck = '' + (cd ../tests/ && python3 runner.py) + ''; + + # With cmake we have to enable samples or there won't be + # a tests target. This removes them. + postInstall = '' + ( cd "$out/bin" + mv exiv2 .exiv2 + rm * + mv .exiv2 exiv2 + ) + ''; + + enableParallelBuilding = true; meta = with stdenv.lib; { homepage = https://www.exiv2.org/; diff --git a/pkgs/development/libraries/exiv2/fix-cmake.patch b/pkgs/development/libraries/exiv2/fix-cmake.patch new file mode 100644 index 00000000000..1e19aed8b90 --- /dev/null +++ b/pkgs/development/libraries/exiv2/fix-cmake.patch @@ -0,0 +1,16 @@ +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 34087004..41b3a068 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -239,9 +239,9 @@ install(FILES + ${CMAKE_BINARY_DIR}/exiv2lib_export.h + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/exiv2) + +-install(EXPORT exiv2Config DESTINATION "${CMAKE_INSTALL_LIBDIR}/exiv2/cmake") ++install(EXPORT exiv2Config DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/exiv2") + +-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/exiv2ConfigVersion.cmake DESTINATION "${CMAKE_INSTALL_LIBDIR}/exiv2/cmake") ++install(FILES ${CMAKE_CURRENT_BINARY_DIR}/exiv2ConfigVersion.cmake DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/exiv2") + + # ****************************************************************************** + # exiv2 application From 91a3b41967e1ef368d123303342d3c42d857a38f Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Thu, 27 Jun 2019 03:17:57 -0400 Subject: [PATCH 02/14] exiv2: enable docs and po Also multiout man --- pkgs/development/libraries/exiv2/default.nix | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/exiv2/default.nix b/pkgs/development/libraries/exiv2/default.nix index c37bacefcab..9b05165e1b2 100644 --- a/pkgs/development/libraries/exiv2/default.nix +++ b/pkgs/development/libraries/exiv2/default.nix @@ -7,6 +7,9 @@ , libxml2 , python3 , gettext +, doxygen +, graphviz +, libxslt }: stdenv.mkDerivation rec { @@ -25,11 +28,19 @@ stdenv.mkDerivation rec { ./fix-cmake.patch ]; - outputs = [ "out" "dev" ]; + cmakeFlags = [ + "-DEXIV2_BUILD_PO=ON" + "-DEXIV2_BUILD_DOC=ON" + ]; + + outputs = [ "out" "dev" "doc" "man" ]; nativeBuildInputs = [ cmake + doxygen gettext + graphviz + libxslt ]; propagatedBuildInputs = [ @@ -43,6 +54,10 @@ stdenv.mkDerivation rec { which ]; + buildFlags = [ + "doc" + ]; + doCheck = stdenv.isLinux; # Test setup found by inspecting ${src}/.travis/run.sh; problems without cmake. From ea2fb569d1fc3abda9dfe46e9f61b11c0897ef96 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Wed, 26 Jun 2019 21:34:14 -0400 Subject: [PATCH 03/14] gwenview: fix build with exiv2 0.27.1 --- pkgs/applications/kde/gwenview.nix | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/kde/gwenview.nix b/pkgs/applications/kde/gwenview.nix index 3d03d1dea3e..ceb928acdf2 100644 --- a/pkgs/applications/kde/gwenview.nix +++ b/pkgs/applications/kde/gwenview.nix @@ -3,7 +3,7 @@ extra-cmake-modules, kdoctools, exiv2, lcms2, baloo, kactivities, kdelibs4support, kio, kipi-plugins, libkdcraw, libkipi, - phonon, qtimageformats, qtsvg, qtx11extras, kinit + phonon, qtimageformats, qtsvg, qtx11extras, kinit, fetchpatch }: mkDerivation { @@ -18,4 +18,12 @@ mkDerivation { qtimageformats qtsvg qtx11extras ]; propagatedUserEnvPkgs = [ kipi-plugins libkipi (lib.getBin kinit) ]; + + # Fixes build with exiv2-0.27.1. Drop in 19.04.2 + patches = [ + (fetchpatch { + url = "https://github.com/KDE/gwenview/commit/172560b845460b6121154f88221c855542219943.patch"; + sha256 = "0y1l34h2s7rhfknvg6ggcc389jfzhpq69wf0s3xd5ccwfw7c0ycq"; + }) + ]; } From be579502287d0290e053c44620865258807c9bce Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Wed, 26 Jun 2019 21:54:11 -0400 Subject: [PATCH 04/14] libextractor: fix build with exiv2 0.27.1 --- pkgs/development/libraries/libextractor/default.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/libextractor/default.nix b/pkgs/development/libraries/libextractor/default.nix index bc371423e43..43e6abe1a39 100644 --- a/pkgs/development/libraries/libextractor/default.nix +++ b/pkgs/development/libraries/libextractor/default.nix @@ -1,5 +1,5 @@ { fetchurl, stdenv, libtool, gettext, zlib, bzip2, flac, libvorbis -, exiv2, libgsf, rpm, pkgconfig +, exiv2, libgsf, rpm, pkgconfig, fetchpatch , gtkSupport ? true, glib ? null, gtk3 ? null , videoSupport ? true, ffmpeg ? null, libmpeg2 ? null}: @@ -14,6 +14,15 @@ stdenv.mkDerivation rec { sha256 = "1zz2zvikvfibxnk1va3kgzs7djsmiqy7bmk8y01vbsf54ryjb3zh"; }; + patches = [ + # Fixes build with exiv2 0.27 + (fetchpatch { + name = "libextractor-exiv2-0.27.patch"; + url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/libextractor-exiv2-0.27.patch?h=packages/libextractor&id=4dc53f7fc69210ae571285dface108ed65d8ee53"; + sha256 = "0w4gc1q1m1yxsd4hv105nblmif465nw3g5nxzldy0x2rl9mdncg6"; + }) + ]; + preConfigure = '' echo "patching installation directory in \`extractor.c'..." sed -i "src/main/extractor.c" \ From 00be2a4a2e562d1e79bd4274e0d2f8940009ab33 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Wed, 26 Jun 2019 22:04:01 -0400 Subject: [PATCH 05/14] hugin: fix build with exiv2 0.27.1 --- pkgs/applications/graphics/hugin/default.nix | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/graphics/hugin/default.nix b/pkgs/applications/graphics/hugin/default.nix index 6be43cffea5..d7888da15ef 100644 --- a/pkgs/applications/graphics/hugin/default.nix +++ b/pkgs/applications/graphics/hugin/default.nix @@ -1,4 +1,4 @@ -{ stdenv, cmake, fetchurl, gnumake, makeWrapper, pkgconfig +{ stdenv, cmake, fetchurl, gnumake, makeWrapper, pkgconfig, fetchpatch , autopanosiftc, boost, cairo, enblend-enfuse, exiv2, fftw, flann, gettext , glew, ilmbase, lcms2, lensfun, libjpeg, libpng, libtiff, libX11, libXi , libXmu, libGLU_combined, openexr, panotools, perlPackages, sqlite, vigra, wxGTK, zlib @@ -12,6 +12,14 @@ stdenv.mkDerivation rec { sha256 = "1l925qslp98gg7yzmgps10h6dq0nb60wbfk345anlxsv0g2ifizr"; }; + patches = [ + # Fixes build with exiv2 0.27.1 + (fetchpatch { + url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/hugin-exiv2-0.27.1.patch?h=packages/hugin"; + sha256 = "1yxvlpvrhyrfd2w6kwx1w3mncsvlzdhp0w7xchy8q6kc2kd5nf7r"; + }) + ]; + buildInputs = [ boost cairo exiv2 fftw flann gettext glew ilmbase lcms2 lensfun libjpeg libpng libtiff libX11 libXi libXmu libGLU_combined openexr panotools sqlite vigra From a215eca765b4e43294d2378662f89f27ff95edcc Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Wed, 26 Jun 2019 23:03:58 -0400 Subject: [PATCH 06/14] qtpfsgui: remove https://github.com/LuminanceHDR points to the homepage of this package which has continued development. Wikipedia also cites that LuminanceHDR was formerly qtpfsgui. --- .../graphics/qtpfsgui/default.nix | 41 ------------------- pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 2 - 3 files changed, 1 insertion(+), 43 deletions(-) delete mode 100644 pkgs/applications/graphics/qtpfsgui/default.nix diff --git a/pkgs/applications/graphics/qtpfsgui/default.nix b/pkgs/applications/graphics/qtpfsgui/default.nix deleted file mode 100644 index 4be7d230b5f..00000000000 --- a/pkgs/applications/graphics/qtpfsgui/default.nix +++ /dev/null @@ -1,41 +0,0 @@ -{stdenv, fetchurl, qt4, qmake4Hook, exiv2, openexr, fftwSinglePrec, libtiff, ilmbase }: - -stdenv.mkDerivation rec { - name = "qtpfsgui-1.9.3"; - - src = fetchurl { - url = "mirror://sourceforge/qtpfsgui/${name}.tar.gz"; - sha256 = "1mlg9dry4mfnnjlnwsw375hzsiagssdhccfmapx5nh6ykqrslsh1"; - }; - - buildInputs = [ qt4 exiv2 openexr fftwSinglePrec libtiff ]; - nativeBuildInputs = [ qmake4Hook ]; - - hardeningDisable = [ "format" ]; - - preConfigure = '' - export CPATH="${ilmbase.dev}/include/OpenEXR:$CPATH" - ''; - - qmakeFlags = [ - "EXIV2PATH=${exiv2.dev}/include/exiv2" - "OPENEXRDIR=${openexr.dev}/include/OpenEXR" - "FFTW3DIR=${fftwSinglePrec.dev}/include" - "LIBTIFFDIR=${libtiff.dev}/include" - ]; - - meta = { - homepage = http://qtpfsgui.sourceforge.net/; - description = "Qtpfsqui, a graphical application for high dynamic range (HDR) imaging"; - - longDescription = - '' Qtpfsgui is an open source graphical user interface application that - aims to provide a workflow for high dynamic range (HDR) imaging. - ''; - - license = stdenv.lib.licenses.gpl2Plus; - - maintainers = [ ]; - platforms = stdenv.lib.platforms.gnu ++ stdenv.lib.platforms.linux; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 6312d1bd571..fd873605056 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -280,6 +280,7 @@ mapAliases ({ qt_gstreamer1 = qt-gstreamer1; # added 2017-02 quake3game = ioquake3; # added 2016-01-14 qwt6 = libsForQt5.qwt; # added 2015-12-19 + qtpfsgui = throw "Is now luminanceHDR"; # added 2019-06-26 rdiff_backup = rdiff-backup; # added 2014-11-23 rdmd = dtools; # added 2017-08-19 rhc = throw "deprecated in 2019-04-09: abandoned by upstream."; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 50ff45cd0b5..061f3ecd7ec 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -19825,8 +19825,6 @@ in qtpass = libsForQt5.callPackage ../applications/misc/qtpass { }; - qtpfsgui = callPackage ../applications/graphics/qtpfsgui { }; - qtractor = libsForQt5.callPackage ../applications/audio/qtractor { }; qtscrobbler = callPackage ../applications/audio/qtscrobbler { }; From 2be463f7d868700efc685fd9f6778f09523e1612 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Wed, 26 Jun 2019 23:15:26 -0400 Subject: [PATCH 07/14] luminance-hdr: 2.5.1 -> 2.6.0 Switch to GitHub source. --- .../graphics/luminance-hdr/default.nix | 24 ++++++++++--------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/pkgs/applications/graphics/luminance-hdr/default.nix b/pkgs/applications/graphics/luminance-hdr/default.nix index 867c0a55838..94899c937a8 100644 --- a/pkgs/applications/graphics/luminance-hdr/default.nix +++ b/pkgs/applications/graphics/luminance-hdr/default.nix @@ -1,23 +1,25 @@ -{ stdenv, cmake, fetchurl, pkgconfig, boost, exiv2, fftwFloat, gsl +{ stdenv, cmake, fetchFromGitHub, pkgconfig, boost, exiv2, fftwFloat, gsl , ilmbase, lcms2, libraw, libtiff, openexr -, qtbase, qtdeclarative, qttools, qtwebengine +, qtbase, qtdeclarative, qttools, qtwebengine, eigen }: stdenv.mkDerivation rec { - name = "luminance-hdr-2.5.1"; + pname = "luminance-hdr"; + version = "2.6.0"; - src = fetchurl { - url = "mirror://sourceforge/qtpfsgui/${name}.tar.bz2"; - sha256 = "15hnyk9yjkkc97dmnrg2ipfgwqxprlcyv2kyvbls4d54zc56x658"; + src = fetchFromGitHub { + owner = "LuminanceHDR"; + repo = "LuminanceHDR"; + rev = "v.${version}"; + sha256 = "1izmgjjp8mgyxv57sjjr05z7g7059ykb5wchlcn4wrnnb6aslnvn"; }; NIX_CFLAGS_COMPILE = "-I${ilmbase.dev}/include/OpenEXR"; - buildInputs = - [ - qtbase qtdeclarative qttools qtwebengine - boost exiv2 fftwFloat gsl ilmbase lcms2 libraw libtiff openexr - ]; + buildInputs = [ + qtbase qtdeclarative qttools qtwebengine eigen + boost exiv2 fftwFloat gsl ilmbase lcms2 libraw libtiff openexr + ]; nativeBuildInputs = [ cmake pkgconfig ]; From cee981f0319a29f3331f793a09e18d91e4e03f51 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Thu, 27 Jun 2019 00:46:59 -0400 Subject: [PATCH 08/14] mythtv: fix build with exiv2 0.27.1 --- pkgs/applications/video/mythtv/default.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/video/mythtv/default.nix b/pkgs/applications/video/mythtv/default.nix index 1be4fc252fd..74167a67bd2 100644 --- a/pkgs/applications/video/mythtv/default.nix +++ b/pkgs/applications/video/mythtv/default.nix @@ -2,7 +2,7 @@ , libpulseaudio, fftwSinglePrec , lame, zlib, libGLU_combined, alsaLib, freetype , perl, pkgconfig , libX11, libXv, libXrandr, libXvMC, libXinerama, libXxf86vm , libXmu , yasm, libuuid, taglib, libtool, autoconf, automake, file, exiv2 -, linuxHeaders +, linuxHeaders, fetchpatch }: stdenv.mkDerivation rec { @@ -16,6 +16,15 @@ stdenv.mkDerivation rec { sha256 = "0pjxv4bmq8h285jsr02svgaa03614arsyk12fn9d4rndjsi2cc3x"; }; + patches = [ + # Fixes build with exiv2 0.27.1. + (fetchpatch { + name = "004-exiv2.patch"; + url = "https://aur.archlinux.org/cgit/aur.git/plain/004-exiv2.patch?h=mythtv&id=76ea37f8556805b205878772ad7874e487c0d946"; + sha256 = "0mh542f53qgky0w3s2bv0gmcxzvmb10834z3cfff40fby2ffr6k8"; + }) + ]; + setSourceRoot = ''sourceRoot=$(echo */mythtv)''; buildInputs = [ From 248014f053c38a7b794cd6dd05064813bc651ac5 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Thu, 27 Jun 2019 01:32:52 -0400 Subject: [PATCH 09/14] gpscorrelate: 1.6.1 -> unstable-2019-06-05 GPSCorrelate was originally written by Daniel Foote. The maintainer is now Dan Fandrich and we now fetch from their repo. This default builds the newly ported gtk3 application and should build with exiv2 0.27.1. --- .../misc/gpscorrelate/default.nix | 47 ++++++++++++------- 1 file changed, 30 insertions(+), 17 deletions(-) diff --git a/pkgs/applications/misc/gpscorrelate/default.nix b/pkgs/applications/misc/gpscorrelate/default.nix index e691c79d85c..5bcaccb43bc 100644 --- a/pkgs/applications/misc/gpscorrelate/default.nix +++ b/pkgs/applications/misc/gpscorrelate/default.nix @@ -1,28 +1,41 @@ -{ fetchFromGitHub, stdenv, pkgconfig, exiv2, libxml2, gtk2 -, libxslt, docbook_xsl, docbook_xml_dtd_42 }: +{ fetchFromGitHub, stdenv, fetchpatch, pkgconfig, exiv2, libxml2, gtk3 +, libxslt, docbook_xsl, docbook_xml_dtd_42, desktop-file-utils }: stdenv.mkDerivation rec { - name = "gpscorrelate-${version}"; - version = "1.6.1"; + pname = "gpscorrelate"; + version = "unstable-2019-06-05"; src = fetchFromGitHub { - owner = "freefoote"; - repo = "gpscorrelate"; - rev = version; - sha256 = "1z0fc75rx7dl6nnydksa578qv116j2c2xs1czfiijzxjghx8njdj"; + owner = "dfandrich"; + repo = pname; + rev = "80b14fe7c10c1cc8f62c13f517c062577ce88c85"; + sha256 = "1gaan0nd7ai0bwilfnkza7lg5mz87804mvlygj0gjc672izr37r6"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ - exiv2 libxml2 gtk2 - libxslt docbook_xsl + nativeBuildInputs = [ + desktop-file-utils docbook_xml_dtd_42 + docbook_xsl + libxslt + pkgconfig ]; - patchPhase = '' - sed -i "Makefile" \ - -es",^[[:blank:]]*prefix[[:blank:]]*=.*$,prefix = $out,g" - ''; + buildInputs = [ + exiv2 + gtk3 + libxml2 + ]; + + makeFlags = [ + "prefix=${placeholder ''out''}" + "GTK=3" + "CC=cc" + "CXX=c++" + ]; + + doCheck = true; + + installTargets = [ "install" "install-desktop-file" ]; meta = with stdenv.lib; { description = "A GPS photo correlation tool, to add EXIF geotags"; @@ -44,7 +57,7 @@ stdenv.mkDerivation rec { ''; license = licenses.gpl2Plus; - homepage = https://github.com/freefoote/gpscorrelate; + homepage = "https://github.com/dfandrich/gpscorrelate"; platforms = platforms.linux; }; } From c74d21a38cc833d70e47221fa097e27bbd449f00 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Thu, 27 Jun 2019 01:51:23 -0400 Subject: [PATCH 10/14] nomacs: add missing headers --- pkgs/applications/graphics/nomacs/default.nix | 4 +++ .../graphics/nomacs/nomacs-iostream.patch | 26 +++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 pkgs/applications/graphics/nomacs/nomacs-iostream.patch diff --git a/pkgs/applications/graphics/nomacs/default.nix b/pkgs/applications/graphics/nomacs/default.nix index 14a28fc55b7..d0838070262 100644 --- a/pkgs/applications/graphics/nomacs/default.nix +++ b/pkgs/applications/graphics/nomacs/default.nix @@ -27,6 +27,10 @@ stdenv.mkDerivation rec { sha256 = "12582i5v85da7vwjxj8grj99hxg34ij5cn3b1578wspdfw1xfy1i"; }; + patches = [ + ./nomacs-iostream.patch + ]; + enableParallelBuilding = true; setSourceRoot = '' diff --git a/pkgs/applications/graphics/nomacs/nomacs-iostream.patch b/pkgs/applications/graphics/nomacs/nomacs-iostream.patch new file mode 100644 index 00000000000..53224e0260e --- /dev/null +++ b/pkgs/applications/graphics/nomacs/nomacs-iostream.patch @@ -0,0 +1,26 @@ +diff --git a/src/DkCore/DkMetaData.cpp b/src/DkCore/DkMetaData.cpp +index d195757e..affec7be 100644 +--- a/src/DkCore/DkMetaData.cpp ++++ b/src/DkCore/DkMetaData.cpp +@@ -42,6 +42,8 @@ + #include + #pragma warning(pop) // no warnings from includes - end + ++#include ++ + namespace nmc { + + // DkMetaDataT -------------------------------------------------------------------- +diff --git a/src/DkGui/DkNoMacs.cpp b/src/DkGui/DkNoMacs.cpp +index 6a412f70..bbfba233 100644 +--- a/src/DkGui/DkNoMacs.cpp ++++ b/src/DkGui/DkNoMacs.cpp +@@ -96,6 +96,8 @@ + #include + #endif + ++#include ++ + namespace nmc { + + DkNomacsOSXEventFilter::DkNomacsOSXEventFilter(QObject *parent) : QObject(parent) { From e186ad5c31739f69d083412dbf22d5e9959f9a6d Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Thu, 27 Jun 2019 02:00:38 -0400 Subject: [PATCH 11/14] photivo: mark as broken --- pkgs/applications/graphics/photivo/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/applications/graphics/photivo/default.nix b/pkgs/applications/graphics/photivo/default.nix index 4843898eb64..6bd2fa98b1b 100644 --- a/pkgs/applications/graphics/photivo/default.nix +++ b/pkgs/applications/graphics/photivo/default.nix @@ -37,5 +37,6 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { platforms = platforms.linux; license = licenses.gpl3; + broken = true; # exiv2 0.27.1 FTBFS }; } From 38be980e5d2e8bfca9b9070e29995c479f6c248f Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Thu, 27 Jun 2019 02:18:46 -0400 Subject: [PATCH 12/14] photoqt: 1.5.1 -> 1.7.1 Also pull in patch upstream to fix build with exiv2 0.27.1. --- .../applications/graphics/photoqt/default.nix | 29 ++++++++++++++----- .../photoqt/photoqt-1.5.1-qt-5.9.patch | 13 --------- 2 files changed, 21 insertions(+), 21 deletions(-) delete mode 100644 pkgs/applications/graphics/photoqt/photoqt-1.5.1-qt-5.9.patch diff --git a/pkgs/applications/graphics/photoqt/default.nix b/pkgs/applications/graphics/photoqt/default.nix index 7571bb29bec..68afdd8694b 100644 --- a/pkgs/applications/graphics/photoqt/default.nix +++ b/pkgs/applications/graphics/photoqt/default.nix @@ -1,23 +1,36 @@ -{ stdenv, fetchurl, cmake, exiv2, graphicsmagick, libraw +{ stdenv, fetchurl, cmake, exiv2, graphicsmagick, libraw, fetchpatch , qtbase, qtdeclarative, qtmultimedia, qtquickcontrols, qttools, qtgraphicaleffects +, extra-cmake-modules, poppler, kimageformats, libarchive, libdevil }: stdenv.mkDerivation rec { - name = "photoqt-${version}"; - version = "1.5.1"; + pname = "photoqt"; + version = "1.7.1"; src = fetchurl { - url = "https://photoqt.org/pkgs/photoqt-${version}.tar.gz"; - sha256 = "17kkpzkmzfnigs26jjyd75iy58qffjsclif81cmviq73lzmqy0b1"; + url = "https://${pname}.org/pkgs/${pname}-${version}.tar.gz"; + sha256 = "1qvxdh3cbjcywqx0da2qp8z092660qyzv5yknqbps2zr12qqb103"; }; - patches = [ ./photoqt-1.5.1-qt-5.9.patch ]; + patches = [ + # Fixes build with exiv2 0.27.1 + (fetchpatch { + url = "https://gitlab.com/luspi/photoqt/commit/c6fd41478e818f3a651d40f96cab3d790e1c09a4.patch"; + sha256 = "1j2pdr7hm3js7lswhb4qkf9sj9viclhjqz50qxpyd7pqrl1gf2va"; + }) + ]; - nativeBuildInputs = [ cmake ]; + nativeBuildInputs = [ cmake extra-cmake-modules qttools ]; buildInputs = [ - qtbase qtquickcontrols qttools exiv2 graphicsmagick + qtbase qtquickcontrols exiv2 graphicsmagick poppler qtmultimedia qtdeclarative libraw qtgraphicaleffects + kimageformats libarchive + ]; + + cmakeFlags = [ + "-DFREEIMAGE=OFF" + "-DDEVIL=OFF" ]; preConfigure = '' diff --git a/pkgs/applications/graphics/photoqt/photoqt-1.5.1-qt-5.9.patch b/pkgs/applications/graphics/photoqt/photoqt-1.5.1-qt-5.9.patch deleted file mode 100644 index daa982b5f3a..00000000000 --- a/pkgs/applications/graphics/photoqt/photoqt-1.5.1-qt-5.9.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 97abcb5..fd4877a 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -50,7 +50,7 @@ SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -O3 -Wall") - #### FIND REQUIRED PACKAGES #### - ################################ - --FIND_PACKAGE(Qt5 COMPONENTS LinguistTools Quick Widgets Core Svg REQUIRED) -+FIND_PACKAGE(Qt5 COMPONENTS LinguistTools Quick Widgets Core Svg Sql Xml REQUIRED) - SET(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMake" ${CMAKE_MODULE_PATH}) - FIND_PACKAGE(Magick) - FIND_PACKAGE(Exiv2) From 36f005b830ebd8a421c2a3201f1c79a864606437 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Thu, 27 Jun 2019 02:32:50 -0400 Subject: [PATCH 13/14] geeqie: fix build with exiv2 0.27.1 --- pkgs/applications/graphics/geeqie/default.nix | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/graphics/geeqie/default.nix b/pkgs/applications/graphics/geeqie/default.nix index 4e1e7138e77..e4e31db94a6 100644 --- a/pkgs/applications/graphics/geeqie/default.nix +++ b/pkgs/applications/graphics/geeqie/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, pkgconfig, autoconf, automake, gettext, intltool , gtk3, lcms2, exiv2, libchamplain, clutter-gtk, ffmpegthumbnailer, fbida -, wrapGAppsHook +, wrapGAppsHook, fetchpatch }: stdenv.mkDerivation rec { @@ -12,8 +12,16 @@ stdenv.mkDerivation rec { sha256 = "0ciygvcxb78pqg59r6p061mkbpvkgv2rv3r79j3kgv3kalb3ln2w"; }; - # Do not build the changelog as this requires markdown. - patches = [ ./geeqie-no-changelog.patch ]; + patches = [ + # Do not build the changelog as this requires markdown. + ./geeqie-no-changelog.patch + # Fixes build with exiv2 0.27.1 + (fetchpatch { + name = "geeqie-exiv2-0.27.patch"; + url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/geeqie-exiv2-0.27.patch?h=packages/geeqie&id=dee28a8b3e9039b9cd6927b5a93ef2a07cd8271d"; + sha256 = "05skpbyp8pcq92psgijyccc8liwfy2cpwprw6m186pf454yb5y9p"; + }) + ]; preConfigure = "./autogen.sh"; From 368a6bacc1594f048832fcf1754696748dba6dbf Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Thu, 27 Jun 2019 02:34:18 -0400 Subject: [PATCH 14/14] geeqie: fetch a patch from fedora --- pkgs/applications/graphics/geeqie/default.nix | 6 +++++- .../graphics/geeqie/geeqie-no-changelog.patch | 14 -------------- 2 files changed, 5 insertions(+), 15 deletions(-) delete mode 100644 pkgs/applications/graphics/geeqie/geeqie-no-changelog.patch diff --git a/pkgs/applications/graphics/geeqie/default.nix b/pkgs/applications/graphics/geeqie/default.nix index e4e31db94a6..08b2757dd6e 100644 --- a/pkgs/applications/graphics/geeqie/default.nix +++ b/pkgs/applications/graphics/geeqie/default.nix @@ -14,7 +14,11 @@ stdenv.mkDerivation rec { patches = [ # Do not build the changelog as this requires markdown. - ./geeqie-no-changelog.patch + (fetchpatch { + name = "geeqie-1.4-goodbye-changelog.patch"; + url = "https://src.fedoraproject.org/rpms/geeqie/raw/132fb04a1a5e74ddb333d2474f7edb9a39dc8d27/f/geeqie-1.4-goodbye-changelog.patch"; + sha256 = "00a35dds44kjjdqsbbfk0x9y82jspvsbpm2makcm1ivzlhjjgszn"; + }) # Fixes build with exiv2 0.27.1 (fetchpatch { name = "geeqie-exiv2-0.27.patch"; diff --git a/pkgs/applications/graphics/geeqie/geeqie-no-changelog.patch b/pkgs/applications/graphics/geeqie/geeqie-no-changelog.patch deleted file mode 100644 index 1b8833b135f..00000000000 --- a/pkgs/applications/graphics/geeqie/geeqie-no-changelog.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- geeqie-1.4.orig/Makefile.am 2017-12-31 07:31:21.000000000 -0500 -+++ geeqie-1.4/Makefile.am 2018-01-01 15:05:58.742068166 -0500 -@@ -10,9 +10,9 @@ - readmedir = @readmedir@ - - if HAVE_MARKDOWN --readme_DATA = README.md COPYING ChangeLog TODO README.lirc AUTHORS README.html ChangeLog.html -+readme_DATA = README.md COPYING TODO README.lirc AUTHORS README.html - else --readme_DATA = README.md COPYING ChangeLog TODO README.lirc AUTHORS ChangeLog.html -+readme_DATA = README.md COPYING TODO README.lirc AUTHORS - endif - - desktopdir = $(datadir)/applications