summary refs log tree commit diff
path: root/pkgs/tools/networking
diff options
context:
space:
mode:
authorAndersonTorres <torres.anderson.85@protonmail.com>2022-03-13 19:06:09 -0300
committerAndersonTorres <torres.anderson.85@protonmail.com>2022-03-14 12:56:17 -0300
commitbf2d8ef5500643a40f62c4fc2fee1313e4dce188 (patch)
tree5a40cfda25a66d359c8bce5b79ccdbbe453cc4e2 /pkgs/tools/networking
parent3f51820f399b15ff34927f1a1de550ada73feed4 (diff)
downloadnixpkgs-bf2d8ef5500643a40f62c4fc2fee1313e4dce188.tar
nixpkgs-bf2d8ef5500643a40f62c4fc2fee1313e4dce188.tar.gz
nixpkgs-bf2d8ef5500643a40f62c4fc2fee1313e4dce188.tar.bz2
nixpkgs-bf2d8ef5500643a40f62c4fc2fee1313e4dce188.tar.lz
nixpkgs-bf2d8ef5500643a40f62c4fc2fee1313e4dce188.tar.xz
nixpkgs-bf2d8ef5500643a40f62c4fc2fee1313e4dce188.tar.zst
nixpkgs-bf2d8ef5500643a40f62c4fc2fee1313e4dce188.zip
fingerd_bsd: "merge" with finger_bsd
In order to reduce duplicated code
Diffstat (limited to 'pkgs/tools/networking')
-rw-r--r--pkgs/tools/networking/bsd-finger/default.nix39
1 files changed, 30 insertions, 9 deletions
diff --git a/pkgs/tools/networking/bsd-finger/default.nix b/pkgs/tools/networking/bsd-finger/default.nix
index a83a02bd097..12e429b7bcb 100644
--- a/pkgs/tools/networking/bsd-finger/default.nix
+++ b/pkgs/tools/networking/bsd-finger/default.nix
@@ -1,26 +1,47 @@
-{ lib, stdenv, fetchurl }:
-
-# !!! Duplication: this package is almost exactly the same as `bsd-finger'.
+{ lib
+, stdenv
+, fetchurl
+, buildClient ? true
+}:
 
 stdenv.mkDerivation rec {
-  pname = "bsd-finger";
+  srcName = "bsd-finger";
+  pname = srcName + lib.optionalString (!buildClient) "d";
   version = "0.17";
 
   src = fetchurl {
-    url = "mirror://ibiblioPubLinux/system/network/finger/bsd-finger-${version}.tar.gz";
-    sha256 = "1yhkiv0in588il7f84k2xiy78g9lv12ll0y7047gazhiimk5v244";
+    url = "mirror://ibiblioPubLinux/system/network/finger/${srcName}-${version}.tar.gz";
+    hash = "sha256-hIhdZo0RfvUOAccDSkXYND10fOxiEuQOjQgVG8GOE/o=";
   };
 
+  # outputs = [ "out" "man" ];
+
   NIX_CFLAGS_COMPILE = "-D_GNU_SOURCE";
 
-  patches = [ ./ubuntu-0.17-9.patch ];
+  patches = [
+    ./ubuntu-0.17-9.patch
+  ];
 
-  preBuild = "cd finger";
+  preBuild = let
+    srcdir = if buildClient then "finger" else "fingerd";
+  in ''
+    cd ${srcdir}
+  '';
 
-  preInstall = "mkdir -p $out/man/man1 $out/bin ";
+  preInstall = let
+    bindir = if buildClient then "bin" else "sbin";
+    mandir = if buildClient then "man/man1" else "man/man8";
+  in ''
+    mkdir -p $out/${bindir} $out/${mandir}
+  '';
 
   meta = with lib; {
+    description =
+      if buildClient
+      then "User information lookup program"
+      else "Remote user information server";
     platforms = platforms.linux;
     license = licenses.bsdOriginal;
   };
 }
+# TODO: multiple outputs (manpage)