[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#29146] [PATCH] gnu: add python-networkx2.
From: |
Marius Bakke |
Subject: |
[bug#29146] [PATCH] gnu: add python-networkx2. |
Date: |
Sun, 05 Nov 2017 17:39:12 +0100 |
User-agent: |
Notmuch/0.25.1 (https://notmuchmail.org) Emacs/25.3.1 (x86_64-pc-linux-gnu) |
Gábor Boskovits <address@hidden> writes:
> * gnu/packages/python.scm (python-networkx2): New variable.
> * gnu/local.mk (python-networkx2-reproducible-build.patch): New patch
> registered.
> * gnu/package/patches/python-networkx2-reproducible-build.patch: New file.
Thanks!
[...]
> +++ 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?= <address@hidden>
> +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())
Good catch (and patch)!
> diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
> index e8a733919..a290deec9 100644
> --- a/gnu/packages/python.scm
> +++ b/gnu/packages/python.scm
> @@ -16871,3 +16871,38 @@ executed more than a given number of times during a
> given period.")
>
> (define-public python2-ratelimiter
> (package-with-python2 python-ratelimiter))
> +
> +(define-public python-networkx2
> + (package (inherit python-networkx)
Could you move this closer to the python-networkx definition, so it's
easier to find?
I guess the reason this version is a new package is because some
dependent packages fails with the new major version? Can you add a
short comment about it?
> + (name "python-networkx2")
> + (version "2.0")
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/networkx/networkx.git")
> + (commit "networkx-2.0")))
I think it is better to use the tarball from PyPi if possible, which
comes with a PGP signature and without a dependency on 'git'. Can you
try it?
> + (sha256
> + (base32
> + "0wsfmbsqzvpb0vdz09rf6rfrkvyq56r8863nn3g4x0m7swygi1w3"))
> + (patches
> + (search-patches
> "python-networkx2-reproducible-build.patch"))))
Indentation is off here.
> + (arguments
> + `(#:phases
> + (modify-phases %standard-phases
> + (add-before
> + 'reset-gzip-timestamps 'fix-permissions
> + (lambda _
> + (chmod (string-append (assoc-ref %outputs "out")
> "/lib/python3.5/site-packages/networkx/generators/atlas.dat.gz") #o666)
> + (chmod (string-append (assoc-ref %outputs "out")
> "/share/doc/networkx-2.0/examples/drawing/knuth_miles.txt.gz") #o666)
> + (chmod (string-append (assoc-ref %outputs "out")
> "/share/doc/networkx-2.0/examples/graph/roget_dat.txt.gz") #o666)
> + (chmod (string-append (assoc-ref %outputs "out")
> "/share/doc/networkx-2.0/examples/graph/words_dat.txt.gz") #o666)
> + #t))
> + (add-after
> + 'reset-gzip-timestamps 'reset-permissions
> + (lambda _
> + (chmod (string-append (assoc-ref %outputs "out")
> "/lib/python3.5/site-packages/networkx/generators/atlas.dat.gz") #o444)
> + (chmod (string-append (assoc-ref %outputs "out")
> "/share/doc/networkx-2.0/examples/drawing/knuth_miles.txt.gz") #o444)
> + (chmod (string-append (assoc-ref %outputs "out")
> "/share/doc/networkx-2.0/examples/graph/roget_dat.txt.gz") #o444)
> + (chmod (string-append (assoc-ref %outputs "out")
> "/share/doc/networkx-2.0/examples/graph/words_dat.txt.gz") #o444)
> + #t)))))))
This last phase is not necessary, since the files will become read-only
after they have been installed to the store anyway.
Can you send an updated patch please? TIA!
signature.asc
Description: PGP signature