diodon: init at 1.13.0 (#369078)
[NixPkgs.git] / pkgs / by-name / sh / shellhub-agent / package.nix
blob5ac4dac1fc48005d775f52c2cd2a83dc57847e53
2   lib,
3   buildGoModule,
4   fetchFromGitHub,
5   nix-update-script,
6   makeWrapper,
7   openssh,
8   libxcrypt,
9   testers,
10   shellhub-agent,
13 buildGoModule rec {
14   pname = "shellhub-agent";
15   version = "0.17.2";
17   src = fetchFromGitHub {
18     owner = "shellhub-io";
19     repo = "shellhub";
20     rev = "v${version}";
21     hash = "sha256-zMAAimFrOMcBVKuFwl/UpJLEWJHrjH7DNno5KCEvGrM=";
22   };
24   modRoot = "./agent";
26   vendorHash = "sha256-jQNWuOwaAx//wDUVOrMc+ETWWbTCTp/SLwL2guERJB8=";
28   ldflags = [
29     "-s"
30     "-w"
31     "-X main.AgentVersion=v${version}"
32   ];
34   passthru = {
35     updateScript = nix-update-script { };
37     tests.version = testers.testVersion {
38       package = shellhub-agent;
39       command = "agent --version";
40       version = "v${version}";
41     };
42   };
44   nativeBuildInputs = [ makeWrapper ];
45   buildInputs = [ libxcrypt ];
47   postInstall = ''
48     wrapProgram $out/bin/agent --prefix PATH : ${lib.makeBinPath [ openssh ]}
49   '';
51   meta = with lib; {
52     description = "Enables easy access any Linux device behind firewall and NAT";
53     longDescription = ''
54       ShellHub is a modern SSH server for remotely accessing Linux devices via
55       command line (using any SSH client) or web-based user interface, designed
56       as an alternative to _sshd_. Think ShellHub as centralized SSH for the the
57       edge and cloud computing.
58     '';
59     homepage = "https://shellhub.io/";
60     license = licenses.asl20;
61     maintainers = with maintainers; [ otavio ];
62     platforms = platforms.linux;
63     mainProgram = "agent";
64   };