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

buildPythonApplication: added withPackages #81157

Conversation

xavierzwirtz
Copy link
Contributor

Motivation for this change

tortoisehg and mercurial need to be run with user specified python packages to support extensions like hg-evolve.

Things done
  • withPackages is added to the derivation created by buildPythonApplication, providing a way to inject python packages into an already created derivation.
  • tortoisehg and mercurial pre-apply withPackages with their binaries.
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • 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 nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

withPackages is added to the derivation created by
buildPythonApplication, providing a way to inject python packages into
an already created derivation.
Copy link
Member

@FRidh FRidh left a comment

Choose a reason for hiding this comment

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

If I understand you correctly, you want to add additional packages. Why not override the derivation and extend propagatedBuildInputs? Or is the goal here to provide a generic way applications can handle plugins?

In any case, any change in mk-python-derivation needs to include documentation.

@xavierzwirtz
Copy link
Contributor Author

xavierzwirtz commented Feb 28, 2020

Ya, you are correct, overriding the derivation and using propagatedBuildInputs to add the plugin works. This PR is silly. Thanks for the pointer.

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

2 participants