nixpkgs/pkgs/tools/networking/telepresence/default.nix
stuebinm ff1a94e523 treewide: add meta.mainProgram to packages with a single binary
The nixpkgs-unstable channel's programs.sqlite was used to identify
packages producing exactly one binary, and these automatically added
to their package definitions wherever possible.
2024-03-19 03:14:51 +01:00

45 lines
1.1 KiB
Nix

{ lib, pythonPackages, fetchFromGitHub, makeWrapper
, sshfs-fuse, torsocks, sshuttle, conntrack-tools , openssh, coreutils
, iptables, bash }:
let
sshuttle-telepresence = lib.overrideDerivation sshuttle (p: {
postInstall = "mv $out/bin/sshuttle $out/bin/sshuttle-telepresence";
});
in pythonPackages.buildPythonPackage rec {
pname = "telepresence";
version = "0.109";
src = fetchFromGitHub {
owner = "telepresenceio";
repo = "telepresence";
rev = version;
sha256 = "1ccc8bzcdxp6rh6llk7grcnmyc05fq7dz5w0mifdzjv3a473hsky";
};
nativeBuildInputs = [ makeWrapper ];
postInstall = ''
wrapProgram $out/bin/telepresence \
--prefix PATH : ${lib.makeBinPath [
sshfs-fuse
torsocks
conntrack-tools
sshuttle-telepresence
openssh
coreutils
iptables
bash
]}
'';
doCheck = false;
meta = {
homepage = "https://www.telepresence.io/";
description = "Local development against a remote Kubernetes or OpenShift cluster";
mainProgram = "telepresence";
license = with lib.licenses; [ asl20 ];
maintainers = with lib.maintainers; [ offline ];
};
}