summary refs log tree commit diff
path: root/pkgs/development/tools/pew/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/tools/pew/default.nix')
-rw-r--r--pkgs/development/tools/pew/default.nix32
1 files changed, 32 insertions, 0 deletions
diff --git a/pkgs/development/tools/pew/default.nix b/pkgs/development/tools/pew/default.nix
new file mode 100644
index 000000000000..16fc48174175
--- /dev/null
+++ b/pkgs/development/tools/pew/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, python3Packages }:
+with python3Packages; buildPythonApplication rec {
+    name = "${pname}-${version}";
+    pname = "pew";
+    version = "1.1.0";
+
+    src = fetchPypi {
+      inherit pname version;
+      sha256 = "0b8z1vjsll1kgnh3mmdjps5rr9gayy091rapp2dra71jrwkx3yfh";
+    };
+
+    propagatedBuildInputs = [ virtualenv virtualenv-clone setuptools ];
+
+    postFixup = ''
+      set -euo pipefail
+      PEW_SITE="$out/lib/${python.libPrefix}/site-packages"
+      SETUPTOOLS="${setuptools}/lib/${python.libPrefix}/site-packages"
+      SETUPTOOLS_SITE=$SETUPTOOLS/$(cat $SETUPTOOLS/setuptools.pth)
+      CLONEVENV_SITE="${virtualenv-clone}/lib/${python.libPrefix}/site-packages"
+      SITE_PACKAGES="[\'$PEW_SITE\',\'$SETUPTOOLS_SITE\',\'$CLONEVENV_SITE\']"
+      substituteInPlace $PEW_SITE/pew/pew.py \
+        --replace "from pew.pew" "import sys; sys.path.extend($SITE_PACKAGES); from pew.pew" \
+        --replace 'sys.executable, "-m", "virtualenv"' "'${virtualenv}/bin/virtualenv'"
+    '';
+
+    meta = with stdenv.lib; {
+      description = "Tools to manage multiple virtualenvs written in pure python";
+      license = licenses.mit;
+      platforms = platforms.all;
+      maintainers = with maintainers; [ berdario ];
+    };
+  }
\ No newline at end of file