about summary refs log tree commit diff
path: root/pkgs/tools/admin/daemontools
diff options
context:
space:
mode:
authorMichal Sojka <michal.sojka@cvut.cz>2022-08-13 00:27:21 +0200
committerMichal Sojka <michal.sojka@cvut.cz>2022-08-21 21:20:33 +0200
commit2507e7c69f520e519dd3cb289931c0b16133ec82 (patch)
treedb603e3bbba63ff96e5338c740b2a06dc6e6df3f /pkgs/tools/admin/daemontools
parent3a11db5f408095b8f08b098ec2066947f4b72ce2 (diff)
daemontools: add manpages from Debian
Using software, whose documentation is only available online is not
always convenient. This package has only online docuemntation and
upstream provides no manpages.

This commit extends the package by manpages prepared by Debian
developers. The manpages are added to a separate output. Listing of
the outputs of this package now looks like this:

    result
    └── bin
        ├── envdir
        ├── envuidgid
        ├── fghack
        ├── multilog
        ├── pgrphack
        ├── readproctitle
        ├── setlock
        ├── setuidgid
        ├── softlimit
        ├── supervise
        ├── svc
        ├── svok
        ├── svscan
        ├── svscanboot
        ├── svstat
        ├── tai64n
        └── tai64nlocal
    result-man
    └── share
        ├── doc
        │   └── daemontools
        │       └── README.man
        └── man
            └── man8
                ├── envdir.8.gz
                ├── envuidgid.8.gz
                ├── fghack.8.gz
                ├── multilog.8.gz
                ├── pgrphack.8.gz
                ├── readproctitle.8.gz
                ├── setlock.8.gz
                ├── setuidgid.8.gz
                ├── softlimit.8.gz
                ├── supervise.8.gz
                ├── svc.8.gz
                ├── svok.8.gz
                ├── svscan.8.gz
                ├── svscanboot.8.gz
                ├── svstat.8.gz
                ├── tai64n.8.gz
                └── tai64nlocal.8.gz
Diffstat (limited to 'pkgs/tools/admin/daemontools')
-rw-r--r--pkgs/tools/admin/daemontools/default.nix19
1 files changed, 18 insertions, 1 deletions
diff --git a/pkgs/tools/admin/daemontools/default.nix b/pkgs/tools/admin/daemontools/default.nix
index ad12234bf27b5..f827b1c71a0e9 100644
--- a/pkgs/tools/admin/daemontools/default.nix
+++ b/pkgs/tools/admin/daemontools/default.nix
@@ -1,5 +1,11 @@
-{ fetchurl, bash, glibc, lib, stdenv }:
+{ fetchurl, bash, glibc, lib, stdenv, installShellFiles }:
 
+let
+  man-pages = fetchurl {
+    url = "https://salsa.debian.org/debian/daemontools/-/archive/debian/1%250.76-8/daemontools-debian-1%250.76-8.tar.gz?path=debian/daemontools-man";
+    sha256 = "sha256-om5r1ddUx1uObp9LR+SwCLLtm+rRuLoq28OLbhWhdzU=";
+  };
+in
 stdenv.mkDerivation rec {
   pname = "daemontools";
   version = "0.76";
@@ -11,6 +17,10 @@ stdenv.mkDerivation rec {
 
   patches = [ ./fix-nix-usernamespace-build.patch ];
 
+  outputs = [ "out" "man" ];
+
+  nativeBuildInputs = [ installShellFiles ];
+
   configurePhase = ''
     cd daemontools-${version}
 
@@ -32,8 +42,15 @@ stdenv.mkDerivation rec {
     for cmd in $(cat package/commands); do
       install -Dm755 "command/$cmd" "$out/bin/$cmd"
     done
+
+    tar -xz --strip-components=2 -f ${man-pages}
+    installManPage daemontools-man/*.8
+    install -v -Dm644 daemontools-man/README $man/share/doc/daemontools/README.man
   '';
 
+  # Keep README.man in the man output (see _multioutDocs())
+  outputDoc = "man";
+
   meta = {
     license = lib.licenses.publicDomain;
     homepage = "https://cr.yp.to/daemontools.html";