diff --git a/pkgs/applications/version-management/guitone/default.nix b/pkgs/applications/version-management/guitone/default.nix index a396765e9186..135e7c7e1efd 100644 --- a/pkgs/applications/version-management/guitone/default.nix +++ b/pkgs/applications/version-management/guitone/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, fetchmtn, qt4 }: +{ stdenv, fetchurl, fetchmtn, qt4, pkgconfig, graphviz }: let version = "1.0-mtn-head"; in stdenv.mkDerivation rec { @@ -11,12 +11,12 @@ stdenv.mkDerivation rec { src = fetchmtn { dbs = ["mtn://code.monotone.ca/guitone"]; - selector = "2777cdef424c65df93fa1ff181f02ee30d4901ab"; - sha256 = "918d36a83060b84efa0ee0fe0fd058f1c871c91156d91366e2e979c886ff4271"; + selector = "3a728afdbd3943b1d86c2a249b1e2ede7bf64c27"; + sha256 = "01vs8m00phs5pl75mjkpdarynfpkqrg0qf4rsn95czi3q6nxiaq5"; branch = "net.venge.monotone.guitone"; }; - buildInputs = [ qt4 ]; + buildInputs = [ qt4 pkgconfig graphviz ]; prefixKey="PREFIX="; configureScript = "qmake guitone.pro"; diff --git a/pkgs/tools/graphics/graphviz/2.32.nix b/pkgs/tools/graphics/graphviz/2.32.nix new file mode 100644 index 000000000000..0a86a8924174 --- /dev/null +++ b/pkgs/tools/graphics/graphviz/2.32.nix @@ -0,0 +1,61 @@ +{ stdenv, fetchurl, pkgconfig, libpng, libjpeg, expat, libXaw +, yacc, libtool, fontconfig, pango, gd, xlibs, gts, gettext, cairo +}: + +stdenv.mkDerivation rec { + version = "2.32.0"; + name = "graphviz-${version}"; + + src = fetchurl { + url = "http://www.graphviz.org/pub/graphviz/ARCHIVE/${name}.tar.gz"; + sha256 = "0ym7lw3xnkcgbk32vfmm3329xymca60gzn90rq6dv8887qqv4lyq"; + }; + + buildInputs = + [ pkgconfig libpng libjpeg expat libXaw yacc libtool fontconfig + pango gd gts + ] ++ stdenv.lib.optionals (xlibs != null) [ xlibs.xlibs xlibs.libXrender ] + ++ stdenv.lib.optional (stdenv.system == "x86_64-darwin") gettext; + + CPPFLAGS = stdenv.lib.optionalString (stdenv.system == "x86_64-darwin") "-I${cairo}/include/cairo"; + + configureFlags = + [ "--with-pngincludedir=${libpng}/include" + "--with-pnglibdir=${libpng}/lib" + "--with-jpegincludedir=${libjpeg}/include" + "--with-jpeglibdir=${libjpeg}/lib" + "--with-expatincludedir=${expat}/include" + "--with-expatlibdir=${expat}/lib" + "--with-cgraph=no" + "--with-sparse=no" + ] + ++ stdenv.lib.optional (xlibs == null) "--without-x"; + + preBuild = '' + sed -e 's@am__append_5 *=.*@am_append_5 =@' -i lib/gvc/Makefile + ''; + + # "command -v" is POSIX, "which" is not + postInstall = '' + sed -i 's|`which lefty`|"'$out'/bin/lefty"|' $out/bin/dotty + sed -i 's|which|command -v|' $out/bin/vimdot + ''; + + meta = { + homepage = "http://www.graphviz.org/"; + description = "Open source graph visualization software"; + + longDescription = '' + Graphviz is open source graph visualization software. Graph + visualization is a way of representing structural information as + diagrams of abstract graphs and networks. It has important + applications in networking, bioinformatics, software engineering, + database and web design, machine learning, and in visual + interfaces for other technical domains. + ''; + + hydraPlatforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin; + maintainers = with stdenv.lib.maintainers; [ simons bjornfor raskin ]; + inherit version; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4a63b75bb54e..d0b12a1e24fa 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1210,9 +1210,15 @@ let /* Readded by Michael Raskin. There are programs in the wild * that do want 2.0 but not 2.22. Please give a day's notice for - * objections before removal. + * objections before removal. The feature is integer coordinates */ graphviz_2_0 = callPackage ../tools/graphics/graphviz/2.0.nix { }; + + /* Readded by Michael Raskin. There are programs in the wild + * that do want 2.32 but not 2.0 or 2.36. Please give a day's notice for + * objections before removal. The feature is libgraph. + */ + graphviz_2_32 = callPackage ../tools/graphics/graphviz/2.32.nix { }; grive = callPackage ../tools/filesystems/grive { json_c = json-c-0-11; # won't configure with 0.12; others are vulnerable @@ -8984,7 +8990,9 @@ let gpsd = callPackage ../servers/gpsd { }; - guitone = callPackage ../applications/version-management/guitone { }; + guitone = callPackage ../applications/version-management/guitone { + graphviz = graphviz_2_32; + }; gv = callPackage ../applications/misc/gv { };