Age | Commit message (Expand) | Author |
2017-02-02 | Merge branch 'master' into core-updates | Leo Famulari |
2017-02-02 | build: r-build-system: Use deterministic built date....Fixes <http://bugs.gnu.org/25598>.
* guix/build/r-build-system.scm (install): Pass "--built-timestamp" option to
make build deterministic.
| Ricardo Wurmus |
2017-02-01 | download: Add GNOME mirror....* guix/download.scm (%mirrors): Add "https://download.gnome.org".
| Ludovic Courtès |
2017-02-01 | download: Add ‘url-fetch/zipbomb’....From this suggestion by Ludovic Courtès:
<http://lists.gnu.org/archive/html/guix-devel/2016-09/msg01983.html>
* guix/download.scm (url-fetch/zipbomb): New procedure.
| Tobias Geerinckx-Rice |
2017-02-01 | download: url-fetch/tarball: Make ‘name’ truly optional....* guix/download.scm (url-fetch/tarbomb): Fall back to ‘file-name’ if
‘name’ is #f, like the regular ‘url-fetch’ does.
* gnu/packages/bioinformatics.scm (muscle)[source]: Remove ‘file-name’.
* gnu/packages/engineering.scm (fastcap)[source]: Likewise.
* gnu/packages/scheme.scm (scmutils)[source]: Likewise.
| Tobias Geerinckx-Rice |
2017-01-31 | lint: Use the "@" syntax for versioned packages in warnings....* guix/scripts/lint.scm (emit-warning): Use the "@" syntax.
| Ludovic Courtès |
2017-01-30 | environment: Fix setting writable? on networking related files...* guix/scripts/environment.scm (launch-environment/container): Include the
file name in the call to string=? when deciding if the file should be
writable.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Christopher Baines |
2017-01-30 | store: Add 'add-data-to-store'....* guix/serialization.scm (write-bytevector): New procedure.
(write-string): Rewrite in terms of 'write-bytevector'.
* guix/store.scm (write-arg): Add 'bytevector' case.
(add-data-to-store): New procedure, from former 'add-text-to-store'.
(add-text-to-store): Rewrite in terms of 'add-data-to-store'.
* tests/store.scm ("add-data-to-store"): New test.
| Ludovic Courtès |
2017-01-28 | build-system/python: 'package-with-explicit-python' uses 'eq?' memoization....* guix/build-system/python.scm (package-with-explicit-python): Use
'mlambdaq' instead of 'mlambda'. This does not change the <package>
graph and has no visible impact on performance.
| Ludovic Courtès |
2017-01-28 | gnu-maintenance: 'gnu-package?' uses 'eq?' memoization....* guix/gnu-maintenance.scm (gnu-package?): Use 'mlambdaq' instead of
'mlambda'.
| Ludovic Courtès |
2017-01-28 | packages: Remove 'define-memoized/v' and use 'mlambdaq' instead....* guix/packages.scm (define-memoized/v): Remove.
(package-transitive-supported-systems): Use 'mlambdaq' instead of
'define-memoized/v'.
(package-input-rewriting)[replace]: Likewise.
| Ludovic Courtès |
2017-01-28 | Use 'mlambda' instead of 'memoize'....* gnu/packages.scm (find-newest-available-packages): Use 'mlambda'
instead of (memoize (lambda ...) ...).
* gnu/packages/bootstrap.scm (package-with-bootstrap-guile): Likewise.
* guix/build-system/gnu.scm (package-with-explicit-inputs)[rewritten-input]:
Likewise.
* guix/build-system/python.scm (package-with-explicit-python)[transform]:
Likewise.
* guix/derivations.scm (derivation->string): Likewise.
* guix/gnu-maintenance.scm (gnu-package?): Likewise.
* guix/modules.scm (module-file-dependencies): Likewise.
* guix/scripts/graph.scm (standard-package-set): Likewise.
* guix/scripts/lint.scm (official-gnu-packages*): Likewise.
* guix/store.scm (store-regexp*): Likewise.
* guix/utils.scm (location): Likewise.
| Ludovic Courtès |
2017-01-28 | Add (guix memoization)....* guix/combinators.scm (memoize): Remove.
* guix/memoization.scm: New file.
* Makefile.am (MODULES): Add it.
* gnu/packages.scm, gnu/packages/bootstrap.scm,
guix/build-system/gnu.scm, guix/build-system/python.scm,
guix/derivations.scm, guix/gnu-maintenance.scm,
guix/import/cran.scm, guix/import/elpa.scm,
guix/modules.scm, guix/scripts/build.scm,
guix/scripts/graph.scm, guix/scripts/lint.scm,
guix/store.scm, guix/utils.scm: Adjust imports accordingly.
| Ludovic Courtès |
2017-01-28 | packages: Add 'package-upstream-name' and use it....* guix/packages.scm (package-upstream-name): New procedure.
* guix/gnu-maintenance.scm (gnu-package?, ftp-server/directory)
(latest-release*, latest-gnome-release)
(latest-kde-release): Use it instead of the inline expression.
| Ludovic Courtès |
2017-01-28 | import: github: Better tolerate unexpected file extensions....* guix/import/github.scm (find-extension): Add ".tbz".
(updated-github-url): When 'find-extension' returns #f, use "" for EXT.
| Ludovic Courtès |
2017-01-28 | gnu-maintenance: 'gnu-package?' ignores invalid URLs....* guix/gnu-maintenance.scm (gnu-package?)[gnu-home-page?]: Add '>>'
threading macro and use it.
| Ludovic Courtès |
2017-01-28 | gnu-maintenance: GNU updater handles gnu.org-hosted Emacs packages....* guix/gnu-maintenance.scm (pure-gnu-package?): If an "emacs-" package
matches 'gnu-hosted?', return true.
(gnu-hosted?): New procedure.
| Ludovic Courtès |
2017-01-28 | gnu-maintenance: Honor 'upstream-name' property in GNU updater....* guix/gnu-maintenance.scm (gnu-package?): Honor the 'usptream-name'
property of PACKAGE.
(ftp-server/directory): Likewise.
| Ludovic Courtès |
2017-01-26 | utils: Add helper method to make files writable....* gnu/build/activation.scm (make-file-writable): Move this to ...
* guix/build/utils.scm (make-file-writable): ... here. Export it.
* guix/build/gnu-build-system.scm (strip): Use it.
| Marius Bakke |
2017-01-26 | build-system/gnu: Add 'reset-gzip-timestamps' phase....* guix/build/gnu-build-system.scm (reset-gzip-timestamps): New
procedure.
(%standard-phases): Add it.
| Ludovic Courtès |
2017-01-26 | utils: Add 'gzip-file?' and 'reset-gzip-timestamp'....* guix/build/utils.scm (%gzip-magic-bytes): New variable.
(gzip-file?, reset-gzip-timestamp): New procedures.
| Ludovic Courtès |
2017-01-26 | bournish: Extend 'rm' command....* guix/build/bournish.scm (rm-command): New procedure.
(%commands): Use it.
* tests/bournish.scm: Add tests for "rm" and "rm -r".
| Ricardo Wurmus |
2017-01-26 | import: pypi: Don't add setuptools to propagated-inputs....* guix/import/pypi.scm (compute-inputs): Don't add setuptools to the imported
package's propagated-inputs.
| Carlo Zancanaro |
2017-01-26 | build-system/gnu: 'strip' phase now skips symlinks....This avoids a situation where the "debug" output would contain separate
(and different) .debug files for "libfoo.so" and "libfoo.so.0.0", even
though "libfoo.so" is actually a symlink to "libfoo.so.0.0".
* guix/build/gnu-build-system.scm (strip): Remove 'file-exists?' call in
'for-each' lambda. Pass a predicate to 'find-files' to restrict the
result to regular files.
| Ludovic Courtès |
2017-01-26 | copy: Use userauth-public-key/auto! for ssh authentification....* guix/scripts/copy.scm (open-ssh-session): Replace userauth-agent! by
userauth-public-key/auto!. This way, if ssh-agent is not run,
default ssh key (~/.ssh/id_rsa) will be used as a fallback.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Mathieu Othacehe |
2017-01-25 | Merge branch 'master' into core-updates | Leo Famulari |
2017-01-25 | container: Pass through TERM when calling exec....* guix/scripts/container/exec.scm (guix-container-exec): Capture the value of
the TERM environment variable, and pass it through to the container. This
means some applications now work where they did not before (e.g. htop), and
others have more functionality, providing that the terminal was capable of
enabling that functionality in the first place.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| Christopher Baines |
2017-01-25 | grafts: Do not pull derivation outputs not depended on....Fixes <http://bugs.gnu.org/24886>.
Previously, the grafting derivation of, say, brdf-explorer would pull in
qt:doc even though brdf-explorer depends only on qt:out, not qt:doc.
* guix/grafts.scm (with-cache): Use 'vhash-assoc' and 'vhash-cons'
instead of 'vhash-assq' and 'vhash-consq'.
(cumulative-grafts): Pass #:outputs to 'graft-derivation/shallow'. Use
OUTPUTS instead of (derivation-output-names drv).
(graft-derivation): Add #:outputs parameter; pass it to
'cumulative-grafts'.
* tests/grafts.scm (make-derivation-input): New variable.
("graft-derivation, replaced derivation has multiple outputs"): Make
sure P2:zzz is not part of the outputs of P3D.
("graft-derivation with #:outputs")
("graft-derivation, unused outputs not depended on"): New tests.
| Ludovic Courtès |
2017-01-24 | grafts: Shallow grafting can be performed on a subset of the outputs....* guix/grafts.scm (graft-derivation/shallow): Add #:outputs parameter.
[outputs]: Rename to...
[output-pairs]: ... this. Adjust 'build-expression->derivation' call
accordingly.
| Ludovic Courtès |
2017-01-24 | syscalls: Export 'read-utmpx'....* guix/build/syscalls.scm (read-utmpx-from-port): New procedure.
* tests/syscalls.scm ("read-utmpx, EOF")
("read-utmpx"): New tests.
| Ludovic Courtès |
2017-01-23 | Merge branch 'master' into core-updates | Ludovic Courtès |
2017-01-23 | search-paths: Allow specs with #f as their separator....This adds support for single-entry search paths.
Fixes <http://bugs.gnu.org/25422>.
Reported by Leo Famulari <leo@famulari.name>.
* guix/search-paths.scm (<search-path-specification>)[separator]:
Document as string or #f.
(evaluate-search-paths): Add case for SEPARATOR as #f.
(environment-variable-definition): Handle SEPARATOR being #f.
* guix/build/utils.scm (list->search-path-as-string): Add case for
SEPARATOR as #f.
(search-path-as-string->list): Likewise.
* guix/build/profiles.scm (abstract-profile): Likewise.
* tests/search-paths.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
* tests/packages.scm ("--search-paths with single-item search path"):
New test.
* gnu/packages/version-control.scm (git)[native-search-paths](separator):
New field.
| Ludovic Courtès |
2017-01-23 | guix package: Honor the order of profiles when -p appears multiple times....* guix/scripts/package.scm (process-query): Reverse the order of
PROFILES.
* tests/guix-package-net.sh: Test it with '--search-paths'.
| Ludovic Courtès |
2017-01-21 | lint: Display PACKAGE@VERSION....* guix/scripts/lint.scm (run-checkers): Remove 'name' variable. Display
PACKAGE@VERSION instead of PACKAGE-VERSION.
| Ludovic Courtès |
2017-01-19 | syscalls: Add utmpx procedures and data structure....* guix/build/syscalls.scm (<utmpx-entry>): New record type.
(%utmpx): New C struct.
(login-type): New bits.
(setutxent, endutxent, getutxent, utmpx-entries): New procedures.
| Ludovic Courtès |
2017-01-19 | syscalls: Extract 'bytes->string'....* guix/build/syscalls.scm (bytes->string): New procedure.
(bytevector->string-list): Use it.
| Ludovic Courtès |
2017-01-19 | import: github: Catch HTTP 403 error during fetch....* guix/import/github.scm (json-fetch*): Catch 403 HTTP error that may be
raised if a github token has not been set.
Signed-off-by: Mathieu OTHACEHE <m.othacehe@gmail.com>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Mathieu OTHACEHE |
2017-01-19 | guix environment, build: Allow absolute file names with '--root'....Reported by Chris Webber.
* guix/scripts/build.scm (register-root): If ROOT is absolute, keep it
as is.
* guix/scripts/environment.scm (register-gc-root): Likewise.
* tests/guix-environment.sh (expected): Add test.
| Ludovic Courtès |
2017-01-16 | grafts: Preserve the cache across recursive calls....Before this commit, we'd lose the cache across recursive calls to
'cumulative-grafts', which isn't great performance-wise.
This bug was already present before
d38bc9a9f6feefc465964531520fee5663a12f48.
* guix/grafts.scm (with-cache): In the miss case, call 'current-state'
after EXP has been evaluated.
| Ludovic Courtès |
2017-01-16 | grafts: Actually cache grafts during the derivation DAG traversal....This fixes a regression introduced in
d38bc9a9f6feefc465964531520fee5663a12f48 whereby the cache was
effectively disabled.
Reported by Thomas Danckaert <thomas.danckaert@gmail.com>.
* guix/grafts.scm (with-cache): In the cache miss case, wrap body in
'mbegin'.
| Ludovic Courtès |
2017-01-16 | profiles: Export 'ca-certificate-bundle'....* guix/profiles.scm: Export ca-certificate-bundle, such that it can be used in
other G-expressions. This is useful where these G-expressions run programs
that require a ca-certificate-bundle, e.g. git.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Christopher Baines |
2017-01-15 | guix build: Add '--repair'....* guix/scripts/build.scm (show-help, %options): Add '--repair'.
* doc/guix.texi (Invoking guix gc): Mention 'guix build --repair'.
(Additional Build Options): Document it.
| Ludovic Courtès |
2017-01-15 | guix build: Do not force 'build-cores', 'max-build-jobs', and 'max-silent-time'....This lets the daemon use its own default settings unless otherwise
specified.
* guix/scripts/build.scm (set-build-options-from-command-line): Do not
provide default values for #:build-cores and #:max-build-jobs.
(%default-options): Remove 'max-silent-time'.
| Ludovic Courtès |
2017-01-15 | daemon: Client settings no longer override daemon settings....Fixes <http://bugs.gnu.org/20217>.
* nix/libstore/worker-protocol.hh (PROTOCOL_VERSION): Bump to 0x161.
* nix/nix-daemon/nix-daemon.cc (performOp): "build-max-jobs",
"build-max-silent-time", and "build-cores" are no longer read upfront;
instead, read them from the key/value list at the end.
* nix/nix-daemon/guix-daemon.cc (main): Explicitly set
'settings.maxBuildJobs'.
* guix/store.scm (%protocol-version): Bump to #x161.
(set-build-options): #:max-build-jobs, #:max-silent-time, and
#:build-cores now default to #f. Adjust handshake to new protocol.
* tests/store.scm ("build-cores"): New test.
* tests/guix-daemon.sh: Add test for default "build-cores" value.
| Ludovic Courtès |
2017-01-14 | challenge: Add '--verbose'....* guix/scripts/challenge.scm (summarize-report): Add #:verbose?
parameter.
[report-hashes]: New procedure. Use it.
Honor VERBOSE? in the 'match case.
(show-help, %options): Add '--verbose'.
(guix-challenge): Honor it.
| Ludovic Courtès |
2017-01-14 | challenge: Return comparison reports instead of just discrepancies....This makes it easier to distinguish between matches, mismatches, and the
various cases of inconclusive reports.
* guix/scripts/challenge.scm (<discrepancy>): Rename to...
(<comparison-report>): ... this. Add 'result' field.
(comparison-report): New macro.
(comparison-report-predicate, comparison-report-mismatch?)
(comparison-report-match?)
(comparison-report-inconclusive?): New procedures.
(discrepancies): Rename to...
(compare-contents): ... this. Change to return a list of
<comparison-report>. Remove calls to 'warning'.
(summarize-discrepancy): Rename to...
(summarize-report): ... this. Adjust to <comparison-report>.
(guix-challenge): Likewise.
* tests/challenge.scm ("no discrepancies")
("one discrepancy"): Adjust to new API.
("inconclusive: no substitutes")
("inconclusive: no local build"): New tests.
| Ludovic Courtès |
2017-01-13 | licenses: Add wtfpl2....* guix/licenses.scm (wtfpl2): New variable.
Signed-off-by: Leo Famulari <leo@famulari.name>
| ng0 |
2017-01-13 | http-client: Provide 'User-Agent' header by default....* guix/http-client.scm (http-fetch): Add #:headers parameter and honor
it. Rename 'auth-header' to 'headers'.
* guix/import/github.scm (json-fetch*): Add comment about required
User-Agent.
| Ludovic Courtès |
2017-01-13 | import: github: Fix regression on the /releases retrieval....Fixes a regression introduced in
62bd24db39a86f80242f923eb4cc2f18f3b02c67, which introduced a call to
'hash-table->alist'.
* guix/import/github.scm (json-fetch*): New procedure.
(latest-released-version): Use it.
| Ludovic Courtès |
2017-01-13 | ui: Wrap 'canonicalize-path' for better error reporting....Reported by Christopher Baines.
* guix/ui.scm (canonicalize-path): New procedure.
| Ludovic Courtès |