chromium/plugins: Use @var@ for passing variables
There is already a pull request from @colemickens, who has just reversed the variable references $flash and $flashVersion but the fix is kinda fragile as he points out himself in #12713. The reason the wrong substition was made is that both variables begin with the same name and we do a simple replace instead of a more complicated one using builtins.match. So staying simple but to still not raising issues with other variables that begin with the same name I'm now using @var@ instead, like we use in substituteAll and other substituters (like the ones in CMake or autotools) deal with it. Note that I'm not using $var$ here to make sure it doesn't get confused with real shell variables. So with this fix in place, the wrapper now has the following flags: --ppapi-flash-path=/nix/store/.../lib/libpepflashplayer.so --ppapi-flash-version=20.0.0.294 Previously we had (#12710): --ppapi-flash-path=/nix/store/.../lib/libpepflashplayer.so --ppapi-flash-version=/nix/store/...-binary-plugins-flashVersion Thanks to @colemickens for reporting and putting up a pull request. Signed-off-by: aszlig <aszlig@redmoonstudios.org> Fixes: #12710 Fixes: #12713
This commit is contained in:
parent
ff90f52375
commit
61042a5b6a
@ -16,7 +16,7 @@ let
|
||||
mkPluginInfo = { output ? "out", allowedVars ? [ output ]
|
||||
, flags ? [], envVars ? {}
|
||||
}: let
|
||||
shSearch = ["'"] ++ map (var: "\$${var}") allowedVars;
|
||||
shSearch = ["'"] ++ map (var: "@${var}@") allowedVars;
|
||||
shReplace = ["'\\''"] ++ map (var: "'\"\${${var}}\"'") allowedVars;
|
||||
# We need to triple-escape "val":
|
||||
# * First because makeWrapper doesn't do any quoting of its arguments by
|
||||
@ -94,8 +94,8 @@ let
|
||||
output = "flash";
|
||||
allowedVars = [ "flash" "flashVersion" ];
|
||||
flags = [
|
||||
"--ppapi-flash-path=$flash/lib/libpepflashplayer.so"
|
||||
"--ppapi-flash-version=$flashVersion"
|
||||
"--ppapi-flash-path=@flash@/lib/libpepflashplayer.so"
|
||||
"--ppapi-flash-version=@flashVersion@"
|
||||
];
|
||||
}}
|
||||
|
||||
@ -107,7 +107,7 @@ let
|
||||
${mkPluginInfo {
|
||||
output = "widevine";
|
||||
flags = [ "--register-pepper-plugins=${wvModule}${wvInfo}" ];
|
||||
envVars.NIX_CHROMIUM_PLUGIN_PATH_WIDEVINE = "$widevine/lib";
|
||||
envVars.NIX_CHROMIUM_PLUGIN_PATH_WIDEVINE = "@widevine@/lib";
|
||||
}}
|
||||
'';
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user