aboutsummaryrefslogtreecommitdiff
path: root/guix/import
Commit message (Collapse)AuthorAge
* Switch to Guile-Gcrypt.Ludovic Courtès2018-09-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes (guix hash) and (guix pk-crypto), which now live as part of Guile-Gcrypt (version 0.1.0.) * guix/gcrypt.scm, guix/hash.scm, guix/pk-crypto.scm, tests/hash.scm, tests/pk-crypto.scm: Remove. * configure.ac: Test for Guile-Gcrypt. Remove LIBGCRYPT and LIBGCRYPT_LIBDIR assignments. * m4/guix.m4 (GUIX_ASSERT_LIBGCRYPT_USABLE): Remove. * README: Add Guile-Gcrypt to the dependencies; move libgcrypt as "required unless --disable-daemon". * doc/guix.texi (Requirements): Likewise. * gnu/packages/bash.scm, guix/derivations.scm, guix/docker.scm, guix/git.scm, guix/http-client.scm, guix/import/cpan.scm, guix/import/cran.scm, guix/import/crate.scm, guix/import/elpa.scm, guix/import/gnu.scm, guix/import/hackage.scm, guix/import/texlive.scm, guix/import/utils.scm, guix/nar.scm, guix/pki.scm, guix/scripts/archive.scm, guix/scripts/authenticate.scm, guix/scripts/download.scm, guix/scripts/hash.scm, guix/scripts/pack.scm, guix/scripts/publish.scm, guix/scripts/refresh.scm, guix/scripts/substitute.scm, guix/store.scm, guix/store/deduplication.scm, guix/tests.scm, tests/base32.scm, tests/builders.scm, tests/challenge.scm, tests/cpan.scm, tests/crate.scm, tests/derivations.scm, tests/gem.scm, tests/nar.scm, tests/opam.scm, tests/pki.scm, tests/publish.scm, tests/pypi.scm, tests/store-deduplication.scm, tests/store.scm, tests/substitute.scm: Adjust imports. * gnu/system/vm.scm: Likewise. (guile-sqlite3&co): Rename to... (gcrypt-sqlite3&co): ... this. Add GUILE-GCRYPT. (expression->derivation-in-linux-vm)[config]: Remove. (iso9660-image)[config]: Remove. (qemu-image)[config]: Remove. (system-docker-image)[config]: Remove. * guix/scripts/pack.scm: Adjust imports. (guile-sqlite3&co): Rename to... (gcrypt-sqlite3&co): ... this. Add GUILE-GCRYPT. (self-contained-tarball)[build]: Call 'make-config.scm' without #:libgcrypt argument. (squashfs-image)[libgcrypt]: Remove. [build]: Call 'make-config.scm' without #:libgcrypt. (docker-image)[config, json]: Remove. [build]: Add GUILE-GCRYPT to the extensions Remove (guix config) from the imported modules. * guix/self.scm (specification->package): Remove "libgcrypt", add "guile-gcrypt". (compiled-guix): Remove #:libgcrypt. [guile-gcrypt]: New variable. [dependencies]: Add it. [*core-modules*]: Remove #:libgcrypt from 'make-config.scm' call. Add #:extensions. [*config*]: Remove #:libgcrypt from 'make-config.scm' call. (%dependency-variables): Remove %libgcrypt. (make-config.scm): Remove #:libgcrypt. * build-aux/build-self.scm (guile-gcrypt): New variable. (make-config.scm): Remove #:libgcrypt. (build-program)[fake-gcrypt-hash]: New variable. Add (gcrypt hash) to the imported modules. Adjust load path assignments. * gnu/packages/package-management.scm (guix)[propagated-inputs]: Add GUILE-GCRYPT. [arguments]: In 'wrap-program' phase, add GUILE-GCRYPT to the search path.
* import: pypi: Support recursive importing.Ricardo Wurmus2018-08-30
| | | | | | | | | | | | * guix/import/pypi.scm (guess-requirements): Use upstream names. (compute-inputs): Return the upstream dependency names as an additional value. (make-pypi-sexp): Likewise. (pypi->guix-package): Memoize it. (pypi-recursive-import): New procedure. * guix/scripts/import/pypi.scm (show-help, %options): Accept "recursive" option. (guix-import-pypi): Use pypi-recursive-import. * doc/guix.texi (Invoking guix import): Document it.
* import: pypi: Also guess dependencies from *.egg-info/requires.txt.Ricardo Wurmus2018-08-30
| | | | | | * guix/import/pypi.scm (guess-requirements): Extract "requires.txt" from the egg-info directory in addition to "requirements.txt"; strip off version constraints; use call-with-temporary-directory.
* import: stackage: Support recursive importing.Ricardo Wurmus2018-08-30
| | | | | | | | | | * guix/import/hackage.scm (hackage-name->package-name): Export procedure. * guix/import/stackage.scm (lts-info-packages-lts-info): Fix match expression. (stackage-recursive-import): New procedure. (stackage->guix-package): Memoize results. * guix/scripts/import/stackage.scm (show-help, %options, guix-import-stackage): Support recursive importing. * doc/guix.texi (Invoking guix import): Document option.
* import: github: Filter out tags that don't look like version numbers.Ludovic Courtès2018-08-20
| | | | | * guix/import/github.scm (latest-released-version): Filter out RELEASE if it doesn't start with digit.
* import: github: Get /tags when /releases returns the empty list.Ludovic Courtès2018-08-20
| | | | | | | | | This allows "guix refresh" to work for many packages where it would previously fail with "no updater for PACKAGE". * guix/import/github.scm (fetch-releases-or-tags): New procedure. (latest-released-version): Use it instead of calling 'json-fetch'. Adjust 'hash-ref' call.
* import: github: Request API v3 in the 'Accept' header.Ludovic Courtès2018-08-20
| | | | | | * guix/import/json.scm (json-fetch): Add #:headers argument and honor it. * guix/import/github.scm (latest-released-version): Pass #:headers to 'json-fetch'.
* import: hackage: Support recursive importing.Ricardo Wurmus2018-08-11
| | | | | | | | | * guix/import/hackage.scm (hackage-recursive-import): New procedure. (hackage-module->sexp): Return dependencies alongside dependencies. (hackage->guix-package): Memoize results. * guix/scripts/import/hackage.scm (show-help, %options, guix-import-hackage): Support recursive importing. * doc/guix.texi (Invoking guix import): Document option.
* Migrate search.cpan.org home pages to metacpan.org.Tobias Geerinckx-Rice2018-08-11
| | | | | | | | | | The venerable search.cpan.org has retired[0]. [0]: https://log.perl.org/2018/05/goodbye-search-dot-cpan-dot-org.html * guix/import/cpan.scm (cpan-home): Generate metacpan.org home page URIs. Update all previously generated ones in (gnu packages) to their canonical new homes.
* import: cabal, hackage: Avoid error when custom setup section is missing.Ricardo Wurmus2018-08-07
| | | | | | | | | Fixes <https://debbugs.gnu.org/32387>. * guix/import/cabal.scm (eval-cabal): Avoid mis-match when the custom-setup section cannot be created. * guix/import/hackage.scm (cabal-custom-setup-dependencies->names): Do not crash when cabal-package-custom-setup returns #F.
* import: hackage: Emit native-inputs in the importer.Danny Milosavljevic2018-07-27
| | | | | | | | | | | | * guix/import/cabal.scm (cabal-custom-setup-dependencies): Export. (cabal-package-custom-setup): Export. (<cabal-package>): New field "custom-setup". (make-cabal-package): Modify. (eval-cabal): Modify. * guix/import/hackage.scm (cabal-dependencies->names): Factor out... (cabal-test-dependencies->names): ...this. (cabal-custom-setup-dependencies->names): New procedure. (hackage-module->sexp): Modify.
* import: PyPI: Update redirected URL.Marius Bakke2018-07-24
| | | | | | | | | * guix/import/pypi.scm (guix-package->pypi-name, pypi->guix-package): Update docstrings. (pypi-package?): Test for pypi.org, too. (pypi-fetch): s/pypi.python.org/pypi.org/ * tests/pypi.scm ("guix-package->pypi-name, new URL style", "pypi->guix-package", "pypi->guix-package, wheels"): Likewise.
* import: hackage: Fix typo.Danny Milosavljevic2018-07-13
| | | | | * guix/import/cabal.scm (cabal-custom-setuo-name): Rename to... (cabal-custom-setup-name): ...this.
* import: hackage: Evaluate "-any" and "-none" version comparison operators.Danny Milosavljevic2018-07-12
| | | | | | | * guix/import/cabal.scm (eval-cabal): Modify. * tests/hackage.scm (test-cabal-4): New variable and test. (test-cabal-5): New variable and test. (test-cabal-6): New variable and test.
* import: hackage: Support "-any" and "-none" version comparison operators.Danny Milosavljevic2018-07-12
| | | | | | | | | | * guix/import/cabal.scm (make-cabal-parser): Modify. (is-any): New variable. (is-none): New variable. (lex-any): New procedure. (lex-none): New procedure. (lex-word): Modify. (eval-cabal): Modify.
* import: hackage: Support "custom-setup" field.Danny Milosavljevic2018-07-12
| | | | | | | | | | | | | Fixes <https://bugs.gnu.org/23961>. * guix/import/cabal.scm (make-cabal-parser): Modify. (is-custom-setup): New variable. (lex-custom-setup): New procedure. (is-id): Modify. (lex-version): Modify. (<cabal-custom-setup>): New record type. (eval-cabal): Modify. (dependencies): Add parameter.
* import: gem: Add recursive import.Oleg Pykhalov2018-07-11
| | | | | | | | | | | | | * doc/guix.texi (Invoking guix import): Document gem recursive import. * guix/import/gem.scm (gem->guix-package): Return package and dependencies values. (gem-recursive-import): New procedure. * guix/scripts/import/gem.scm (show-help, %options): Add recursive option. (guix-import-gem): Use 'gem-recursive-import'. * tests/gem.scm (test-json): Rename to 'test-foo-json'. ("gem->guix-package"): Use 'test-foo-json'. (test-bar-json, test-bundler-json): New variables. ("gem-recursive-import"): New test.
* guix: Add opam importer.Julien Lepiller2018-07-10
| | | | | | | | | * guix/scripts/import.scm (importers): Add opam. * guix/scripts/import/opam.scm: New file. * guix/import/opam.scm: New file. * tests/opam.scm: New file. * Makefile.am: Add them. * doc/guix.texi (Invoking guix import): Document it.
* import: elpa: Check if 'fetch-elpa-package' rest argument is null.Oleg Pykhalov2018-07-03
| | | | * guix/import/elpa.scm (fetch-elpa-package): Check if 'rest' is null.
* build: Remove checks for 'nix-instantiate'.Ludovic Courtès2018-06-18
| | | | | | | | | | | * guix/import/snix.scm (open-nixpkgs): Use "nix-instantiate" unconditionally. * configure.ac: Remove check for 'nix-instantiate'. * guix/config.scm.in (%nix-instantiate): Remove. * guix/self.scm (%dependency-variables): Remove '%nix-instantiate'. (make-config.scm): Remove it from the generated "config.scm". * build-aux/build-self.scm (%dependency-variables, make-config.scm): Likewise.
* import: utils: Import more dependencies.Oleg Pykhalov2018-06-12
| | | | * guix/import/utils.scm (recursive-import): Import more dependencies.
* import: json: Consolidate duplicate json-fetch functionality.Jelle Licht2018-06-10
| | | | | | | | | | | | | * guix/import/json.scm (json-fetch): Return a list or hash table. (json-fetch-alist): New procedure. * guix/import/github.scm (json-fetch*): Remove. (latest-released-version): Use json-fetch. * guix/import/cpan.scm (module->dist-name): Use json-fetch-alist. (cpan-fetch): Likewise. * guix/import/crate.scm (crate-fetch): Likewise. * guix/import/gem.scm (rubygems-fetch): Likewise. * guix/import/pypi.scm (pypi-fetch): Likewise. * guix/import/stackage.scm (stackage-lts-info-fetch): Likewise.
* import: elpa: Remove unused (gnu packages) module.Oleg Pykhalov2018-06-08
| | | | * guix/import/elpa.scm: Remove unused (gnu packages) module.
* import: elpa: Add recursive import.Oleg Pykhalov2018-06-08
| | | | | | | | | | * doc/guix.texi (Invoking guix import): Document elpa recursive import. * guix/import/elpa.scm (elpa-package->sexp): Return package and dependencies values. (elpa-guix-name, elpa-recursive-import): New procedures. * guix/scripts/import/elpa.scm (show-help, %options): Add recursive option. (guix-import-elpa): Use 'elpa-recursive-import'.
* import: utils: Add recursive-import.Oleg Pykhalov2018-06-08
| | | | | | | | | * guix/import/cran.scm (cran-guix-name, cran-recursive-import): New procedures. (recursive-import): Remove procedure. * guix/import/utils.scm (guix-name, recursive-import): New procedures. * guix/scripts/import/cran.scm (guix-import-cran): Use 'cran-recursive-import' procedure.
* import: cran: Update to Bioconductor 3.7.Ricardo Wurmus2018-06-02
| | | | * guix/import/cran.scm (%bioconductor-version): Update to 3.7.
* Correct name and Email for ng0.ng02018-03-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * .mailmap: Correct name and Email for ng0. * Makefile.am, doc/guix.texi, etc/completion/fish/guix.fish gnu/packages/accessibility.scm, gnu/packages/admin.scm, gnu/packages/audio.scm, gnu/packages/autotools.scm, gnu/packages/cdrom.scm, gnu/packages/check.scm, gnu/packages/cinnamon.scm, gnu/packages/compression.scm, gnu/packages/crypto.scm, gnu/packages/databases.scm, gnu/packages/django.scm, gnu/packages/dns.scm, gnu/packages/emacs.scm, gnu/packages/enlightenment.scm, gnu/packages/fonts.scm, gnu/packages/fontutils.scm, gnu/packages/forth.scm, gnu/packages/fvwm.scm, gnu/packages/games.scm, gnu/packages/gl.scm, gnu/packages/gnome.scm, gnu/packages/gnunet.scm, gnu/packages/gnupg.scm, gnu/packages/gnuzilla.scm, gnu/packages/gtk.scm, gnu/packages/guile-wm.scm, gnu/packages/guile.scm, gnu/packages/haskell-check.scm, gnu/packages/haskell-crypto.scm, gnu/packages/haskell.scm, gnu/packages/image-viewers.scm, gnu/packages/image.scm, gnu/packages/irc.scm, gnu/packages/language.scm, gnu/packages/libcanberra.scm, gnu/packages/linux.scm, gnu/packages/lisp.scm, gnu/packages/lolcode.scm, gnu/packages/lxde.scm, gnu/packages/lxqt.scm, gnu/packages/mail.scm, gnu/packages/markup.scm, gnu/packages/mate.scm, gnu/packages/maths.scm, gnu/packages/mc.scm, gnu/packages/messaging.scm, gnu/packages/music.scm, gnu/packages/ncurses.scm, gnu/packages/networking.scm, gnu/packages/nickle.scm, gnu/packages/openbox.scm, gnu/packages/pdf.scm, gnu/packages/perl-check.scm, gnu/packages/perl.scm, gnu/packages/python-crypto.scm, gnu/packages/python-web.scm, gnu/packages/python.scm, gnu/packages/qt.scm, gnu/packages/ruby.scm, gnu/packages/rust.scm, gnu/packages/scheme.scm, gnu/packages/serialization.scm, gnu/packages/shells.scm, gnu/packages/ssh.scm, gnu/packages/suckless.scm, gnu/packages/tbb.scm, gnu/packages/telephony.scm, gnu/packages/text-editors.scm, gnu/packages/textutils.scm, gnu/packages/time.scm, gnu/packages/tls.scm, gnu/packages/tor.scm, gnu/packages/version-control.scm, gnu/packages/video.scm, gnu/packages/vim.scm, gnu/packages/web.scm, gnu/packages/wm.scm, gnu/packages/xdisorg.scm, gnu/packages/xfce.scm, gnu/packages/xml.scm, gnu/packages/xorg.scm, gnu/services/certbot.scm, gnu/services/desktop.scm, gnu/services/version-control.scm, gnu/services/web.scm, guix/import/hackage.scm, guix/licenses.scm: Likewise. Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
* import: elpa: Return 'license:gpl3+ for ELPA only.Ludovic Courtès2018-03-18
| | | | | | | | | Fixes <https://bugs.gnu.org/30836>. Reported by Konrad Hinsen <konrad.hinsen@fastmail.net>. * guix/import/elpa.scm (elpa-package->sexp): Add LICENSE parameter and honor it. (elpa->guix-package): Pass 'license:gpl3+ only when REPO is 'gnu.
* import: elpa: Fix typos in documentation stringsKonrad Hinsen2018-03-18
| | | | | | * guix/import/elpa.scm: Fix typos in docstrings. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* import: elpa: use https in download URLsKonrad Hinsen2018-03-18
| | | | | | * guix/import/elpa.scm (elpa-url): Use HTTPS. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* import: cpan: Drop "v" prefix from version strings.Ludovic Courtès2018-03-01
| | | | | | | | Fixes <https://bugs.gnu.org/30641>. Reported by Oleg Pykhalov <go.wigust@gmail.com>. * guix/import/cpan.scm (cpan-version): Drop the "v" prefix when it is there.
* import: utils: 'alist->package' allows false license.Ludovic Courtès2018-02-16
| | | | | | | | | | Reported by <pkill9@runbox.com>. Fixes <https://bugs.gnu.org/30470>. * guix/import/utils.scm (alist->package): Check whether 'license' is false and set the 'license' field to #f in this case. * tests/import-utils.scm ("alist->package with false license"): New test.
* gnu: Use one spelling for ‘copyright’.Tobias Geerinckx-Rice2018-01-10
| | | | | | | | | | * gnu/packages/gtk.scm: Standardise on ‘copyright’ spelling in file headers. * gnu/packages/pdf.scm: Likewise. * gnu/packages/perl-check.scm: Likewise. * gnu/packages/perl.scm: Likewise. * guix/import/gem.scm: Likewise. * guix/import/hackage.scm: Likewise.
* import: crate: Gracefully deal with missing license info.Ludovic Courtès2018-01-08
| | | | | | | | Reported by Fis Trivial <ybbs.daans@hotmail.com>. Fixes <https://bugs.gnu.org/28987>. * guix/import/crate.scm (crate-fetch): Check whether the "license" info is present.
* guix: Add archive support for bioconductor-uri.Ricardo Wurmus2017-11-07
| | | | | | * guix/build-system/r.scm (bioconductor-uri): Also return the archive URL. * guix/import/cran.scm (latest-bioconductor-release, fetch-description): Adjust because bioconductor-uri now returns a list.
* import: cran: Use Bioconductor 3.6 helpers.Ricardo Wurmus2017-11-07
| | | | | | | * guix/import/cran.scm (bioconductor-mirror-url): Remove procedure. (fetch-description): Extract DESCRIPTION file from tarball for Bioconductor packages. (latest-bioconductor-release): Use latest-bioconductor-package-version.
* import: cran: Add support for Bioconductor 3.6.Ricardo Wurmus2017-11-07
| | | | | | | * guix/import/cran.scm (%bioconductor-version, %bioconductor-packages-list-url): New variables. (bioconductor-packages-list, latest-bioconductor-package-version): New procedures.
* import: utils: Add string helpers.Ricardo Wurmus2017-11-07
| | | | * guix/import/utils.scm (read-lines, chunk-lines): New procedures.
* Revert "import: cpan: Use HTTPS for home pages."Tobias Geerinckx-Rice2017-10-30
| | | | | This reverts commit 29f7bf59d5d4d4b848eaedc6766bb4e02cae20d3: HTTPS support at search.cpan.org is unreliable, at best. Don't rely on it.
* import: cpan: Use HTTPS for home pages.Tobias Geerinckx-Rice2017-10-29
| | | | | * guix/import/cpan.scm (cpan-home): Use HTTPS. * tests/cpan.scm ("cpan->guix-package"): Expect it.
* import: cpan: Actually use CPAN-HOME.Tobias Geerinckx-Rice2017-10-29
| | | | * guix/import/cpan.scm (cpan-module->sexp): Use the CPAN-HOME procedure.
* import: cpan: Add trailing "/" to CPAN-HOME.Tobias Geerinckx-Rice2017-10-29
| | | | | | Prevent regression after commit e4bc1727302b0e1e255ea5cf4e2ccf33cafe7296. * guix/import/cpan.scm (cpan-home): Add trailing "/".
* import: cpan: Add trailing "/" on home-page.Eric Bavier2017-10-28
| | | | | | | | This appeases 'guix lint', which otherwise complains about permanent redirects. * guix/import/cpan.scm (cpan-module->sexp): Add trailing "/" on home-page. * tests/cpan.scm ("cpan->guix-package"): Adjust accordingly.
* import: cpan: Propagate imported dependencies.Eric Bavier2017-10-28
| | | | | | | This is most often the need for perl module dependencies. * guix/import/cpan.scm (cpan-module->sexp): 'inputs -> 'propagated-inputs. * tests/cpan.scm ("cpan->guix-package"): Adjust accordingly.
* import: elpa: Do not abort when failing to download the archive.Ludovic Courtès2017-10-28
| | | | | | | * guix/import/elpa.scm (elpa-fetch-archive): Use 'http-fetch/cached' directly instead of 'call-with-downloaded-file'. This ensures we don't just abort when networking access is lacking, which is required to allow 'guix refresh -c refresh' to proceed.
* import: github: Gracefully handle multiple-URL origins.Ludovic Courtès2017-10-28
| | | | | * guix/import/github.scm (latest-release)[origin-github-uri]: New procedure. Use it.
* Use HTTPS for bioconductor.org.Tobias Geerinckx-Rice2017-10-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/guix.texi (Invoking guix import, Invoking guix refresh): Use HTTPS for bioconductor.org URLs. * gnu/packages/bioinformatics.scm (r-annotate, r-geneplotter, r-genefilter) (r-deseq2, r-dexseq, r-annotationforge, r-rbgl, r-gseabase, r-category) (r-gostats, r-shortread, r-biocgenerics, r-biocinstaller, r-biocviews) (r-biocstyle, r-bioccheck, r-s4vectors, r-iranges, r-genomeinfodbdata) (r-genomeinfodb, r-xvector, r-genomicranges, r-biobase, r-annotationdbi) (r-biomart, r-biocparallel, r-biostrings, r-rsamtools, r-delayedarray) (r-summarizedexperiment, r-genomicalignments, r-rtracklayer) (r-genomicfeatures, r-graph, r-topgo, r-bsgenome, r-impute, r-seqpattern) (r-seqlogo, r-motifrg, r-bamsignals, r-mutationalpatterns, r-tximport) (r-rhdf5, r-chipseq, r-sva, r-affy, r-vsn, r-mzid, r-msnid) (r-interactivedisplaybase, r-annotationhub)[home-page]: Likewise. * gnu/packages/bioinformatics.scm (r-txdb-hsapiens-ucsc-hg19-knowngene) (r-go-db, r-bsgenome-hsapiens-1000genomes-hs37d5, r-org-hs-eg-db) (r-org-ce-eg-db, r-org-dm-eg-db, r-org-mm-eg-db) (r-bsgenome-hsapiens-ucsc-hg19, r-bsgenome-mmusculus-ucsc-mm9) (r-bsgenome-mmusculus-ucsc-mm10, r-txdb-mmusculus-ucsc-mm10-knowngene) (r-bsgenome-celegans-ucsc-ce6, r-bsgenome-celegans-ucsc-ce10) (r-bsgenome-dmelanogaster-ucsc-dm3, r-copyhelper)[source, home-page]: Likewise. * gnu/packages/statistics.scm (r-rcurl)[source]: Likewise. * guix/build-system/r.scm (bioconductor-uri): Likewise. * guix/import/cran.scm (%cran-url, bioconductor-package?) (bioconductor-data-package?, bioconductor-experiment-package?): Likewise.
* import: cpan: Load (gnu packages perl) lazily.Ludovic Courtès2017-10-10
| | | | | | * guix/import/cpan.scm: Remove dependency on (gnu packages perl). (perl-package): New procedure. (%corelist, core-module?): Use it instead of referring to 'perl'.
* import: pypi: Remove unneeded import.Ludovic Courtès2017-10-10
| | | | * guix/import/pypi.scm: Remove unneeded import.
* import: Add generic data to package converter.Ricardo Wurmus2017-09-28
| | | | | | * guix/import/utils.scm (build-system-modules, lookup-build-system-by-name, specs->package-lists, source-spec->object, alist->package): New procedures. * tests/import-utils.scm: Add tests for alist->package.