summaryrefslogtreecommitdiff
path: root/guix
AgeCommit message (Expand)Author
2017-11-24gnu-maintenance: Relax recursion cutoff in 'latest-ftp-release'....Fixes <https://bugs.gnu.org/25020>. Reported by Hartmut Goebel <h.goebel@crazy-compilers.com>. * guix/gnu-maintenance.scm (latest-ftp-release)[contains-digit?]: Remove. Relax test as to whether to recurse into subdirectories. Ludovic Courtès
2017-11-24ui: 'known-variable-definition' protects against module cycles....Fixes <https://bugs.gnu.org/29358>. Reported by Marius Bakke <mbakke@fastmail.com>. * guix/ui.scm (known-variable-definition): Add 'visited' set to guard against cycles on 2.0. Ludovic Courtès
2017-11-21Revert "Add (guix self) and use it when pulling."...This reverts commit 5f93d97005897c2d859f0be1bdff34c88467ec61. 'guix pull' would fail because (guix self) needs 'scheme-files' from (guix discovery), which was not exported until now. Ludovic Courtès
2017-11-21Add (guix self) and use it when pulling....This mitigates <https://bugs.gnu.org/27284>. * guix/self.scm: New file. * Makefile.am (MODULES): Add it. * build-aux/build-self.scm (libgcrypt, zlib, gzip, bzip2, xz) (false-if-wrong-guile, package-for-current-guile, guile-json) (guile-ssh, guile-git, guile-bytestructures): Remove. (build): Rewrite to simply delegate to 'compiled-guix'. * gnu/packages.scm (%distro-root-directory): Rewrite to try different directories. * guix/discovery.scm (guix): Export 'scheme-files'. * guix/scripts/pull.scm (build-and-install): Split into... (install-latest): ... this. New procedure. And... (build-and-install): ... this, which now takes a monadic value argument. (indirect-root-added): Remove. (guix-pull): Call 'add-indirect-root'. Call 'build-from-source' and pass the result to 'build-and-install'. Ludovic Courtès
2017-11-21git: Do not add '.git' to the store....This makes 'latest-repository-commit' significantly more efficient and reduces disk usage in the store. * guix/git.scm (copy-to-store)[dot-git?]: New procedure. Pass it as the #:select? argument to 'add-to-store'. Ludovic Courtès
2017-11-21pull: Trim import list....* guix/scripts/pull.scm: Remove useless imports. Ludovic Courtès
2017-11-21gexp: 'directory-union' has a #:quiet? parameter....* guix/gexp.scm (directory-union): Add #:quiet? and honor it. Ludovic Courtès
2017-11-21union: Parametrize the symlink procedure ....* guix/gexp.scm (directory-union): Add #:hard-links and honor it. * guix/build/union.scm (union-build): Add #:symlink parameter. Ludovic Courtès
2017-11-20compile: Put an upper bound on the number of workers....* guix/build/compile.scm (compile-files): Don't use more than 8 workers. Ludovic Courtès
2017-11-20Add semicolon in commands that set GUIX_PROFILE....Fixes <https://bugs.gnu.org/28223>. Reported by Rosebud Uplink <Uplink.Introversion@outlook.com>. * doc/guix.texi (Binary Installation): Add missing semicolon after 'GUIX_PROFILE=' line. (Invoking guix package): Likewise. * gnu/system.scm (operating-system-etc-service)[profile]: Likewise. * guix/build/profiles.scm (build-etc/profile): Likewise. Ludovic Courtès
2017-11-19zlib: Fix race condition when closing gzip ports....Fixes <https://bugs.gnu.org/29335>. * guix/zlib.scm (close-procedure): Remove. (make-gzip-input-port): Do (dup (fileno port)) to get a file descriptor for 'gzdopen'. Close PORT before returning. Use 'gzclose' as the 'close' procedure of the returned port. (make-gzip-output-port): Likewise. Ludovic Courtès
2017-11-19ssh: Use (guix i18n)....* guix/ssh.scm: Use (guix i18n) instead of (guix ui). Ludovic Courtès
2017-11-18licenses: Add cddl1.1....* guix/licenses.scm (cddl1.1): New variable. Julien Lepiller
2017-11-18build-system: texlive: Only make a union of directories....* guix/build/texlive-build-system.scm (configure): Filter the input directories to ensure that source tarballs are excluded. Ricardo Wurmus
2017-11-17build-system/go: Don't let Go executables refer to the Go compiler....* guix/build/go-build-system.scm (remove-store-reference, remove-go-references): New procedures. (%standard-phases): Add 'remove-go-references' phase. * guix/build-system/go.scm (go-build): Add allow-go-reference? key. Leo Famulari
2017-11-17workers: Display backtrace in pre-unwind handler....* guix/workers.scm (worker-thunk): Add (const #f) as the 'catch' handler, and move previous handler as pre-unwind handler. Protect against 'make-stack' returning #f. Ludovic Courtès
2017-11-17workers: 'pool-idle?' returns true only if the workers are idle....Fixes <https://bugs.gnu.org/28779>. Reported by Eric Bavier <bavier@cray.com>. * guix/workers.scm (<pool>)[busy]: New field. (worker-thunk): Add #:idle and #:busy and use them. (make-pool): Pass #:busy and #:idle to 'worker-thunk'. Pass a 'busy' value to '%make-pool'. * guix/workers.scm (pool-idle?): Check whether 'pool-busy' returns zero and adjust docstring. Ludovic Courtès
2017-11-16ui: Add source file name to the package search metrics....* guix/ui.scm (%package-metrics): Include 'package-location'. Increase score of the other fields. Ludovic Courtès
2017-11-16cve: Use 'http-fetch/cached' instead of having custom caching....That way CVE fetching benefits from 'If-Modified-Since' handling. * guix/http-client.scm (http-fetch/cached): Add #:write-cache and #:cache-miss parameters and honor them. * guix/cve.scm (%current-year-ttl, %past-year-ttl): Reduce. (call-with-cve-port): Remove. (write-cache): New procedure. (fetch-vulnerabilities): Rewrite in terms of 'http-fetch/cached'. Ludovic Courtès
2017-11-16download: Improve efficiency of 'write-request' over TLS....This is another instance of <https://bugs.gnu.org/22966>. The Microsoft-IIS/7.5 server at static.nvd.nist.gov would sometimes hang when receiving our requests byte by byte. * guix/build/download.scm (tls-wrap) [!guile-2.0]: Add 'setvbuf' call. Ludovic Courtès
2017-11-14download: Pass the timeout to 'ftp-retr'....This ensures the timeout applies when connecting to the port returned by PASV. * guix/ftp-client.scm (ftp-list): Add #:timeout parameter. Use 'connect*' instead of 'connect' and pass TIMEOUT. (ftp-retr): Likewise. * guix/build/download.scm (ftp-fetch): Pass TIMEOUT to 'ftp-retr'. Ludovic Courtès
2017-11-14grafts: Clarify the status of the workaround for <http://bugs.gnu.org/24659>....* guix/build/graft.scm (mkdir-p*): Annotate. Leo Famulari
2017-11-12download: Use HTTPS for the first ImageMagick mirror....* guix/download.scm (%mirrors)[imagemagick]: Use HTTPS for <sunsite.icm.edu.pl>. Leo Famulari
2017-11-12download: Try FTP servers last....* guix/download.scm (%mirrors)[savannah, kernel.org, apache, xorg, imagemagick]: Re-arrange so that FTP is last. Leo Famulari
2017-11-11git: Check whether 'clone-init-options' is defined....This is a followup to 195f0d05c3f64e17e84b2683a7045a14ec578d61. * guix/git.scm (clone*): Check whether 'clone-init-options' is defined before using it. Ludovic Courtès
2017-11-11download: Work around more bogus HTTP handling in Guile 2.2 <= 2.2.2....Reported by Mark H Weaver <mhw@netris.org> at <https://lists.gnu.org/archive/html/guix-devel/2017-11/msg00190.html>. * guix/build/download.scm (guile-2.2) [write-request-line]: Backport Guile commit 6ad28ae3bc6a6d9e95ab7d70510d12c97673a143. Ludovic Courtès
2017-11-10download: Work around bogus HTTP handling in Guile 2.2 <= 2.2.2....Reported by Konrad Hinsen <konrad.hinsen@fastmail.net> at <https://lists.gnu.org/archive/html/guix-devel/2017-11/msg00070.html>. * guix/build/download.scm (write-request-line) [guile-2.2]: New procedure. Ludovic Courtès
2017-11-10git: Work around wrong default argument of 'clone'....Fixes <https://bugs.gnu.org/29238>. Reported by Benjamin Andresen <benny@in-ulm.de>. * guix/git.scm (clone*): Pass second argument to 'clone'. Ludovic Courtès
2017-11-09ui: Add an 'unbound-variable' exception printer....* guix/ui.scm (print-unbound-variable-error): New variable. Use it as the 'unbound-variable' printer. Ludovic Courtès
2017-11-09ui: Provide hints for unbound-variable errors....* guix/ui.scm (known-variable-definition): New procedure. (report-load-error): Handle 'unbound-variable'. Ludovic Courtès
2017-11-09ui: Add 'display-hint'....* guix/ui.scm (known-variable-definition): New procedure. (report-load-error): Use it. Ludovic Courtès
2017-11-08ui: Define and honor '&error-location' and '&fix-hint' conditions....* guix/utils.scm (&error-location, &fix-hint): New condition types. * guix/ui.scm (report-load-error): Handle them. (call-with-error-handling): Honor '&error-location'. Ludovic Courtès
2017-11-08ui: Introduce (guix i18n)....* guix/ui.scm (G_, N_, _P, %gettext-domain, %package-text-domain): Move to... * guix/i18n.scm: ... here. New file. Ludovic Courtès
2017-11-07guix: Add archive support for bioconductor-uri....* 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. Ricardo Wurmus
2017-11-07import: cran: Use Bioconductor 3.6 helpers....* 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. Ricardo Wurmus
2017-11-07import: cran: Add support for Bioconductor 3.6....* guix/import/cran.scm (%bioconductor-version, %bioconductor-packages-list-url): New variables. (bioconductor-packages-list, latest-bioconductor-package-version): New procedures. Ricardo Wurmus
2017-11-07import: utils: Add string helpers....* guix/import/utils.scm (read-lines, chunk-lines): New procedures. Ricardo Wurmus
2017-11-07refresh: Account for hidden packages....Suggested by Marius Bakke <mbakke@fastmail.com> in <https://bugs.gnu.org/29177>. * guix/scripts/refresh.scm (all-packages): Pass #:select? to 'fold-packages'. Ludovic Courtès
2017-11-07compile: Fix VPATH builds....Fixes <https://bugs.gnu.org/29091>. Reported by Eric Bavier <bavier@cray.com>. * guix/build/compile.scm (relative-file): New procedure. (load-files): Use it before calling 'file-name->module-name'. (compile-files): Likewise before calling 'scm->go'. * guix/build/pull.scm (build-guix): Remove 'with-directory-excursion' and file name hack from ce33c3af76b0e5c68cc42dddf2b9c4b017386fd8. Pass OUT to 'all-scheme-files'. Ludovic Courtès
2017-11-07Fix ambiguous imports....* gnu/packages/ocaml.scm: Hide 'zip' from (srfi srfi-1). * guix/git.scm: Select 'mkdir-p' from (guix build utils). Ludovic Courtès
2017-11-05guix: records: Add match-record....* guix/records.scm: New syntax-rule. Signed-off-by: Ludovic Courtès <ludo@gnu.org> nee
2017-11-01download: Refresh the cpan.org mirror list....* guix/download.scm (%mirrors)[cpan]: Update the list of CPAN mirrors (of which several are dead) with a more-or-less geographically diverse selection. Tobias Geerinckx-Rice
2017-10-30Revert "import: cpan: Use HTTPS for home pages."...This reverts commit 29f7bf59d5d4d4b848eaedc6766bb4e02cae20d3: HTTPS support at search.cpan.org is unreliable, at best. Don't rely on it. Tobias Geerinckx-Rice
2017-10-29import: cpan: Use HTTPS for home pages....* guix/import/cpan.scm (cpan-home): Use HTTPS. * tests/cpan.scm ("cpan->guix-package"): Expect it. Tobias Geerinckx-Rice
2017-10-29import: cpan: Actually use CPAN-HOME....* guix/import/cpan.scm (cpan-module->sexp): Use the CPAN-HOME procedure. Tobias Geerinckx-Rice
2017-10-29import: cpan: Add trailing "/" to CPAN-HOME....Prevent regression after commit e4bc1727302b0e1e255ea5cf4e2ccf33cafe7296. * guix/import/cpan.scm (cpan-home): Add trailing "/". Tobias Geerinckx-Rice
2017-10-28import: cpan: Add trailing "/" on home-page....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. Eric Bavier
2017-10-28import: cpan: Propagate imported dependencies....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. Eric Bavier
2017-10-28graph: Remove mention of Graphviz from the summary line....* guix/scripts/graph.scm (show-help): Remove mention of Graphviz from the summary line. Ludovic Courtès
2017-10-28import: elpa: Do not abort when failing to download the archive....* 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. Ludovic Courtès