Commit Graph

1026 Commits

Author SHA1 Message Date
Shea Levy
053e029ee6 Some arches have multiple Makefiles
Signed-off-by: Shea Levy <shea@shealevy.com>
2014-01-05 16:07:32 -05:00
Shea Levy
adb57a0cc4 kernel: Fix depmod references
Signed-off-by: Shea Levy <shea@shealevy.com>
2014-01-05 10:31:16 -05:00
Shea Levy
ac2035287f Greatly reduce kernel closure size
Based on access analysis with strace, I determined an essentially
minimal required set of files from the kernel source that was needed to
build all current kernel packages on 3.10, which ultimately resulted in
keeping 30M of source. Generalizing from that minimal set, which
required ad-hoc specifications of which headers outside of include/ and
arch/*/include and which files in the scripts/ directory should be kept,
to a policy of keeping all non-arch-specific headers that aren't part of
the drivers/ directory and the entire scripts/ directory added an
additional 17M, but there was nothing in the analysis that indicated
that that ad-hoc specification was at all complete so I think the extra
hit is worth the likely greater compatibility.

For reference, we now keep:

* All headers that are NOT in arch/${notTargetArch}/include or drivers/
* The scripts/ directory
* Makefile
* arch/${targetArch}/Makefile

IMO the most likely cause of future problems are the headers in
drivers/, but hopefully they won't actually be needed as they add 50M
Ideally kernel packages would only use include and
arch/${targetArch}/include, but alas this is observably not the case.

master:
  * $out
    * size: 234M
    * references-closure: linux-headers, glibc, attr, acl, zlib, gcc,
      coreutils, perl, bash
merge-kernel-builds:
  * $out
    * size: 152M
    * references-closure: none
  * $dev
    * size: 57M
    * references-closure: linux-headers, glibc, zlib, gcc

So even with the non-minimal set we still beat out master. Keeping the
drivers headers would make us only slightly bigger.

Signed-off-by: Shea Levy <shea@shealevy.com>
2014-01-05 06:55:47 -05:00
Shea Levy
a589bfae17 Update and fix kernel packages to new kernel build
In most cases, this just meant changing kernelDev (now removed from
linuxPackagesFor) to kernel.dev. Some packages needed more work (though
whether that was because of my changes or because they were already
broken, I'm not sure). Specifics:

* psmouse-alps builds on 3.4 but not 3.10, as noted in the comments that
  were already there
* blcr builds on 3.4 but not 3.10, as noted in comments that were
  already there
* open-iscsi, ati-drivers, wis-go7007, and openafsClient don't build on
  3.4 or 3.10 on this branch or on master, so they're marked broken
* A version-specific kernelHeaders package was added

The following packages were removed:

* atheros/madwifi is superceded by official ath*k modules
* aufs is no longer used by any of our kernels
* broadcom-sta v6 (which was already packaged) replaces broadcom-sta
* exmap has not been updated since 2011 and doesn't build
* iscis-target has not been updated since 2010 and doesn't build
* iwlwifi is part of mainline now and doesn't build
* nivida-x11-legacy-96 hasn't been updated since 2008 and doesn't build

Everything not specifically mentioned above builds successfully on 3.10.
I haven't yet tested on 3.4, but will before opening a pull request.

Signed-off-by: Shea Levy <shea@shealevy.com>
2014-01-04 21:17:04 -05:00
Shea Levy
2c38df1c5b kernel build: limit dev output footprint
This makes the disk usage footprint of building the kernel smaller in 3
ways:

1) There is no separate kernel source derivation
2) Rather than using the entire build tree, only the output of make
modules_prepare is kept in the $dev output (plus the module symbol
versioning file generated during the build)
3) Only the subset of the source tree known to be needed for external
builds is kept in $dev

Note that while 2) is supported by official kernel documentation, I
couldn't find any source describing what we need to keep for 3). I've
started with the bare minimum (the main Makefile is called by the
Makefile generated by make modules_prepare) and we can/should add more
as needed for kernelPackages.

Signed-off-by: Shea Levy <shea@shealevy.com>
2014-01-01 23:56:24 -05:00
Shea Levy
f95d214cfd Implement generic kernel build via manual-config
This has three major benefits:

1. We no longer have two kernel build processes to maintain

2. The build process is (IMO) cleaner and cleaves more closely to
upstream. In partuclar, we use make install to install the kernel and
development source/build trees, eliminating the guesswork about which
files to copy.

3. The derivation has multiple outputs: the kernel and modules are in
the default `out' output, while the build and source trees are in a
`dev' output. This makes it possible for the full source and build tree
to be kept (which is expected by out-of-tree modules) without bloating
the closure of the system derivation.

In addition, if a solution for how to handle queries in the presence of
imports from derivations ever makes it into nix, a framework for
querying the full configuration of the kernel in nix expressions is
already in place.

Signed-off-by: Shea Levy <shea@shealevy.com>
2014-01-01 09:21:25 -05:00
Shea Levy
a87b1f36e0 manual-config: Fully general cross-compiling
In the most general case, the cross and native kernel may differ in
patches and configuration file as well as architecture, kernel target,
etc. It's probably overkill to support that case, but since it was
doable without much duplication and it will make integrating with the
existing cross-compilation support in the generic kernel I decided to
implement it anyway.

Signed-off-by: Shea Levy <shea@shealevy.com>
2013-12-31 23:09:42 -05:00
Shea Levy
784c6d320c manual-config: Put `source' before the version in the sourceRoot name
nix's version parsing treats the previous name as a package named
`linux' with version `${version}-source', when we really want a package
named `linux-source' with version `${version}'

Signed-off-by: Shea Levy <shea@shealevy.com>
2013-12-31 22:50:41 -05:00
Shea Levy
0c5776bc0f manual-config: Patch conf.c for generate-config.pl
This only affects the `oldaskconfig' make target, so it shouldn't really
affect current manual-config users, but it does make it more
straightforward to implement the generic kernel build on top of
manual-config.

Signed-off-by: Shea Levy <shea@shealevy.com>
2013-12-31 22:49:12 -05:00
Shea Levy
fe185f0a18 manual-config: Always add config query functions
If the config attrset is manually specified, we still want isYes,
isModule, etc. to work. But we let the passed in config attrset take
precedence, if for some reason the caller wants to provide their own
implementation of one or more of these functions.

Signed-off-by: Shea Levy <shea@shealevy.com>
2013-12-31 22:46:43 -05:00
Shea Levy
008992619f linux/manual-config: Cross-compiling support
With this, I was able to successfully compile a defconfig kernel for the
sheevaplug, though I didn't actually try to run it (not having a
sheevaplug myself).

For native compiles, the most significant difference is that the
platform's kernel target is built directly rather than hoping the
default make target will pull it in.

Also some stylistic improvements along the way.

Signed-off-by: Shea Levy <shea@shealevy.com>
2013-12-31 22:38:06 -05:00
William A. Kennington III
211b9a5016 linux: Update 3.10.18 -> 3.10.25 2013-12-29 07:53:23 -06:00
William A. Kennington III
811d88e94d linux: Update 3.11.8 -> 3.11.10 2013-12-29 07:53:19 -06:00
Shea Levy
76da6e6ed3 Linux 3.12.6
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-12-20 13:45:45 -05:00
Shea Levy
01a051292f Linux 3.12.5
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-12-18 12:35:07 -05:00
Eelco Dolstra
82f39bd19e linux: Fix hash 2013-12-17 13:27:03 +01:00
Eelco Dolstra
acac786868 linux: Update to 3.4.74 2013-12-16 14:46:21 +01:00
Eelco Dolstra
f74ca42ba6 linux: Update to 3.4.73 2013-12-11 14:28:37 +01:00
Shea Levy
9131b45db4 Linux 3.12.4
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-12-09 12:01:37 -05:00
Vladimír Čunát
3d3b19d767 Merge #1325: linux-3.2 and grsecurity updates 2013-12-05 23:20:18 +01:00
Shea Levy
bb9caf40dd Linux 3.12.3
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-12-05 10:21:06 -05:00
Ricardo M. Correia
61adb5962c grsecurity: Update to 3.0-3.2.53-201312021727 and 3.0-3.12.2-201312021733 2013-12-04 15:28:21 +01:00
Ricardo M. Correia
60ced497f6 linux: Update to 3.2.53 2013-12-04 15:28:20 +01:00
Eelco Dolstra
3b94410d86 linux: Update to 3.4.71 2013-12-01 18:20:39 -05:00
Shea Levy
c06361a1fc Linux 3.12: Bump
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-11-30 14:29:49 -05:00
Michael Raskin
0851ed23d8 Merge pull request #1282 from wizeman/grsec-upd
grsecurity: Update to latest version and add patch for kernel 3.12
2013-11-28 21:42:27 -08:00
Ricardo M. Correia
89789e4719 linux: Update to 3.12.1 (close #1281) 2013-11-27 21:52:51 +01:00
Ricardo M. Correia
2106191003 grsecurity: Fix module loading during boot due to path restrictions 2013-11-27 01:32:50 +01:00
Ricardo M. Correia
36955aa721 grsecurity: Update to 3.0-3.2.52-201311261307 and add patch for 3.12 2013-11-27 01:32:14 +01:00
Eelco Dolstra
139c5b5069 linux: Update to 3.4.70 2013-11-26 11:46:41 +01:00
cillianderoiste
d0ce0f836f Merge pull request #1268 from cillianderoiste/tuxonice
TuxOnIce: Add a 3.10 linux kernel with the TuxOnIce hibernation patch
2013-11-23 08:33:36 -08:00
Cillian de Róiste
a34354ef81 TuxOnIce: Add a 3.10 linux kernel with the TuxOnIce hibernation patch 2013-11-23 17:21:19 +01:00
Ricardo M. Correia
a65ecb6382 linux: Update to 3.11.8 (close #1243) 2013-11-20 22:48:12 +01:00
Eelco Dolstra
af7162b7a3 linux: Update to 3.4.69 2013-11-13 17:33:58 +01:00
Ricardo M. Correia
e8361c3523 linux: Update to 3.11.7 2013-11-09 18:46:29 +01:00
Eelco Dolstra
5098d53db1 linux: Update to 3.10.18 2013-11-06 10:31:53 +01:00
Eelco Dolstra
07ccfe6af8 linux: Update to 3.4.68 2013-11-06 10:29:27 +01:00
Shea Levy
d2de64cc66 Fix broken meta.platforms for manual-config kernel
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-11-05 07:19:38 -05:00
Eelco Dolstra
c88055e1a2 Set meta.hydraPlatforms instead of meta.platforms for some packages 2013-11-05 00:06:10 +01:00
Eelco Dolstra
a2cbc77e4f Only show/build a package on the platforms listed in meta.platforms
The function ‘mkDerivation’ now checks whether the current platform
type is included in a package's meta.platform field.  If not, it
throws an exception:

  $ nix-build -A linux --argstr system x86_64-darwin
  error: user-thrown exception: the package ‘linux-3.10.15’ is not supported on ‘x86_64-darwin’

These packages also no longer show up in ‘nix-env -qa’ output.  This
means, for instance, that the number of packages shown on
x86_64-freebsd has dropped from 9268 to 4764.

Since meta.platforms was also used to prevent Hydra from building some
packages, there now is a new attribute meta.hydraPlatforms listing the
platforms on which Hydra should build the package (which defaults to
meta.platforms).
2013-11-05 00:06:10 +01:00
Shea Levy
268bb64b68 Linux 3.12 release
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-11-03 20:14:48 -05:00
Shea Levy
504ea7662c Remove EOL'd kernels
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-11-01 11:10:05 -04:00
Ricardo M. Correia
57e9fd8bcf grsecurity: Update to 2.9.1-3.2.52-201310271550 2013-10-29 13:32:53 +01:00
Ricardo M. Correia
69513d1480 linux: Update to 3.2.52 2013-10-29 13:32:53 +01:00
Eelco Dolstra
8c65a2a181 linux: Update to 3.4.67 2013-10-24 14:52:09 +02:00
Aristid Breitkreuz
81ef604ae0 linux 3.11.6 2013-10-20 11:42:37 +02:00
Ricardo M. Correia
d32636dac4 grsecurity: Update to 2.9.1-3.2.51-201309281102 2013-10-20 08:14:28 +03:00
Ricardo M. Correia
90a2341300 grsecurity: generate linuxPackages and declare that apparmor is included 2013-10-20 08:14:28 +03:00
Evgeny Egorochkin
73449533ba linux 3.12: fix url to match hash 2013-10-19 10:52:16 +03:00
Eelco Dolstra
fc593e719d linux: Update to 3.4.66
CVE-2013-2015
2013-10-14 12:52:22 +02:00
Mathijs Kwik
ab94b3b863 linux-3.0: upgrade to 3.0.99 2013-10-06 20:17:02 +02:00
Mathijs Kwik
c242863da8 linux-3.4: upgrade to 3.4.65 2013-10-06 20:17:01 +02:00
Mathijs Kwik
07fd8c87ab linux-3.10: upgrade to 3.10.15 2013-10-06 20:17:01 +02:00
Mathijs Kwik
2af2f26034 linux-3.11: upgrade to 3.11.4 2013-10-06 20:17:01 +02:00
Mathijs Kwik
40826e309f linux-3.12: upgrade to 3.12-rc3 2013-10-06 20:17:01 +02:00
Mathijs Kwik
6c9a267745 linux-3.10: upgrade to 3.10.14 2013-10-04 09:07:45 +02:00
Mathijs Kwik
126403132d linux-3.11: upgrade to 3.11.3 2013-10-04 09:07:45 +02:00
Eelco Dolstra
02c11554d7 linux: Update to 3.4.63 2013-09-30 11:29:27 +02:00
Mathijs Kwik
9e76aa91b1 linux-3.11: upgrade to 3.11.2 2013-09-28 22:25:41 +02:00
Eelco Dolstra
8a182718ca splashutils: Remove 2013-09-26 18:03:43 +02:00
aszlig
2e89b40634
Merge pull request #1010 from offlinehacker.
Although this is a release canidate version of kernel 3.12, there are
reasons for merging this anyway, as discussed in #1010 and #1006.

Thanks to @offlinehacker for this and the initial pull request.
2013-09-25 14:05:33 +02:00
Jaka Hudoklin
69f30432dd kernel: add linux 3.12-rc2 2013-09-25 12:49:49 +02:00
Mathijs Kwik
1751f77b6a linux-3.11: upgrade to 3.11.1 2013-09-18 14:37:38 +02:00
Eelco Dolstra
7856ba881a linux: Enable proper blkio controller support
Having BLK_CGROUP is not enough, you need BLK_DEV_THROTTLING or
CFQ_GROUP_IOSCHED to do anything useful.
2013-09-17 16:00:36 +02:00
Eelco Dolstra
2d14789920 linux: Update to 3.4.62 2013-09-16 17:51:18 +02:00
Ricardo M. Correia
342fcfc82f grsecurity: Update to 2.9.1-3.2.51-201309101928 2013-09-13 05:13:25 +02:00
Ricardo M. Correia
72f49af65b linux: Update to 3.2.51 2013-09-13 05:13:18 +02:00
Eelco Dolstra
89fa23c43d linux: Update to 3.4.61 2013-09-12 10:38:38 +02:00
Eelco Dolstra
207aa56201 linux: Update to 3.4.60 2013-09-05 11:11:02 +02:00
Mathijs Kwik
27a810346a Revert "linux: really provide /proc/config.gz"
This reverts commit 68ce9e91e1.

/proc/config.gz is available after "modprobe configs"
and in
/run/booted-system/kernel-modules/config
2013-09-04 09:29:00 +02:00
Mathijs Kwik
03c9a1fb33 linux 3.11
works fine for me, but nvidia binary driver fails once again
2013-09-04 09:29:00 +02:00
Mathijs Kwik
927f32e87c linux-3.10: upgrade to 3.10.10 2013-08-31 12:09:17 +02:00
Rickard Nilsson
c44d8970ea raspberrypi-kernel: Updated to latest version as of 20130826 (rev 7849605f5a) 2013-08-27 12:30:47 +02:00
Eelco Dolstra
a1c74c5603 linux: Update to 3.4.59 2013-08-26 22:55:54 +02:00
Mathijs Kwik
b9fff8a34b linux-3.10: upgrade to 3.10.9 2013-08-21 11:22:33 +02:00
Mathijs Kwik
273689bcbd linux-3.10: remove the btrfs send patch
it helps, but is incomplete.
more fixes are coming, but including these would change too much
generic btrfs code, which might cause trouble for others.

so the best advice is not to use btrfs send yet and wait for 3.11 or 3.12
2013-08-19 07:04:18 +02:00
Bjørn Forsman
68ce9e91e1 linux: really provide /proc/config.gz
Currently there is no /proc/config.gz, even though the configuration
indicates it. This fixes it.
2013-08-16 23:12:07 +02:00
Eelco Dolstra
5cb688eb52 linux: Update to 3.4.58 2013-08-16 12:05:42 +02:00
Mathijs Kwik
b85984d840 linux-3.10: upgrade to 3.10.7 2013-08-15 14:06:27 +02:00
Evgeny Egorochkin
339e1d94c6 Turning off PAE support which makes kernel unbootable on older hardware causes CRASH_DUMP option to
disappear, so make it optional.
2013-08-12 05:32:11 +03:00
Evgeny Egorochkin
27dcd771c3 Merge pull request #802 from wizeman/kernel_update
Kernel update
2013-08-11 15:08:45 -07:00
Mathijs Kwik
59025453e7 linux-3.10: backport a fix for "btrfs send"
It has been submitted for inclusion in mainline, so it will probably
make it into 3.11 (or 3.12 as 3.11 is fairly close to release).

It is very local, only affecting people who use the "send" feature.
Without it, send is unstable/unsafe to use incrementally.

It can probably be applied to 3.9 and 3.8 as well, but as I only
tested it against 3.10, so I didn't bother.
2013-08-10 13:53:17 +02:00
Eelco Dolstra
d9a4706f73 linux: Use kmod instead of module-init-tools 2013-08-09 18:48:51 +02:00
Eelco Dolstra
912146d764 linux: Update to 3.4.56, 3.10.5 2013-08-06 12:40:48 +02:00
Eelco Dolstra
3a4ef26397 Remove Linux 3.8 (EOL) 2013-08-06 12:39:50 +02:00
Ricardo M. Correia
36c2711f8b linux: update grsecurity patch 2013-08-06 02:21:00 +00:00
Ricardo M. Correia
97056a0620 linux: properly parse config choice when it's new 2013-08-06 02:20:48 +00:00
Ricardo M. Correia
2208c360ac linux: Update to 3.2.50 2013-08-05 18:19:48 +00:00
Eelco Dolstra
f155a35d7d Move kernelExtraConfig to common-config.nix (for x86)
It's bad to have the kernel config scattered across two places.  (This
should also be done for the other architectures.)

Also, restore Xen and KVM guest support in Linux 3.10.
2013-08-01 14:35:31 +02:00
Eelco Dolstra
14ca9c0bf1 linux: Include "NixOS" in "uname -v" 2013-08-01 01:40:41 +02:00
Eelco Dolstra
d1de0e2d6d linux: Enable detection of hung tasks 2013-08-01 01:40:41 +02:00
Eelco Dolstra
f2f00c56e4 linux: Enable stack protector
This may prevent exploitation of buffer overflows.
2013-08-01 01:40:41 +02:00
Eelco Dolstra
c564d012f8 Style fix 2013-08-01 01:40:41 +02:00
Eelco Dolstra
b976e00ff2 linux: Remove obsolete AUFS 3.7 patch 2013-08-01 01:40:40 +02:00
Eelco Dolstra
ff99631753 linux: Remove CIFS timeout patch
We longer use CIFS in the VM tests so we don't need this anymore.
2013-08-01 01:40:40 +02:00
Eelco Dolstra
956d71f843 linux: Remove some unused patches 2013-08-01 01:40:40 +02:00
Eelco Dolstra
bc8186be1e linux: Disable /dev/kmem
See e.g.
  https://wiki.ubuntu.com/Security/Features#A.2BAC8-dev.2BAC8-kmem_disabled
2013-08-01 01:40:40 +02:00
Eelco Dolstra
7ce325f3e0 Unify the Linux kernel configurations
Having N different copies of the NixOS kernel configuration is bad
because these copies tend to diverge.  For instance, our 3.10 config
lacked some modules that were enabled in older configs, probably
because the 3.10 config had been copied off an earlier version of some
older kernel config.

So now there is a single kernel config in common-config.nix.  It has a
few conditionals to deal with new/removed kernel options, but
otherwise it's pretty straightforward.

Also, a lot of cut&paste boilerplate between the kernel Nix
expressions is gone (such as preConfigure).
2013-08-01 01:40:40 +02:00
Eelco Dolstra
dccbdcf520 linux: Don't put the kernel version in meta 2013-08-01 01:40:40 +02:00
Eelco Dolstra
3c462ded97 linux: Update to 3.2.49, 3.4.55 2013-07-30 16:52:12 +02:00
Shea Levy
2e57a16219 Linux 3.10.4
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-07-28 20:16:16 -04:00
Mathijs Kwik
ac91adf4e3 linux-3.10: upgrade to 3.10.3 2013-07-26 07:18:39 +02:00
Eelco Dolstra
1386036457 linux: Update to 3.4.54 2013-07-23 22:35:49 +02:00
Rob Vermaas
af2a127551 Add linux 3.2.48 with grsecurity patches 2013-07-22 21:44:31 +02:00
Ricardo M. Correia
22689567ed apparmor: Update to kernel 3.4 series (the current default) 2013-07-22 18:03:26 +02:00
Aristid Breitkreuz
38a2056f70 fix bug in perf-linux installation, oops 2013-07-21 19:25:05 +02:00
Eelco Dolstra
4cc4ed6d2d linux-3.7: Remove
It's EOL.
2013-07-16 13:45:23 +02:00
Mathijs Kwik
5dbe2627a2 linux-3.9: upgrade to 3.9.10 (EOL) 2013-07-15 17:25:13 +02:00
Eelco Dolstra
66b2ff1074 linux: Update to 3.4.53 2013-07-15 14:33:27 +02:00
Shea Levy
e820a54431 Linux 3.10.1
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-07-13 15:15:50 -04:00
Mathijs Kwik
ad8a3b86ab linux-3.10: forward-port 9p speedup from 3.9 2013-07-07 22:50:12 +02:00
Mathijs Kwik
f43003237a linux-3.9: upgrade to 3.9.9 2013-07-07 22:46:47 +02:00
Eelco Dolstra
0e386d0c13 VM builds: Use 9p/virtfs instead of CIFS
9p (with caching enabled) is much faster than CIFS and doesn't require
Samba or virtual networking.  For instance, building GNU Hello with
CIFS takes ~323s on my laptop, but with 9p it takes 54s.

More measurements will be needed to see if "cache=fscache" is really
faster than "cache=loose" (the former seems to be a little bit
faster).
2013-07-05 00:17:04 +02:00
Aristid Breitkreuz
c222c31745 do not patch non-existent bash_completion for old kernels 2013-07-04 20:13:52 +02:00
Aristid Breitkreuz
f925c5ae7f fix bash completion for perf 2013-07-04 20:13:52 +02:00
Eelco Dolstra
ebe81d17d7 linux: Update to 3.2.48, 3.4.51 2013-07-02 14:40:08 +02:00
Shea Levy
61fef700ee On linux-3.10, build in #! script support
Starting with 3.10, #! script handling can be built modularly (or not
at all). By default the nixpkgs builder sets everything modular, but
since our initird init is a #! script this creates a chicken-and-egg
problem on NixOS.

Signed-off-by: Shea Levy <shea@shealevy.com>
2013-07-01 14:53:56 -04:00
Mathijs Kwik
fc8c97f5d9 linux-3.9: upgrade to 3.9.8 2013-07-01 07:52:14 +02:00
Shea Levy
0d8025c612 Linux 3.10
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-06-30 20:55:21 -04:00
Rickard Nilsson
4800a33b88 Linux 3.4: Doesn't support CONFIG_RC_DEVICES option 2013-06-27 12:13:27 +02:00
Rickard Nilsson
489040bf58 Linux 3.2: Doesn't support CONFIG_RC_DEVICES option 2013-06-25 22:17:13 +02:00
Rickard Nilsson
b7ccfc258a Linux 3.2-3.9: Add CONFIG_RC_DEVICES=y, to enable IR devices that can be used by lirc/devinput 2013-06-25 20:13:11 +02:00
Mathijs Kwik
c913054748 linux-3.2: upgrade to 3.2.47 2013-06-23 17:00:06 +02:00
Shea Levy
a3bf1ca3b1 Linux 3.9.7
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-06-21 17:21:03 -04:00
Aristid Breitkreuz
c63f00c337 linux 3.9.6 2013-06-15 19:32:20 +02:00
Mathijs Kwik
fc5946ac4b linux-3.9: upgrade to 3.9.5 2013-06-10 08:36:04 +02:00
Eelco Dolstra
cb5b198b51 linux: Update to 3.2.46 2013-06-04 11:00:19 +02:00
Mathijs Kwik
91cf1716f4 linux-3.9: upgrade to 3.9.4 2013-06-04 07:50:59 +02:00
Mathijs Kwik
d7911372a8 linux-3.4: upgrade to 3.4.47 2013-06-04 07:50:59 +02:00
Mathijs Kwik
39e0eb9420 linux-3.0: upgrade to 3.0.80 2013-06-04 07:50:59 +02:00
Michael Raskin
da24027c25 Linux kernel: update to 3.9.3 2013-05-20 23:36:49 +04:00
Lluís Batlle i Rossell
c6df92a414 Making the linux rpi kernel not attempted to build by hydra 2013-05-20 17:43:26 +02:00
Domen Kožar
378d975b88 Merge pull request #505 from MarcWeber/submit/linux-3.8-dvb-support
without these two settings my USB dvb-t stick doesn't work
2013-05-16 03:16:23 -07:00
Eelco Dolstra
501833cf55 linux: Re-enable the memory resource controller
We accidentally lost this in Linux >= 3.5 because the kernel options
were renamed.  (Probably an argument for not using "?" in the kernel
config...)
2013-05-15 14:53:15 +02:00
Rob Vermaas
000fddd10e Fix hash for linux 3.2.45 2013-05-15 08:37:33 +00:00
David Guibert
880a386c57 update linux 3.2.45 2013-05-14 21:33:14 +02:00
Eelco Dolstra
a1a725d20d linux: Set AUDIT_LOGINUID_IMMUTABLE
This prevents faking the loginuid even by root.
2013-05-13 11:53:00 +02:00
David Guibert
0e98cd4a65 update linux versions 2013-05-12 20:28:45 +02:00
Mathijs Kwik
e18f4eb50f apparmor patch: should have a name, broke nixpkgs tarball 2013-05-12 13:11:49 +02:00
Evgeny Egorochkin
8d7e1a79cc AppArmor: add a sample patched kernel. 2013-05-11 08:50:34 +03:00
Mathijs Kwik
1264fafe98 linux-3.4: upgrade to 3.4.44 2013-05-08 22:33:05 +02:00
Mathijs Kwik
7d2f148c53 linux-3.0: upgrade to 3.0.77 2013-05-08 22:33:05 +02:00
Michael Raskin
14d87f3a9e Update Linux versions 2013-05-08 10:52:46 +04:00
Marc Weber
b5e6e1b78c without these two settings my USB dvb-t stick doesn't work 2013-05-06 05:15:34 +02:00
Mathijs Kwik
d8489d37ed linux-3.9: upgrade to 3.9.0 2013-04-30 09:27:02 +02:00
Mathijs Kwik
b18c7b5891 linux-3.8: upgrade to 3.8.10 2013-04-30 09:27:02 +02:00
David Guibert
008bb6935c update kernels 3.0, 3.2, 3.4, 3.8 and 3.9-rc 2013-04-26 09:12:35 +02:00
Mathijs Kwik
61b65080d9 linux-3.0: upgrade to 3.0.74 2013-04-19 14:53:00 +02:00
Mathijs Kwik
384de84023 linux-3.4: upgrade to 3.4.41 2013-04-19 14:53:00 +02:00
Michael Raskin
181fb52b14 Update Linux 3.8 2013-04-18 19:22:54 +04:00
Michael Raskin
873fa411b0 Update Linux 3.9rc 2013-04-18 19:22:54 +04:00
Mathijs Kwik
56afb97e87 linux-3.8: upgrade to 3.8.7 2013-04-14 00:35:39 +02:00
Mathijs Kwik
e20d9d0a97 linux-3.4: upgrade to 3.4.40 2013-04-14 00:35:39 +02:00
Mathijs Kwik
407f07e7e6 linux-3.0: upgrade to 3.0.73 2013-04-14 00:35:39 +02:00
Mathijs Kwik
7ab70b3a41 linux-3.2: upgrade to 3.2.43 2013-04-12 11:40:33 +02:00
Mathijs Kwik
a99ea7a0ee linux-3.0: update to 3.0.72 2013-04-06 20:45:30 +02:00
Mathijs Kwik
4eff34e602 linux-3.4: upgrade to 3.4.39 2013-04-06 20:45:29 +02:00
Mathijs Kwik
8092bc2dd7 linux-3.8: upgrade to 3.8.6 2013-04-06 20:39:36 +02:00
Mathijs Kwik
4154fbfabd linux-3.9: upgrade to 3.9-rc4 2013-04-04 22:18:07 +02:00
Mathijs Kwik
6ef9c6b1fc linux-3.8: upgrade to 3.8.5 2013-04-04 22:18:07 +02:00
Mathijs Kwik
d0c6308da7 linux-3.4: upgrade to 3.4.38 2013-04-04 22:18:07 +02:00
Mathijs Kwik
37de48e43d linux-3.0: upgrade to 3.0.71 2013-04-04 22:18:06 +02:00
Lluís Batlle i Rossell
bee99995d9 linux: update to 3.8.5 2013-03-31 09:27:40 +02:00
Eelco Dolstra
df92d96871 linux: Update to 3.2.42 2013-03-28 13:10:38 +01:00
Eelco Dolstra
f0d45e2e25 Linux kernel: Enable CONFIG_FHANDLE
This enables the open_by_handle_at(2) and name_to_handle_at(2)
syscalls.  Systemd kind of requires this.
2013-03-27 23:00:02 +01:00
Eelco Dolstra
916c1adb84 Delete all kernels older than 2.6.39
Systemd doesn't support those kernels, so there is no point in keeping
them around.
2013-03-27 23:00:02 +01:00
Shea Levy
4fa4ab3a6e Partially revert my recent kernelPackages changes
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>
2013-03-24 07:45:00 -04:00
Mathijs Kwik
1f43786616 linux-3.0: upgrade to 3.0.70 2013-03-22 00:00:05 +01:00
Mathijs Kwik
7560812cfa linux-3.2: upgrade to 3.2.41 2013-03-22 00:00:05 +01:00
Mathijs Kwik
b7bb81bc1f linux-3.4: upgrade to 3.4.37 2013-03-22 00:00:05 +01:00
Mathijs Kwik
42d29c2afb linux-3.8: upgrade to 3.8.4 2013-03-22 00:00:04 +01:00
Michael Raskin
2d2123b8d7 Update Linux 3.9-rc to rc3 2013-03-19 13:34:57 +04:00
Michael Raskin
6922ec9258 Linux-3.9-rc2 2013-03-16 16:27:19 +04:00
Michael Raskin
b5b4a4a5cf Linux 3.8: update to 3.8.3 2013-03-16 10:51:03 +04:00
Eelco Dolstra
262c21ed46 Enable __ignoreNulls globally 2013-03-07 19:42:01 +01:00
Eelco Dolstra
f5052a8679 Fix extraBuildNativeInputs reference 2013-03-07 19:41:40 +01:00
Eelco Dolstra
674c51af3c Merge remote-tracking branch 'origin/master' into stdenv-updates 2013-03-07 19:33:52 +01:00
Michael Raskin
3d28751740 Linux 3.9-rc1: set correct modDirVersion 2013-03-07 09:12:49 +04:00
Michael Raskin
b72134dc11 Linux: Add 3.9-rc1 as lowPrio (it has a regression fix 3.8.2 lacks) 2013-03-06 23:59:49 +04:00
Mathijs Kwik
060ba43e8f linux-3.8: upgrade to 3.8.2 2013-03-04 22:40:33 +01:00
Mathijs Kwik
c7c6592f6f linux-3.7: upgrade to 3.7.10 2013-03-04 22:40:23 +01:00
Mathijs Kwik
01c5d2d702 linux-3.4: upgrade to 3.4.35 2013-03-04 22:40:23 +01:00
Mathijs Kwik
04e883e496 linux-3.0: upgrade to 3.0.68 2013-03-04 22:40:22 +01:00
Michael Raskin
3b5b1be3cf Linux 3.8.1 2013-03-02 20:16:08 +04:00
Shea Levy
0bdd926a32 linux/manual-config: put build and source trees into a separate 'dev' output.
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.
2013-03-02 09:54:08 -05:00
Shea Levy
b90b62e33b linux/manual-config: Move configfile symlinking to configurePhase.
It makes more semantic sense there than in unpackPhase, as that symlink is _how_ we configure the kernel
2013-03-02 07:55:07 -05:00
Shea Levy
8ce1295ad3 linux/manual-config: ignore nulls.
There's no need to set the postFixup env var at all if we're not modular.
2013-03-02 07:51:12 -05:00
Vladimír Čunát
26af997d41 Merge branch 'master' into stdenv-updates
Conflicts (simple):
	pkgs/applications/networking/browsers/chromium/default.nix
	pkgs/development/libraries/libsoup/default.nix
	pkgs/os-specific/linux/kernel/manual-config.nix
	pkgs/os-specific/linux/qemu-kvm/default.nix
2013-03-02 10:41:53 +01:00
aszlig
94fe64b3eb
manual-kernel: Add bc to buildNativeInputs.
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>
2013-02-28 18:57:03 +01:00
Eelco Dolstra
bf8f39ff9b linux: Update to 3.2.39
CVE-2013-0228
2013-02-27 14:47:40 +01:00
Peter Simons
5f32207dfc Merge remote-tracking branch 'origin/master' into stdenv-updates. 2013-02-24 19:27:08 +01:00
Lluís Batlle i Rossell
17d289498f linux: Typo: CFG80211_WEXT 2013-02-24 12:07:14 +01:00
Lluís Batlle i Rossell
0961084afb linux 3.7, 3.8: Enabling CFG80211_WEXT (for ipw2200)
My computer with a ipw2200 nic needs that, to have the
ipw2200 driver.
2013-02-23 15:40:20 +01:00
Shea Levy
afe3758b1b Remove myself from kernel maintainers.
I use manual config now.
2013-02-21 12:39:25 -05:00
Shea Levy
acd4299e75 Merge branch 'master' into stdenv-updates
Conflicts:
	pkgs/applications/networking/browsers/chromium/default.nix
	pkgs/top-level/all-packages.nix

Merge conflicts seemed trivial, but a look from viric and aszlig would be nice.
2013-02-21 11:13:30 -05:00
David Guibert
059c30bf9d add kernel 3.8 2013-02-21 08:53:16 +01:00
Shea Levy
aacca1902c Merge branch 'upstream-master' into stdenv-updates 2013-02-19 10:09:39 -05:00
Shea Levy
a4d5e4a9e2 Linux 3.7.9 2013-02-18 11:35:22 -05:00
Shea Levy
0e4c3a1fc9 Linux 3.4.32 2013-02-18 11:34:42 -05:00
Shea Levy
f4a51bbdd6 Linux 3.0.65 2013-02-18 11:34:19 -05:00
Eelco Dolstra
2aa6f262cb Merge remote-tracking branch 'origin/master' into stdenv-updates 2013-02-15 13:36:34 +01:00
Shea Levy
af26af6fc7 Remove EOL'd Linux 3.6 2013-02-14 14:33:42 -05:00
Shea Levy
0ad870eb5e Remove EOL'd Linux 3.5 2013-02-14 14:32:44 -05:00
Shea Levy
c23084906b Remove EOL'd Linux 3.3 2013-02-14 14:30:31 -05:00
Shea Levy
0178a3b7b1 Remove EOL'd Linux 3.1 2013-02-14 14:28:53 -05:00
Shea Levy
ca59489e2b Linux 3.7.8 2013-02-14 14:25:19 -05:00
Shea Levy
e531913aca Linux 3.4.31 2013-02-14 14:25:11 -05:00
Shea Levy
2d23eb3a19 Linux 3.0.64 2013-02-14 14:24:57 -05:00
Lluís Batlle i Rossell
00251af191 SUNRPC_DEBUG doesn't work on linux 3.3
It's as if the option isn't there.

http://hydra.nixos.org/build/4015233
2013-02-14 20:08:08 +01:00
Shea Levy
3a8631201e Linux 3.4.30 2013-02-11 12:57:40 -05:00
Shea Levy
45e877f706 Linux 3.0.63 2013-02-11 12:53:43 -05:00
Shea Levy
170b0c9e2e Linux 3.7.7 2013-02-11 12:34:14 -05:00
Eelco Dolstra
76a5e89a1c linux: Update to 3.2.38 2013-02-11 15:34:30 +01:00
Lluís Batlle i Rossell
c4216ed1a0 linux kernel: enabling SUNRPC_DEBUG
Much easier debugging of nfs issues.

If I understand correctly, it was enabled in 3.2 and below; I enable it for
next kernels.
2013-02-07 16:21:03 +01:00
Shea Levy
5336c82882 Linux 3.7.6 2013-02-04 06:58:19 -05:00
Shea Levy
249b3ea5ef Linux 3.4.29 2013-02-04 06:58:07 -05:00
Shea Levy
c32435381e Linux 3.0.62 2013-02-04 06:57:46 -05:00
Lluís Batlle i Rossell
45de66b2b1 Update the raspberry pi kernel to one newer. 2013-01-29 20:17:32 +01:00
Eelco Dolstra
97c5ab3a6d linux-2.6.32-xen: Remove
Hasn't built in a long time and is obsolete anyway.
2013-01-29 12:43:53 +01:00
Shea Levy
2afdaf0e82 Linux 3.7.5 2013-01-28 00:12:35 -05:00
Shea Levy
4bf80b462d Linux 3.4.28 2013-01-28 00:12:24 -05:00
viric
39fa2f72ab Merge pull request #253 from rickynils/fscache
linux 3.2-3.7: enable NFS_FSCACHE and CIFS_FSCACHE
2013-01-27 12:39:25 -08:00
Rickard Nilsson
1886d1db6a Merge remote-tracking branch 'upstream/master' into stdenv-updates 2013-01-20 16:53:21 +01:00
David Guibert
d54c8c4b83 update kernels: 3.0.59, 3.4.26 and 3.7.3 2013-01-18 08:31:25 +01:00
Eelco Dolstra
8faee15126 linux: Update to 3.2.37 2013-01-17 17:21:31 +01:00
Eelco Dolstra
5bb548d2e4 Merge remote-tracking branch 'origin/master' into stdenv-updates 2013-01-17 14:19:14 +01:00
Mathijs Kwik
2d56a2cc15 linux-3.7: upgrade to 3.7.2 2013-01-13 14:30:55 +01:00
Mathijs Kwik
91d4d56703 linux-3.4: upgrade to 3.4.25 2013-01-13 14:30:55 +01:00
Mathijs Kwik
cf546347e5 linux-3.0: upgrade to 3.0.58 2013-01-13 14:30:55 +01:00
Rickard Nilsson
97d6292deb linux 3.2-3.7: enable NFS_FSCACHE and CIFS_FSCACHE
NFS_FSCACHE and CIFS_FSCACHE are required to enable the local cache support for
NFS and CIFS (the 'fsc' mount option). The reasoning for enabling it from 3.2
and forward is that at least Ubuntu 12.04 (linux 3.2) has it turned on. Could
probably be enabled for earlier kernels too.
2013-01-09 18:14:54 +01:00
Peter Simons
9e9cd7b529 Merge branch 'master' into stdenv-updates. 2013-01-04 21:00:53 +01:00
Eelco Dolstra
99897218f4 linux: Update to 3.2.36 2013-01-04 14:19:00 +01:00
Lluís Batlle i Rossell
67aa9243f0 Merge branch 'stdenv-updates' into pi-stdenv-updates
Conflicts:
	pkgs/development/compilers/gcc/4.7/default.nix

Trivial.
2012-12-28 23:30:53 +01:00
Lluís Batlle i Rossell
b58780c43d Merge remote-tracking branch 'eelco/master' into stdenv-updates
Conflicts:
	pkgs/development/compilers/gcc/4.7/default.nix

Trivial solution.
2012-12-28 23:28:16 +01:00
Lluís Batlle i Rossell
719ba63004 Merge branch 'stdenv-updates' into pi-stdenv-updates
Conflicts:
	pkgs/development/compilers/gcc/4.6/default.nix
	pkgs/development/compilers/gcc/4.7/default.nix

The 4.7 had some weird parameters added in crossAttrs; I've removed
them, but I don't understand where they come from.
2012-12-28 20:14:01 +00:00
Eelco Dolstra
ab3eeabfed Rename buildNativeInputs -> nativeBuildInputs
Likewise for propagatedBuildNativeInputs, etc.  "buildNativeInputs"
sounds like an imperative rather than a noun phrase.
2012-12-28 19:20:09 +01:00
Eelco Dolstra
5be0a9acd7 Rename hostDrv -> crossDrv, buildDrv -> nativeDrv
This is for consistency with terminology in stdenv (and the terms
"hostDrv" and "buildDrv" are not very intuitive, even if they're
consistent with GNU terminology).
2012-12-28 19:08:19 +01:00
Lluís Batlle i Rossell
ab2520c383 Adding linux-3.6-rpi
I picked the change from
7b4d69eeff
2012-12-27 21:29:56 +00:00
Shea Levy
9247552a91 Linux 3.7.1 2012-12-17 17:45:01 -05:00
Shea Levy
baa5ebfbdf Linux 3.0.57 2012-12-17 17:43:02 -05:00
Shea Levy
55196223c7 Linux 3.4.24 2012-12-17 17:42:38 -05:00
Shea Levy
cc12516cf0 Linux 3.6.11 2012-12-17 17:33:44 -05:00
Lluís Batlle i Rossell
faf821e501 Adding USB cameras to linux 3.7
Details changed since the 3.6 config to get this enabled.
2012-12-17 11:52:47 +01:00
aszlig
639edcb829
manual-kernel: Fix handling spaces in readConfig.
The previos version did a for loop over the output of set, which spits out _all_
defined variables and their contents. This not only is dangerous if there is a
variable starting with CONFIG_ but also can't handle whitespace, as the IFS is
set to any (horizontal _and_ vertical) whitespace by default.

So, imagine (actually don't imagine, something like this is the case in a lot of
kernel configuration files) you have the following variable:

CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-rdi -fcall-saved-rsi ..."

A loop with for and the default IFS would result in the following variable
pieces:

0: CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-rdi
1: -fcall-saved-rsi
2: ..."

This obviously leads to the problem that this config variable is being cut off
at the first whitespace.

Another downside of this approach is that set not only returns variables but
functions as well. This could lead to quite a lot of unexpected behaviour and
confusion.

So the new approach doesn't source the kernel configuration anymore but uses
`read` to parse the file line-by line, setting IFS to '=', thus splitting all
configuration lines into key/value pairs.

Using parameter expansion, we ensure that we only read lines starting with
"CONFIG_". This particularily has the advantage of not being bash-specific,
should we choose to change to a different default shell someday.

Now, after we got a correct "CONFIG_" line, we're using a temporary variable to
split off the first quote from the result. Particularily the reason behind this
is shell compatibility again, as ${${foo#"}%"} only works in Bash, Zsh and
whatnot but not in plain SH.

And within the next line we obviously insert the no_firstquote variable without
it's last quote removed.

But, what about escaping?

First of all, if we'd just eval the $val variable, we would correctly unescape
the value, but this has the downside that variables within the content would be
expanded, for example look at this:

CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"

Well, obviously this is a bad example at the Nix sense, but just to show that
variables within kernel configuration entries aren't impossible.

And second, which would have been a show stopper if \" would be within $val: It
simply would end up being an invalid Nix expression, because \" would end up as
a ploin " within a double quoted string.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2012-12-13 22:54:57 +01:00
Mathijs Kwik
caf561d41a aufs3: upgrade to 1210 release, add linux-3.7 support 2012-12-13 14:00:28 +01:00
Shea Levy
9ddd1cc78b Linux 3.7
Kernel configuration succeeds, I'll let hydra test the build
2012-12-11 11:57:04 -05:00
Shea Levy
ce5ba30f64 Linux 3.6.10 2012-12-10 19:26:36 -05:00
Shea Levy
ed994dcbe2 Linux 3.4.23 2012-12-10 19:26:20 -05:00
Shea Levy
81a856c878 Linux 3.0.56 2012-12-10 19:25:00 -05:00
Eelco Dolstra
88ca46bfa0 linux: Update to 3.2 2012-12-07 13:24:40 +01:00