summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/development/libraries/igraph/default.nix31
-rw-r--r--pkgs/development/python-modules/cozy/default.nix38
-rw-r--r--pkgs/development/python-modules/dictionaries/default.nix19
-rw-r--r--pkgs/development/python-modules/ordered-set/default.nix26
-rw-r--r--pkgs/development/python-modules/python-igraph/default.nix22
-rw-r--r--pkgs/top-level/all-packages.nix2
-rw-r--r--pkgs/top-level/python-packages.nix11
7 files changed, 149 insertions, 0 deletions
diff --git a/pkgs/development/libraries/igraph/default.nix b/pkgs/development/libraries/igraph/default.nix
new file mode 100644
index 000000000000..4ac3ebc09889
--- /dev/null
+++ b/pkgs/development/libraries/igraph/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, lib, fetchFromGitHub,
+  pkgconfig, autoreconfHook,
+  flex, yacc, zlib, libxml2 }:
+
+stdenv.mkDerivation rec {
+  name = "igraph";
+  version = "0.7.1";
+
+  src = fetchFromGitHub {
+    owner = "igraph";
+    repo = name;
+    rev = version;
+    sha256 = "1wsy0r511gk069il6iqjs27q8cjvqz20gf0a7inybx1bw84845z8";
+  };
+
+  nativeBuildInputs = [ pkgconfig autoreconfHook ];
+  buildInputs = [ flex yacc zlib libxml2 ];
+
+  # This file is normally generated by igraph's bootstrap.sh, but we can do it
+  # ourselves. ~ C.
+  postPatch = ''
+    echo "${version}" > VERSION
+  '';
+
+  meta = {
+    description = "The network analysis package";
+    homepage = http://igraph.org/;
+    license = lib.licenses.gpl2;
+    maintainers = [ lib.maintainers.MostAwesomeDude ];
+  };
+}
diff --git a/pkgs/development/python-modules/cozy/default.nix b/pkgs/development/python-modules/cozy/default.nix
new file mode 100644
index 000000000000..0feca2773b37
--- /dev/null
+++ b/pkgs/development/python-modules/cozy/default.nix
@@ -0,0 +1,38 @@
+{ buildPythonPackage, fetchFromGitHub, lib,
+  z3, ply, python-igraph, oset, ordered-set, dictionaries }:
+
+buildPythonPackage {
+  pname = "cozy";
+  version = "2.0a1";
+
+  propagatedBuildInputs = [
+    z3 ply python-igraph oset ordered-set dictionaries
+  ];
+
+  src = fetchFromGitHub {
+    owner = "CozySynthesizer";
+    repo = "cozy";
+    rev = "f553e9b";
+    sha256 = "1jhr5gzihj8dkg0yc5dmi081v2isxharl0ph7v2grqj0bwqzl40j";
+  };
+
+  # Yoink the Z3 dependency name, because our Z3 package doesn't provide it.
+  postPatch = ''
+    sed -i -e '/z3-solver/d' requirements.txt
+  '';
+
+  # Tests are not correctly set up in the source tree.
+  doCheck = false;
+
+  # There is some first-time-run codegen that we will force to happen.
+  postInstall = ''
+    $out/bin/cozy --help
+  '';
+
+  meta = {
+    description = "The collection synthesizer";
+    homepage = https://cozy.uwplse.org/;
+    license = lib.licenses.asl20;
+    maintainers = [ lib.maintainers.MostAwesomeDude ];
+  };
+}
diff --git a/pkgs/development/python-modules/dictionaries/default.nix b/pkgs/development/python-modules/dictionaries/default.nix
new file mode 100644
index 000000000000..0deab2762552
--- /dev/null
+++ b/pkgs/development/python-modules/dictionaries/default.nix
@@ -0,0 +1,19 @@
+{ buildPythonPackage, fetchPypi, lib, six }:
+
+buildPythonPackage rec {
+  pname = "dictionaries";
+  version = "0.0.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1jx2ph509sk4l7spslz16y8l6xn97d13nspn4ds2lxn5ward9ihy";
+  };
+
+  buildInputs = [ six ];
+
+  meta = {
+    description = "Dict implementations with attribute access";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.MostAwesomeDude ];
+  };
+}
diff --git a/pkgs/development/python-modules/ordered-set/default.nix b/pkgs/development/python-modules/ordered-set/default.nix
new file mode 100644
index 000000000000..bf20f7827be3
--- /dev/null
+++ b/pkgs/development/python-modules/ordered-set/default.nix
@@ -0,0 +1,26 @@
+{ buildPythonPackage, fetchPypi, lib, pytest }:
+
+buildPythonPackage rec {
+  pname = "ordered-set";
+  version = "3.0.1";
+
+  buildInputs = [ pytest ];
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0yyfkkfzpwlx4jlfqzb7p1xpzmn2jyzq2qlakqx62pxizfzxfvrx";
+  };
+
+  checkPhase = ''
+    py.test test.py
+  '';
+
+  meta = {
+    description = "A MutableSet that remembers its order, so that every entry has an index.";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.MostAwesomeDude ];
+  };
+}
+
+
+
diff --git a/pkgs/development/python-modules/python-igraph/default.nix b/pkgs/development/python-modules/python-igraph/default.nix
new file mode 100644
index 000000000000..a24f3a9fedc8
--- /dev/null
+++ b/pkgs/development/python-modules/python-igraph/default.nix
@@ -0,0 +1,22 @@
+{ buildPythonPackage, fetchPypi, lib,
+  pkgconfig, igraph }:
+
+buildPythonPackage rec {
+  pname = "python-igraph";
+  version = "0.7.1.post6";
+
+  buildInputs = [ pkgconfig igraph ];
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0xp61zz710qlzhmzbfr65d5flvsi8zf2xy78s6rsszh719wl5sm5";
+  };
+
+  meta = {
+    description = "High performance graph data structures and algorithms";
+    license = lib.licenses.gpl2;
+    maintainers = [ lib.maintainers.MostAwesomeDude ];
+  };
+}
+
+
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 4263054dc729..9f0ebecc1c3f 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -21552,6 +21552,8 @@ with pkgs;
 
   idsk = callPackage ../tools/filesystems/idsk { };
 
+  igraph = callPackage ../development/libraries/igraph { };
+
   illum = callPackage ../tools/system/illum { };
 
   # using the new configuration style proposal which is unstable
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index d2b45e979a3a..bd86eec3205b 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -240,6 +240,8 @@ in {
 
   clustershell = callPackage ../development/python-modules/clustershell { };
 
+  cozy = callPackage ../development/python-modules/cozy { };
+
   dendropy = callPackage ../development/python-modules/dendropy { };
 
   dbf = callPackage ../development/python-modules/dbf { };
@@ -250,6 +252,8 @@ in {
 
   dkimpy = callPackage ../development/python-modules/dkimpy { };
 
+  dictionaries = callPackage ../development/python-modules/dictionaries { };
+
   diff_cover = callPackage ../development/python-modules/diff_cover { };
 
   docrep = callPackage ../development/python-modules/docrep { };
@@ -346,6 +350,8 @@ in {
 
   oauthenticator = callPackage ../development/python-modules/oauthenticator { };
 
+  ordered-set = callPackage ../development/python-modules/ordered-set { };
+
   outcome = callPackage ../development/python-modules/outcome {};
 
   palettable = callPackage ../development/python-modules/palettable { };
@@ -471,6 +477,11 @@ in {
 
   python-hosts = callPackage ../development/python-modules/python-hosts { };
 
+  python-igraph = callPackage ../development/python-modules/python-igraph {
+    pkgconfig = pkgs.pkgconfig;
+    igraph = pkgs.igraph;
+  };
+
   python3-openid = callPackage ../development/python-modules/python3-openid { };
 
   python-periphery = callPackage ../development/python-modules/python-periphery { };