Age | Commit message (Expand) | Author |
2015-12-14 | gexp: 'local-file' resolves relative file names....* 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.
| Ludovic Courtès |
2015-12-14 | profiles: Silence Info installation....* guix/profiles.scm (info-dir-file)[build]: Pass --silent to
'install-info'.
| Ludovic Courtès |
2015-12-13 | guix build: Gracefully handle type errors in -e and -f....* guix/scripts/build.scm (options->things-to-build)[validate-type]: New
procedure.
[ensure-list]: Use it.
| Ludovic Courtès |
2015-12-13 | guix build: Remove dead code....* guix/scripts/build.scm (options->things-to-build): Remove unused
'match' clause.
| Ludovic Courtès |
2015-12-11 | import: cran: Parse DESCRIPTION instead of HTML....* 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.
| Ricardo Wurmus |
2015-12-11 | import: cran: Match more license strings....* guix/import/cran.scm (string->license): Match more license strings to
license symbols.
| Ricardo Wurmus |
2015-12-09 | gnu-maintenance: Really find the latest GNOME releases....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.
| Ludovic Courtès |
2015-12-09 | guix build: Add '--check'....* 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.
| Ludovic Courtès |
2015-12-09 | derivations: Determine what's built in 'check' mode....* 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.
| Ludovic Courtès |
2015-12-08 | guix build: Add '--rounds'....* 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.
| Ludovic Courtès |
2015-12-08 | store: Allow clients to request multiple builds....* guix/store.scm (set-build-options): Add #:rounds parameter and honor it.
* tests/store.scm ("build multiple times"): New test.
| Ludovic Courtès |
2015-12-08 | gnu-maintenance: Exclude development releases from GNOME update candidates....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.
| Ludovic Courtès |
2015-12-07 | gnu-maintenance: ftp.gnome.org does not provide signatures....* 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.
| Ludovic Courtès |
2015-12-07 | gnu-maintenance: Add GNOME updater....* 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.
| Ludovic Courtès |
2015-12-07 | gnu-maintenance: Generalize 'latest-ftp-release'....* guix/gnu-maintenance.scm (latest-release): Rename to...
(latest-ftp-release): ... this. Add #:server and #:directory
parameters.
(latest-release): New procedure.
| Ludovic Courtès |
2015-12-07 | refresh: Bail out when asked for a nonexistent updater....* guix/scripts/refresh.scm (lookup-updater): Call 'leave' when 'find'
returns #f.
| Ludovic Courtès |
2015-12-07 | gnu-maintenance: Do not look for releases in "w32" sub-directories....* guix/gnu-maintenance.scm (latest-release): Filter out "w32"
directories.
| Ludovic Courtès |
2015-12-07 | gnu-maintenance: Add tests for 'release-file?'....* tests/gnu-maintenance.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
* guix/gnu-maintenance.scm (release-file?): Export.
| Ludovic Courtès |
2015-12-07 | gnu-maintenance: Properly handle TeXmacs....* guix/gnu-maintenance.scm (ftp-server/directory): Add comment.
(release-file?): Use 'string-ci=?' instead of 'equal?' when comparing
project names.
| Ludovic Courtès |
2015-12-07 | gnu-maintenance: Adjust tarball regexp for IceCat tarballs....* guix/gnu-maintenance.scm (%tarball-rx): Tweak to match IceCat tarball
patterns.
| Ludovic Courtès |
2015-12-07 | gnu-maintenance: Fix URLs returned by 'latest-release' for deep trees....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.
| Ludovic Courtès |
2015-12-06 | edit: Don't assume that an emacs daemon is running....* guix/scripts/edit.scm (%editor): Use Emacs as a default value.
| Mathieu Lirzin |
2015-12-06 | edit: Allow command line arguments in $VISUAL and $EDITOR....* guix/scripts/edit.scm (guix-edit): Fix the assumption that %editor is
a one word command.
| Mathieu Lirzin |
2015-12-04 | profiles: Silence GTK+ icon cache creation....Suggested by Ricardo Wurmus <rekado@elephly.net>.
* guix/profiles.scm (gtk-icon-themes)[build]: Pass --quiet to
'gtk-update-icon-cache'.
| Ludovic Courtès |
2015-12-04 | profiles: Silence GTK+ icon theme union....Suggested by Ricardo Wurmus <rekado@elephly.net>.
* guix/profiles.scm (gtk-icon-themes)[build]: Pass 'union-build' a
#:log-port argument.
| Ludovic Courtès |
2015-12-04 | store: 'build-things' now supports older daemon protocols....This is a followup to d203d3d.
* guix/store.scm (build-things): Add 'build/old'. Use it when STORE's
minor version is less than 15.
| Ludovic Courtès |
2015-12-03 | store: Add mode parameter to 'build-paths'....* guix/store.scm (%protocol-version): Set minor to 15.
(build-mode): New enumerate type.
(build-things): Add 'mode' parameter; pass it to the RPC.
* tests/store.scm ("build-things, check mode"): New check.
| Ludovic Courtès |
2015-12-03 | store: Update to the new daemon protocol....* guix/store.scm (%protocol-version): Set minor to 14.
(open-connection): Add 'cpu-affinity' parameter and honor it.
| Ludovic Courtès |
2015-12-01 | import: pypi: Updater silently ignores packages without source....Reported by Andreas Enge <andreas@enge.fr>
at <https://lists.gnu.org/archive/html/guix-devel/2015-11/msg00764.html>.
* guix/import/pypi.scm (&missing-source-error): New error type.
(latest-source-release): Raise it instead of using 'error'.
(pypi->guix-package): Guard against it and use 'leave' to report the
error.
(latest-release): Guard against it and return #f when caught.
| Ludovic Courtès |
2015-12-01 | guix build: Modularize transformation handling....* guix/scripts/build.scm (options/resolve-packages): Remove.
(options->things-to-build, transform-package-source): New procedure.
(%transformations): New variable.
(options->transformation): New procedure.
(options->derivations): Rewrite to use 'options->things-to-build' and
'options->transformation'.
| Ludovic Courtès |
2015-12-01 | guix package: Refactor 'options->installable'....* guix/scripts/package.scm (options->upgrade-predicate)
(store-item->manifest-entry): New procedures.
* guix/scripts/package.scm (options->installable): Use them. Remove the
'packages-to-upgrade' and 'packages-to-install' variables by getting rid
of a level of indirection.
| Ludovic Courtès |
2015-12-01 | guix package: Move 'process-actions' out of sight....* guix/scripts/package.scm (process-actions): New procedure, moved
from...
(guix-package): ... here. Adjust accordingly.
| Ludovic Courtès |
2015-12-01 | guix package: Formalize the list of actions....* guix/scripts/package.scm (roll-back-action, switch-generation-action)
(delete-generations-action, manifest-action): New procedures.
(%actions): New variable.
* guix/scripts/package.scm (guix-package)[process-action]: Rewrite to
traverse %ACTIONS.
| Ludovic Courtès |
2015-12-01 | guix package: Move 'build-and-use-profile' out of sight....* guix/scripts/package.scm (build-and-use-profile): New procedure.
Adapted and moved from...
(guix-package)[process-actions]: ... here. Adjust call sites.
| Ludovic Courtès |
2015-12-01 | guix package: Move a couple of procedures out of sight....* guix/scripts/package.scm (ensure-default-profile, process-query): New
procedures, moved from...
(guix-package): ... here.
| Ludovic Courtès |
2015-12-01 | guix package: Remove unnecessary use of (%store)....* guix/scripts/package.scm (delete-matching-generations): Use STORE
instead of (%store).
| Ludovic Courtès |
2015-11-29 | gnu: python: Set SOURCE_DATE_EPOCH to 1 instead of 0....* gnu/packages/python.scm (python-2)[arguments]: Set SOURCE_DATE_EPOCH
to 1 to match what the daemon does.
* guix/build/python-build-system.scm (set-SOURCE-DATE-EPOCH): Likewise.
| Ludovic Courtès |
2015-11-29 | gnu: python-2: Honor 'SOURCE_DATE_EPOCH'....* gnu/packages/patches/python-2.7-source-date-epoch.patch: New file.
* gnu/packages/python.scm (python-2)[source]: Use it.
[arguments]: Set SOURCE_DATE_EPOCH in 'patch-lib-shells' phase.
* guix/build/python-build-system.scm (set-SOURCE-DATE-EPOCH): New
procedure.
(%standard-phases): Add it.
* gnu-system.am (dist_patch_DATA): Add patch.
| Ludovic Courtès |
2015-11-29 | refresh: Check updater availability at run time....This is a followup to b68d2db, which added a check for updaters at
macro-expansion time. The problem is that, when running 'guix pull',
Guile-JSON is found, so the PyPi updater (say) is added to %UPDATERS,
but then at run time Guile-JSON might be missing.
Reported by orbea on #guix.
* guix/scripts/refresh.scm (maybe-updater): Rewrite as 'syntax-rules'.
Produce code that checks conditions at run time.
(list-updaters): Update docstring.
| Ludovic Courtès |
2015-11-29 | http-client: 'http-fetch' converts strings to URIs....* guix/http-client.scm (http-fetch): Use 'string->uri' if URI is a
string. Fixes a regression introduced in 8a5063f.
| Ludovic Courtès |
2015-11-29 | guix build: Factorize build log query....* guix/scripts/build.scm (show-build-log): New procedure.
(guix-build): New variable 'items'. Use it and 'show-build-log'.
| Ludovic Courtès |
2015-11-28 | environment: Set build options early on....This fixes a bug whereby some options, such as #:substitute-urls, would
be passed to the daemon too late to have an effect.
* guix/scripts/environment.scm (build-inputs): Remove call to
'set-build-options-from-command-line*'.
(guix-environment): Add call to 'set-build-options-from-command-line' as
early as possible.
| Ludovic Courtès |
2015-11-28 | lint: Do not report already-patched vulnerabilities....* guix/scripts/lint.scm (patch-file-name): New procedure.
(check-vulnerabilities): Use it to filter out patched vulnerabilities.
* tests/lint.scm ("cve: one patched vulnerability"): New test.
| Ludovic Courtès |
2015-11-28 | substitute: Warn upon store prefix mismatches....Suggested by Hynek Urban <hynek.urban@gmail.com>.
* guix/scripts/substitute.scm (fetch-narinfos): Move body to...
[do-fetch]: ... here. New procedure.
Emit a warning when CACHE-INFO's prefix does not match.
| Ludovic Courtès |
2015-11-26 | lint: Add "cve" checker....Fixes <http://bugs.gnu.org/21289>.
* guix/scripts/lint.scm (package-name->cpe-name, package-vulnerabilities)
(check-vulnerabilities): New procedures.
* guix/scripts/lint.scm (%checkers): Add "cve" checker.
* tests/lint.scm ("cve", "cve: one vulnerability"): New tests.
* doc/guix.texi (Invoking guix lint): Mention it.
| Ludovic Courtès |
2015-11-26 | Add (guix cve)....* guix/cve.scm, tests/cve-sample.xml, tests/cve.scm: New files.
* Makefile.am (MODULES): Add guix/cve.scm.
(SCM_TESTS): Add tests/cve.scm.
(EXTRA_DIST): Add tests/cve-sample.scm.
| Ludovic Courtès |
2015-11-26 | http-client: 'http-fetch' and 'http-fetch/cached' support HTTPS....* guix/http-client.scm (http-fetch): Use 'open-connection-for-uri', to
support HTTPS.
| Ludovic Courtès |
2015-11-26 | import: hackage: Assume current 'ghc' package version....* guix/scripts/import/hackage.scm (%default-options): Do it.
(ghc-default-version): New variable.
| Federico Beffa |
2015-11-26 | import: hackage: Handle CRLF end of line style....* guix/import/hackage.scm (hackage-fetch, hackage->guix-package): Use
'canonical-newline-port'.
| Federico Beffa |
2015-11-26 | utils: Add 'canonical-newline-port'....* guix/utils.scm (canonical-newline-port): New procedure.
* tests/utils.scm ("canonical-newline-port"): New test.
| Federico Beffa |