summary refs log tree commit diff
path: root/pkgs/tools/networking/telepresence
diff options
context:
space:
mode:
authorJaka Hudoklin <jakahudoklin@gmail.com>2017-09-13 16:37:46 +0200
committerJaka Hudoklin <jakahudoklin@gmail.com>2017-09-14 17:32:32 +0200
commit18245fd2226806a268b499c2fa698faec42fb464 (patch)
tree87d38194ccf24cde2a2cce609102e32beb4ef569 /pkgs/tools/networking/telepresence
parent1b1fc6550559f9d73ddf7cea611c387a847bf03b (diff)
downloadnixpkgs-18245fd2226806a268b499c2fa698faec42fb464.tar
nixpkgs-18245fd2226806a268b499c2fa698faec42fb464.tar.gz
nixpkgs-18245fd2226806a268b499c2fa698faec42fb464.tar.bz2
nixpkgs-18245fd2226806a268b499c2fa698faec42fb464.tar.lz
nixpkgs-18245fd2226806a268b499c2fa698faec42fb464.tar.xz
nixpkgs-18245fd2226806a268b499c2fa698faec42fb464.tar.zst
nixpkgs-18245fd2226806a268b499c2fa698faec42fb464.zip
pkgs/telepresence: init at 0.65
Diffstat (limited to 'pkgs/tools/networking/telepresence')
-rw-r--r--pkgs/tools/networking/telepresence/default.nix47
1 files changed, 47 insertions, 0 deletions
diff --git a/pkgs/tools/networking/telepresence/default.nix b/pkgs/tools/networking/telepresence/default.nix
new file mode 100644
index 00000000000..1f94702e830
--- /dev/null
+++ b/pkgs/tools/networking/telepresence/default.nix
@@ -0,0 +1,47 @@
+{ lib, stdenv, fetchgit, fetchFromGitHub, makeWrapper, git
+, python3, sshfs-fuse, torsocks, sshuttle, conntrack_tools }:
+
+let
+  sshuttle-telepresence = lib.overrideDerivation sshuttle (p: {
+    src = fetchgit {
+      url = "https://github.com/datawire/sshuttle.git";
+      rev = "8f881d131a0d5cb203c5a530d233996077f1da1e";
+      sha256 = "0c760xhblz5mpcn5ddqpvivvgn0ixqbhpjsy50dkhgn6lymrx9bx";
+      leaveDotGit = true;
+    };
+
+    buildInputs = p.buildInputs ++ [ git ];
+    postPatch = "rm sshuttle/tests/client/test_methods_nat.py";
+    postInstall = "mv $out/bin/sshuttle $out/bin/sshuttle-telepresence";
+  });
+in stdenv.mkDerivation rec {
+  pname = "telepresence";
+  version = "0.65";
+  name = "${pname}-${version}";
+
+  src = fetchFromGitHub {
+    owner = "datawire";
+    repo = "telepresence";
+    rev = version;
+    sha256 = "01hwaybhdmfzmyzvwdx19nc5px2grf4k1vbbj9jdmsh5pmzfrby4";
+  };
+
+  buildInputs = [ makeWrapper ];
+
+  phases = ["unpackPhase" "installPhase"];
+
+  installPhase = ''
+    mkdir -p $out/libexec $out/bin
+    cp cli/telepresence $out/libexec/telepresence
+
+    makeWrapper $out/libexec/telepresence $out/bin/telepresence \
+      --prefix PATH : ${lib.makeBinPath [python3 sshfs-fuse torsocks conntrack_tools sshuttle-telepresence]}
+  '';
+
+  meta = {
+    homepage = https://www.telepresence.io/;
+    description = "Local development against a remote Kubernetes or OpenShift cluster";
+    license = with lib.licenses; [ asl20 ];
+    maintainers = with lib.maintainers; [ offline ];
+  };
+}