From 28fa4a2f03e2232d95dec9dc2b8ef40857d725db Mon Sep 17 00:00:00 2001 From: zimbatm Date: Sun, 12 Jun 2016 18:11:37 +0100 Subject: Escape all shell arguments uniformly --- pkgs/development/ruby-modules/bundler-env/default.nix | 6 ++---- pkgs/development/ruby-modules/gem/default.nix | 7 +++---- 2 files changed, 5 insertions(+), 8 deletions(-) (limited to 'pkgs/development/ruby-modules') diff --git a/pkgs/development/ruby-modules/bundler-env/default.nix b/pkgs/development/ruby-modules/bundler-env/default.nix index 4ebba0d5b653..56a3b371d1dc 100644 --- a/pkgs/development/ruby-modules/bundler-env/default.nix +++ b/pkgs/development/ruby-modules/bundler-env/default.nix @@ -16,8 +16,6 @@ }@args: let - - shellEscape = x: "'${lib.replaceChars ["'"] [("'\\'" + "'")] x}'"; importedGemset = import gemset; filteredGemset = (lib.filterAttrs (name: attrs: if (builtins.hasAttr "groups" attrs) @@ -58,8 +56,8 @@ let "${confFiles}/Gemfile" \ "$out/${ruby.gemPath}" \ "${bundler}/${ruby.gemPath}" \ - ${shellEscape (toString envPaths)} \ - ${shellEscape (toString groups)} + ${lib.escapeShellArg envPaths} \ + ${lib.escapeShellArg groups} '' + lib.optionalString (postBuild != null) postBuild; passthru = rec { inherit ruby bundler meta gems; diff --git a/pkgs/development/ruby-modules/gem/default.nix b/pkgs/development/ruby-modules/gem/default.nix index 6e1b0c00bd08..74dc64000c0f 100644 --- a/pkgs/development/ruby-modules/gem/default.nix +++ b/pkgs/development/ruby-modules/gem/default.nix @@ -18,8 +18,8 @@ # Normal gem packages can be used outside of bundler; a binstub is created in # $out/bin. -{ lib, ruby, bundler, fetchurl, fetchgit, makeWrapper, git, - buildRubyGem, darwin +{ lib, fetchurl, fetchgit, makeWrapper, git, darwin +, ruby, bundler } @ defs: lib.makeOverridable ( @@ -53,7 +53,6 @@ lib.makeOverridable ( , ...} @ attrs: let - shellEscape = x: "'${lib.replaceChars ["'"] [("'\\'" + "'")] x}'"; src = attrs.src or ( if type == "gem" then fetchurl { @@ -165,7 +164,7 @@ stdenv.mkDerivation (attrs // { ${src} \ ${attrs.rev} \ ${version} \ - ${shellEscape (toString buildFlags)} + ${lib.escapeShellArgs buildFlags} ''} ${lib.optionalString (type == "gem") '' -- cgit 1.4.1