depot/third_party/nixpkgs/pkgs/tools/networking/yggdrasil/default.nix

42 lines
1.2 KiB
Nix
Raw Normal View History

{ lib, buildGoModule, fetchFromGitHub, nixosTests }:
buildGoModule rec {
pname = "yggdrasil";
version = "0.3.15";
src = fetchFromGitHub {
owner = "yggdrasil-network";
repo = "yggdrasil-go";
rev = "v${version}";
sha256 = "1nf00ygp55l01c0gdkw15f08p3hmn6s2r99lgf2xpq8jn75qra4i";
};
vendorSha256 = "1zk6h1isxyml9asyb7g4scbhnfwghqwnv40a5f5j7z0s0s4nybdp";
doCheck = false;
# Change the default location of the management socket on Linux
# systems so that the yggdrasil system service unit does not have to
# be granted write permission to /run.
patches = [ ./change-runtime-dir.patch ];
subPackages = [ "cmd/yggdrasil" "cmd/yggdrasilctl" ];
buildFlagsArray = ''
-ldflags=
-X github.com/yggdrasil-network/yggdrasil-go/src/version.buildVersion=${version}
-X github.com/yggdrasil-network/yggdrasil-go/src/version.buildName=${pname}
-s -w
'';
passthru.tests.basic = nixosTests.yggdrasil;
meta = with lib; {
description =
"An experiment in scalable routing as an encrypted IPv6 overlay network";
homepage = "https://yggdrasil-network.github.io/";
license = licenses.lgpl3;
maintainers = with maintainers; [ ehmry gazally lassulus ];
};
}