cript0nauta / pynixify

Nix expression generator for Python projects
GNU General Public License v3.0
64 stars 11 forks source link

pkg: pycrypto #49

Closed InLaw closed 4 years ago

InLaw commented 4 years ago

error:

attribute 'src' in selection path 'python3Packages."pycrypto".src' not found


it has no src because it is not itself https://github.com/InLaw/nixpkgs/blob/master/pkgs/development/python-modules/pycrypto/default.nix

cript0nauta commented 4 years ago

Wow, I wasn't expecting the nixpkgs source to have so many hacks for Python packages. This certainly makes things harder for pynixify.

I think I'll add a command line option that ignores parsing the requirements of the specified packages. This will fix this issue and maybe others related to nixpkgs hacks.

InLaw commented 4 years ago

would be nice to specify

cript0nauta commented 4 years ago

Fixed in 6ba2231ea5977289edd5c410db0d1df99d341a7f. I preferred to add some extra code to handle the pycrypto case rather than adding an additional command line option. I want pycrypto to be usable out of the box, not requiring some complicated option in order to make it work.

Thanks for reporting!

InLaw commented 4 years ago

My thought was not a cmd option but

cript0nauta commented 4 years ago

If you want to override the requirements of an existing Nix package, you can add a local nixpkgs overlay as described here: https://github.com/cript0nauta/pynixify/issues/35#issuecomment-675862168. Instead of the doCheck = false;, you could put something like buildInputs = [ python-self.some_dependency ];.

Keep in mind that doing this affects reproducibility between machines, since pynixify could fail when it's run in machines without the custom overlays. #15 would solve this problem, but currently it's a low priority issue.