FS#48554 - [virtualbox-host-dkms] Remove modules-load.d file
Attached to Project:
Community Packages
Opened by Doug Newgard (Scimmia) - Saturday, 12 March 2016, 23:40 GMT
Last edited by Sébastien Luttringer (seblu) - Sunday, 26 March 2017, 22:21 GMT
Opened by Doug Newgard (Scimmia) - Saturday, 12 March 2016, 23:40 GMT
Last edited by Sébastien Luttringer (seblu) - Sunday, 26 March 2017, 22:21 GMT
|
Details
One of the major goals of Arch is to get out of the user's
way. This is especially important with system configuration,
packages should not "guess" how the user wants to configure
their system and do it for them. Virtualbox, specifically,
has multiple optional modules for added functionality, and
even the main module is something that many or even most
people don't need loaded at all times.
|
This task depends upon
Closed by Sébastien Luttringer (seblu)
Sunday, 26 March 2017, 22:21 GMT
Reason for closing: Won't fix
Sunday, 26 March 2017, 22:21 GMT
Reason for closing: Won't fix
Either put a notice (Wiki or main page) that VirtualBox is permanently changed and should be configured in a certain way, or please remove the breaking changes. Otherwise I am stuck with editing this file after every update.
With the systemd logic, you can override module loading by putting an empty file in /etc/modules-load.d, so there is clean way to disable that.
That said, you need these modules to use vbox. I don't see the point to request users to go root to load modules in order to start vbox when they need it.
| To load the VirtualBox module at boot time, refer to Kernel modules#Automatic module handling and create a *.conf file (e.g. virtualbox.conf) in /etc/modules-load.d/ with the line:
|
| /etc/modules-load.d/virtualbox.conf
| vboxdrv
Thats all we did so far, and it worked well. I can't see any benefit to add a (still malformed) configuration file during installation at /usr/lib/modules-load.d/.
zfs-dkms usr/src/zfs-0.6.5.4/etc/modules-load.d/zfs.conf.in
zfs-utils usr/lib/modules-load.d/zfs.conf
nfs-utils usr/lib/modules-load.d/nfs-utils.conf
capi4hylafax usr/lib/modules-load.d/capi4hylafax.conf
ossp usr/lib/modules-load.d/osspd.conf
x2goserver usr/lib/modules-load.d/x2goserver.conf
acpi_call usr/lib/modules-load.d/acpi_call.conf
acpi_call-lts usr/lib/modules-load.d/acpi_call-lts.conf
cdemu-daemon usr/lib/modules-load.d/cdemu.conf
cdrtools usr/lib/modules-load.d/cdrecord.conf
drbd-utils usr/lib/modules-load.d/drbd.conf
espeakup usr/lib/modules-load.d/espeakup.conf
tp_smapi usr/lib/modules-load.d/tp_smapi.conf
tp_smapi-lts usr/lib/modules-load.d/tp_smapi-lts.conf
usbip usr/lib/modules-load.d/usbip.conf
The benefit is that you don't need to do it anymore manually, as the package is providing it... We moving from opt-in to opt-out.
Tanks to remember me the the wiki, I will update it.
Despite the fact they are optional, is there any reason to not include them? They slow down the system / create security flaw?
vboxreload, load them since the beginning. You and other never find that insane. I never imagine that people have not added the 3 of them in their module loading.
In contract to your sarcastic proposal of "adding all users to the group", this is not removing feature from users.
FS#48551). If I didn't fuck up with \n, the change didn't break a thing.Anyway, I added a post_upgrade note to warn users that we now rely on modules-load.d and we load all modules by default.
A lot of people will have to adjust their config.
What I can do to minimize the burden, is to rename the s-m-l.d file to virtualbox.conf, so if users followed the wiki, their file in /etc/ will take the precedence over my file in /usr. This will even only load vboxdrv if they originally put only this one.
What's do you think?
But I checked what you said earlier and systemd-modules-load didn't fail because you have the same module specified twice (even in different file).
So, there is no really need to name the file virtualbox.conf and conflict, and, so far, there is no breakage linked to that change.
EDIT: Sorry, my bad. This is possibly another bug on the guest package itself. I get error - systemd-modules-load[149]: Failed to find module 'vboxnetadp'. This module should not be loaded on the guest I think.
FS#48566So we are on the same line.
mars 15 15:35:44 ultima-dbr systemd[1]: Failed to start Load Kernel Modules.
mars 15 15:35:44 ultima-dbr systemd[1]: systemd-modules-load.service: Failed with result 'exit-code'.
mars 15 15:35:44 ultima-dbr systemd-modules-load[206]: Failed to find module 'vboxdrv'
mars 15 15:35:44 ultima-dbr systemd-modules-load[206]: Failed to find module 'vboxpci'
mars 15 15:35:44 ultima-dbr systemd-modules-load[206]: Failed to find module 'vboxnetadp'
mars 15 15:35:44 ultima-dbr systemd-modules-load[206]: Failed to find module 'vboxnetflt'
it seems that Sébastien Luttringer wants to force the load of these virtualbox kernel modules even if the user doesn't want this
in my case I don't use very often virtualbox, so I don't want an automatic load of kernel modules at each boot
If you don't want these modules loaded at boot, drop an empty file in /etc/module-load.d/virtualbox-host-dkms.conf as it's explain in the upgrade message.
a better solution would be to create a systemd service for loading virtualbox kernel modules, users who want an automatic load at boot will simply activate this systemd service,
in archlinux packages like apache, tomcat, the systemd service is never activated by default, I think virtualbox packages should also follow this rule
IMHO, we should follow the no-enabled-services-by-default "policy" here as well and leave it up to the user to decide what they want and don't want to run, no need to babysit them.