2020-07-08 22:19:25 +01:00
|
|
|
{ lib, pythonPackages, fetchFromGitHub, makeWrapper, git
|
2018-10-06 14:21:28 +01:00
|
|
|
, sshfs-fuse, torsocks, sshuttle, conntrack-tools , openssh, coreutils
|
|
|
|
, iptables, bash }:
|
2017-09-13 15:37:46 +01:00
|
|
|
|
|
|
|
let
|
2020-07-08 22:19:25 +01:00
|
|
|
sshuttle-telepresence =
|
|
|
|
let
|
|
|
|
sshuttleTelepresenceRev = "32226ff14d98d58ccad2a699e10cdfa5d86d6269";
|
|
|
|
in
|
|
|
|
lib.overrideDerivation sshuttle (p: {
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "datawire";
|
|
|
|
repo = "sshuttle";
|
|
|
|
rev = sshuttleTelepresenceRev;
|
|
|
|
sha256 = "1lp5b0h9v59igf8wybjn42w6ajw08blhiqmjwp4r7qnvmvmyaxhh";
|
|
|
|
};
|
|
|
|
|
|
|
|
preBuild = ''
|
|
|
|
export SETUPTOOLS_SCM_PRETEND_VERSION="${sshuttleTelepresenceRev}"
|
|
|
|
'';
|
|
|
|
|
|
|
|
postPatch = "rm sshuttle/tests/client/test_methods_nat.py";
|
|
|
|
postInstall = "mv $out/bin/sshuttle $out/bin/sshuttle-telepresence";
|
|
|
|
});
|
2018-10-06 14:21:28 +01:00
|
|
|
in pythonPackages.buildPythonPackage rec {
|
2017-09-13 15:37:46 +01:00
|
|
|
pname = "telepresence";
|
2020-07-08 22:12:06 +01:00
|
|
|
version = "0.105";
|
2017-09-13 15:37:46 +01:00
|
|
|
|
|
|
|
src = fetchFromGitHub {
|
2020-07-08 22:12:06 +01:00
|
|
|
owner = "telepresenceio";
|
2017-09-13 15:37:46 +01:00
|
|
|
repo = "telepresence";
|
|
|
|
rev = version;
|
2020-02-04 11:50:55 +00:00
|
|
|
sha256 = "0fccbd54ryd9rcbhfh5lx8qcc3kx3k9jads918rwnzwllqzjf7sg";
|
2017-09-13 15:37:46 +01:00
|
|
|
};
|
|
|
|
|
2018-10-06 14:21:28 +01:00
|
|
|
buildInputs = [ makeWrapper ];
|
2018-07-06 18:23:43 +01:00
|
|
|
|
2018-10-06 14:21:28 +01:00
|
|
|
postInstall = ''
|
2018-07-06 18:23:43 +01:00
|
|
|
wrapProgram $out/bin/telepresence \
|
|
|
|
--prefix PATH : ${lib.makeBinPath [
|
|
|
|
sshfs-fuse
|
|
|
|
torsocks
|
|
|
|
conntrack-tools
|
|
|
|
sshuttle-telepresence
|
|
|
|
openssh
|
|
|
|
coreutils
|
|
|
|
iptables
|
|
|
|
bash
|
|
|
|
]}
|
2017-09-13 15:37:46 +01:00
|
|
|
'';
|
|
|
|
|
2018-10-06 14:21:28 +01:00
|
|
|
doCheck = false;
|
|
|
|
|
2017-09-13 15:37:46 +01:00
|
|
|
meta = {
|
2020-04-01 02:11:51 +01:00
|
|
|
homepage = "https://www.telepresence.io/";
|
2017-09-13 15:37:46 +01:00
|
|
|
description = "Local development against a remote Kubernetes or OpenShift cluster";
|
|
|
|
license = with lib.licenses; [ asl20 ];
|
|
|
|
maintainers = with lib.maintainers; [ offline ];
|
|
|
|
};
|
|
|
|
}
|