Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

General ruby improvements for vagrant from source #33014

Conversation

aneeshusa
Copy link
Contributor

Motivation for this change

Extracted general Ruby infrastructure improvements out of #30952.
Review commit-by commit.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

@aneeshusa
Copy link
Contributor Author

cc @zimbatm and @cstrahan as Ruby maintainers

@zimbatm
Copy link
Member

zimbatm commented Dec 25, 2017

I am getting a bunch of merge conflicts with nox-review, mind rebasing? Otherwise it looks good.

Auto-merging pkgs/development/node-packages/node-packages-v8.nix
CONFLICT (add/add): Merge conflict in pkgs/development/node-packages/node-packages-v8.nix
Auto-merging pkgs/development/node-packages/node-packages-v8.json
CONFLICT (add/add): Merge conflict in pkgs/development/node-packages/node-packages-v8.json
Auto-merging pkgs/development/node-packages/node-packages-v6.nix
CONFLICT (content): Merge conflict in pkgs/development/node-packages/node-packages-v6.nix
Auto-merging pkgs/development/node-packages/node-packages-v4.nix
CONFLICT (content): Merge conflict in pkgs/development/node-packages/node-packages-v4.nix
Auto-merging pkgs/development/node-packages/default-v8.nix
CONFLICT (add/add): Merge conflict in pkgs/development/node-packages/default-v8.nix

@@ -41,7 +41,6 @@ lib.makeOverridable (
, patches ? []
, gemPath ? []
, dontStrip ? true
, remotes ? ["https://rubygems.org"]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

couldn't that be kept for backward-compatibility?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The main reason I moved this under source is because remotes is only useful for some types of sources, e.g. url and gem but not git, and so I wanted to keep this nested under source like the other source-dependent attributes.

Also, I didn't see any places where this is used with a non-default value in Nixpkgs; I fixed the one instance where it was set. I don't think there's a large backwards-compatibility burdnen, as bundix always passes the remotes value under source, so only manual calls to buildRubyGem would be affected.

This allows patching the gemset output by bundix from a default.nix
file, making it easier to perform updates since the bundix update no
longer has to be manually updated.
Keep the `source` attrset distinct to prevent its entries from merging
with the top level attrs.
Since each type of source has a different set of entries for `source`,
this is the easiest way to keep them together.
This will pave the way for a new `url` type of source.

This is a mass-rebuild of many ruby packages,
notably those using `git` type sources.
@aneeshusa aneeshusa force-pushed the general-ruby-improvements-for-vagrant-from-source branch from b3dfa71 to 36f1bcb Compare January 4, 2018 07:33
@aneeshusa
Copy link
Contributor Author

@zimbatm rebased on the latest master.

@zimbatm zimbatm merged commit 450f6b7 into NixOS:master Jan 4, 2018
@zimbatm
Copy link
Member

zimbatm commented Jan 4, 2018

thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants