Commit graph

2129 commits

Author SHA1 Message Date
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
Rickard Nilsson 6d8109555e Add legacy version 304.64 of the Nvidia driver
The current 310.x version of the Nivida driver has dropped support
for some cards (for example 6200LE).
2012-12-11 11:33:40 +01: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
Jack Cummings 462b2b5d7f ztest: fix hardcoded paths 2012-12-04 14:08:34 -08:00
Mathijs Kwik fe070086fb linux-3.6: upgrade to 3.6.9 2012-12-04 12:02:36 +01:00
Mathijs Kwik 38740214cb linux-3.4: upgrade to 3.4.21 2012-12-04 12:02:36 +01:00
Mathijs Kwik 47362f67ea linux-3.0: upgrade to 3.0.54 2012-12-04 12:02:36 +01:00
Michael Raskin 51bf29de63 Upstream tracking files for asymptote and fbterm 2012-12-04 14:55:19 +04:00
Michael Raskin 2ab2b27e93 Update FBTerm to current URL of tarball 2012-12-04 11:47:40 +04:00
aszlig 9938f5267a
alsa-plugins: Update to upstream version 1.0.26.
Add alsa.cybermirror.org as an alternative URL because at the time of this
commit, ftp.alsa-project.org wasn't available.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2012-12-03 11:10:17 +01:00
Eelco Dolstra 2122adcdd1 systemd: Update to 196
Main change is that systemd now has its own PCI/USB IDs database, so
it no longer depends on pciutils/usbutils.
2012-11-29 18:50:07 +01:00
Eelco Dolstra 59e979177d Remove duplicate tcp-wrappers package 2012-11-29 15:26:13 +01:00
Eelco Dolstra 79725bb5bc Mark some packages as low priority and disambiguate some others 2012-11-29 15:26:13 +01:00
Eelco Dolstra 5553546c21 Remove a bunch of unreferenced files
Plus a small number of obsolete packages (like old versions of qemu).
2012-11-29 13:43:37 +01:00
Jack Cummings 4775e71049 Need pthread_cancel for zdb to work properly. Add -lgcc_s. 2012-11-26 21:32:24 -08:00
Shea Levy 9b0879bf85 Linux 3.6.8 2012-11-26 15:42:07 -05:00
Shea Levy d4d1100123 Linux 3.4.20 2012-11-26 15:41:55 -05:00
Shea Levy 1180478089 Linux 3.0.53 2012-11-26 15:37:06 -05:00
Eelco Dolstra e31cd88d9e nvidia-x11: Update to 310.19 2012-11-23 11:11:01 +01:00
Peter Simons c5f9242cb6 iwlwifi-6000g2a-ucode: update to version 18.168.6.1 2012-11-18 13:20:46 +01:00
Mathijs Kwik 3ee85e3a8d linux-3.6: upgrade to 3.6.7 2012-11-18 11:13:04 +01:00
Mathijs Kwik 6a46699855 linux-3.4: upgrade to 3.4.19 2012-11-18 11:13:04 +01:00
Mathijs Kwik 0404c409cc linux-3.2: upgrade to 3.2.34 2012-11-18 11:13:04 +01:00
Mathijs Kwik d45b239dcc linux-3.0: upgrade to 3.0.52 2012-11-18 11:13:03 +01:00
Mathijs Kwik f215bda5b4 linux-2.6.32: upgrade to 2.6.32.60 2012-11-18 11:13:03 +01:00
Cillian de Róiste 3aef242cc0 Update xf86-video-nested to work on current NixOS Xorg 2012-11-17 20:03:34 +01:00
David Guibert 085825bc3c spl: remove useless patch 2012-11-15 09:13:03 +01:00
David Guibert 2f98255be8 zfs: remove useless patch 2012-11-15 09:02:27 +01:00
David Guibert 87d2a82628 update spl/zfs to 0.6.0-rc12 2012-11-15 08:58:34 +01:00
David Guibert c604ff045e add cifs_timeout to kernel 3.5 2012-11-15 07:41:11 +01:00
Jack Cummings b61ed12ea3 Add missing patch 2012-11-15 07:41:11 +01:00
Jack Cummings 0611a8b223 Linux-3.6 fixes. Need to ./autogen.sh in zfs now, as the linux-3.6 patch adds autoconf macros. Which means that all of my Makefile.in patches need to be puplifted to Makefile.am patches. 2012-11-15 07:41:11 +01:00
Jack Cummings b999698440 - add back the plaform, as it is permitted to distribute the binary kernel modules. See https://github.com/NixOS/nixpkgs/pull/145 2012-11-15 07:41:11 +01:00
Jack Cummings 2dd60084f8 - updates from the license discussion in https://github.com/NixOS/nixpkgs/pull/145 2012-11-15 07:41:11 +01:00
Jack Cummings 3dbb87ec8e - make 'platforms' empty to prohibit building on hydra. 2012-11-15 07:41:11 +01:00
Jack Cummings abd6046168 - fix spl license, add workarounds for zfs on i686-linux 2012-11-15 07:41:11 +01:00
Lluís Batlle i Rossell bb3b603ea7 mips linux: Adding a patch to fix an ext3 bug in 3.5 and 3.6
I made it apply to all Mips, although the bug works only for n32 and o32 ABIs.
We don't support any n64 by now.
2012-11-06 00:16:13 +01:00
Mathijs Kwik b56a899320 linux-3.6: upgrade to 3.6.6, contains fix for recent ext4 corruption 2012-11-05 21:11:21 +01:00
Mathijs Kwik 97c5b93402 linux-3.4: kernel 3.4.18, contains fix for recent ext4 corruption 2012-11-05 21:11:21 +01:00
Mathijs Kwik a1c54023ce linux-3.0: upgrade to 3.0.51 2012-11-05 21:11:20 +01:00
aszlig 2a58708d74
acpid: Update to version 2.0.17.
The reason behind this is because /proc/acpi/event has long been deprecated in
kernel 2.6.24 and is only there far backwards-compatibility reasons. New ACPI
events are delivered by either the input layer or the netlink interface.

As we no longer use kernels down to 2.6.24, I guess it's safe to make this
switch.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2012-11-02 23:56:13 +01:00
Eelco Dolstra 1d384b0fe0 linux: Update to 3.2.33 2012-10-31 13:48:04 +01:00
Eelco Dolstra 094c1fd108 systemd: Fix a systemd crash when doing "systemctl list-unit-files" 2012-10-31 13:46:51 +01:00
Michael Raskin 472c5a5d77 Update Bluez/Obex 2012-10-29 23:56:26 +04:00
Shea Levy 9f221073c2 Linux 3.6.4 2012-10-28 22:13:59 -04:00