FS#48514 - [virtualbox] Please bring back virtualbox-host-modules
Attached to Project:
Community Packages
Opened by Frank Vanderham (twelveeighty) - Wednesday, 09 March 2016, 04:43 GMT
Last edited by Sébastien Luttringer (seblu) - Sunday, 17 April 2016, 23:44 GMT
Opened by Frank Vanderham (twelveeighty) - Wednesday, 09 March 2016, 04:43 GMT
Last edited by Sébastien Luttringer (seblu) - Sunday, 17 April 2016, 23:44 GMT
|
Details
Description:
The recent update of virtualbox 5.0.14-4 replaced virtualbox-host-modules with virtualbox-host-dkms. For reasons discussed in detail on arch-dev-public [1] and the forum [2], which can be summarized by: "Arch is not a source based distribution. Binary packages should be the default.", this request is to bring back virtualbox-host-modules to [Community]. [1] https://lists.archlinux.org/pipermail/arch-dev-public/2016-March/027801.html [2] https://bbs.archlinux.org/viewtopic.php?id=209780 |
This task depends upon
Closed by Sébastien Luttringer (seblu)
Sunday, 17 April 2016, 23:44 GMT
Reason for closing: Fixed
Additional comments about closing: virtualbox-modules-arch
Sunday, 17 April 2016, 23:44 GMT
Reason for closing: Fixed
Additional comments about closing: virtualbox-modules-arch
Reasons for precompiled binary packages:
=> Users don't need gcc, kernel headers etc installed (saving disk space)
=> Users with low-spec computers (laptops) aren't forced to compile code (saving time, disk space, power and heat)
=> Users with low-spec internet connections aren't forced to download additional code to compile (saving time, disk space and bandwidth)
=> Prevents modules being recompiled unnecessarily on the end-users PC for minor kernel upgrades.
=> Users don't end up with files in /usr that are not tracked by pacman
=> Other kernel modules are distributed this way (eg, nvidia drivers)
=> dkms + alpm hooks do not work prior to pacman 5.0 (short-term reason)
=> No sane way (currently) to handle package (opt)depends for dkms packages to ensure appropriate kernel-headers are installed
Reasons for DKMS:
=> Simpler for package maintainer to package
=> Allow users of all kernels to install modules the same way (users of "non-standard" kernels have to compile modules anyway)
=> Other kernel modules are distributed this way (eg, ndiswrapper)
The list is quite unbalanced, so I hope I haven't missed any points but I think I've managed to collect them all.
that a few of the above arguements are a bit flawed in the grander scheme of
things, considering the fact that the AUR is a thing, and a possibly large part
of the userbase uses it. Using the AUR assumes that base-devel is installed.
A bit of expac magic and math gives us a total of 110.30 MiB download size for
the 'base' group, with an installed size of 291.89 MiB, for a total size on disk
of 402.19 MiB (assuming you don't nuke the package cache with `pacman -Scc');
with 'base-devel' added (not all of the packages add to the 'base' totals,
because they share some packages in common) bring these totals up to 152.67 MiB,
474.63 MiB, and 627.3 MiB.
Taking all these numbers together, we get the following
Installed: Download Size: Size on Disk: Size (Cleaned)
base 110.30 402.19 291.89
base-devel 152.67 (+38.41%) 627.30 (+55.97%) 474.63 (+62.60%)
linux-headers 159.24 (+44.36%) 667.49 (+65.96%) 508.24 (+74.12%)
virtualbox-host-dkms 159.83 (+44.90%) 678.30 (+68.65%) 518.46 (+77.62%)
[Edit: flyspray wrecked my formatting, see attached for a more readable version]
Now, these numbers may be fuzzy due to floating point math in python (and me chopping it at two digits),
but what do they tell us? Yes, there are some pretty scary percentage increases in used disk space and
download size, but even in the worst case scenario you're only downloading ~160mb and using ~680mb of disk space.
The prevailing view is that we should revert to pre-dkms changes, i.e. back to use of virtualbox-host-modules.
I experienced it myself and think it was not done professionally (learning from pacman update about vb modules
handling change, then frantically looking for some news about it on the main web site, vb wiki page stating that
for regular kernel no dkms was involved, etc).
The arguments for precompiled virtualbox-host-modules package has merits (I may add/emphasize that users consider
nondeployment of dev tools, i.e. compiler, headers, etc, as a preemptive security measure) - this should be default.
Please restore it now so that I can continue updating my kernels too.
You may consider dkms-based solution as an option, with a clear fallback procedure available and documented on vb wiki,
when you figure out technical details of dependencies, handling of various kernel-type header files, etc - this should
be done now on dev list until there is no doubt that consensus exists.
==> Kernel 4.1.19-1-lts headers are missing. Nothing will be done for this kernel!
==> You have to install the matching kernel headers package to use dkms
Install linux-lts-headers
I think the real issue is "Error! Could not locate dkms.conf file." but I don't know how to fix it.
# pacman -Syu
...
:: Starting full system upgrade...
:: Replace virtualbox-host-modules with community/virtualbox-host-dkms? [Y/n] n
resolving dependencies...
looking for conflicting packages...
error: failed to prepare transaction (could not satisfy dependencies)
:: virtualbox-host-modules: installing linux (4.5-1) breaks dependency 'linux<4.5'
#
$ pacman -Q |grep virtualbox
virtualbox 5.0.14-4
virtualbox-host-modules 5.0.14-4
$ uname -a
Linux myhost 4.4.3-1-ARCH #1 SMP PREEMPT Fri Feb 26 15:09:29 CET 2016 x86_64 GNU/Linux
I am aware of the discussion here:
https://lists.archlinux.org/pipermail/arch-dev-public/2016-April/date.html#start