summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorWill Dietz <w@wdtz.org>2018-02-13 11:38:14 -0600
committerWill Dietz <w@wdtz.org>2018-02-13 11:47:16 -0600
commitd3b59f864a3dfe37432095568673c97df79107bc (patch)
tree3fc998aa130eaf5b1b8fa8cb90067ff7121e7fb9 /pkgs
parent6c3df22c5a861827a62cae31bde622ce668d5446 (diff)
downloadnixpkgs-d3b59f864a3dfe37432095568673c97df79107bc.tar
nixpkgs-d3b59f864a3dfe37432095568673c97df79107bc.tar.gz
nixpkgs-d3b59f864a3dfe37432095568673c97df79107bc.tar.bz2
nixpkgs-d3b59f864a3dfe37432095568673c97df79107bc.tar.lz
nixpkgs-d3b59f864a3dfe37432095568673c97df79107bc.tar.xz
nixpkgs-d3b59f864a3dfe37432095568673c97df79107bc.tar.zst
nixpkgs-d3b59f864a3dfe37432095568673c97df79107bc.zip
define top-level attrs for getent, getconf
Note that currently getent is explicitly taken from "glibc.bin",
regardless of build configuration which this preserves for now.
(on non-musl anyway)
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/os-specific/linux/systemd/default.nix11
-rw-r--r--pkgs/shells/fish/default.nix7
-rw-r--r--pkgs/top-level/all-packages.nix8
3 files changed, 13 insertions, 13 deletions
diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix
index 519e83539d4..9085b1703c0 100644
--- a/pkgs/os-specific/linux/systemd/default.nix
+++ b/pkgs/os-specific/linux/systemd/default.nix
@@ -7,18 +7,13 @@
 , autoreconfHook, gettext, docbook_xsl, docbook_xml_dtd_42, docbook_xml_dtd_45
 , ninja, meson, python3Packages, glibcLocales
 , patchelf
-, musl-getent ? null
+, getent
 }:
 
 assert stdenv.isLinux;
 
 let
   pythonLxmlEnv = python3Packages.python.withPackages ( ps: with ps; [ python3Packages.lxml ]);
-  getent-bin =
-         if stdenv.hostPlatform.libc == "glibc" then stdenv.cc.libc.bin
-    else if stdenv.hostPlatform.isMusl then "${musl-getent}"
-    else throw "unsupported abi for systemd";
-  getent = "${getent-bin}/bin/getent";
 
 in
 
@@ -40,7 +35,7 @@ in
         ninja meson
         coreutils # meson calls date, stat etc.
         pythonLxmlEnv glibcLocales
-        patchelf getent-bin
+        patchelf getent
       ];
     buildInputs =
       [ linuxHeaders libcap kmod xz pam acl
@@ -114,7 +109,7 @@ in
         for i in src/remount-fs/remount-fs.c src/core/mount.c src/core/swap.c src/fsck/fsck.c units/emergency.service.in units/rescue.service.in src/journal/cat.c src/core/shutdown.c src/nspawn/nspawn.c src/shared/generator.c; do
           test -e $i
           substituteInPlace $i \
-            --replace /usr/bin/getent ${getent} \
+            --replace /usr/bin/getent ${getent}/bin/getent \
             --replace /sbin/swapon ${utillinux.bin}/sbin/swapon \
             --replace /sbin/swapoff ${utillinux.bin}/sbin/swapoff \
             --replace /sbin/fsck ${utillinux.bin}/sbin/fsck \
diff --git a/pkgs/shells/fish/default.nix b/pkgs/shells/fish/default.nix
index 3078dd2dcab..d6c107e9953 100644
--- a/pkgs/shells/fish/default.nix
+++ b/pkgs/shells/fish/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, coreutils, utillinux,
   nettools, kbd, bc, which, gnused, gnugrep,
-  groff, man-db, glibc, musl-getent, libiconv, pcre2,
+  groff, man-db, getent, libiconv, pcre2,
   gettext, ncurses, python3
 
   , writeText
@@ -12,9 +12,6 @@
 with stdenv.lib;
 
 let
-  getent = if stdenv.hostPlatform.isMusl
-             then "${musl-getent}/bin/getent"
-             else "${glibc.bin}/bin/getent";
   etcConfigAppendixText = ''
     ############### ↓ Nix hook for sourcing /etc/fish/config.fish ↓ ###############
     #                                                                             #
@@ -145,7 +142,7 @@ let
       sed -e "s| ul| ${utillinux}/bin/ul|" \
           -i "$out/share/fish/functions/__fish_print_help.fish"
       for cur in $out/share/fish/functions/*.fish; do
-        sed -e "s|/usr/bin/getent|${getent}|" \
+        sed -e "s|/usr/bin/getent|${getent}/bin/getent|" \
             -i "$cur"
       done
 
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 78860b3f0f0..84fda4d6386 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -13361,6 +13361,14 @@ with pkgs;
   musl-fts = callPackage ../os-specific/linux/musl/fts.nix { };
   musl-getconf = callPackage ../os-specific/linux/musl/getconf.nix { };
   musl-getent = callPackage ../os-specific/linux/musl/getent.nix { };
+  getent =
+    if hostPlatform.isMusl then musl-getent
+    # This may not be right on other platforms, but preserves existing behavior
+    else /* if hostPlatform.libc == "glibc" then */ glibc.bin;
+  getconf =
+    if hostPlatform.isMusl then musl-getconf
+    # This may not be right on other platforms, but preserves existing behavior
+    else /* if hostPlatform.libc == "glibc" then */ glibc.bin;
 
   nettools = callPackage ../os-specific/linux/net-tools { };