virtualbox: Fix build for manual kernel.#109
Merged
shlevy merged 8 commits intoNixOS:masterfrom Aug 19, 2012
Merged
Conversation
Member
Author
|
Okay, seems there are some issues, se please do not merge yet. |
Member
|
@aszlig Can you close and then reopen when it's ready for merge? No need to open a new PR, just reopen the closed one. |
Member
Author
|
Sorry, fell asleep just after pushing. Going to test and/or fixup further tomorrow. |
Member
Author
|
Fixed, and tested against generic kernel aswell. |
Member
There was a problem hiding this comment.
This shouldn't be necessary, the standard unpackPhase sets $sourceRoot
Member
Author
There was a problem hiding this comment.
Unfortunately, it is necessary, as $sourceRoot is not an absolute path.
Member
There was a problem hiding this comment.
Ah, OK. I wonder if that should be changed in stdenv-updates... @edolstra?
Don't rely on VirtualBox's in-tree build scripts to set include paths correctly and use the official way of the Linux kernel to build the modules. That way we don't need to make ugly symlinks in the kernel tree or heavily patch VirtualBox.
The for loop didn't find $curdir, because it was set _after_ the directory has been changed. The variable is now called $srcroot and is set before the installPhase is changing directories.
The scripts/depmod.sh checks whether the path in $DEPMOD is executable and only executes it if that's the case. So, by setting DEPMOD to "/do_not_use_depmod" the destination path doesn't exist _and_ thus isn't executable aswell.
First of all, modules won't install when there is no "make modules" prior to it, so we're doing this now with a new function called forEachModule, so we can avoid duplication as much as possible. In addition this sets $sourcedir to the current directory of the configurePhase, so we're able to find the source tree later on, after several chdir()s.
The "include/generated" stuff is already added to the search path by the kernel modules build system, so no need to hack it in like this.
We're the host so we don't need the kernel modules for the guest additions, as they're build with in a separate derivation anyway.
Copy all symbol versions from the ones generated in the vboxdrv build.
Thanks to @shlevy for mentioning this.
Member
Author
|
Rebased without the checkPhase in |
ethancedwards8
pushed a commit
to ethancedwards8/nixpkgs
that referenced
this pull request
Apr 2, 2021
Do not evaluate /etc/bashrc on non-interactive shells
symphorien
added a commit
to symphorien/nixpkgs
that referenced
this pull request
Jun 16, 2025
changelog: https://github.com/fdw/rofi-rbw/releases 1.5.1: Fix release process Latest Unfortunately, the new automatic build process with uv was broken, resulting in useless wheel files. 1.5.0: It's time Changed Fields are shown in plain text or hidden based on their type. (NixOS#17) Stopped support for Python 3.8. Added Show a notification after copying TOTP. (NixOS#101) Support for fuzzel. (NixOS#109) Support cards.
notklea
pushed a commit
to notklea/nixpkgs
that referenced
this pull request
Dec 1, 2025
* Add basic FAQ * faq: Update language
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This should fix building VirtualBox against kernels made using the new manual kernel configuration system.
In addition, this adds a small test case to the manual kernel, to ensure that modules can be built properly using kbuild.
And the latter (kbuild) is also used in the VirtualBox derivation, so we shouldn't trap into problems even with generic kernels (which i didn't test, yet so it would make sense to test it before merging...).