linuxPackages: remove kernelHeaders

User-space programs should not be using headers extracted from random
kernels, but should in fact use the headers that were used to build
libc; see e.g., this LKML posting by Linus Torvalds on the subject of
Linux API headers at [1].

What is more, the Linux API headers are supposed to be backwards
compatible[2], so there's really no good reason to have more than one
such package, namely the latest one required by a package in our tree.

That is, `kernelHeaders` is not only incorrect but serves no real
purpose: out-of-tree modules use the sources provided by `kernel.dev`;
user space should use `stdenv.cc.libc.linuxHeaders` or the top-level
`linuxHeaders` attribute.

Apart from klibc, nothing in nixpkgs used `linuxPackages.kernelHeaders`,
so the impact of this change is minimal.

[1]: http://lkml.iu.edu/hypermail/linux/kernel/0007.3/0587.html
[2]: https://www.kernel.org/doc/Documentation/kbuild/headers_install.txt
This commit is contained in:
Joachim Fasting 2016-04-18 23:09:21 +02:00
parent faf63d1524
commit 1414f90270
No known key found for this signature in database
GPG Key ID: 4330820E1E04DCF4

View File

@ -10670,8 +10670,6 @@ in
facetimehd = callPackage ../os-specific/linux/facetimehd { }; facetimehd = callPackage ../os-specific/linux/facetimehd { };
kernelHeaders = callPackage ../os-specific/linux/kernel-headers { };
jool = callPackage ../os-specific/linux/jool { }; jool = callPackage ../os-specific/linux/jool { };
mba6x_bl = callPackage ../os-specific/linux/mba6x_bl { }; mba6x_bl = callPackage ../os-specific/linux/mba6x_bl { };