summary refs log tree commit diff
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2017-08-04 15:32:53 +0200
committerRicardo Wurmus <rekado@elephly.net>2017-08-09 14:47:47 +0200
commite57fffad90a87d8ac38e4ac44ac5b5eb2d7bd191 (patch)
tree1f2d8d774109e99c93ce7a970104ab5204936b02
parentea77385c4c672aabc866c466ac8132b645510a6b (diff)
downloadguix-e57fffad90a87d8ac38e4ac44ac5b5eb2d7bd191.tar.gz
gnu: Add igraph.
* gnu/packages/graph.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/graph.scm62
2 files changed, 63 insertions, 0 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 090ce77c76..3d79d5d22d 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -184,6 +184,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/packages/gperf.scm			\
   %D%/packages/gprolog.scm			\
   %D%/packages/gps.scm				\
+  %D%/packages/graph.scm			\
   %D%/packages/graphics.scm			\
   %D%/packages/graphviz.scm			\
   %D%/packages/groff.scm			\
diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm
new file mode 100644
index 0000000000..54b0962b68
--- /dev/null
+++ b/gnu/packages/graph.scm
@@ -0,0 +1,62 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages graph)
+  #:use-module (guix download)
+  #:use-module (guix packages)
+  #:use-module (guix build-system gnu)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages maths)
+  #:use-module (gnu packages multiprecision)
+  #:use-module (gnu packages xml))
+
+(define-public igraph
+  (package
+    (name "igraph")
+    (version "0.7.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "http://igraph.org/nightly/get/c/igraph-"
+                           version ".tar.gz"))
+       (sha256
+        (base32
+         "1pxh8sdlirgvbvsw8v65h6prn7hlm45bfsl1yfcgd6rn4w706y6r"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:configure-flags
+       (list "--with-external-glpk"
+             "--with-external-blas"
+             "--with-external-lapack")))
+    (inputs
+     `(("gmp" ,gmp)
+       ("glpk" ,glpk)
+       ("libxml2" ,libxml2)
+       ("lapack" ,lapack)
+       ("openblas" ,openblas)
+       ("zlib" ,zlib)))
+    (home-page "http://igraph.org")
+    (synopsis "Network analysis and visualization")
+    (description
+     "This package provides a library for the analysis of networks and graphs.
+It can handle large graphs very well and provides functions for generating
+random and regular graphs, graph visualization, centrality methods and much
+more.")
+    (license license:gpl2+)))