From c62bb34f7a99963e574032bb0b27c71ce4a6fd7d Mon Sep 17 00:00:00 2001 From: Uli Baum Date: Wed, 29 Aug 2018 14:26:53 +0200 Subject: nfs-utils: 2.1.1 -> 2.3.2, integrate libnfsidmap - switch source to kernel.org - libnfsidmap 2.3.2 is built from the nfs-utils source, put it in nfs-utils.lib - split outputs - adapt sssd, the only other package using libnfsidmap --- pkgs/os-specific/linux/nfs-utils/default.nix | 24 ++++++++++++++++++------ pkgs/os-specific/linux/sssd/default.nix | 4 ++-- 2 files changed, 20 insertions(+), 8 deletions(-) (limited to 'pkgs/os-specific/linux') diff --git a/pkgs/os-specific/linux/nfs-utils/default.nix b/pkgs/os-specific/linux/nfs-utils/default.nix index 359d18690843..fa5fabdb3c48 100644 --- a/pkgs/os-specific/linux/nfs-utils/default.nix +++ b/pkgs/os-specific/linux/nfs-utils/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, fetchpatch, lib, pkgconfig, utillinux, libcap, libtirpc, libevent, libnfsidmap +{ stdenv, fetchurl, fetchpatch, lib, pkgconfig, utillinux, libcap, libtirpc, libevent , sqlite, kerberos, kmod, libuuid, keyutils, lvm2, systemd, coreutils, tcp_wrappers , buildEnv }: @@ -14,17 +14,21 @@ let in stdenv.mkDerivation rec { name = "nfs-utils-${version}"; - version = "2.1.1"; + version = "2.3.2"; src = fetchurl { - url = "mirror://sourceforge/nfs/${name}.tar.bz2"; - sha256 = "02dvxphndpm8vpqqnl0zvij97dq9vsq2a179pzrjcv2i91ll2a0a"; + url = "https://kernel.org/pub/linux/utils/nfs-utils/${version}/${name}.tar.xz"; + sha256 = "06av6cjf8h18dpaxh8cd1awsra75zf6s5sj5r2z5g7scbj051ziw"; }; + # libnfsidmap is built together with nfs-utils from the same source, + # put it in the "lib" output, and the headers in "dev" + outputs = [ "out" "dev" "lib" "man" ]; + nativeBuildInputs = [ pkgconfig ]; buildInputs = [ - libtirpc libcap libevent libnfsidmap sqlite lvm2 + libtirpc libcap libevent sqlite lvm2 libuuid keyutils kerberos tcp_wrappers ]; @@ -36,6 +40,9 @@ in stdenv.mkDerivation rec { "--with-krb5=${kerberosEnv}" "--with-systemd=$(out)/etc/systemd/system" "--enable-libmount-mount" + # need an absolute path to lib output here. + # TODO: use ${placeholder lib} when nix 1.1 is no longer supported + "--with-pluginpath=@lib@/lib/libnfsidmap" # this installs libnfsidmap ] ++ lib.optional (stdenv ? glibc) "--with-rpcgen=${stdenv.glibc.bin}/bin/rpcgen"; @@ -68,6 +75,11 @@ in stdenv.mkDerivation rec { sed '1i#include ' -i support/nsm/rpc.c ''; + # TODO: remove when placeholders are allowed (see configureFlags) + postConfigure = '' + substituteInPlace support/include/config.h --replace '@lib@' "$lib" + ''; + makeFlags = [ "sbindir=$(out)/bin" "generator_dir=$(out)/etc/systemd/system-generators" @@ -99,7 +111,7 @@ in stdenv.mkDerivation rec { daemons. ''; - homepage = https://sourceforge.net/projects/nfs/; + homepage = https://linux-nfs.org/; license = licenses.gpl2; platforms = platforms.linux; maintainers = with maintainers; [ abbradar ]; diff --git a/pkgs/os-specific/linux/sssd/default.nix b/pkgs/os-specific/linux/sssd/default.nix index 0a55608af968..4224c4900db6 100644 --- a/pkgs/os-specific/linux/sssd/default.nix +++ b/pkgs/os-specific/linux/sssd/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, pkgs, glibc, augeas, dnsutils, c-ares, curl, - cyrus_sasl, ding-libs, libnl, libunistring, nss, samba, libnfsidmap, doxygen, + cyrus_sasl, ding-libs, libnl, libunistring, nss, samba, nfs-utils, doxygen, python, python3, pam, popt, talloc, tdb, tevent, pkgconfig, ldb, openldap, pcre, kerberos, cifs-utils, glib, keyutils, dbus, fakeroot, libxslt, libxml2, libuuid, ldap, systemd, nspr, check, cmocka, uid_wrapper, @@ -48,7 +48,7 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; buildInputs = [ augeas dnsutils c-ares curl cyrus_sasl ding-libs libnl libunistring nss - samba libnfsidmap doxygen python python3 popt + samba nfs-utils doxygen python python3 popt talloc tdb tevent pkgconfig ldb pam openldap pcre kerberos cifs-utils glib keyutils dbus fakeroot libxslt libxml2 libuuid ldap systemd nspr check cmocka uid_wrapper -- cgit 1.4.1 From 037d27ed00435d6962c4eb9275466ccc4d2fbe77 Mon Sep 17 00:00:00 2001 From: Uli Baum Date: Thu, 30 Aug 2018 20:11:40 +0200 Subject: nfs-utils: simplify code using placeholders --- pkgs/os-specific/linux/nfs-utils/default.nix | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) (limited to 'pkgs/os-specific/linux') diff --git a/pkgs/os-specific/linux/nfs-utils/default.nix b/pkgs/os-specific/linux/nfs-utils/default.nix index fa5fabdb3c48..f67663b31061 100644 --- a/pkgs/os-specific/linux/nfs-utils/default.nix +++ b/pkgs/os-specific/linux/nfs-utils/default.nix @@ -38,11 +38,9 @@ in stdenv.mkDerivation rec { [ "--enable-gss" "--with-statedir=/var/lib/nfs" "--with-krb5=${kerberosEnv}" - "--with-systemd=$(out)/etc/systemd/system" + "--with-systemd=${placeholder "out"}/etc/systemd/system" "--enable-libmount-mount" - # need an absolute path to lib output here. - # TODO: use ${placeholder lib} when nix 1.1 is no longer supported - "--with-pluginpath=@lib@/lib/libnfsidmap" # this installs libnfsidmap + "--with-pluginpath=${placeholder "lib"}/lib/libnfsidmap" # this installs libnfsidmap ] ++ lib.optional (stdenv ? glibc) "--with-rpcgen=${stdenv.glibc.bin}/bin/rpcgen"; @@ -75,11 +73,6 @@ in stdenv.mkDerivation rec { sed '1i#include ' -i support/nsm/rpc.c ''; - # TODO: remove when placeholders are allowed (see configureFlags) - postConfigure = '' - substituteInPlace support/include/config.h --replace '@lib@' "$lib" - ''; - makeFlags = [ "sbindir=$(out)/bin" "generator_dir=$(out)/etc/systemd/system-generators" -- cgit 1.4.1