Commit Graph

497 Commits

Author SHA1 Message Date
Samuel Dionne-Riel
6638690261 ruby: Use hostPlatform
Using `stdenv.targetPlatform` gives the wrong platform in buildPackages.

E.g.:

```
 $ nix-diff --color never $(env -i nix-instantiate -A pkgs.ruby -A pkgs.pkgsCross.aarch64-multiplatform.buildPackages.ruby)
- /nix/store/w8wk99p4gadns35n2l0fr7wx56jlwnnx-ruby-2.6.6.drv:{out}
+ /nix/store/5ywj7nicjai6ji4g33yh6nvz1b5fq7xw-ruby-2.6.6.drv:{out}
• The input named `ruby-2.6.6` differs
  - /nix/store/4a6nag89dcxwdf32820z6dfwwpfgab8s-ruby-2.6.6.drv:{out}
  + /nix/store/40pakkdfv578zffx3y11qd5ckcp2xpzm-ruby-2.6.6.drv:{out}
  • The environments do not match:
      postInstall=''
          # Remove unnecessary groff reference from runtime closure, since it's big
          sed -i '/NROFF/d' $out/lib/ruby/*/*/rbconfig.rb

          # Bundler tries to create this directory
          mkdir -p $out/nix-support
          cat > $out/nix-support/setup-hook <<EOF
          addGemPath() {
            addToSearchPath GEM_PATH \$1/lib/ruby/gems/2.6.0
          }
          addRubyLibPath() {
            addToSearchPath RUBYLIB \$1/lib/ruby/site_ruby
            addToSearchPath RUBYLIB \$1/lib/ruby/site_ruby/2.6.0
            addToSearchPath RUBYLIB \$1/lib/ruby/site_ruby/2.6.0/←x86_←→aarch→64-linux
          }

          addEnvHooks "$hostOffset" addGemPath
          addEnvHooks "$hostOffset" addRubyLibPath
          EOF

          rbConfig=$(find $out/lib/ruby -name rbconfig.rb)
      ''
• Skipping environment comparison
```

`pkgs.pkgsCros.*.buildPackage.ruby` should be equivalent to `pkgs.ruby`.
It wasn't.
2021-03-06 22:30:55 -05:00
Sandro
68ab562d23
Merge pull request #112941 from SuperSandro2000/ruby-jemalloc
ruby: add option to enable jemalloc
2021-02-17 11:21:58 +01:00
Sandro Jäckel
1c33c0ad6b
ruby: add option to enable jemalloc 2021-02-12 21:34:14 +01:00
Nick Novitski
eda1eab733 ruby_2_5: remove 2021-02-03 12:10:32 -08:00
Ben Siraphob
001c0cbe54 pkgs/development/interpreters: stdenv.lib -> lib 2021-01-23 20:29:03 +07:00
zowoq
051812b8cf Revert "ruby: fix build on darwin"
This reverts commit d73cc1e586.
2020-11-14 07:11:29 +10:00
Daniël de Kok
b235552837 ruby: check disallowed references with jitSupport disabled
This makes it easier to detect regressions.
2020-11-12 15:12:59 +01:00
Doron Behar
9db44f61a7 rubyMinimal: remove
Due to being unused, and seemingly unusable, added appropriate release
notes.
2020-11-09 16:17:41 +02:00
Doron Behar
f59f04352a ruby: Rename removeReferencesToCC flag to !jitSupport
If JIT support is built in to ruby, there's no choice other then to
leave this cc reference as is. removeReferencesToCC didn't do it's job
completely since some time ago. That's why it was practically redundant
- `lib/ruby/${version}/<platform>/rbconfig.rb` still referenced cc.
Removing this reference from
`lib/ruby/${version}/<platform>/rbconfig.rb` as well might lead to
breakage in some Gems that require this feature.

But, if JIT support is not desired, it should be safe enough to
completely remove all cc references, both in
lib/ruby/${version}/<platform>/rbconfig.rb and in $out/lib/libruby.so .
Hence now `rubyMinimal` has JIT support disabled and it has no
references at all to stdenv.cc.
2020-11-09 16:17:39 +02:00
zimbatm
7aee32121a
ruby: make the build reproducible
ext/io/console/io-console.gemspec was embedding a timestamp which made
the build not reproducible. Gems respect SOURCE_DATE_EPOCH so it's
enough to just delete that line if it exists.

This file has been fixed in
679a941d05 (diff-d8422f096931c58d4463e2489f62a228b0f24f0492950ba88c8c89a0d741cfe6)
And then ruby regularly merges that gem into their own repository. Ruby
master is fixed but none of the ruby releases have been fixed yet.

lib/ruby/gems/2.6.0/specifications/default/io-console-0.4.7.gemspec now
contains:

    s.date = "1980-01-01"
2020-10-27 14:20:08 +01:00
Vladimír Čunát
336bc8283b
Re-Revert "Merge #101508: libraw: 0.20.0 -> 0.20.2"
This reverts commit c778945806.

I believe this is exactly what brings the staging branch into
the right shape after the last merge from master (through staging-next);
otherwise part of staging changes would be lost
(due to being already reachable from master but reverted).
2020-10-26 08:19:17 +01:00
Vladimír Čunát
c778945806
Revert "Merge #101508: libraw: 0.20.0 -> 0.20.2"
I'm sorry; I didn't notice it contained staging commits.

This reverts commit 17f5305b6c, reversing
changes made to a8a018ddc0.
2020-10-25 09:41:51 +01:00
Vladimír Čunát
17f5305b6c
Merge #101508: libraw: 0.20.0 -> 0.20.2 2020-10-25 09:28:53 +01:00
Mario Rodas
d73cc1e586 ruby: fix build on darwin
cc-tools 949.0.1 added a warning on linking which ruby misinterprets as
an error with LDFLAGS.
2020-10-22 04:20:00 +00:00
Jonathan del Strother
f0431e22c1 rubygems: 3.1.2 -> 3.1.3 2020-10-20 21:10:43 +02:00
Mario Rodas
6bfc199531 ruby: add marsam to maintainers 2020-10-06 09:45:39 +02:00
Mario Rodas
17e3f3258f ruby_2_7: 2.7.1 -> 2.7.2
https://www.ruby-lang.org/en/news/2020/10/02/ruby-2-7-2-released/
2020-10-06 09:45:39 +02:00
Mario Rodas
35d7c8ac6f ruby: update RVM patchsets 2020-10-06 09:45:39 +02:00
Izorkin
4b93708b31 ruby: fix soname tag 2020-05-08 09:36:01 +03:00
Michael Reilly
84cf00f980
treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
Mario Rodas
3ab49aac64 ruby: remove ruby_2_4 patchset 2020-04-01 12:22:14 +00:00
Mario Rodas
a7f1e9f1ef ruby_2_7: 2.7.0 -> 2.7.1
Changelog: https://www.ruby-lang.org/en/news/2020/03/31/ruby-2-7-1-released/
2020-04-01 12:22:14 +00:00
Mario Rodas
b312ecf34e ruby_2_6: 2.6.5 -> 2.6.6
Changelog: https://www.ruby-lang.org/en/news/2020/03/31/ruby-2-6-6-released/
2020-04-01 12:22:14 +00:00
Mario Rodas
99b09d6b8f ruby_2_5: 2.5.7 -> 2.5.8
Changelog: https://www.ruby-lang.org/en/news/2020/03/31/ruby-2-5-8-released/
2020-04-01 12:22:14 +00:00
Mario Rodas
dd24a2f2a0 ruby: update RVM patchsets 2020-04-01 12:22:14 +00:00
zimbatm
bcdc90a3a7 ruby_2_4: remove
According to https://endoflife.software/programming-languages/server-side-scripting/ruby
ruby 2.4 will go end-of-life in march, where the new release of nixpkgs
will be cut. We won't be able to support it for security updates.

Remove all references to ruby_2_4 and add ruby_2_7 instead where
missing.

Mark packages that depend on ruby 2.4 as broken:
* chefdk
* sonic-pi
2020-02-10 13:23:35 -05:00
Alyssa Ross
163618988f
ruby: remove references to CC by default
This makes RbConfig["CC"] return an invalid path, but I hope nothing
is depending on that anyway...
2020-01-09 15:54:59 +00:00
Robin Gloster
9126911ba5
ruby: installFlags is a list 2019-12-31 00:50:40 +01:00
Alyssa Ross
a08e5665fa rubygems: fix for Ruby with no openssl
This fixes the rubyMinimal package.
2019-12-30 16:11:23 +01:00
Mario Rodas
76200c4284 ruby_2_7: init at 2.7.0
Release notes: https://www.ruby-lang.org/en/news/2019/12/25/ruby-2-7-0-released/
2019-12-25 14:24:03 +00:00
Mario Rodas
298010982b ruby: rubygems 3.0.6 -> 3.1.2
Changelog: https://blog.rubygems.org/2019/12/20/3.1.2-released.html
2019-12-25 14:24:03 +00:00
Profpatsch
7d4c1ae7f1 rubyMinimal: ruby with all options disabled by default
Similar to `gitMinimal` or `pythonMinimal`, this is useful for scripts
which don’t use anything but the standard library and want a small
footprint.
2019-12-25 13:59:42 +01:00
Profpatsch
80c07f8aaf ruby: add removeReferenceToCC package option
Reduces the runtime closure by ~200MB if enabled.
2019-12-25 13:59:42 +01:00
Izorkin
7d0fcb8acc ruby: build with soname tag 2019-11-24 12:55:23 +03:00
Mario Rodas
5ed9d8b8aa ruby_2_4: 2.4.7 -> 2.4.9
Changelog:
- https://www.ruby-lang.org/en/news/2019/10/01/ruby-2-4-8-released/
- https://www.ruby-lang.org/en/news/2019/10/02/ruby-2-4-9-released/
2019-10-02 10:38:32 +00:00
Mario Rodas
5e76e7b430 ruby_2_5: 2.5.6 -> 2.5.7
Changelog: https://www.ruby-lang.org/en/news/2019/10/01/ruby-2-5-7-released/
2019-10-02 10:38:32 +00:00
Mario Rodas
4ee22f3a9c ruby_2_5: 2.6.4 -> 2.6.5
Changelog: https://www.ruby-lang.org/en/news/2019/10/01/ruby-2-6-5-released/
2019-10-02 10:38:32 +00:00
Mario Rodas
befd5c954b ruby: remove ruby_2_3 patchset
d3983caf45 removed ruby_2_3 from nixpkgs
2019-10-02 10:38:32 +00:00
Alyssa Ross
ca96b55d3a ruby_2_6: patch use-after-free
See https://bugs.ruby-lang.org/issues/16136.

This patch is on Ruby trunk, but hasn't been backported (yet?).
2019-09-07 14:32:56 +00:00
Alyssa Ross
d3983caf45 ruby_2_3: remove
This has been EOL since December. We shouldn't still be facilitating
its use.

Fixes https://github.com/NixOS/nixpkgs/pull/67977.
2019-09-07 13:09:17 +00:00
Vladimír Čunát
4aad2947f8
Merge branch 'master' into staging-next 2019-09-04 11:00:56 +02:00
Michael Fellinger
1f49035aca ruby.withPackages: init
Co-authored-by: Alyssa Ross <hi@alyssa.is>
2019-09-03 19:44:49 +00:00
Mario Rodas
3a601cac5b ruby: update RVM patchsets 2019-09-03 15:33:51 +00:00
Mario Rodas
bd51778554 ruby_2_6: 2.6.3 -> 2.6.4 2019-09-03 15:33:51 +00:00
Mario Rodas
8cb7bb03fd ruby_2_5: 2.5.5 -> 2.5.6 2019-09-03 15:33:51 +00:00
Mario Rodas
06205d8154 ruby_2_4: 2.4.5 -> 2.4.7 2019-09-03 15:33:51 +00:00
Milan Pässler
48ca6ed3f4
ruby: rubygems 3.0.3 -> 3.0.6 2019-08-31 11:48:04 +00:00
Alyssa Ross
01c4c15ef5 ruby: replace bundled RubyGems with our RubyGems
This should prevent problems caused by trying to install our own
RubyGems over the top of the one that comes with Ruby.
2019-08-31 11:33:03 +00:00
Alyssa Ross
5b0851028f ruby: --disable-rubygems for baseruby
This works just fine, and means we don't run into an issue with RubyGems
trying to install into a different Ruby's prefix when cross-compiling.
See https://github.com/NixOS/nixpkgs/pull/51842#issuecomment-478392799.
2019-08-31 11:33:03 +00:00
volth
08f68313a4 treewide: remove redundant rec 2019-08-28 11:07:32 +00:00