summaryrefslogtreecommitdiff
path: root/guix
AgeCommit message (Collapse)Author
2016-01-06utils: Add 'ensure-keyword-arguments'.Ludovic Courtès
* guix/utils.scm (delkw, ensure-keyword-arguments): New procedures. * tests/utils.scm ("ensure-keyword-arguments"): New test.
2016-01-06http-client: Work around <http://bugs.gnu.org/22273>.Ludovic Courtès
* guix/http-client.scm (read-header-line): New procedure. Use it.
2016-01-06http-client: Fix erroneous comment.Ludovic Courtès
* guix/http-client.scm: Fix Guile version number in comment for Guile commit 5a10e41.
2016-01-06lint: cve: Catch host name lookup errors.Ludovic Courtès
* guix/scripts/lint.scm (package-vulnerabilities): Catch 'getaddrinfo-error'.
2016-01-06build: ruby: Remove cached gem after install.Ben Woodcroft
The .gem file stored in GEM_HOME after install is both redundant and an archive that stores timestamped files which makes builds non-deterministic, so delete it after 'gem install'. * guix/build/ruby-build-system.scm (install): Remove cached gem after install.
2016-01-05build: pull: Compile .scm files in one process.Taylan Ulrich Bayırlı/Kammer
* guix/build/pull.scm (call-with-process, report-build-progress) (p-for-each): Remove. (build-guix): Load and compile files in one process.
2016-01-05build-system/gnu: Add 'set-SOURCE-DATE-EPOCH' phase.Ludovic Courtès
This phase is inherited by other build systems, which ensures 'SOURCE_DATE_EPOCH' is always set in practice. * guix/build/python-build-system.scm (set-SOURCE-DATE-EPOCH): Remove. (%standard-phases): Don't add it. * guix/build/gnu-build-system.scm (set-SOURCE-DATE-EPOCH): New procedure. (%standard-phases): Add it. (gnu-build): Remove 'setenv' call for "SOURCE_DATE_EPOCH".
2016-01-05guix package: Allow multiple '--search' flags.Ludovic Courtès
* guix/scripts/package.scm (find-packages-by-description): Change 'rx' parameter to 'regexps'. [matches-all?, matches-one?]: New procedures. Use them. (process-query): Collect regexps from all 'search' queries, and pass them to 'find-packages-by-description'. * tests/guix-package.sh: Add tests. * doc/guix.texi (Invoking guix package): Document it.
2016-01-05ui: Update copyright year in '--version' output.Ludovic Courtès
* guix/ui.scm (show-version-and-exit): Increment copyright year.
2016-01-05git-download: Correctly implement recursive checkouts.Ludovic Courtès
Previously, the 'git checkout' invocation would remove sub-modules that had been initialized by 'git clone --recursive'. * guix/build/git.scm (git-fetch): Never use "git clone --recursive". Invoke "git submodule update --init --recursive" after "git checkout". Remove '.git' directories as the last step.
2016-01-03Merge branch 'master' into core-updatesLudovic Courtès
2016-01-02graph: %BAG-WITH-ORIGINS-NODE-TYPE includes the origin's guile.Ludovic Courtès
Before that it would include #f for most origins since that the default value of 'origin-patch-guile'. * guix/scripts/graph.scm (bag-node-edges): When 'origin-patch-guile' returns #f, use (default-guile). * tests/graph.scm ("bag DAG, including origins"): Check for an edge from O to (default-guile).
2016-01-02graph: %BAG-EMERGED-NODE-TYPE filters out origins.Ludovic Courtès
Fixes <http://bugs.gnu.org/22280>. Reported by Leo Famulari <leo@famulari.name>. * guix/scripts/graph.scm (%bag-emerged-node-type)[edges]: Mimic %BAG-NODE-TYPE. This is a followup to 38b92da.
2016-01-01build-system/gnu: Use the long option name for deterministic archives.Ludovic Courtès
This is a followup to 3eb34c6. * guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Use "--enable-deterministic-archives" instead of "-D" to work around Binutils bug <https://sourceware.org/bugzilla/show_bug.cgi?id=17671>. * guix/build/gnu-build-system.scm (strip): Likewise.
2015-12-30licenses: Add CC BY SA 3.0.Ricardo Wurmus
* guix/licenses.scm (cc-by-sa3.0): New variable.
2015-12-30guix build: Augment %PATCH-PATH when -L is passed.Ludovic Courtès
Fixes <http://bugs.gnu.org/22259>. Reported by Nikolay Merinov <nikolay.merinov@member.fsf.org>. * guix/scripts/build.scm (%standard-build-options) <-L>: Augment %PATCH-PATH. * tests/guix-package.sh: Add test.
2015-12-25guix package: Fix typo in comment.Leo Famulari
* guix/scripts/package.scm: Fix typo.
2015-12-21build: Add bioconductor-uri procedure.Ricardo Wurmus
* guix/build-system/r.scm (bioconductor-uri): New procedure.
2015-12-21import: Drop empty list items.Ricardo Wurmus
* guix/import/cran.scm (listify): Remove empty strings from result list.
2015-12-21http-client: Support basic authentication.Ricardo Wurmus
* guix/http-client.scm (http-fetch): Add Authorization header to request when the URI contains userinfo.
2015-12-20lint: The CPE name of GRUB is "grub2".Ludovic Courtès
Reported by Leo Famulari. * guix/scripts/lint.scm (package-name->cpe-name): Add "grub".
2015-12-20profiles: Honor search paths of propagated inputs.Ludovic Courtès
Fixes <http://bugs.gnu.org/22073>. Reported by Federico Beffa <beffa@ieee.org>. * guix/profiles.scm (package->manifest-entry): Use 'package-transitive-native-search-paths' when computing 'search-paths' field. * tests/profiles.scm ("package->manifest-entry, search paths"): New test.
2015-12-20packages: Add 'package-transitive-native-search-paths'.Ludovic Courtès
* guix/packages.scm (package-transitive-native-search-paths): New procedure. * tests/packages.scm ("package-transitive-native-search-paths"): New test.
2015-12-18build-system/gnu: Always pass "-D" to strip/objcopy.Ludovic Courtès
* guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Add "-D" to #:strip-flags. * guix/build/gnu-build-system.scm (strip): Likewise. Also pass "-D" to OBJCOPY-COMMAND.
2015-12-14gexp: 'local-file' resolves relative file names.Ludovic Courtès
* guix/gexp.scm (<local-file>): Rename constructor to '%%local-file'. Add 'absolute' field. (%local-file, extract-directory, absolute-file-name): New procedures. (current-source-directory): New macro. (local-file): Adjust call to '%local-file'. (local-file-absolute-file-name): New procedure. (local-file-compiler): Force the 'absolute' field. * tests/guix-system.sh: Test whether 'local-file' canonicalization works. * doc/guix.texi (G-Expressions): Adjust.
2015-12-14profiles: Silence Info installation.Ludovic Courtès
* guix/profiles.scm (info-dir-file)[build]: Pass --silent to 'install-info'.
2015-12-13guix build: Gracefully handle type errors in -e and -f.Ludovic Courtès
* guix/scripts/build.scm (options->things-to-build)[validate-type]: New procedure. [ensure-list]: Use it.
2015-12-13guix build: Remove dead code.Ludovic Courtès
* guix/scripts/build.scm (options->things-to-build): Remove unused 'match' clause.
2015-12-12Merge branch 'master' into core-updatesLudovic Courtès
2015-12-11import: cran: Parse DESCRIPTION instead of HTML.Ricardo Wurmus
* guix/import/cran.scm (description->alist, listify, beautify-description, description->package): New procedures. (table-datum, downloads->url, nodes->text, cran-sxml->sexp): Remove proceduces. (latest-release): Use parsed DESCRIPTION instead of SXML. * tests/cran.scm: Rewrite to match importer.
2015-12-11import: cran: Match more license strings.Ricardo Wurmus
* guix/import/cran.scm (string->license): Match more license strings to license symbols.
2015-12-09gnu-maintenance: Really find the latest GNOME releases.Ludovic Courtès
Reported by Efraim Flashner <efraim@flashner.co.il> at <https://lists.gnu.org/archive/html/guix-devel/2015-12/msg00202.html>. * guix/gnu-maintenance.scm (latest-ftp-release): Call KEEP-FILE? on directories too. (latest-gnome-release)[even-minor-version?]: Protect again MINOR being false; change pattern to match VERSION with two or more numbers. Remove use of 'version-major+minor'. [even-numbered-tarball?]: Rename to... [even-numbered?]: ... this. Use 'package-name->name+version'. When VERSION is #f, check NAME.
2015-12-09guix build: Add '--check'.Ludovic Courtès
* guix/derivations.scm (build-derivations): Add optional 'mode' parameter. * guix/scripts/build.scm (%default-options): Add 'build-mode'. (show-help, %options): Add '--check'. (guix-build): Honor 'build-mode' key of OPTS. Pass it to 'show-what-to-build' and 'build-derivations'. * doc/guix.texi (Invoking guix build): Document it. (Substitutes): Mention it.
2015-12-09derivations: Determine what's built in 'check' mode.Ludovic Courtès
* guix/derivations.scm (substitution-oracle): Add #:mode parameter and honor it. (derivation-prerequisites-to-build): Likewise. [derivation-built?]: Take it into account. * guix/ui.scm (show-what-to-build): Add #:mode parameter. Pass it to 'substitute-oracle' and 'derivations-prerequisites-to-build'. * tests/derivations.scm ("derivation-prerequisites-to-build in 'check' mode"): New test.
2015-12-08guix build: Add '--rounds'.Ludovic Courtès
* guix/scripts/build.scm (show-build-options-help) (%standard-build-options): Add --rounds. (set-build-options-from-command-line): Honor it. * doc/guix.texi (Invoking guix build): Document it. * doc/contributing.texi (Submitting Patches): Mention it.
2015-12-08store: Allow clients to request multiple builds.Ludovic Courtès
* guix/store.scm (set-build-options): Add #:rounds parameter and honor it. * tests/store.scm ("build multiple times"): New test.
2015-12-08gnu-maintenance: Exclude development releases from GNOME update candidates.Ludovic Courtès
Suggested by Efraim Flashner <efraim@flashner.co.il>. * guix/gnu-maintenance.scm (latest-ftp-release): Add #:keep-file? parameter and honor it. (latest-gnome-release)[%not-dot]: New variable. [even-minor-version?, even-numbered-tarball?]: New procedures. Pass EVEN-NUMBERED-TARBALL? as #:keep-file? argument.
2015-12-07gnu-maintenance: ftp.gnome.org does not provide signatures.Ludovic Courtès
* guix/gnu-maintenance.scm (latest-ftp-release): Add #:file->signature parameter. Honor it. (latest-gnome-release): Pass #:file->signature. * guix/upstream.scm (coalesce-sources): Keep 'signature-urls' as #f unless both sources provide it.
2015-12-07gnu-maintenance: Add GNOME updater.Ludovic Courtès
* guix/gnu-maintenance.scm (ftp-server/directory)[quirks]: Remove glib. (false-if-ftp-error): New macro. (latest-release*): Use it. (non-emacs-gnu-package?): Rename to... (pure-gnu-package?): ... this. Add call to 'gnome-package?'. (%gnu-updater): Adjust accordingly. (gnome-package?, latest-gnome-release): New procedures. (%gnome-updater): New variable. * guix/scripts/refresh.scm (%updaters): Add %GNOME-UPDATER. * doc/guix.texi (Invoking guix refresh): Mention it.
2015-12-07gnu-maintenance: Generalize 'latest-ftp-release'.Ludovic Courtès
* guix/gnu-maintenance.scm (latest-release): Rename to... (latest-ftp-release): ... this. Add #:server and #:directory parameters. (latest-release): New procedure.
2015-12-07refresh: Bail out when asked for a nonexistent updater.Ludovic Courtès
* guix/scripts/refresh.scm (lookup-updater): Call 'leave' when 'find' returns #f.
2015-12-07gnu-maintenance: Do not look for releases in "w32" sub-directories.Ludovic Courtès
* guix/gnu-maintenance.scm (latest-release): Filter out "w32" directories.
2015-12-07gnu-maintenance: Add tests for 'release-file?'.Ludovic Courtès
* tests/gnu-maintenance.scm: New file. * Makefile.am (SCM_TESTS): Add it. * guix/gnu-maintenance.scm (release-file?): Export.
2015-12-07gnu-maintenance: Properly handle TeXmacs.Ludovic Courtès
* guix/gnu-maintenance.scm (ftp-server/directory): Add comment. (release-file?): Use 'string-ci=?' instead of 'equal?' when comparing project names.
2015-12-07gnu-maintenance: Adjust tarball regexp for IceCat tarballs.Ludovic Courtès
* guix/gnu-maintenance.scm (%tarball-rx): Tweak to match IceCat tarball patterns.
2015-12-07gnu-maintenance: Fix URLs returned by 'latest-release' for deep trees.Ludovic Courtès
With this, (latest-release "gcc") returns an <upstream-source> with URL: ftp://ftp.gnu.org/gnu/gcc/gcc-5.3.0/gcc-5.3.0.tar.gz Previous it would omit "gcc-5.3.0/" from the URL. Fixes a regression introduced in 0a7c5a0. * guix/gnu-maintenance.scm (latest-release)[file->url, file->source]: Add 'directory' parameter. Update users.
2015-12-06edit: Don't assume that an emacs daemon is running.Mathieu Lirzin
* guix/scripts/edit.scm (%editor): Use Emacs as a default value.
2015-12-06edit: Allow command line arguments in $VISUAL and $EDITOR.Mathieu Lirzin
* guix/scripts/edit.scm (guix-edit): Fix the assumption that %editor is a one word command.
2015-12-04profiles: Silence GTK+ icon cache creation.Ludovic Courtès
Suggested by Ricardo Wurmus <rekado@elephly.net>. * guix/profiles.scm (gtk-icon-themes)[build]: Pass --quiet to 'gtk-update-icon-cache'.
2015-12-04profiles: Silence GTK+ icon theme union.Ludovic Courtès
Suggested by Ricardo Wurmus <rekado@elephly.net>. * guix/profiles.scm (gtk-icon-themes)[build]: Pass 'union-build' a #:log-port argument.