about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/misc/superd/default.nix43
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 45 insertions, 0 deletions
diff --git a/pkgs/misc/superd/default.nix b/pkgs/misc/superd/default.nix
new file mode 100644
index 0000000000000..105d7278e5bb4
--- /dev/null
+++ b/pkgs/misc/superd/default.nix
@@ -0,0 +1,43 @@
+{ lib
+, buildGoModule
+, fetchFromSourcehut
+, installShellFiles
+, scdoc
+}:
+
+buildGoModule rec {
+  pname = "superd";
+  version = "0.7";
+
+  src = fetchFromSourcehut {
+    owner = "~craftyguy";
+    repo = pname;
+    rev = version;
+    hash = "sha256-XSB6qgepWhus15lOP9GzbiNoOCSsy6xLij7ic3LFs1E=";
+  };
+
+  vendorHash = "sha256-Oa99U3THyWLjH+kWMQAHO5QAS2mmtY7M7leej+gnEqo=";
+
+  nativeBuildInputs = [
+    installShellFiles
+    scdoc
+  ];
+
+  postBuild = ''
+    make doc
+  '';
+
+  postInstall = ''
+    installManPage superd.1 superd.service.5 superctl.1
+    installShellCompletion --bash completions/bash/superctl
+    installShellCompletion --zsh completions/zsh/superctl
+  '';
+
+  meta = with lib; {
+    description = "Unprivileged user service supervisor";
+    homepage = "https://sr.ht/~craftyguy/superd/";
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ chuangzhu wentam ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 4c2590bd2bbce..4346795b04ae0 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -36962,6 +36962,8 @@ with pkgs;
 
   stork = callPackage ../applications/misc/stork { };
 
+  superd = callPackage ../misc/superd { };
+
   oclgrind = callPackage ../development/tools/analysis/oclgrind { };
 
   opkg = callPackage ../tools/package-management/opkg { };