First, pass in `self' again so that overriding works properly (thanks
for pointing that out, @edolstra)
Second, instead of having linuxPackages*.kernel mean something different
inside the set and out, add a new attribute linuxPackages*.kernelDev,
which for the generic kernel is simply linuxPackages*.kernel but for the
manual-config kernel is the `dev' output (which has the build tree,
source tree, etc.)
The second change required trivial modifications in a bunch of
expressions, I verified that all of the linuxPackages* sets defined in
all-packages.nix have the same drv paths before and after the change.
Signed-off-by: Shea Levy <shea@shealevy.com>
I'm not entirely sure what the appropriate license attribute for this
package is. The license [1] says:
| 2.1.2 Linux/FreeBSD Exception. Notwithstanding the foregoing terms of
| Section 2.1.1, SOFTWARE designed exclusively for use on the Linux or
| FreeBSD operating systems, or other operating systems derived from
| the source code to these operating systems, may be copied and
| redistributed, provided that the binary files thereof are not
| modified in any way (except for unzipping of compressed files).
It sounds to me like this gives NixOS the right to re-distribute the
files (because we don't modify them). The 'proprietary' license sort-of
fits that. On the other hand, we seem to assume that proprietary
software cannot be redistributed, which doesn't apply here.
[1] http://www.nvidia.com/content/DriverDownload-March2009/licence.php?lang=us
This branch adds libcap-ng and updates SELinux. It doesn't seem like
anyone is actually using SELinux from nixpkgs, but everything compiles
and looks right.
Signed-off-by: Shea Levy <shea@shealevy.com>
The updated version 5.9 couldn't mount any of my shares:
Status code returned 0xc000006d NT_STATUS_LOGON_FAILURE
CIFS VFS: Send error in SessSetup = -13
CIFS VFS: cifs_mount failed w/return code = -13
Apparently, this is a known problem in Windows Vista that needs to be
fixed on the server side. :-(
It turns out that mount.cifs is run in a shell environment that doesn't have
$PATH. To find that program, we must commit to some location. The path I used will
work fine on NixOS, but of course it won't work on other Linux distributions. I'm
not sure whether that's an important issue or not.
This makes it possible to still build out-of-tree modules without making a system using this kernel depend on the full source and build tree at runtime.
Note that references to the source tree are removed from kernel modules after build.
Ideally, this would be accomplished by modifying the Makefile that puts the reference there in the first place, but I haven't tracked that down yet.
As timeconst.pl was replaced by a bc script in the merge window for kernel 3.9,
we also need bc during build time, for more information about the reasons,
please have a look at the following commit:
torvalds/linux@70730bca13
Signed-off-by: aszlig <aszlig@redmoonstudios.org>