about summary refs log tree commit diff
path: root/pkgs/tools/networking/innernet
diff options
context:
space:
mode:
author0x4A6F <0x4A6F@users.noreply.github.com>2021-04-26 20:04:25 +0200
committer0x4A6F <0x4A6F@users.noreply.github.com>2021-04-26 20:17:57 +0200
commit1a6899f701a1c1966a6a1835d2b59695e26791e8 (patch)
tree42619493a94551125f8e17a97c30aee6ce0d484c /pkgs/tools/networking/innernet
parentee8e469ca928357417f3d6951433a4b26dbfa7fc (diff)
innernet:
- add simple packaging test
- add manpages
- remove unused linuxHeaders input
Diffstat (limited to 'pkgs/tools/networking/innernet')
-rw-r--r--pkgs/tools/networking/innernet/default.nix34
1 files changed, 30 insertions, 4 deletions
diff --git a/pkgs/tools/networking/innernet/default.nix b/pkgs/tools/networking/innernet/default.nix
index abc7aca61a320..4573db5879e13 100644
--- a/pkgs/tools/networking/innernet/default.nix
+++ b/pkgs/tools/networking/innernet/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, rustPlatform, fetchFromGitHub, llvmPackages, linuxHeaders, sqlite, Security }:
+{ lib, stdenv, rustPlatform, fetchFromGitHub, llvmPackages, sqlite, installShellFiles, Security }:
 
 rustPlatform.buildRustPackage rec {
   pname = "innernet";
@@ -10,11 +10,37 @@ rustPlatform.buildRustPackage rec {
     rev = "v${version}";
     sha256 = "sha256-Z4F5RYPVgFiiDBg6lxILjAh/a/rL7IJBqHIJ/tQyLnE=";
   };
-  LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
+  cargoSha256 = "sha256-WSkN5aXMgfqZJAV1b3elF7kwf2f5OpcntKSf8620YcY=";
 
-  nativeBuildInputs = with llvmPackages; [ llvm clang ];
+  nativeBuildInputs = with llvmPackages; [
+    llvm
+    clang
+    installShellFiles
+  ];
   buildInputs = [ sqlite ] ++ lib.optionals stdenv.isDarwin [ Security ];
-  cargoSha256 = "sha256-WSkN5aXMgfqZJAV1b3elF7kwf2f5OpcntKSf8620YcY=";
+
+  LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
+
+  postInstall = ''
+    installManPage doc/innernet-server.8.gz
+    installManPage doc/innernet.8.gz
+  '';
+
+  doInstallCheck = true;
+  installCheckPhase = ''
+    if [[ "$("$out/bin/${pname}"-server --version)" == "${pname}-server ${version}" ]]; then
+      echo '${pname}-server smoke check passed'
+    else
+      echo '${pname}-server smoke check failed'
+      return 1
+    fi
+    if [[ "$("$out/bin/${pname}" --version)" == "${pname} ${version}" ]]; then
+      echo '${pname} smoke check passed'
+    else
+      echo '${pname} smoke check failed'
+      return 1
+    fi
+  '';
 
   meta = with lib; {
     description = "A private network system that uses WireGuard under the hood";