jruby: fix shebang for binaries in JRuby
There are a variety of additional scripts that are included with the JRuby installation that use JRuby itself. For instance the `bin/gem` had the following contents: ```bash ❯ cat /nix/store/kglkqf56ii83yl6yrgcaj5r3s9m2fzr0-jruby-9.2.13.0/bin/gem load File.join(File.dirname(__FILE__), 'jgem') ``` This is clearly wrong. Patchshebangs was not picking up the fix as part of stdenv because the patch is not a build input but the final output itself. We have to rely on substituteInPlace so that we get the correct version. ```bash ❯ cat /nix/store/k4fnrn0dcsh2wzw81217r0ywsspb468f-jruby-9.2.13.0/bin/gem ```
This commit is contained in:
parent
638c8cb2d5
commit
8da7bd63ca
1 changed files with 4 additions and 0 deletions
|
@ -40,6 +40,10 @@ jruby = stdenv.mkDerivation rec {
|
|||
EOF
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
PATH=$out/bin:$PATH patchShebangs $out/bin
|
||||
'';
|
||||
|
||||
passthru = rec {
|
||||
rubyEngine = "jruby";
|
||||
gemPath = "lib/${rubyEngine}/gems/${rubyVersion.libDir}";
|
||||
|
|
Loading…
Reference in a new issue