summary refs log tree commit diff
path: root/pkgs/applications/networking/browsers/chromium
diff options
context:
space:
mode:
authorobadz <obadz-git@obadz.com>2016-08-06 10:09:40 +0100
committerobadz <obadz-git@obadz.com>2016-08-06 10:29:56 +0100
commit231ed9edd9f3bc142e878dc22d47c25c793a4ac1 (patch)
tree5e680bc1aaba9b76a958f23aa6ec098ff751c40f /pkgs/applications/networking/browsers/chromium
parent66d5edf654c6c98e3835dbee4f208794fc03c81d (diff)
downloadnixlib-231ed9edd9f3bc142e878dc22d47c25c793a4ac1.tar
nixlib-231ed9edd9f3bc142e878dc22d47c25c793a4ac1.tar.gz
nixlib-231ed9edd9f3bc142e878dc22d47c25c793a4ac1.tar.bz2
nixlib-231ed9edd9f3bc142e878dc22d47c25c793a4ac1.tar.lz
nixlib-231ed9edd9f3bc142e878dc22d47c25c793a4ac1.tar.xz
nixlib-231ed9edd9f3bc142e878dc22d47c25c793a4ac1.tar.zst
nixlib-231ed9edd9f3bc142e878dc22d47c25c793a4ac1.zip
chromium: split the sandbox into a separate output
Related to #17460 and 66d5edf
Triggers a rebuild of Chromium
Diffstat (limited to 'pkgs/applications/networking/browsers/chromium')
-rw-r--r--pkgs/applications/networking/browsers/chromium/common.nix7
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix5
2 files changed, 8 insertions, 4 deletions
diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix
index 119a8c16f15c..7f6eb328ee1c 100644
--- a/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/pkgs/applications/networking/browsers/chromium/common.nix
@@ -224,6 +224,13 @@ let
       commands = map buildCommand targets;
     in concatStringsSep "\n" commands;
 
+    outputs = ["out" "sandbox"];
+
+    postInstall = ''
+      mkdir -p "$sandbox/bin"
+      mv -v "$out/libexec/chromium/chrome-sandbox" "$sandbox/bin/${sandboxExecutableName}"
+    '';
+
     passthru = { inherit sandboxExecutableName; };
   };
 
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index 8b4cb00a7786..82143f206370 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -73,7 +73,6 @@ in stdenv.mkDerivation {
   buildCommand = let
     browserBinary = "${chromium.browser}/libexec/chromium/chromium";
     getWrapperFlags = plugin: "$(< \"${plugin}/nix-support/wrapper-flags\")";
-    sandboxExecutableSourcePath = "${chromium.browser}/libexec/chromium/chrome-sandbox";
     launchScript = writeScript "chromium" ''
       #! ${stdenv.shell}
 
@@ -100,9 +99,7 @@ in stdenv.mkDerivation {
     substituteInPlace $out/bin/chromium --replace @out@ $out --replace @sandbox@ $sandbox
     chmod 755 "$out/bin/chromium"
 
-    mkdir -p "$sandbox/bin"
-    [ -x "${sandboxExecutableSourcePath}" ] || exit 1
-    ln -sv "${sandboxExecutableSourcePath}" "$sandbox/bin/${sandboxExecutableName}"
+    ln -sv "${chromium.browser.sandbox}" "$sandbox"
 
     ln -s "$out/bin/chromium" "$out/bin/chromium-browser"
     ln -s "${chromium.browser}/share/icons" "$out/share/icons"