diff --git a/pkgs/tools/networking/guardian-agent/default.nix b/pkgs/tools/networking/guardian-agent/default.nix new file mode 100644 index 000000000000..a5e8dc10d341 --- /dev/null +++ b/pkgs/tools/networking/guardian-agent/default.nix @@ -0,0 +1,44 @@ +{ buildGoPackage +, fetchFromGitHub +, lib +, autossh +, makeWrapper +}: + +buildGoPackage rec { + pname = "guardian-agent"; + version = "0.7.2"; + + src = fetchFromGitHub { + owner = "StanfordSNR"; + repo = pname; + rev = "v${version}-beta"; + sha256 = "05269y944hcabn6dqa66387rdhx81vcqcyjv6m1hdbz5ba8j7mqn"; + }; + + nativeBuildInputs = [ makeWrapper ]; + + goPackagePath = "github.com/StanfordSNR/guardian-agent"; + + goDeps = ./deps.nix; + + postInstall = '' + mkdir -p $bin/bin $out/share/doc/${pname} + cp -v ./go/src/github.com/StanfordSNR/${pname}/scripts/* $bin/bin/ + cp -vr ./go/src/github.com/StanfordSNR/${pname}/{AUTHORS,doc,LICENSE,README.md} $out/share/doc/guardian-agent + ''; + + postFixup = '' + wrapProgram $bin/bin/sga-guard \ + --prefix PATH : "$bin/bin" \ + --prefix PATH : "${autossh}/bin" + ''; + + meta = with lib; { + description = "Secure ssh-agent forwarding for Mosh and SSH"; + homepage = "https://github.com/StanfordSNR/guardian-agent"; + license = licenses.bsd3; + maintainers = with maintainers; [ mmahut ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/tools/networking/guardian-agent/deps.nix b/pkgs/tools/networking/guardian-agent/deps.nix new file mode 100644 index 000000000000..950a346ce8be --- /dev/null +++ b/pkgs/tools/networking/guardian-agent/deps.nix @@ -0,0 +1,58 @@ +# This file was generated by https://github.com/kamilchm/go2nix v1.3.0 +[ + { + goPackagePath = "github.com/hashicorp/yamux"; + fetch = { + type = "git"; + url = "https://github.com/hashicorp/yamux"; + rev = "2f1d1f20f75d5404f53b9edf6b53ed5505508675"; + sha256 = "1fga3p6j2g24ip9qjfwn3nqjr00m4nnjz92app7ms3sz7vgq2a7s"; + }; + } + { + goPackagePath = "github.com/howeyc/gopass"; + fetch = { + type = "git"; + url = "https://github.com/howeyc/gopass"; + rev = "bf9dde6d0d2c004a008c27aaee91170c786f6db8"; + sha256 = "1jxzyfnqi0h1fzlsvlkn10bncic803bfhslyijcxk55mgh297g45"; + }; + } + { + goPackagePath = "github.com/sternhenri/interact"; + fetch = { + type = "git"; + url = "https://github.com/sternhenri/interact"; + rev = "dfeb9ef2030483f98cee2c86f5775fe6c729f10b"; + sha256 = "00b09fyy9zhv11mbzm18ngg765g0gyb23bmr4fc83i09w912if7j"; + }; + } + { + goPackagePath = "golang.org/x/sys"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/sys"; + rev = "04f50cda93cbb67f2afa353c52f342100e80e625"; + sha256 = "0hmfsz9y1ingwsn482hlzzmzs7kr3cklm0ana0mbdk70isw2bxnw"; + }; + } + { + goPackagePath = "golang.org/x/crypto"; + fetch = { + type = "git"; + url = "https://github.com/StanfordSNR/crypto"; + rev = "e451cabda2acd7a416728ee89b75975b8b0c90d7"; + sha256 = "0aj6fc0i1dm6rdgr1mlv2pl4s0i6sj821k2p4gig45h5mn06mhpz"; + }; + } + { + goPackagePath = "github.com/jessevdk/go-flags"; + fetch = { + type = "git"; + url = "https://github.com/jessevdk/go-flags"; + rev = "c0795c8afcf41dd1d786bebce68636c199b3bb45"; + sha256 = "0xsmr17mrpm9kx34zfzzirwy0n459h975x49p41fs2f6ly6lk9vp"; + }; + } + +] diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1bd84513e420..6f79a276e164 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18367,6 +18367,8 @@ in guake = callPackage ../applications/misc/guake { }; + guardian-agent = callPackage ../tools/networking/guardian-agent { }; + guitone = callPackage ../applications/version-management/guitone { graphviz = graphviz_2_32; };