Age | Commit message (Expand) | Author |
2014-11-09 | pull: Use the build procedure provided by the newly-downloaded Guix....Fixes <http://bugs.gnu.org/18534>.
* guix/scripts/pull.scm (with-environment-variable, with-PATH): New
macros.
(temporary-directory, first-directory, interned-then-deleted): New
procedures.
(unpack): Rewrite to do the unpacking in the current process rather
than as a separate derivation.
(%self-build-file): New variable.
(build-from-source): New procedure.
(build-and-install): Use it.
* guix/build/pull.scm (build-guix): Rename 'tarball' argument to
'source'. Remove #:tar and #:gzip parameters, as well as 'tar'
invocation. Remove 'scandir' invocation. Wrap body in
'with-directory-excursion'.
* build-aux/build-self.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
| Ludovic Courtès |
2014-11-09 | gexp: Add #:module-path parameter to 'gexp->derivation'....* guix/gexp.scm (gexp->derivation): Add #:module-path parameter, and
pass it to 'imported-modules' and 'compiled-modules'.
* doc/guix.texi (G-Expressions): Adjust accordingly.
| Ludovic Courtès |
2014-11-08 | vm: Fix 'vm --full-boot' to produce a sufficient disk image....* gnu/system/vm.scm (system-qemu-image/shared-store): Add
#:disk-image-size and #:full-boot? parameters and honor them. Pass
'#:copy-inputs? full-boot?', and change #:inputs argument.
* guix/scripts/system.scm (system-derivation-for-action): Pass
#:disk-image-size to 'system-qemu-image/shared-store'.
* doc/guix.texi (Invoking guix system): Mention use of '--image-size' in
conjunction with '--full-boot'.
| Ludovic Courtès |
2014-11-08 | vm: Support 'guix system vm --full-boot'....* gnu/system/vm.scm (system-qemu-image/shared-store-script): Add
#:full-boot? parameter and honor it.
* guix/scripts/system.scm (system-derivation-for-action): Likewise.
(perform-action): Likewise.
(show-help): Document '--full-boot'.
(%options): Add '--full-boot'.
(guix-system): Add #:full-boot? argument in call to 'perform-action'.
* doc/guix.texi (Invoking guix system): Document it.
| Ludovic Courtès |
2014-11-07 | lint: Allow synopses that start with an abbreviation....* guix/scripts/lint.scm (starts-with-abbreviation?): New procedure.
(check-synopsis-style)[check-start-with-package-name]: Use it.
* tests/lint.scm ("synopsis: start with abbreviation"): New test.
| Ludovic Courtès |
2014-11-07 | lint: Skip starting-article test for the synopses of GNU packages....* guix/scripts/lint.scm (check-synopsis-style)[check-start-article]:
Change to (const #t) when PACKAGE matches 'gnu-package?'.
| Ludovic Courtès |
2014-11-07 | lint: Tolerate sentences that start with a parenthesis or a quote....* guix/scripts/lint.scm (properly-starts-sentence?): Add (, ", and ' as
valid beginnings.
| Ludovic Courtès |
2014-11-07 | lint: Improve check for synopses starting with package name....* guix/scripts/lint.scm (package-name-regexp): New procedure.
(check-synopsis-style)[check-start-with-package-name]: Use it instead
of 'string-prefix-ci?'.
* tests/lint.scm ("synopsis: start with package name prefix"): New test.
| Ludovic Courtès |
2014-11-05 | monads: Remove unused 'nargs' parameter from 'lift'....* guix/monads.scm (lift): Remove 'nargs' parameter.
| Ludovic Courtès |
2014-11-05 | import: pypi: Gracefully handle wrong argument counts....* guix/scripts/import/pypi.scm (guix-import-pypi): Use 'leave' to handle
cases where ARGS has zero or two or more elements.
| Ludovic Courtès |
2014-11-05 | import: pypi: Gracefully handle non-existent packages....Fixes <http://bugs.gnu.org/18831>.
Reported by Ian Denhardt <ian@zenhack.net>.
* guix/import/pypi.scm (url-fetch, json-fetch, pypi-fetch): Augment
docstring to mention #f on failure.
(pypi->guix-package): Likewise, and actually return #f on failure.
* guix/scripts/import/pypi.scm (guix-import-pypi): Call 'leave' when
'pypi->guix-package' returns #f.
| Ludovic Courtès |
2014-11-04 | store: Invalidate caches once GC has run....* guix/store.scm (run-gc): Add calls to 'hash-clear!'.
* tests/store.scm ("add-text-to-store vs. delete-paths",
"add-to-store vs. delete-paths"): New tests.
| Ludovic Courtès |
2014-11-03 | packages: 'package-transitive-supported-systems' accounts for indirect deps....Reported by Andreas Enge <andreas@enge.fr>.
* guix/packages.scm (first-value): New macro.
(package-transitive-supported-systems): Rewrite to traverse all the
DAG rooted at PACKAGE.
* tests/packages.scm ("package-transitive-supported-systems"): Add 'd'
and 'e', and test them.
| Ludovic Courtès |
2014-11-02 | packages: Implement grafts....Thanks to Mark H. Weaver <mhw@netris.org> for insightful discussions
and suggestions.
* guix/packages.scm (<package>)[graft]: New field.
(patch-and-repack): Invoke 'package-derivation' with #:graft? #f.
(package-source-derivation): Likewise. Do not use (%guile-for-build)
in call to 'patch-and-repack', and we could end up using a grafted
Guile.
(expand-input): Likewise, also for 'package-cross-derivation' call.
(package->bag): Add #:graft? parameter. Honor it. Use 'strip-append'
instead of 'package-full-name'.
(input-graft, input-cross-graft, bag-grafts, package-grafts): New
procedures.
(package-derivation, package-cross-derivation): Add #:graft? parameter
and honor it.
* gnu/packages/bootstrap.scm (package-with-bootstrap-guile): Add
recursive call on 'graft'.
* guix/build-system/gnu.scm (package-with-explicit-inputs,
package-with-extra-configure-variable, static-package): Likewise.
(gnu-build): Use the ungrafted Guile to avoid full rebuilds.
(gnu-cross-build): Likewise.
* guix/build-system/cmake.scm (cmake-build): Likewise.
* guix/build-system/glib-or-gtk.scm (glib-or-gtk-build): Likewise.
* guix/build-system/perl.scm (perl-build): Likewise.
* guix/build-system/python.scm (python-build): Likewise.
* guix/build-system/ruby.scm (ruby-build): Likewise.
* guix/build-system/trivial.scm (guile-for-build): Likewise.
* tests/packages.scm ("package-derivation, direct graft",
"package-cross-derivation, direct graft", "package-grafts,
indirect grafts", "package-grafts, indirect grafts, cross",
"package-grafts, indirect grafts, propagated inputs",
"package-derivation, indirect grafts"): New tests.
("bag->derivation", "bag->derivation, cross-compilation"): Wrap in
'parameterize'.
* doc/guix.texi (Security Updates): New node.
(Invoking guix build): Document --no-graft.
| Ludovic Courtès |
2014-11-02 | derivations: Add 'derivation-name'....* guix/derivations.scm (derivation-name): New procedure.
* tests/derivations.scm ("derivation-name"): New test.
| Ludovic Courtès |
2014-10-30 | download: Append (effective-version) to '%load-path' for GnuTLS....* guix/download.scm (url-fetch)[builder]: Append (effective-version) to
%load-path, as discussed at
<http://lists.gnu.org/archive/html/guix-devel/2014-10/msg00398.html>.
This fixes a regression introduced in b94ae0b.
| Ludovic Courtès |
2014-10-30 | environment: Improve '--help' output....* guix/scripts/environment.scm (show-help): Align --pure and
--search-paths with other long options; add 'newline' call before
'show-bug-report-information' call.
| Ludovic Courtès |
2014-10-29 | import: snix: Handle license attributes....* guix/import/snix.scm (snix-derivation->guix-package)[license-variable]:
Move to...
(license-variable): ... here. Handle license attributes.
| Ludovic Courtès |
2014-10-29 | offload: Remove mutual exclusion on transfers....Suggested by Mark H. Weaver <mhw@netris.org>
at <http://lists.gnu.org/archive/html/guix-devel/2014-10/msg00352.html>.
* guix/scripts/offload.scm (transfer-and-offload): Remove uses of
'with-machine-lock'.
| Ludovic Courtès |
2014-10-29 | derivations: Fix 'derivation-prerequisites-to-build' when #:local-build?....* guix/derivations.scm (derivation-prerequisites-to-build)[derivation-substitutable?]:
Call 'substitutable-derivation?'.
<body>: When 'substitutable-derivation?' returns #f, add DRV to BUILD.
| Ludovic Courtès |
2014-10-29 | tests: Move some of the narinfo test tools to (guix tests)....* guix/tests.scm (derivation-narinfo, call-with-derivation-narinfo): New
procedures.
(with-derivation-narinfo): New macro.
* tests/derivations.scm ("derivation-prerequisites-to-build and
substitutes"): Use them.
| Ludovic Courtès |
2014-10-29 | derivations: Add 'offloadable-derivation?' and 'substitutable-derivation?'....* guix/derivations.scm (offloadable-derivation?,
substitutable-derivation?): New procedures.
* tests/derivations.scm ("offloadable-derivation?"): New test.
| Ludovic Courtès |
2014-10-28 | build-system/gnu: Add #:substitutable? parameter....* guix/build-system/gnu.scm (gnu-build): Add #:substitutable?
parameter. Pass #:local-build? to 'build-expression->derivation'.
(gnu-cross-build): Likewise.
| Ludovic Courtès |
2014-10-26 | licenses: Add 'imlib2'....* guix/licenses.scm (imlib2): New variable.
* gnu/packages/image.scm (imlib2): Use it.
| Alex Kost |
2014-10-26 | guix: lint: Make exception for package name starting description....* guix/scripts/lint.scm (check-description-style): Exception for
upper-case rule if the description starts with the package name.
* tests/lint.scm: Test it.
| Eric Bavier |
2014-10-26 | guix: lint: Allow digits at start of synopsis or description....* guix/scripts/lint.scm (start-with-capital-letter?): Rename too...
(properly-starts-sentence?): Rewrite with regex and add digits.
(check-description-style, check-synopsis-style): Use it.
* tests/lint.scm: Add tests.
| Eric Bavier |
2014-10-26 | guix: lint: Check for empty synopses and descriptions....* guix/scripts/lint.scm (check-description-style,
check-synopsis-style): New emptiness checks.
* tests/lint.scm: Test them.
| Eric Bavier |
2014-10-26 | guix: lint: Check for proper end-of-sentence space....* guix/scripts/lint.scm (start-with-capital-letter?): Handle empty
strings.
(check-description-style): New check for end-of-sentence space.
* tests/lint.scm: Test it.
| Eric Bavier |
2014-10-26 | guix: lint: Use if/when consistently....* guix/scripts/lint.scm (check-synopsis-style): Replace single-branch
uses of if with when.
(check-patches): Same
| Eric Bavier |
2014-10-26 | guix: lint: Use string-suffix? and string-prefix? where appropriate....* guix/scripts/lint.scm (check-synopsis): Use string-suffix? and
string-prefix? in place of string-take and string=?.
| Eric Bavier |
2014-10-22 | guix import pypi: Fix a typo in a docstring....* guix/import/pypi.scm (snake-case): Fix documentation.
| Cyril Roelandt |
2014-10-22 | guix import pypi: do not add "python-" to a package name if it's already there....* guix/import/pypi.scm (make-pypi-sexp): test whether the package name starts
with "python-" before modifying it.
| Cyril Roelandt |
2014-10-22 | guix import pypi: add the Apache License 2.0...* guix/import/pypi.scm (string->license): add ASL2.0.
| Cyril Roelandt |
2014-10-20 | refresh: Add end-of-line to error message....* guix/scripts/refresh.scm (%options)[select]: Add end-of-line to
error message.
| Eric Bavier |
2014-10-20 | gnu: Add 'version-prefix' and 'version-major+minor'; use them....The procedure version-prefix truncates a version string to a certain
number of components. version-major+minor is a special case of this,
which extracts the "major.minor" part of the string. Previously this
was handled by an expression common to several packages.
* guix/utils.scm (version-prefix, version-major+minor): New procedures
* gnu/packages/backup.scm (duplicity): Use version-major+minor.
* gnu/packages/cmake.scm (cmake): Likewise.
* gnu/packages/gnome.scm (libbonobo, libbonoboui): Likewise.
* gnu/packages/gnutls.scm (gnutls): Likewise.
* gnu/packages/mail.scm (gmime): Likewise.
* gnu/packages/mpd.scm (mpd): Likewise.
* gnu/packages/mpi.scm (openmpi): Likewise.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Ian Denhardt |
2014-10-19 | download: Add "Accept: */*" to the headers....Fixes downloads from https://alioth.debian.org.
Reported by John Darrington <jmd@gnu.org>.
* guix/build/download.scm (http-fetch)[headers]: Add 'Accept'.
| Ludovic Courtès |
2014-10-17 | packages: Add 'package-transitive-supported-systems'....* guix/packages.scm (package-transitive-supported-systems): New procedure.
* tests/packages.scm ("package-transitive-supported-systems"): New test.
* build-aux/hydra/gnu-system.scm (package->job): Use it.
| Ludovic Courtès |
2014-10-17 | derivations: 'graft-derivation' correctly handles multiple-output sources....* guix/derivations.scm (graft-derivation): Add DRV as input for each one
of OUTPUT-NAMES.
| Ludovic Courtès |
2014-10-17 | packages: Improve the package-to-derivation cache....* guix/packages.scm (cache): Preserve the former values associated with
PACKAGE.
(cached): Bind SYSTEM in 'let', to prevent double evaluation.
| Ludovic Courtès |
2014-10-17 | derivations: Add #:system parameter to 'graft-derivation'....* guix/derivations.scm (graft-derivation): Add #:system parameter.
| Ludovic Courtès |
2014-10-17 | derivations: Introduce 'graft' record type....* guix/derivations.scm (<graft>): New record type.
(graft-derivation): Rename 'replacements' to 'grafts', and expect it
to be a list of <graft> records. Adjust accordingly.
* tests/derivations.scm ("graft-derivation"): Use 'graft' instead of
pairs in argument to 'graft-derivation'.
| Ludovic Courtès |
2014-10-17 | records: Improve the docstring of 'define-record-type*'....* guix/records.scm (define-record-type*): Agument the docstring, give
examples.
| Ludovic Courtès |
2014-10-16 | download: Allow use of substitutes....See <https://bugs.gnu.org/18747> for the original report.
* guix/download.scm (url-fetch): Comment out #:local-build? argument.
* guix/git-download.scm (git-fetch): Likewise.
* guix/svn-download.scm (svn-fetch): Likewise.
| Ludovic Courtès |
2014-10-16 | guix lint: add the --checkers option....* guix/scripts/lint.scm: add the "--checkers" option.
* doc/guix.texi (Invoking guix lint): Document it.
* tests/guix-lint.sh: New file
* Makefile.am (SCM_TESTS): Add it.
| Cyril Roelandt |
2014-10-13 | utils: Micro-optimize 'bytevector->base16-string'....This reduces run time of (package-derivation s emacs) by ~1.5%.
* guix/utils.scm (bytevector->base16-string): Traverse BV from the end
so as to use 'string-concatenate' instead of
'string-concatenate-reverse'.
| Ludovic Courtès |
2014-10-13 | derivations: Micro-optimize 'imported-modules'....This reduces run time of (package-derivation s emacs) by ~5%.
* guix/derivations.scm (search-path*): New procedure.
(imported-modules): Use it instead of 'search-path'.
| Ludovic Courtès |
2014-10-13 | derivations: Memoize 'derivation-path->base16-hash'....This reduces run time of (package-derivation s emacs) by ~10%.
* guix/derivations.scm (derivation-path->base16-hash): New procedure.
(derivation-hash): Use it.
| Ludovic Courtès |
2014-10-12 | derivations: Add #:guile parameter to 'graft-derivation'....* guix/derivations.scm (graft-derivation): Add #:guile parameter; pass
it to 'build-expression->derivation'.
| Ludovic Courtès |
2014-10-12 | guix package: Add '--switch-generation' option....* guix/scripts/package.scm (switch-to-generation): New procedure.
(switch-to-previous-generation): Use it.
(guix-package): Adjust for '--switch-generation' option.
* tests/guix-package.sh: Test it.
* doc/guix.texi (Invoking guix package): Document it.
| Alex Kost |
2014-10-12 | profiles: Add 'relative-generation'....* guix/profiles.scm: (relative-generation): New procedure.
(previous-generation-number): Use it.
| Alex Kost |