summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
authoraszlig <aszlig@nix.build>2018-04-25 16:42:28 +0200
committeraszlig <aszlig@nix.build>2018-04-25 17:09:04 +0200
commit6c748ae749faae3ff989a800ffa5095f634a6050 (patch)
tree1e083b4ed3829ac4bd90876abba6b29f0c2196eb /pkgs/applications
parent542f3dba06b8750f0875ed4e6fd72f7d4a53cf24 (diff)
downloadnixpkgs-6c748ae749faae3ff989a800ffa5095f634a6050.tar
nixpkgs-6c748ae749faae3ff989a800ffa5095f634a6050.tar.gz
nixpkgs-6c748ae749faae3ff989a800ffa5095f634a6050.tar.bz2
nixpkgs-6c748ae749faae3ff989a800ffa5095f634a6050.tar.lz
nixpkgs-6c748ae749faae3ff989a800ffa5095f634a6050.tar.xz
nixpkgs-6c748ae749faae3ff989a800ffa5095f634a6050.tar.zst
nixpkgs-6c748ae749faae3ff989a800ffa5095f634a6050.zip
inkscape: Fix build on NixOS
The first problem that was introduced in a276d5160cc4b307d97261b419e183f
was a linking error:

ld: cannot find -licui18n
ld: cannot find -licuuc
ld: cannot find -licudata

So I added icu to the buildInputs.

The second problem was that the interpreter wasn't patched in
share/filters, apparently this is only needed when building with
autotools:

make[3]: Entering directory '/build/inkscape-0.92.3/share/filters'
./i18n.py ./filters.svg > ./filters.svg.h
./i18n.py: /usr/bin/env: bad interpreter: No such file or directory

A similar error also occurs for share/palettes, share/patterns,
share/symbols and share/templates, so I added patching the interpreter
there as well.

Switching to autotools in Inkscape is a very bad idea, because upstream
currently still has their own autotools files in the 0.92.x tree but
master already has them removed, see this commit:

https://gitlab.com/inkscape/inkscape/commit/e471a664f923f517b68071f2e33fbb6ce070f8b7

However for the sake of trying to not break Inkscape on Darwin again,
I tried to keep the fixes minimal and not went back to CMake.

I did however mark the stuff that's unneeded for CMake, so that we can
avoid forgetting to remove that crap once we get back to CMake.

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @matthewbauer
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/graphics/inkscape/default.nix10
1 files changed, 9 insertions, 1 deletions
diff --git a/pkgs/applications/graphics/inkscape/default.nix b/pkgs/applications/graphics/inkscape/default.nix
index 9a8ef6bd774..37af9f6b86c 100644
--- a/pkgs/applications/graphics/inkscape/default.nix
+++ b/pkgs/applications/graphics/inkscape/default.nix
@@ -4,6 +4,7 @@
 , gsl, python2, poppler, imagemagick, libwpg, librevenge
 , libvisio, libcdr, libexif, potrace, autoreconfHook
 , intltool
+, icu # Not needed for building with CMake
 , lib
 }:
 
@@ -27,6 +28,13 @@ stdenv.mkDerivation rec {
     patchShebangs share/extensions
     patchShebangs fix-roff-punct
 
+    # XXX: Not needed for CMake:
+    patchShebangs share/filters
+    patchShebangs share/palettes
+    patchShebangs share/patterns
+    patchShebangs share/symbols
+    patchShebangs share/templates
+
     # Python is used at run-time to execute scripts, e.g., those from
     # the "Effects" menu.
     substituteInPlace src/extension/implementation/script.cpp \
@@ -38,7 +46,7 @@ stdenv.mkDerivation rec {
     perl perlXMLParser libXft libpng zlib popt boehmgc
     libxml2 libxslt glib gtkmm2 glibmm libsigcxx lcms boost gettext
     makeWrapper gsl poppler imagemagick libwpg librevenge
-    libvisio libcdr libexif potrace python2Env
+    libvisio libcdr libexif potrace python2Env icu
   ];
 
   enableParallelBuilding = true;