Subject: [bug#30604] [PATCH 1/4] gnu: kmod: Split off kmod-minimal.

From: Marius Bakke <[email-masked]>
Date: Mon, 26 Feb 2018 02:10:14 +0100

Danny Milosavljevic <[email-masked]> writes:

> * gnu/packages/linux.scm (kmod-minimal): New variable.
> (kmod): Modify.
> ---
>  gnu/packages/linux.scm | 49 +++++++++++++++++++++++++++++++++----------------
>  1 file changed, 33 insertions(+), 16 deletions(-)
>
> diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
> index 238398e84..1f8bf3050 100644
> --- a/gnu/packages/linux.scm
> +++ b/gnu/packages/linux.scm
> @@ -1933,8 +1933,35 @@ for systems using the Linux kernel.  This includes commands such as
>  to use Linux' inotify mechanism, which allows file accesses to be monitored.")
>      (license license:gpl2+)))
>  
> -(define-public kmod
> +(define kmod-minimal
>    (package
> +    (name "kmod-minimal")
> +    (version "13")

Why this old version?

> +    (source (origin
> +              (method url-fetch)
> +              (uri
> +               (string-append "mirror://kernel.org/linux/utils/kernel/kmod/"
> +                              "kmod-" version ".tar.xz"))
> +              (sha256
> +               (base32
> +                "0mkrklih0f33c3zc4mkk9qqbzy36r18mj9xffd4wi61gpamx6dkc"))
> +              (patches (search-patches "kmod-13-module-directory.patch"))))

This patch seems to be missing.

> +    (build-system gnu-build-system)
> +    (arguments
> +     `(#:tests? #f)) ; FIXME: Investigate test failures
> +    (home-page "https://www.kernel.org/")
> +    (synopsis "Kernel module tools")
> +    (description "Kmod is a set of tools to handle common tasks with Linux
> +kernel modules like insert, remove, list, check properties, resolve
> +dependencies and aliases.
> +
> +These tools are designed on top of libkmod, a library that is shipped with
> +kmod.  The aim is to be compatible with tools, configurations and indices
> +from the module-init-tools project.")
> +    (license license:gpl2+))) ; library under lgpl2.1+
> +
> +(define-public kmod
> +  (package (inherit kmod-minimal)
>      (name "kmod")
>      (version "24")
>      (source (origin
> @@ -1946,15 +1973,14 @@ to use Linux' inotify mechanism, which allows file accesses to be monitored.")
>                 (base32
>                  "15xkkkzvca9flvkm48gkh8y8f13vlm3sl7nz9ydc7b3jy4fqs2v1"))
>                (patches (search-patches "kmod-module-directory.patch"))))
> -    (build-system gnu-build-system)
>      (native-inputs
>       `(("pkg-config" ,pkg-config)))
>      (inputs
>       `(("xz" ,xz)
>         ("zlib" ,zlib)))
>      (arguments
> -     `(#:tests? #f ; FIXME: Investigate test failures
> -       #:configure-flags '("--with-xz" "--with-zlib")
> +     `(#:configure-flags '("--with-xz" "--with-zlib")
> +       #:tests? #f ; FIXME: Investigate test failures
>         #:phases (alist-cons-after
>                   'install 'install-modprobe&co
>                   (lambda* (#:key outputs #:allow-other-keys)
> @@ -1964,18 +1990,9 @@ to use Linux' inotify mechanism, which allows file accesses to be monitored.")
>                                   (symlink "kmod"
>                                            (string-append bin "/" tool)))
>                                 '("insmod" "rmmod" "lsmod" "modprobe"
> -                                 "modinfo" "depmod"))))
> -                 %standard-phases)))
> -    (home-page "https://www.kernel.org/")
> -    (synopsis "Kernel module tools")
> -    (description "Kmod is a set of tools to handle common tasks with Linux
> -kernel modules like insert, remove, list, check properties, resolve
> -dependencies and aliases.
> -
> -These tools are designed on top of libkmod, a library that is shipped with
> -kmod.  The aim is to be compatible with tools, configurations and indices
> -from the module-init-tools project.")
> -    (license license:gpl2+))) ; library under lgpl2.1+
> +                                 "modinfo" "depmod"))
> +                     #t))
> +                 %standard-phases)))))
>  
>  (define-public eudev
>    ;; The post-systemd fork, maintained by Gentoo.