diff --git a/pkgs/development/libraries/libblockdev/default.nix b/pkgs/development/libraries/libblockdev/default.nix index e84df0c1aedf9..22bcb1fa911df 100644 --- a/pkgs/development/libraries/libblockdev/default.nix +++ b/pkgs/development/libraries/libblockdev/default.nix @@ -1,6 +1,7 @@ { stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, gtk-doc, libxslt, docbook_xsl , docbook_xml_dtd_43, python3, gobjectIntrospection, glib, libudev, kmod, parted, libyaml -, cryptsetup, devicemapper, dmraid, utillinux, libbytesize, libndctl, nss, volume_key +, cryptsetup, devicemapper, dmraid, utillinuxMinimal, libbytesize, libndctl, nss, volume_key +, minimal ? false }: let @@ -25,10 +26,22 @@ in stdenv.mkDerivation rec { autoreconfHook pkgconfig gtk-doc libxslt docbook_xsl docbook_xml_dtd_43 python3 gobjectIntrospection ]; - buildInputs = [ - glib libudev kmod parted cryptsetup devicemapper dmraid utillinux libbytesize libndctl nss volume_key libyaml + configureFlags = stdenv.lib.optionals minimal [ + "--without-btrfs" + "--without-dm" + "--without-dmraid" + "--without-escrow" + "--without-kbd" + "--without-lvm" + "--without-lvm_dbus" + "--without-mpath" + "--without-vdo" ]; + buildInputs = [ + glib libudev devicemapper kmod parted cryptsetup utillinuxMinimal libbytesize libndctl nss + ] ++ stdenv.lib.optionals (!minimal) [ dmraid volume_key libyaml ]; + meta = with stdenv.lib; { description = "A library for manipulating block devices"; homepage = http://storaged.org/libblockdev/; diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix index 8cda636e987db..19648611fd82d 100644 --- a/pkgs/os-specific/linux/lvm2/default.nix +++ b/pkgs/os-specific/linux/lvm2/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, fetchpatch, pkgconfig, systemd, libudev, utillinux, coreutils, libuuid +{ stdenv, fetchurl, fetchpatch, pkgconfig, eudev, libudev, utillinux, coreutils, libuuid , thin-provisioning-tools, enable_dmeventd ? false }: let @@ -32,7 +32,7 @@ stdenv.mkDerivation { preConfigure = '' substituteInPlace scripts/lvm2_activation_generator_systemd_red_hat.c \ - --replace /usr/bin/udevadm ${systemd}/bin/udevadm + --replace /usr/bin/udevadm ${eudev}/bin/udevadm sed -i /DEFAULT_SYS_DIR/d Makefile.in sed -i /DEFAULT_PROFILE_DIR/d conf/Makefile.in diff --git a/pkgs/os-specific/linux/udisks/2-default.nix b/pkgs/os-specific/linux/udisks/2-default.nix index 0c0aa84a6bd36..554ecf5ca3136 100644 --- a/pkgs/os-specific/linux/udisks/2-default.nix +++ b/pkgs/os-specific/linux/udisks/2-default.nix @@ -1,8 +1,9 @@ { stdenv, fetchFromGitHub, substituteAll, libtool, pkgconfig, intltool, gnused , gnome3, gtk-doc, acl, systemd, glib, libatasmart, polkit, coreutils, bash -, expat, libxslt, docbook_xsl, utillinux, mdadm, libgudev, libblockdev, parted +, expat, libxslt, docbook_xsl, utillinuxMinimal, mdadm, libgudev, libblockdev, parted , gobjectIntrospection, docbook_xml_dtd_412, docbook_xml_dtd_43 , libxfs, f2fs-tools, dosfstools, e2fsprogs, btrfs-progs, exfat, nilfs-utils, udftools, ntfs3g +, minimal ? false }: let @@ -23,7 +24,7 @@ in stdenv.mkDerivation rec { (substituteAll { src = ./fix-paths.patch; bash = "${bash}/bin/bash"; - blkid = "${utillinux}/bin/blkid"; + blkid = "${utillinuxMinimal}/bin/blkid"; false = "${coreutils}/bin/false"; mdadm = "${mdadm}/bin/mdadm"; sed = "${gnused}/bin/sed"; @@ -33,7 +34,7 @@ in stdenv.mkDerivation rec { }) (substituteAll { src = ./force-path.patch; - path = stdenv.lib.makeBinPath [ btrfs-progs coreutils dosfstools e2fsprogs exfat f2fs-tools nilfs-utils libxfs ntfs3g parted utillinux ]; + path = stdenv.lib.makeBinPath ([ utillinuxMinimal ] ++ stdenv.lib.optionals (!minimal) [ btrfs-progs coreutils dosfstools e2fsprogs exfat f2fs-tools nilfs-utils libxfs ntfs3g parted ]); }) ]; @@ -49,7 +50,7 @@ in stdenv.mkDerivation rec { ''; buildInputs = [ - expat libgudev libblockdev acl systemd glib libatasmart polkit + expat libgudev (libblockdev.override { inherit minimal; }) acl systemd glib libatasmart polkit ]; preConfigure = "./autogen.sh"; @@ -59,6 +60,8 @@ in stdenv.mkDerivation rec { "--localstatedir=/var" "--with-systemdsystemunitdir=$(out)/etc/systemd/system" "--with-udevdir=$(out)/lib/udev" + ] ++ stdenv.lib.optionals minimal [ + "--disable-lvm2" ]; makeFlags = [ diff --git a/pkgs/tools/filesystems/ntfs-3g/default.nix b/pkgs/tools/filesystems/ntfs-3g/default.nix index 7ee54a63fbb8e..81d47642589e4 100644 --- a/pkgs/tools/filesystems/ntfs-3g/default.nix +++ b/pkgs/tools/filesystems/ntfs-3g/default.nix @@ -1,4 +1,4 @@ -{stdenv, fetchurl, fetchpatch, utillinux, libuuid +{stdenv, fetchurl, fetchpatch, utillinuxMinimal, libuuid , crypto ? false, libgcrypt, gnutls, pkgconfig}: stdenv.mkDerivation rec { @@ -27,8 +27,8 @@ stdenv.mkDerivation rec { substituteInPlace src/Makefile.in --replace /sbin '@sbindir@' substituteInPlace ntfsprogs/Makefile.in --replace /sbin '@sbindir@' substituteInPlace libfuse-lite/mount_util.c \ - --replace /bin/mount ${utillinux}/bin/mount \ - --replace /bin/umount ${utillinux}/bin/umount + --replace /bin/mount ${utillinuxMinimal}/bin/mount \ + --replace /bin/umount ${utillinuxMinimal}/bin/umount ''; configureFlags = [ diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index dfa2a3b66967b..e1fc44b91c31f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14390,6 +14390,7 @@ with pkgs; udisks1 = callPackage ../os-specific/linux/udisks/1-default.nix { }; udisks2 = callPackage ../os-specific/linux/udisks/2-default.nix { }; udisks = udisks2; + udisksMinimal = udisks2.override { minimal = true; }; udisks_glue = callPackage ../os-specific/linux/udisks-glue { };