commit
defe3d1bbd
@ -1,34 +0,0 @@ |
||||
{ lib, stdenv, fetchmtn, qt4, qmake4Hook, pkg-config, graphviz }: |
||||
|
||||
let version = "1.0-mtn-head"; in |
||||
stdenv.mkDerivation { |
||||
pname = "guitone"; |
||||
inherit version; |
||||
|
||||
#src = fetchurl { |
||||
# url = "${meta.homepage}/count.php/from=default/${version}/${name}.tgz"; |
||||
# sha256 = "08kcyar6p6v5z4dq6q6c1dhyxc2jj49qcd6lj3rdn1rb9hz4n7ms"; |
||||
#}; |
||||
|
||||
src = fetchmtn { |
||||
dbs = ["mtn://code.monotone.ca/guitone"]; |
||||
selector = "3a728afdbd3943b1d86c2a249b1e2ede7bf64c27"; |
||||
sha256 = "01vs8m00phs5pl75mjkpdarynfpkqrg0qf4rsn95czi3q6nxiaq5"; |
||||
branch = "net.venge.monotone.guitone"; |
||||
}; |
||||
|
||||
patches = [ ./parallel-building.patch ]; |
||||
|
||||
nativeBuildInputs = [ pkg-config ]; |
||||
buildInputs = [ qt4 qmake4Hook graphviz ]; |
||||
|
||||
qmakeFlags = [ "guitone.pro" ]; |
||||
|
||||
meta = { |
||||
description = "Qt4 based GUI for monotone"; |
||||
homepage = "https://guitone.thomaskeller.biz"; |
||||
downloadPage = "https://code.monotone.ca/p/guitone/"; |
||||
license = lib.licenses.gpl3; |
||||
inherit (qt4.meta) platforms; |
||||
}; |
||||
} |
@ -1,7 +0,0 @@ |
||||
Without this `make tmp/AttributesView.o` fails with
|
||||
src/view/dialogs/AddEditAttribute.h:22:35: fatal error: ui_add_edit_attribute.h: No such file or directory
|
||||
--- a/guitone.pro
|
||||
+++ b/guitone.pro
|
||||
@@ -215 +215,2 @@ help.commands = @echo Available targets: $${QMAKE_EXTRA_TARGETS}
|
||||
QMAKE_EXTRA_TARGETS += help
|
||||
+CONFIG += depend_includepath
|
@ -1,27 +1,45 @@ |
||||
{ lib, fetchPypi, buildPythonPackage, requests, zeroconf, protobuf, casttube, isPy3k }: |
||||
{ lib |
||||
, buildPythonPackage |
||||
, casttube |
||||
, fetchPypi |
||||
, isPy3k |
||||
, protobuf |
||||
, requests |
||||
, zeroconf |
||||
}: |
||||
|
||||
buildPythonPackage rec { |
||||
pname = "PyChromecast"; |
||||
version = "9.3.1"; |
||||
pname = "pychromecast"; |
||||
version = "10.1.1"; |
||||
format = "setuptools"; |
||||
|
||||
disabled = !isPy3k; |
||||
|
||||
src = fetchPypi { |
||||
inherit pname version; |
||||
sha256 = "a1d6807ae0fc455aaeecd2def87c31bb86679a2920cacfa7910db9c9db5085d4"; |
||||
pname = "PyChromecast"; |
||||
inherit version; |
||||
sha256 = "sha256-M6R9VRrotvkxKVZIKOcuf03LJsn4gSMohwzzAO5FQ48="; |
||||
}; |
||||
|
||||
disabled = !isPy3k; |
||||
|
||||
propagatedBuildInputs = [ requests zeroconf protobuf casttube ]; |
||||
propagatedBuildInputs = [ |
||||
casttube |
||||
protobuf |
||||
requests |
||||
zeroconf |
||||
]; |
||||
|
||||
# no tests available |
||||
doCheck = false; |
||||
pythonImportsCheck = [ "pychromecast" ]; |
||||
|
||||
pythonImportsCheck = [ |
||||
"pychromecast" |
||||
]; |
||||
|
||||
meta = with lib; { |
||||
description = "Library for Python to communicate with the Google Chromecast"; |
||||
homepage = "https://github.com/home-assistant-libs/pychromecast"; |
||||
license = licenses.mit; |
||||
homepage = "https://github.com/home-assistant-libs/pychromecast"; |
||||
license = licenses.mit; |
||||
maintainers = with maintainers; [ abbradar ]; |
||||
platforms = platforms.unix; |
||||
platforms = platforms.unix; |
||||
}; |
||||
} |
||||
|
@ -1,39 +1,39 @@ |
||||
{ |
||||
version = "2.4.0"; |
||||
linux_py_36_cpu = { |
||||
url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.4.0-cp36-cp36m-manylinux2010_x86_64.whl"; |
||||
sha256 = "0pn0cjf50q0xsv6k0vihrz22kr392anznvdhxv80gk52c6lcgmsc"; |
||||
}; |
||||
version = "2.7.0"; |
||||
linux_py_37_cpu = { |
||||
url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.4.0-cp37-cp37m-manylinux2010_x86_64.whl"; |
||||
sha256 = "0mdd83c0invqfy58qmpa3hk4yml5ic7wlwggyd5wpikadlv8vq89"; |
||||
url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.7.0-cp37-cp37m-manylinux2010_x86_64.whl"; |
||||
sha256 = "1irw4ri1fbxbj251cnjbr12gxsyj2k30asxjfxjpxhc9b0cchhx0"; |
||||
}; |
||||
linux_py_38_cpu = { |
||||
url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.4.0-cp38-cp38-manylinux2010_x86_64.whl"; |
||||
sha256 = "1mm1yz9aj3v6fxfpxh7wy37rvsncr0b5y6glqlcxmhr6mqfp8k6d"; |
||||
url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.7.0-cp38-cp38-manylinux2010_x86_64.whl"; |
||||
sha256 = "11a1rimr998lvvjdg03rqr8h2h7x6bbd4gyv74biwgaxmjczvjdj"; |
||||
}; |
||||
linux_py_36_gpu = { |
||||
url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.4.0-cp36-cp36m-manylinux2010_x86_64.whl"; |
||||
sha256 = "113iygiq2kmj97g0glhcqng6rhl3rrj1iqw5xj1d5hla8xjy8cfv"; |
||||
linux_py_39_cpu = { |
||||
url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.7.0-cp39-cp39-manylinux2010_x86_64.whl"; |
||||
sha256 = "0x1zzmgq7hl2k98p8870h0yhaik39nc1ckvxirjx8simpj8ghsbp"; |
||||
}; |
||||
linux_py_37_gpu = { |
||||
url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.4.0-cp37-cp37m-manylinux2010_x86_64.whl"; |
||||
sha256 = "19ap8xx2j5nbmnqv5rzf1ryfvw2fbs6bm0fxjqrvhc3jxys6yqqs"; |
||||
url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.7.0-cp37-cp37m-manylinux2010_x86_64.whl"; |
||||
sha256 = "1x5yyxzkly9gdyhcfq4x7w7sqqxh6cw5qnfwbvzj5349xwrm63wi"; |
||||
}; |
||||
linux_py_38_gpu = { |
||||
url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.4.0-cp38-cp38-manylinux2010_x86_64.whl"; |
||||
sha256 = "0ly3cinzj6j3b547sw8bd3p774khn3b14cgrj7nvfrz668d3f89x"; |
||||
url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.7.0-cp38-cp38-manylinux2010_x86_64.whl"; |
||||
sha256 = "0prxa8yc6lbq62vnh8cw6dhcrnkdjih62kbg6pbw4gmgcbf6v6fg"; |
||||
}; |
||||
mac_py_36_cpu = { |
||||
url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.4.0-cp36-cp36m-macosx_10_14_x86_64.whl"; |
||||
sha256 = "1b5ld1wj48l1i5s3vk8db5m578zdg4xfl0m1lc8w5lx1vi4cwsjp"; |
||||
linux_py_39_gpu = { |
||||
url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.7.0-cp39-cp39-manylinux2010_x86_64.whl"; |
||||
sha256 = "0jjv8vm20d0airml68bxhassp4yg09rcz2a39aa511cz8mavj0l6"; |
||||
}; |
||||
mac_py_37_cpu = { |
||||
url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.4.0-cp37-cp37m-macosx_10_14_x86_64.whl"; |
||||
sha256 = "1mgfyjgcwvx5jzawrpfnbch5sqw7kpnzp35rfxj22kwdsl28r47r"; |
||||
url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.7.0-cp37-cp37m-macosx_10_11_x86_64.whl"; |
||||
sha256 = "1gr95ck0h4wzhdacjfhkzxdw4zglm85fc54swqhyzzv1f5n9vw8j"; |
||||
}; |
||||
mac_py_38_cpu = { |
||||
url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.4.0-cp38-cp38-macosx_10_14_x86_64.whl"; |
||||
sha256 = "034qh0nk786wxzma58179g086x479c3pd9vi8v8p26grs6f2fm0p"; |
||||
url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.7.0-cp38-cp38-macosx_10_11_x86_64.whl"; |
||||
sha256 = "1h3qlvlrwyvxynh5flvyqk7grbvyqc21ljqhlvds436hpn2kqrgb"; |
||||
}; |
||||
mac_py_39_cpu = { |
||||
url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.7.0-cp39-cp39-macosx_10_11_x86_64.whl"; |
||||
sha256 = "0pyj1p2yik6ysdqn8n6cz1nqni0s9xx51ifmvdx4dl3hrzp86jz2"; |
||||
}; |
||||
} |
||||
|
@ -0,0 +1,12 @@ |
||||
diff -ru a/utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h b/utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h
|
||||
--- a/utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h 2021-09-21 15:57:02.000000000 -0400
|
||||
+++ b/utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h 2021-11-20 18:48:48.000000000 -0500
|
||||
@@ -102,7 +102,7 @@
|
||||
/* #undef HAVE_FFI_H */
|
||||
|
||||
/* Define to 1 if you have the `futimens' function. */
|
||||
-#define HAVE_FUTIMENS 1
|
||||
+/* #define HAVE_FUTIMENS 1 */
|
||||
|
||||
/* Define to 1 if you have the `futimes' function. */
|
||||
#define HAVE_FUTIMES 1
|
@ -1,46 +0,0 @@ |
||||
diff -ur unpacked/tensorflow-2.4.0/tensorflow-2.4.0.dist-info/METADATA unpacked.new/tensorflow-2.4.0/tensorflow-2.4.0.dist-info/METADATA
|
||||
--- unpacked/tensorflow-2.4.0/tensorflow-2.4.0.dist-info/METADATA 2021-05-06 23:51:40.298995191 -0700
|
||||
+++ unpacked.new/tensorflow-2.4.0/tensorflow-2.4.0.dist-info/METADATA 2021-05-07 00:03:49.856882153 -0700
|
||||
@@ -27,24 +27,24 @@
|
||||
Classifier: Topic :: Software Development :: Libraries
|
||||
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
||||
Description-Content-Type: text/markdown
|
||||
-Requires-Dist: absl-py (~=0.10)
|
||||
-Requires-Dist: astunparse (~=1.6.3)
|
||||
-Requires-Dist: flatbuffers (~=1.12.0)
|
||||
-Requires-Dist: google-pasta (~=0.2)
|
||||
-Requires-Dist: h5py (~=2.10.0)
|
||||
-Requires-Dist: keras-preprocessing (~=1.1.2)
|
||||
-Requires-Dist: numpy (~=1.19.2)
|
||||
-Requires-Dist: opt-einsum (~=3.3.0)
|
||||
-Requires-Dist: protobuf (>=3.9.2)
|
||||
-Requires-Dist: six (~=1.15.0)
|
||||
-Requires-Dist: termcolor (~=1.1.0)
|
||||
-Requires-Dist: typing-extensions (~=3.7.4)
|
||||
-Requires-Dist: wheel (~=0.35)
|
||||
-Requires-Dist: wrapt (~=1.12.1)
|
||||
-Requires-Dist: gast (==0.3.3)
|
||||
-Requires-Dist: tensorboard (~=2.4)
|
||||
-Requires-Dist: tensorflow-estimator (<2.5.0,>=2.4.0rc0)
|
||||
-Requires-Dist: grpcio (~=1.32.0)
|
||||
+Requires-Dist: absl-py
|
||||
+Requires-Dist: astunparse
|
||||
+Requires-Dist: flatbuffers
|
||||
+Requires-Dist: google-pasta
|
||||
+Requires-Dist: h5py
|
||||
+Requires-Dist: keras-preprocessing
|
||||
+Requires-Dist: numpy
|
||||
+Requires-Dist: opt-einsum
|
||||
+Requires-Dist: protobuf
|
||||
+Requires-Dist: six
|
||||
+Requires-Dist: termcolor
|
||||
+Requires-Dist: typing-extensions
|
||||
+Requires-Dist: wheel
|
||||
+Requires-Dist: wrapt
|
||||
+Requires-Dist: gast
|
||||
+Requires-Dist: tensorboard
|
||||
+Requires-Dist: tensorflow-estimator
|
||||
+Requires-Dist: grpcio
|
||||
|
||||
[![Python](https://img.shields.io/pypi/pyversions/tensorflow.svg?style=plastic)](https://badge.fury.io/py/tensorflow)
|
||||
[![PyPI](https://badge.fury.io/py/tensorflow.svg)](https://badge.fury.io/py/tensorflow)
|
@ -1,51 +0,0 @@ |
||||
diff --git a/tensorflow/tools/pip_package/setup.py b/tensorflow/tools/pip_package/setup.py
|
||||
index 65133afdafe..8ef6364ff7e 100644
|
||||
--- a/tensorflow/tools/pip_package/setup.py
|
||||
+++ b/tensorflow/tools/pip_package/setup.py
|
||||
@@ -75,23 +75,23 @@ if '--project_name' in sys.argv:
|
||||
# comment the versioning scheme.
|
||||
# NOTE: Please add test only packages to `TEST_PACKAGES` below.
|
||||
REQUIRED_PACKAGES = [
|
||||
- 'absl-py ~= 0.10',
|
||||
- 'astunparse ~= 1.6.3',
|
||||
- 'flatbuffers ~= 1.12.0',
|
||||
- 'google_pasta ~= 0.2',
|
||||
- 'h5py ~= 2.10.0',
|
||||
- 'keras_preprocessing ~= 1.1.2',
|
||||
- 'numpy ~= 1.19.2',
|
||||
- 'opt_einsum ~= 3.3.0',
|
||||
+ 'absl-py >= 0.10',
|
||||
+ 'astunparse >= 1.6.3',
|
||||
+ 'flatbuffers >= 1.12.0',
|
||||
+ 'google_pasta >= 0.2',
|
||||
+ 'h5py >= 2.10.0',
|
||||
+ 'keras_preprocessing >= 1.1.2',
|
||||
+ 'numpy >= 1.19.1',
|
||||
+ 'opt_einsum >= 3.3.0',
|
||||
'protobuf >= 3.9.2',
|
||||
- 'six ~= 1.15.0',
|
||||
- 'termcolor ~= 1.1.0',
|
||||
- 'typing_extensions ~= 3.7.4',
|
||||
- 'wheel ~= 0.35',
|
||||
- 'wrapt ~= 1.12.1',
|
||||
+ 'six >= 1.15.0',
|
||||
+ 'termcolor >= 1.1.0',
|
||||
+ 'typing_extensions >= 3.7.4',
|
||||
+ 'wheel >= 0.34.2',
|
||||
+ 'wrapt >= 1.12.1',
|
||||
# These packages needs to be pinned exactly as newer versions are
|
||||
# incompatible with the rest of the ecosystem
|
||||
- 'gast == 0.3.3',
|
||||
+ 'gast >= 0.3.3',
|
||||
# TensorFlow ecosystem packages that TF exposes API for
|
||||
# These need to be in sync with the existing TF version
|
||||
# They are updated during the release process
|
||||
@@ -118,7 +118,7 @@ if 'tf_nightly' in project_name:
|
||||
# BoringSSL support.
|
||||
# See https://github.com/tensorflow/tensorflow/issues/17882.
|
||||
if sys.byteorder == 'little':
|
||||
- REQUIRED_PACKAGES.append('grpcio ~= 1.32.0')
|
||||
+ REQUIRED_PACKAGES.append('grpcio >= 1.31.0')
|
||||
|
||||
|
||||
# Packages which are only needed for testing code.
|
@ -1,18 +0,0 @@ |
||||
diff --git a/WORKSPACE b/WORKSPACE
|
||||
index 9db1d9b80eb..c46f13f4ca4 100644
|
||||
--- a/WORKSPACE
|
||||
+++ b/WORKSPACE
|
||||
@@ -12,6 +12,13 @@ http_archive(
|
||||
],
|
||||
)
|
||||
|
||||
+http_archive(
|
||||
+ name = "io_bazel_rules_docker",
|
||||
+ sha256 = "1698624e878b0607052ae6131aa216d45ebb63871ec497f26c67455b34119c80",
|
||||
+ strip_prefix = "rules_docker-0.15.0",
|
||||
+ urls = ["https://github.com/bazelbuild/rules_docker/releases/download/v0.15.0/rules_docker-v0.15.0.tar.gz"],
|
||||
+)
|
||||
+
|
||||
# Load tf_repositories() before loading dependencies for other repository so
|
||||
# that dependencies like com_google_protobuf won't be overridden.
|
||||
load("//tensorflow:workspace.bzl", "tf_repositories")
|
@ -1,5 +0,0 @@ |
||||
import ./base.nix { |
||||
rev = "10c3c34c5198beacfba950764f34960c6884a34f"; |
||||
version = "2.32.0"; |
||||
sha256 = "18b2wnz6xk8hndy7dlr1vn9vziyryyflh747n9966778gmh8bick"; |
||||
} |
@ -1,109 +0,0 @@ |
||||
{ rev, sha256, version }: |
||||
|
||||
{ lib, stdenv, fetchFromGitLab, autoreconfHook, pkg-config, cairo, expat, flex |
||||
, fontconfig, gd, gettext, gts, libdevil, libjpeg, libpng, libtool, pango, bash |
||||
, bison, fetchpatch, xorg, ApplicationServices, python3, withXorg ? true |
||||
}: |
||||
|
||||
let |
||||
inherit (lib) optional optionals optionalString; |
||||
raw_patch = |
||||
# https://gitlab.com/graphviz/graphviz/issues/1367 CVE-2018-10196 |
||||
fetchpatch { |
||||
name = "CVE-2018-10196.patch"; |
||||
url = "https://gitlab.com/graphviz/graphviz/uploads/30f8f0b00e357c112ac35fb20241604a/p.diff"; |
||||
sha256 = "074qx6ch9blrnlilmz7p96fkiz2va84x2fbqdza5k4808rngirc7"; |
||||
excludes = [ "tests/*" ]; # we don't run them and they don't apply |
||||
}; |
||||
# the patch needs a small adaption for older versions |
||||
patchToUse = if lib.versionAtLeast version "2.37" then raw_patch else |
||||
stdenv.mkDerivation { |
||||
inherit (raw_patch) name; |
||||
buildCommand = "sed s/dot_root/agroot/g ${raw_patch} > $out"; |
||||
}; |
||||
# 2.42 has the patch included |
||||
patches = optional (lib.versionOlder version "2.42") patchToUse |
||||
++ optionals (lib.versionOlder version "2.46.0") [ |
||||
(fetchpatch { |
||||
name = "CVE-2020-18032.patch"; |
||||
url = "https://gitlab.com/graphviz/graphviz/-/commit/784411ca3655c80da0f6025ab20634b2a6ff696b.patch"; |
||||
sha256 = "1nkw9ism8lkfvxsp5fh95i2l5s5cbjsidbb3g1kjfv10rxkyb41m"; |
||||
}) |
||||
] ++ [ |
||||
# Fix cross. |
||||
# https://gitlab.com/graphviz/graphviz/-/merge_requests/2281 |
||||
(fetchpatch { |
||||
url = "https://gitlab.com/graphviz/graphviz/-/commit/0cdb89acbb0caf5baf3d04a8821c9d0dfe065ea8.patch"; |
||||
sha256 = "130mqlxzhzaz3vp4ccaq7z7fd9q6vjxmimz70g8y818igsbb13rf"; |
||||
}) |
||||
]; |
||||
in |
||||
|
||||
stdenv.mkDerivation { |
||||
pname = "graphviz"; |
||||
inherit version; |
||||
|
||||
src = fetchFromGitLab { |
||||
owner = "graphviz"; |
||||
repo = "graphviz"; |
||||
inherit sha256 rev; |
||||
}; |
||||
|
||||
nativeBuildInputs = [ |
||||
autoreconfHook |
||||
pkg-config |
||||
python3 |
||||
bison |
||||
flex |
||||
]; |
||||
|
||||
buildInputs = [ |
||||
libpng libjpeg expat fontconfig gd gts libdevil pango bash |
||||
] ++ optionals withXorg (with xorg; [ libXrender libXaw libXpm ]) |
||||
++ optionals stdenv.isDarwin [ ApplicationServices ]; |
||||
|
||||
hardeningDisable = [ "fortify" ]; |
||||
|
||||
CPPFLAGS = lib.optionalString (withXorg && stdenv.isDarwin) |
||||
"-I${cairo.dev}/include/cairo"; |
||||
|
||||
configureFlags = [ |
||||
"--with-ltdl-lib=${libtool.lib}/lib" |
||||
"--with-ltdl-include=${libtool}/include" |
||||
] ++ lib.optional (xorg == null) "--without-x"; |
||||
|
||||
inherit patches; |
||||
|
||||
postPatch = '' |
||||
for f in $(find . -name Makefile.in); do |
||||
substituteInPlace $f --replace "-lstdc++" "-lc++" |
||||
done |
||||
''; |
||||
|
||||
# '' |
||||
# substituteInPlace rtest/rtest.sh \ |
||||
# --replace "/bin/ksh" "${mksh}/bin/mksh" |
||||
# ''; |
||||
|
||||
doCheck = false; # fails with "Graphviz test suite requires ksh93" which is not in nixpkgs |
||||
|
||||
preAutoreconf = "./autogen.sh"; |
||||
|
||||
postFixup = optionalString withXorg '' |
||||
substituteInPlace $out/bin/dotty --replace '`which lefty`' $out/bin/lefty |
||||
substituteInPlace $out/bin/vimdot \ |
||||
--replace /usr/bin/vi '$(command -v vi)' \ |
||||
--replace /usr/bin/vim '$(command -v vim)' \ |
||||
--replace /usr/bin/vimdot $out/bin/vimdot \ |
||||
''; |
||||
|
||||
enableParallelBuilding = true; |
||||
|
||||
meta = with lib; { |
||||
homepage = "https://graphviz.org"; |
||||
description = "Graph visualization tools"; |
||||
license = licenses.epl10; |
||||
platforms = platforms.unix; |
||||
maintainers = with maintainers; [ bjornfor raskin ]; |
||||
}; |
||||
} |
@ -1,5 +1,114 @@ |
||||
import ./base.nix rec { |
||||
rev = "3425dae078262591d04fec107ec71ab010651852"; # use rev as tags have disappeared before |
||||
{ lib |
||||
, stdenv |
||||
, fetchFromGitLab |
||||
, autoreconfHook |
||||
, pkg-config |
||||
, cairo |
||||
, expat |
||||
, flex |
||||
, fontconfig |
||||
, gd |
||||
, gts |
||||
, libdevil |
||||
, libjpeg |
||||
, libpng |
||||
, libtool |
||||
, pango |
||||
, bash |
||||
, bison |
||||
, fetchpatch |
||||
, xorg |
||||
, ApplicationServices |
||||
, python3 |
||||
, withXorg ? true |
||||
}: |
||||
|
||||
let |
||||
inherit (lib) optional optionals optionalString; |
||||
in |
||||
stdenv.mkDerivation { |
||||
pname = "graphviz"; |
||||
version = "2.49.3"; |
||||
sha256 = "1qvyjly7r1ihacdvxq0r59l4csr09sc05palpshzqsiz2wb1izk0"; |
||||
|
||||
src = fetchFromGitLab { |
||||
owner = "graphviz"; |
||||
repo = "graphviz"; |
||||
# use rev as tags have disappeared before |
||||
rev = "3425dae078262591d04fec107ec71ab010651852"; |
||||
sha256 = "1qvyjly7r1ihacdvxq0r59l4csr09sc05palpshzqsiz2wb1izk0"; |
||||
}; |
||||
|
||||
patches = [ |
||||
# Fix cross. |
||||
# https://gitlab.com/graphviz/graphviz/-/merge_requests/2281 |
||||
# Remove when version > 2.49.3. |
||||
(fetchpatch { |
||||
url = "https://gitlab.com/graphviz/graphviz/-/commit/0cdb89acbb0caf5baf3d04a8821c9d0dfe065ea8.patch"; |
||||
sha256 = "130mqlxzhzaz3vp4ccaq7z7fd9q6vjxmimz70g8y818igsbb13rf"; |
||||
}) |
||||
]; |
||||
|
||||
nativeBuildInputs = [ |
||||
autoreconfHook |
||||
pkg-config |
||||
python3 |
||||
bison |
||||
flex |
||||
]; |
||||
|
||||
buildInputs = [ |
||||
libpng |
||||
libjpeg |
||||
expat |
||||
fontconfig |
||||
gd |
||||
gts |
||||
libdevil |
||||
pango |
||||
bash |
||||
] ++ optionals withXorg (with xorg; [ libXrender libXaw libXpm ]) |
||||
++ optionals stdenv.isDarwin [ ApplicationServices ]; |
||||
|
||||
hardeningDisable = [ "fortify" ]; |
||||
|
||||
configureFlags = [ |
||||
"--with-ltdl-lib=${libtool.lib}/lib" |
||||
"--with-ltdl-include=${libtool}/include" |
||||
] ++ lib.optional (xorg == null) "--without-x"; |
||||
|
||||
enableParallelBuilding = true; |
||||
|
||||
CPPFLAGS = lib.optionalString (withXorg && stdenv.isDarwin) |
||||
"-I${cairo.dev}/include/cairo"; |
||||
|
||||
# '' |
||||
# substituteInPlace rtest/rtest.sh \ |
||||
# --replace "/bin/ksh" "${mksh}/bin/mksh" |
||||
# ''; |
||||
|
||||
doCheck = false; # fails with "Graphviz test suite requires ksh93" which is not in nixpkgs |
||||
|
||||
postPatch = '' |
||||
for f in $(find . -name Makefile.in); do |
||||
substituteInPlace $f --replace "-lstdc++" "-lc++" |
||||
done |
||||
''; |
||||
|
||||
preAutoreconf = "./autogen.sh"; |
||||
|
||||
postFixup = optionalString withXorg '' |
||||
substituteInPlace $out/bin/dotty --replace '`which lefty`' $out/bin/lefty |
||||
substituteInPlace $out/bin/vimdot \ |
||||
--replace /usr/bin/vi '$(command -v vi)' \ |
||||
--replace /usr/bin/vim '$(command -v vim)' \ |
||||
--replace /usr/bin/vimdot $out/bin/vimdot \ |
||||
''; |
||||
|
||||
meta = with lib; { |
||||
homepage = "https://graphviz.org"; |
||||
description = "Graph visualization tools"; |
||||
license = licenses.epl10; |
||||
platforms = platforms.unix; |
||||
maintainers = with maintainers; [ bjornfor raskin ]; |
||||
}; |
||||
} |
||||
|
Loading…
Reference in new issue