4 ms·
This sounds great. For projects that use lxml/numpy/scipy/pandas this could be a real help for getting set up on different machines especially if there is some
by calpaterson 11y ago
This sounds great. For projects that use lxml/numpy/scipy/pandas this could be a real help for getting set up on different machines especially if there is some kind of caching that can be done for the built packages.
It's a shame it can't use all of PyPI though.
- amirouche 11y agoThere is tool to prepare a guix package from PyPi but because of the naming issues it can't use PyPi directly. Yes once package is built, it's cached. edit: the command name is `guix import pypi` http://www.gnu.org/software/guix/manual/guix.html#Invoking-guix-import http://www.gnu.org/software/guix/manual/guix.html#Invoking-g...
- davexunit 11y ago>It's a shame it can't use all of PyPI though. People often have this disappointment about Guix not being some sort of meta-package manager that can use any package format right off-the-shelf, which I think is caused by a misunderstanding of how the system works. Guix packages describe the precise dependency graph of any piece of software, all the way down to the C compiler's compiler. A package on PyPI, or anywhere else for that matter, does not. For example, Python eggs that build native extensions need certain shared libraries and C header files available on the system before they can be installed, but PyPI has no way of installing those things or otherwise capturing that information in a precise way. However, us Guix devs can, and should, make it easy for users to take the metadata for a package available in another system such as PyPI and produce, to the best of our ability, a Scheme snippet that gets one most of the way to a working Guix package. We wrote the 'guix import' utility for this purpose. Right now, it can generate Scheme snippets based on packages at PyPI, CPAN, Hackage, ELPA, RubyGems, and CRAN. The user can take the output of the importer, and add the (hopefully few) missing pieces, such as the C library a Python native extension needs.
- riffraff 11y agoIf I import a new package, what is the effort required to submit the new definition into the guix repo? Is that also integrated with the guix command line tool? If not, why not? It would be super neat :)
- davexunit 11y agoRoughly: - Clone the git repo, build Guix, and run the build daemon - Add the Scheme code for the package recipe to the relevant module - Run 'guix build' to make sure it builds and runs - Run 'guix lint' to catch common style issues - Make a commit - Send patch file to our mailing list Full details about contributing can be found here: http://www.gnu.org/software/guix/manual/html_node/Contributing.html#Contributing http://www.gnu.org/software/guix/manual/html_node/Contributi... I welcome you to give packaging a shot. The IRC channel and mailing list are full of nice people that can help you if you struggle with something or encounter a bug.
- beagle3 11y agoconda can do that. Have a look, it's really awesome (even though it's not the guix/nix kind of awesome, it is still awesome)