diff options
Diffstat (limited to 'pkgs/os-specific/linux/kmod/default.nix')
-rw-r--r-- | pkgs/os-specific/linux/kmod/default.nix | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/pkgs/os-specific/linux/kmod/default.nix b/pkgs/os-specific/linux/kmod/default.nix index bcbdf1a5a19..7910c610948 100644 --- a/pkgs/os-specific/linux/kmod/default.nix +++ b/pkgs/os-specific/linux/kmod/default.nix @@ -1,30 +1,37 @@ -{ stdenv, fetchurl, xz, zlib, pkgconfig, libxslt }: +{ stdenv, lib, fetchurl, autoreconfHook, xz, zlib, pkgconfig, libxslt }: let - systems = [ "/run/current-system/kernel-modules" "/run/booted-system/kernel-modules" "" ]; - modulesDirs = lib.concatMapStringsSep ":" (x: "${x}/lib/modules") systems; + systems = [ "current-system" "booted-system" ]; + modulesDirs = lib.concatMapStringsSep ":" (x: "/run/${x}/kernel-modules/lib/modules") systems; in stdenv.mkDerivation rec { name = "kmod-${version}"; - version = "23"; + version = "22"; src = fetchurl { url = "mirror://kernel/linux/utils/kernel/kmod/${name}.tar.xz"; sha256 = "0mc12sx06p8il1ym3hdmgxxb37apn9yv7xij26gddjdfkx8xa0yk"; }; - buildInputs = [ pkgconfig libxslt xz /* zlib */ ]; + nativeBuildInputs = [ autoreconfHook pkgconfig libxslt ]; + buildInputs = [ xz /* zlib */ ]; - configureFlags = [ "--sysconfdir=/etc" "--with-xz" /* "--with-zlib" */ ]; + configureFlags = [ + "--sysconfdir=/etc" + "--with-xz" + "--with-modulesdirs=${modulesDirs}" + # "--with-zlib" + ]; patches = [ ./module-dir.patch ]; postInstall = '' - ln -s kmod $out/bin/lsmod - mkdir -p $out/sbin - for prog in rmmod insmod modinfo modprobe depmod; do - ln -sv $out/bin/kmod $out/sbin/$prog + for prog in rmmod insmod lsmod modinfo modprobe depmod; do + ln -sv $out/bin/kmod $out/bin/$prog done + + # Backwards compatibility + ln -s bin $out/sbin ''; meta = { |