Subject: [bug#40274] [PATCH v6 2/2] gnu: Add kernel-module-loader-service.

From: Mathieu Othacehe <[email-masked]>
Date: Sat, 04 Apr 2020 17:53:47 +0200

Hello Brice,

I think what you discussed with Danny, separating module loading from
configuration is very wise.

> +The kernel module loader service allows one to load, at boot, loadable
> +kernel modules---in opposition to built-in kernel modules which should
> +be added to the @code{kernel-arguments} field instead.  This is

Using kernel-arguments you can configure built-in modules but you cannot
force them to show-up, at least for most device drivers. For those
device drivers, loading of built-in modules is based on hardware probing
at boot-time. 

So I would just stick with:

"The kernel module loader service allows one to load, at boot time,
specific kernel modules."

> +(define ddcci-config
> +  (plain-file "ddcci.conf"
> +              "options ddcci dyndbg delay=120"))

Having the modprobe-service-type you proposed earlier, would be super
nice to do that :)

> +
> +(operating-system
> +  ...
> +  (services (cons* (service kernel-module-loader-service-type
> +                            '("ddcci" "ddcci_backlight"))
> +                   (simple-service 'ddcci-config etc-service-type
> +                                   (list `("modprobe.d/ddcci.conf"
> +                                           ,ddcci-config)))

Great!

This seems really nice to me.

Mathieu