summary refs log tree commit diff
diff options
context:
space:
mode:
authorGábor Boskovits <boskovits@gmail.com>2017-11-06 12:15:32 +0100
committerMarius Bakke <mbakke@fastmail.com>2017-11-07 21:17:20 +0100
commit75d342ffa9a65177a711cac645df7ac569fe9609 (patch)
treeca9d57608400ac63d1c5440e23057d04f0590b2f
parent2b295f5a2fc221020dd4ae8e090bd19a7e017872 (diff)
downloadguix-75d342ffa9a65177a711cac645df7ac569fe9609.tar.gz
gnu: Add python-networkx2.
* gnu/packages/python.scm (python-networkx2, python2-networkx2): New variables.
* gnu/local.mk (dist_patch_DATA): Register 'python-networkx2-reproducible-build.patch'.
* gnu/packages/patches/python-networkx2-reproducible-build.patch: New file.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/patches/python-networkx2-reproducible-build.patch29
-rw-r--r--gnu/packages/python.scm19
3 files changed, 49 insertions, 0 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 630d8187fc..9b01b05b6f 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -996,6 +996,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/python-genshi-isstring-helper.patch	\
   %D%/packages/patches/python-genshi-stripping-of-unsafe-script-tags.patch	\
   %D%/packages/patches/python2-larch-coverage-4.0a6-compatibility.patch \
+  %D%/packages/patches/python-networkx2-reproducible-build.patch	\
   %D%/packages/patches/python-nose-timer-drop-ordereddict.patch \
   %D%/packages/patches/python-parse-too-many-fields.patch	\
   %D%/packages/patches/python2-rdflib-drop-sparqlwrapper.patch	\
diff --git a/gnu/packages/patches/python-networkx2-reproducible-build.patch b/gnu/packages/patches/python-networkx2-reproducible-build.patch
new file mode 100644
index 0000000000..8274767ab8
--- /dev/null
+++ b/gnu/packages/patches/python-networkx2-reproducible-build.patch
@@ -0,0 +1,29 @@
+From c065b972ed294769a41936d6b9feb336473af5d1 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?G=C3=A1bor=20Boskovits?= <boskovits@gmail.com>
+Date: Sat, 4 Nov 2017 15:28:47 +0100
+Subject: Fix SOURCE_DATE_EPOCH ignored bug (#2735)
+
+* Fix SOURCE_DATE_EPOCH ignored bug
+
+Fix a bug in networkx/release.py that makes build
+non-reproducible.
+---
+ networkx/release.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/networkx/release.py b/networkx/release.py
+index e81fc0c0..6322cf0d 100644
+--- a/networkx/release.py
++++ b/networkx/release.py
+@@ -135,7 +135,7 @@ def get_revision():
+ 
+ def get_info(dynamic=True):
+     # Date information
+-    date_info = datetime.datetime.now()
++    date_info = datetime.datetime.utcfromtimestamp(int(os.environ.get('SOURCE_DATE_EPOCH', time.time())))
+     date = time.asctime(date_info.timetuple())
+ 
+     revision, version, version_info, vcs_info = None, None, None, None
+-- 
+2.14.2
+
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 5b11a6371c..370c9ef112 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -6624,6 +6624,25 @@ of the structure, dynamics, and functions of complex networks.")
 (define-public python2-networkx
   (package-with-python2 python-networkx))
 
+;; Define new package, because the current version of python-colormath does
+;; not build against 2.0.
+(define-public python-networkx2
+  (package (inherit python-networkx)
+    (name "python-networkx2")
+    (version "2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "networkx" version ".zip"))
+       (sha256
+        (base32
+         "1ajl2jp8qry9nyjzzkqpy0vmsr14d23z1qk7y0vr5iwjbpvzhpyd"))
+       (patches
+        (search-patches "python-networkx2-reproducible-build.patch"))))))
+
+(define-public python2-networkx2
+  (package-with-python2 python-networkx2))
+
 (define-public snakemake
   (package
     (name "snakemake")