about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorOTABI Tomoya <tomoya.otabi@gmail.com>2023-08-10 00:20:27 +0900
committerGitHub <noreply@github.com>2023-08-10 00:20:27 +0900
commita2df7a12ef4e9dd278ca4141705584b1dc460aca (patch)
tree396a0c312f64545a2c98776c3762d693c3a33372 /pkgs
parent54d734a42084589365252987f89642f7525f522b (diff)
parent1b264042f1ffb005edb9ffca51b1cc9a6f855906 (diff)
Merge pull request #247646 from bbigras/webmesh
webmesh: init at 0.1.2
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/servers/webmesh/default.nix40
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 42 insertions, 0 deletions
diff --git a/pkgs/servers/webmesh/default.nix b/pkgs/servers/webmesh/default.nix
new file mode 100644
index 0000000000000..9b4930eb68884
--- /dev/null
+++ b/pkgs/servers/webmesh/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "webmesh";
+  version = "0.1.2";
+
+  src = fetchFromGitHub {
+    owner = "webmeshproj";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-S7kenBrnhM8V0TdbRe+CJP2XGHG/dZbfGVwdRurPeP8=";
+  };
+
+  vendorHash = "sha256-LBd5IrNFGkEhz+joDv6juL7WuoFyoqCXnmEHFB1K6Nc=";
+
+  CGO_ENABLED = 0;
+
+  subPackages = [ "cmd/node" "cmd/wmctl" ];
+
+  ldflags = [
+    "-w"
+    "-s"
+    "-X github.com/webmeshproj/webmesh/pkg/version.Version=${version}"
+    "-X github.com/webmeshproj/webmesh/pkg/version.Commit=v${version}"
+  ];
+
+  postInstall = ''
+    mv $out/bin/node $out/bin/webmesh-node
+  '';
+
+  meta = with lib; {
+    description = "A simple, distributed, zero-configuration WireGuard mesh provider";
+    homepage = "https://webmeshproj.github.io";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ bbigras ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 9f457d8ca83ab..6baf1c930ee2a 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -14646,6 +14646,8 @@ with pkgs;
 
   webalizer = callPackage ../tools/networking/webalizer { };
 
+  webmesh = callPackage ../servers/webmesh { };
+
   wget = callPackage ../tools/networking/wget { };
 
   wget2 = callPackage ../tools/networking/wget2 {