summaryrefslogtreecommitdiff
path: root/guix
AgeCommit message (Expand)Author
2019-06-02compile: Adjust for Guile 3....* guix/build/compile.scm (%default-optimizations): Adjust to the new names in Guile 2.9.2. Ludovic Courtès
2019-06-02progress: Provide the proper type for %PROGRESS-INTERVAL....The (srfi srfi-19) module of Guile 2.9.2 catches the wrong type. * guix/progress.scm (%progress-interval): Change type to TIME-DURATION. Ludovic Courtès
2019-06-01lzlib: 'make-lzip-input-port' better handles end of decompression....Suggested by Pierre Neidhardt <mail@ambrevar.xyz>. * guix/lzlib.scm (lzread!): Call 'lz-decompress-finish' when 'feed-decoder!' returns EOF. Call 'lz-decompress-finished?' to determine end of compression. Ludovic Courtès
2019-06-01import: hackage: Update list of ghc-included packages....Update the list of excepted dependencies for current ghc-8.4, based on the release notes at https://downloads.haskell.org/~ghc/8.4.3/docs/html/users_guide/8.4.3-notes.html Particularly, this adds `text` to the list, which is a dependency of `parsec` which was already on the list before, causing build failures with updated versions of the `text` package. * guix/import/hackage.scm (ghc-standard-libraries): Update list. Signed-off-by: Ricardo Wurmus <rekado@elephly.net> Robert Vollmert
2019-05-29publish: Factorize 'compress-nar'....* guix/scripts/publish.scm (compress-nar): New procedure. (bake-narinfo+nar): Use it. Ludovic Courtès
2019-05-29publish: Remove outdated comment....* guix/scripts/publish.scm (make-request-handler): Remove outdated TODO. Ludovic Courtès
2019-05-28import: cran: Ignore invalid packages from the system requirements....* guix/import/cran.scm (description->package): Filter invalid packages from the list of system requirements. Ricardo Wurmus
2019-05-28self: Fix unquoting....This is a follow-up to commit dfc69e4b6d4bbc41a4d37b3cc6ea12adb34aaafa. * guix/self.scm (whole-package): Unquote %storedir in the daemon wrapper. Ricardo Wurmus
2019-05-27publish: Display the compression method and level in use....* guix/scripts/publish.scm (guix-publish): Use 'info' instead of 'format' for the initial message. When COMPRESSION is true, display the method and level in use. Ludovic Courtès
2019-05-27lzlib: 'lzread!' never returns more than it was asked for....Fixes a bug whereby 'lzread!' could return more than COUNT. * guix/lzlib.scm (lzread!): Rewrite in a semi-functional style. Ludovic Courtès
2019-05-27self: Add dependency on lzlib....* guix/self.scm (compiled-guix): Pass #:lzlib to 'make-config.scm'. (make-config.scm): Add #:lzlib and honor it. (specification->package): Add "lzlib". Ludovic Courtès
2019-05-27publish: Add support for lzip....* guix/scripts/publish.scm (show-help, %options): Support '-C METHOD' and '-C METHOD:LEVEL'. (default-compression): New procedure. (bake-narinfo+nar): Add lzip. (nar-response-port): Likewise. (string->compression-type): New procedure. (make-request-handler): Generalize /nar/gzip handler to handle /nar/lzip as well. * tests/publish.scm ("/nar/lzip/*"): New test. ("/*.narinfo with lzip compression"): New test. * doc/guix.texi (Invoking guix publish): Document it. (Requirements): Mention lzlib. Ludovic Courtès
2019-05-27utils: Support compression and decompression with lzip....* guix/utils.scm (lzip-port): New procedure. (decompressed-port, compressed-port, compressed-output-port): Add 'lzip case. * tests/utils.scm <top level>: Call 'test-compression/decompression' for 'lzip as well. Ludovic Courtès
2019-05-27lzlib: Add 'make-lzip-input-port/compressed'....* guix/lzlib.scm (lzwrite!, make-lzip-input-port/compressed): New procedures. * tests/lzlib.scm ("make-lzip-input-port/compressed"): New test. * guix/tests.scm (%seed): Export. Ludovic Courtès
2019-05-27lzlib: Adjust 'lz-compress-read' docstring....* guix/lzlib.scm (lz-compress-read): The integer return can be zero; adjust docstring accordingly. Ludovic Courtès
2019-05-26import: hackage: Fix Cabal test....* guix/import/hackage.scm (hackage->guix-package): Remove call to 'memoize'. (hackage->guix-package/m): New procedure. (hackage-recursive-import): Use it. * tests/hackage.scm ("hackage->guix-package test 6"): Adjust. Co-authored-by: Robert Vollmert <rob@vllmrt.net> Ludovic Courtès
2019-05-26discovery: 'all-modules' returns modules in path order....A particular effect of this is that if there are ambiguous packages in a directory specified with `-L module_dir` and the distribution, the version from `module_dir` will be loaded, which is usually what would be expected. (E.g. for `guix build` or `guix package -i`.) * guix/discovery.scm (all-modules): Return modules in path order. * tests/guix-package.sh: Test local definitions take precedence. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Robert Vollmert
2019-05-26self: 'guix-daemon' honors %localstatedir, %sysconfdir, and %storedir....Fixes <https://bugs.gnu.org/35874>. Reported by Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>. Previously, the 'guix-daemon' program provided by 'guix pull' would systematically use default directory locations for these. * guix/self.scm (whole-package)[wrap]: Set GUIX_STATE_DIRECTORY, GUIX_CONFIGURATION_DIRECTORY, and NIX_STORE_DIR. Ludovic Courtès
2019-05-26import: hackage: Recognize "BSD-3-Clause" and "PublicDomain"....* guix/import/hackage.scm (string->license): Add two licenses. Signed-off-by: Marius Bakke <mbakke@fastmail.com> Robert Vollmert
2019-05-26store: Fix 'hash-part->path' docstring....* guix/store.scm (hash-part->path): Adjust docstring to match reality. Ludovic Courtès
2019-05-26publish: Maintain a hash-part-to-store-item mapping in cache....Fixes <https://bugs.gnu.org/33897>. * guix/scripts/publish.scm (hash-part-mapping-cache-file) (hash-part->path*): New procedures. * guix/scripts/publish.scm (render-narinfo/cached)[delete-entry]: Delete the 'hash-part-mapping-cache-file'. Use 'hash-part->path*' instead of 'hash-part->path'. * tests/publish.scm ("with cache, vanishing item"): New test. Ludovic Courtès
2019-05-23import: cran: Ignore invalid packages....* guix/import/cran.scm (invalid-packages): New variable. (description->package): Use it. Ricardo Wurmus
2019-05-22weather: Accept package specs on the command line....Previously, non-option arguments would be ignored. Now it puts them to good use. * guix/scripts/weather.scm (guix-weather)[package-list]: New procedure. Use it. * doc/guix.texi (Invoking guix weather): Adjust accordingly. Ludovic Courtès
2019-05-22pack: Warn when building an empty pack....* guix/scripts/pack.scm (guix-pack): Warn when MANIFEST has zero entries. Ludovic Courtès
2019-05-22pack: Add '--root'....* guix/scripts/pack.scm (%options, show-help): Add "--root". (guix-pack): Honor it. * tests/guix-pack.sh: Test it. * doc/guix.texi (Invoking guix pack): Document it. Ludovic Courtès
2019-05-20self: Remove unused variables....* guix/self.scm (info-manual)[po4a, gettext]: Remove. Ludovic Courtès
2019-05-16guix system: Type-check the file or expression....Previously, users would get a wrong-type-arg exception down the road with an intimidating backtrace. * guix/scripts/system.scm (process-action)[ensure-operating-system]: New procedure. Use it. Ludovic Courtès
2019-05-15docker: 'build-docker-image' accepts an optional #:entry-point....* guix/docker.scm (config): Add #:entry-point and honor it. (build-docker-image): Likewise. Ludovic Courtès
2019-05-15import: github: Sort releases before picking the latest one....* guix/import/github.scm (latest-released-version): Sort releases before picking the first one as the latest. Arun Isaac
2019-05-15import: github: Improve readability....* guix/import/github.scm (latest-released-version)[release->version]: Separate out release->version as a new function. Arun Isaac
2019-05-14guix build: Gracefully handle invalid '--with-git-url' specs....* guix/scripts/build.scm (transform-package-source-git-url): Add case for when 'string-split' does not return exactly two elements. Ludovic Courtès
2019-05-13vm: Auto-detect if inputs should be registered....The default value of the argument REGISTER-CLOSURE? of the ISO9660-IMAGE, QEMU-IMAGE and SYSTEM-DOCKER-IMAGE procedures can be computed automatically, since the operating-system definition is available in its context. When the operating-system definition does not contain the GUIX-SERVICE-TYPE, do not register the closure in the database of Guix, as it takes time and doesn't serve a purpose. * gnu/system/vm.scm (has-guix-service-type): Add predicate. (iso9660-image)[register-closures?]: Use it to compute the argument's default value. (qemu-image)[register-closures?]: Likewise, and update docstring. (system-docker-image)[register-closures?]: Likewise. (system-disk-image): Do not explicit a value for the REGISTER-CLOSURES? argument of the ISO9660-IMAGE and QEMU-IMAGE procedure calls, so that its default value is used instead. * guix/scripts/system.scm (system-derivation-for-action): Do not explicit a value for the REGISTER-CLOSURES? argument of the SYSTEM-DOCKER-IMAGE procedure call, so that its default value is used instead. Maxim Cournoyer
2019-05-14linux-container: Support container network sharing....* gnu/system/linux-container.scm (container-essential-services): If network is to be shared with the host, remove network configuration files from etc service. (containerized-operating-system): If network is to be shared with the host, remove nscd service and map host's /var/run/nscd if it exists. (container-script): If network is to be shared with the host, do not create network namespace. * guix/scripts/system.scm (system-derivation-for-action): Add #:container-shared-network? argument. (perform-action): Add #:container-shared-network? argument. (show-help): Add "-N, --network" help information. (%options): Add network option. (process-action): Call perform-action with #container-shared-network? argument. * doc/guix.texi (Invoking guix system): Document the "-N, --network" option. Co-authored-by: Christopher Baines <mail@cbaines.net> Arun Isaac
2019-05-13download: Support 'https_proxy'....* guix/build/download.scm (setup-http-tunnel): New procedure. (open-connection-for-uri): Honor the 'https_proxy' environment variable. 宋文武
2019-05-12gnu-maintenance: Update URL for package databases....The databases migrated away from the Womb a couple of days ago. * guix/gnu-maintenance.scm (%gnumaint-base-url): Update URL. Ludovic Courtès
2019-05-10build/cargo-utils: Remove "src-name" parameter....* gnu/packages/gnuzilla.scm (icecat)[arguments]<#:phases> [patch-cargo-checksums]: Delete "null-file" variable. * gnu/packages/rust.scm (%cargo-reference-project-file): Delete variable. * gnu/packages/rust.scm (rust-1.19): Remove reference to "%cargo-reference-project-file". * guix/build/cargo-utils.scm (generate-checksums): Remove "src-name" parameter. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org> Ivan Petkov
2019-05-09syscalls: Add 'arp-network-interface?'....* guix/build/syscalls.scm (IFF_NOARP): New variable. (arp-network-interface?): New public procedure. Marius Bakke
2019-05-09pull: Display 'hash guix' hint when the new and old 'guix' are different....Fixes <https://bugs.gnu.org/35601>. Reported by Diego Nicola Barbato <dnbarbato@posteo.de>. Previously we were calling (which "guix") after the new profile had been built and symlinked, so in most cases the hint would not be triggered, even though it should have been triggered. * guix/scripts/pull.scm (build-and-install)[guix-command]: New variable. Compare PROFILE/bin/guix against GUIX-COMMAND. Ludovic Courtès
2019-05-09ui: Make package outputs searchable....* guix/ui.scm (relevance): Allow the "field" procedure of a metric to return a list, and handle that case appropriately. Update docstring. (%package-metrics): Add a metric for package outputs. * guix/scripts/package.scm (find-packages-by-description): Update docstring. * tests/guix-package.sh: Add a test case to verify that package outputs are included in search results. Co-authored-by: Tobias Geerinckx-Rice <me@tobias.gr> Chris Marusich
2019-05-09Add (guix bzr-download)....* guix/bzr-download.scm, guix/build/bzr.scm, etc/snippets/scheme-mode/guix-bzr-reference: New files. * Makefile.am (MODULES): Add them. * etc/snippets/scheme-mode/guix-origin: Add "bzr-fetch" to the origin choices. Maxim Cournoyer
2019-05-07guix: Simplify and robustify lzread!....* guix/lzlib.scm (lzread!): Do it. Previously lzread! would fail if COUNT was bigger than (lz-decompress-write-size). This is possible if a previous call to lzread! didn't empty the LZ_decompress input buffer (e.g. BV was too small to fit all the data). Pierre Neidhardt
2019-05-07environment: Non ad-hoc mode also honors transformation options....Fixes <https://bugs.gnu.org/35618>. Reported by Florent Pruvost <florent.pruvost@inria.fr>. * guix/scripts/environment.scm (options/resolve-packages): Add call to TRANSFORM in non "ad-hoc" case. * tests/guix-environment.sh: Add test. Ludovic Courtès
2019-05-06Add (guix lzlib)....* guix/lzlib.scm, tests/lzlib.scm: New files. * Makefile.am (MODULES): Add guix/lzlib.scm. (SCM_TESTS): Add tests/lzlib.scm. * m4/guix.m4 (GUIX_LIBLZ_LIBDIR): New macro. * configure.ac (LIBLZ_LIBDIR): Use it. Define and substitute 'LIBLZ'. * guix/config.scm.in (%liblz): New variable. * guix/self.scm (make-config.scm): Add TODO comment. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Pierre Neidhardt
2019-05-05build: go-build-system: Follow-up to commit f42e4ebb56....This follows commit f42e4ebb56, which made it so that the unpack phase return value could be left unspecified. * guix/build/go-build-system.scm (unpack): Ensure that the value returned upon a successful completion of the phase is #t. Maxim Cournoyer
2019-05-05build: go-build-system: Follow-up commit....There was an extraneous pair of parens in commit 7e84d3eef7. Thanks for Mark Weaver for reporting the issue. * guix/build/go-build-system.scm (unpack): Remove the extraneous pair of parentheses surrounding the `display' function call. Maxim Cournoyer
2019-05-05build: go-build-system: Ensure uniform unpacking directory....Depending on whether the source is a directory or an archive, we strip the source directory or preserve it, respectively. This change makes it so that whether the type of the source, it is unpacked at the expected location given by the IMPORT-PATH of the Go build system. * guix/build/go-build-system.scm: Add the (ice-9 ftw) module. (unpack): Add inner procedure to maybe strip the top level directory of an archive, document it and use it. Maxim Cournoyer
2019-05-05build: go-build-system: Use WHEN for side-effect conditionals....* guix/build/go-build-system.scm (unpack): Replace single branch `if' by `when'. Maxim Cournoyer
2019-05-05build: go-build-system: Re-ident....* guix/build/go-build-system.scm (unpack): Fix indentation. Maxim Cournoyer
2019-05-06guix: Update to Bioconductor 3.9....* guix/build-system/r.scm (bioconductor-uri): Use 3.9 archive URL. * guix/import/cran.scm (%bioconductor-version): Update to 3.9. Ricardo Wurmus
2019-05-02Merge branch 'version-1.0.0'Ludovic Courtès