nixpkgs/pkgs
aszlig c06c636604
chromium: Add patch for user namespace sandboxing.
This patch adds support for unprivileged user namespaces found in kernel
versions 3.8.0 and later. In case of Nix, this is especially useful to prevent
having to set up setuid wrappers.

The implementation details about this patch can be found at the top of the file
"sandbox_userns.patch". My first attempt of creating this patch was by modifying
the SUID sandbox. Unfortunately this didn't work out well, because in the event
of a sandbox failure, the host zygote process waits for an answer of the inner
zygote with no timeout. Even if I'd have set a timeout, this would have been
very ugly, giving users which don't have unprivileged user namespaces a delay on
startup.

An alternative approach to the mentioned problem would be to use select() on the
host zygote, watching for changes stdout or stderr and the synchronization
socket. But even that approach isn't feasible because it requires a whole bunch
of even more patching.

Patch was tested with older kernels (3.2.x, 3.7.x) and kernels without user
namespace support enabled, where in case the feature is unavailable it reverts
back to the previous behaviour (no zygote sandbox, only seccomp BPF).

In order to support all Chromium channels, I manually changed the first hunk of
the patch to not include the starting context of the diff, because there is a
whitespace change in more recent versions of the Chromium source tree.

See SVN revision 199882 for the change (revert in this case) in detail:

http://src.chromium.org/viewvc/chrome?view=revision&revision=199882

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2013-05-16 21:03:07 +02:00
..
applications chromium: Add patch for user namespace sandboxing. 2013-05-16 21:03:07 +02:00
build-support fetchUrl: add curlOpts parameter (merge #535) 2013-05-16 10:45:16 +02:00
data cacert: Update to 20121229 2013-05-15 13:15:53 +02:00
desktops KDE 4.10 kdelibs: indicate that kdelibs has udisks2 support. 2013-05-11 21:22:33 +03:00
development haskell-graphviz: jailbreak to support recent version of polyparse 2013-05-16 13:45:38 +02:00
games uqm: Include optional support for 3DO videos. 2013-05-16 21:03:07 +02:00
lib Revert "Revert "overrideDerivation: Re-attatch passthru and meta to all outputs"" 2013-05-15 00:39:17 -04:00
misc Fixing 'my-env', when without cleanup. 2013-05-14 18:59:50 +02:00
os-specific Merge pull request #505 from MarcWeber/submit/linux-3.8-dvb-support 2013-05-16 03:16:23 -07:00
servers mysql: Update to 5.1.69 2013-05-14 11:47:23 +02:00
shells
stdenv
test
tools update gnuplot to 4.6.0 2013-05-14 15:42:14 +02:00
top-level almir: bump to 0.1.8 2013-05-16 20:18:02 +02:00