chromium, google-chrome: fix escaping of commandLineArgs

This commit is contained in:
volth 2018-03-06 13:00:14 +00:00
parent 91280690af
commit 96ebf614ad
2 changed files with 8 additions and 11 deletions

View file

@ -90,7 +90,7 @@ in stdenv.mkDerivation {
mkdir -p "$out/bin" mkdir -p "$out/bin"
eval makeWrapper "${browserBinary}" "$out/bin/chromium" \ eval makeWrapper "${browserBinary}" "$out/bin/chromium" \
${commandLineArgs} \ --add-flags ${escapeShellArg (escapeShellArg commandLineArgs)} \
${concatMapStringsSep " " getWrapperFlags chromium.plugins.enabled} ${concatMapStringsSep " " getWrapperFlags chromium.plugins.enabled}
ed -v -s "$out/bin/chromium" << EOF ed -v -s "$out/bin/chromium" << EOF

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, patchelf, bash { stdenv, fetchurl, patchelf, makeWrapper
# Linked dynamic libraries. # Linked dynamic libraries.
, glib, fontconfig, freetype, pango, cairo, libX11, libXi, atk, gconf, nss, nspr , glib, fontconfig, freetype, pango, cairo, libX11, libXi, atk, gconf, nss, nspr
@ -72,7 +72,7 @@ in stdenv.mkDerivation rec {
src = chromium.upstream-info.binary; src = chromium.upstream-info.binary;
buildInputs = [ buildInputs = [
patchelf patchelf makeWrapper
# needed for GSETTINGS_SCHEMAS_PATH # needed for GSETTINGS_SCHEMAS_PATH
gsettings-desktop-schemas glib gtk gsettings-desktop-schemas glib gtk
@ -120,14 +120,11 @@ in stdenv.mkDerivation rec {
mv "$icon_file" "$logo_output_path/google-$appname.png" mv "$icon_file" "$logo_output_path/google-$appname.png"
done done
cat > $exe << EOF makeWrapper "$out/share/google/$appname/google-$appname" "$exe" \
#!${bash}/bin/sh --prefix LD_LIBRARY_PATH : "$rpath" \
export LD_LIBRARY_PATH=$rpath\''${LD_LIBRARY_PATH:+:\$LD_LIBRARY_PATH} --prefix PATH : "$binpath" \
export PATH=$binpath\''${PATH:+:\$PATH} --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \
export XDG_DATA_DIRS=$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH\''${XDG_DATA_DIRS:+:}\$XDG_DATA_DIRS --add-flags ${escapeShellArg commandLineArgs}
$out/share/google/$appname/google-$appname ${commandLineArgs} "\$@"
EOF
chmod +x $exe
for elf in $out/share/google/$appname/{chrome,chrome-sandbox,nacl_helper}; do for elf in $out/share/google/$appname/{chrome,chrome-sandbox,nacl_helper}; do
patchelf --set-rpath $rpath $elf patchelf --set-rpath $rpath $elf