| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
| |
This was harmless but non-compliant and unnecessary.
* guix/scripts/publish.scm <top level>: Rename "Guix-Nar-Compression" to
"X-Nar-Compression" as should have always been.
(render-nar, nar-response-port): Adjust accordingly.
(strip-headers): New procedure.
(sans-content-length, with-content-length): Use it.
|
|
|
|
|
|
|
|
| |
Reported by Fis Trivial <ybbs.daans@hotmail.com>.
Fixes <https://bugs.gnu.org/28987>.
* guix/import/crate.scm (crate-fetch): Check whether the "license" info
is present.
|
|
|
|
|
|
|
|
| |
* guix/scripts/publish.scm (render-log-file): New procedure.
(make-request-handler): Add "log" case.
* tests/publish.scm ("/log/NAME")
("/log/NAME not found"): New tests.
* doc/guix.texi (Invoking guix publish): Document /log URLs.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adjusts the workaround for <http://bugs.gnu.org/21093> so that it's
not limited to a single content-type.
* guix/scripts/publish.scm (render-nar/cached): Add the 'x-raw-file'
header on the response.
(render-content-addressed-file): Likewise.
(with-content-length): Remove the 'x-raw-file' header.
(http-write): Instead of dispatching on 'application/octet-stream',
check whether 'x-raw-file' is set to determine whether to spawn a
thread.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_LOG_COMPRESSION): New macro.
(options): Mark "disable-log-compression" as hidden and add
"log-compression".
(parse_opt): Handle GUIX_OPT_LOG_COMPRESSION.
* nix/libstore/build.cc (DerivationGoal): Add 'gzLogFile'.
(openLogFile): Initialize it when 'logCompression' is COMPRESSION_GZIP.
(closeLogFile, handleChildOutput): Honor 'gzLogFile'.
* nix/libstore/globals.hh (Settings)[compressLog]: Remove.
[logCompression]: New field.
(CompressionType): New enum.
* nix/libstore/globals.cc (Settings::Settings): Initialize it.
(update): Remove '_get' call for 'compressLog'.
* nix/local.mk (guix_daemon_LDADD, guix_register_LDADD): Add -lz.
* guix/store.scm (log-file): Handle '.gz' log files.
* tests/guix-daemon.sh: Add test with '--log-compression=gzip'.
* doc/guix.texi (Invoking guix-daemon): Adjust accordingly.
* config-daemon.ac: Check for libz and zlib.h.
|
|
|
|
|
|
|
|
|
|
|
|
| |
'guix copy --from' now reports messages much more useful than "failed to
retrieve files".
* guix/ssh.scm (store-export-channel)[export]: Wrap 'use-modules' in
'catch' and 'with-store' in 'guard'. Check for invalid items. Write a
status sexp on stdout.
(raise-error): New macro.
(retrieve-files): Read the initial status sexp and report errors
accordingly.
|
|
|
|
|
| |
* guix/ui.scm (call-with-error-handling): Add case for message and
fix-hint?.
|
|
|
|
|
|
|
|
| |
This saves 18 bytes on each 404 narinfo response.
* guix/scripts/publish.scm (render-narinfo): Pass #:phrase to
'not-found'.
(render-narinfo/cached): Likewise.
|
|
|
|
| |
* guix/ui.scm (show-version-and-exit): Change year to 2018.
|
|
|
|
|
| |
* guix/build/dub-build-system.scm (build): Make reproducible.
(check): Make reproducible.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* guix/scripts/build.scm (numeric-extension?, tarball-base-name): New
procedures, formerly in 'package-with-source'.
(transform-package-source)[new-sources]: Look for '=' in URI. Each
element of the list of now a (PKG VERSION SOURCE) tuple.
Pass VERSION to 'package-with-source'.
(package-with-source): Add 'version' parameter and honor it.
* tests/scripts-build.scm ("options->transformation, with-source, PKG=URI")
("options->transformation, with-source, PKG@VER=URI"): New tests.
* doc/guix.texi (Package Transformation Options): Document the new
forms.
|
|
|
|
|
| |
* guix/scripts/system.scm (check-mapped-devices): New procedure.
(perform-action): Add call to 'check-mapped-devices'.
|
|
|
|
| |
* guix/man-db.scm (man-files): Remove broken symlinks from list of man pages.
|
|
|
|
|
|
|
|
| |
This would crash 'guix refresh -u' with source URLs ending in
"…/v1.2.3".
* guix/upstream.scm (package-update): Be stricter when determining
ARCHIVE-TYPE.
|
|
|
|
|
|
|
|
|
| |
Fixes <https://bugs.gnu.org/29761>.
Reported by Martin Castillo <castilma@uni-bremen.de>.
* guix/scripts/gc.scm (argument->verify-options): New procedure.
(%options) ["verify"]: Adjust to use it.
* tests/guix-gc.sh: Add test.
|
|
|
|
|
|
| |
* guix/gexp.scm (<computed-file>)[guile]: New field.
(computed-file): Add #:guile.
(computed-file-compiler): Honor 'guile'.
|
|
|
|
|
| |
* guix/ui.scm (call-with-error-handling): When both 'message?' and
'error-location?' are true, add call to 'exit'.
|
|
|
|
|
|
|
|
| |
Fixes 'guix pull'.
Reported by ofosos on #guix.
* guix/man-db.scm: Use 'module-autoload!' instead of 'module-use!'.
so that (gdbm) is not loaded until we need it.
|
|
|
|
|
| |
* guix/gnu-maintenance.scm (latest-ftp-release): Filter out "unstable"
directories.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes <https://bugs.gnu.org/29654>.
Reported by Ruud van Asseldonk <dev+guix@veniogames.com>.
This also speeds up database creation compared to "man-db
--create" (less than half the time, on a warm cache, for 19k pages.)
* guix/man-db.scm: New file.
* Makefile.am (MODULES_NOT_COMPILED): Add it.
* guix/profiles.scm (manual-database): Rewrite to use (guix man-db).
|
|
|
|
|
|
| |
* guix/scripts/offload.scm (check-machine-status): New procedure.
(guix-offload): Call it when the argument is "status".
* doc/guix.texi (Daemon Offload Setup): Document it.
|
|
|
|
|
|
|
|
|
| |
* guix/scripts/system.scm (show-help): Add expression option.
(%options): Ditto.
(guix-system): Allow commands taking a file as an argument to use an
expression instead.
(process-action): Read operating-system from expression or file.
* doc/guix.texi (Invoking guix system): Introduce the expression option.
|
|
|
|
|
|
|
| |
Suggested by Danny Milosavljevic <dannym@scratchpost.org>.
* guix/progress.scm (erase-in-line): Rename to...
(erase-current-line): ... this. Adjust callers.
|
|
|
|
|
|
|
|
|
|
|
| |
* gnu/bootloader/extlinux.scm (install-extlinux): Factorize bootloader
writing in a new procedure write-file-on-device defined in (gnu build
bootloader).
* gnu/build/bootloader.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add new file.
* gnu/system/vm.scm (qemu-img): Adapt to import and use (gnu build bootloader)
module during derivation building.
* gnu/scripts/system.scm (bootloader-installer-derivation): Ditto.
|
|
|
|
|
|
|
| |
Fixes <https://bugs.gnu.org/29700>.
* guix/build/ant-build-system.scm (strip-jar-timestamps): Do not compress jar
when repacking.
|
|
|
|
|
|
|
|
| |
This reduces max RSS from 1.3G to 1.0G.
* guix/derivations.scm (invalidate-derivation-caches!): New procedure.
* build-aux/hydra/gnu-system.scm (hydra-jobs): Use it. Add 'format'
call.
|
|
|
|
|
|
| |
* guix/memoization.scm (%make-hash-table*): When not profiling, add the
new table to %MEMOIZATION-TABLES.
(invalidate-memoization!): New procedure.
|
|
|
|
|
|
|
|
| |
This has little or no run-time impact and slightly reduces the memory
footprint.
* guix/derivations.scm (derivation-hash): Replace 'mlambda' with
'lambda'.
|
|
|
|
|
| |
* guix/derivations.scm (derivation/masked-inputs): New procedure.
(derivation-hash): Use it instead of the inline code.
|
|
|
|
|
|
| |
This reverts commit 1d008d9f8c44dfdb808235d451b72f255e72f103.
Reported by Rutger Helling <rhelling@mykolab.com>.
Fixes <https://bugs.gnu.org/29689>.
|
|
|
|
|
| |
* guix/derivations.scm (derivation-hash): Remove
redundant 'coalesce-duplicate-inputs' call.
|
|
|
|
|
|
|
| |
This is a followup to dc673fa1131fb5d1e5ca29acb4a693cfb906986f.
* guix/derivations.scm (<derivation-output>, <derivation-input>): Use
'define-immutable-record-type'.
|
|
|
|
|
|
|
|
|
|
|
| |
* guix/memoization.scm (<cache>): New record type.
(define-lookup-procedure, define-update-procedure): New macros.
(cache-ref, cacheq-ref, cache-set!, cacheq-set!): New procedures.
(cached/mv, cachedq/mv, cached, cachedq): Use them instead of 'hash-ref'
and 'hash-set!'.
(%make-hash-table*): When 'profiled?' returns true, return a <cache>
object.
(define-cache-procedure): Adjust to show cache lookups and hits.
|
|
|
|
|
|
|
|
|
|
| |
* guix/memoization.scm (%memoization-tables): New variable.
(%make-hash-table*, show-memoization-tables): New procedures.
(make-hash-table*): New macro.
Add top-level call to 'register-profiling-hook!'.
(memoize): Adjust to pass the resulting procedure to
'make-hash-table*'.
(%mlambda): Likewise.
|
|
|
|
|
|
|
| |
* guix/profiling.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/store.scm (record-operation): Use 'profiled?' and
'register-profiling-hook!'.
|
|
|
|
| |
* guix/utils.scm (version-major): New procedure.
|
|
|
|
| |
* guix/build/download.scm (tls-wrap): Use 'guile-2.2' feature instead.
|
|
|
|
|
|
|
|
| |
Fixes <https://bugs.gnu.org/29255>.
Reported by Ben Sturmfels <ben@sturm.com.au>.
* guix/ui.scm (display-collision-resolution-hint): New procedure.
(call-with-error-handling): Call it upon '&profile-collistion-error'.
|
|
|
|
|
| |
* guix/build-system/asdf.scm (package-with-build-system): Use 'mlambda'
instead of 'memoize'.
|
|
|
|
|
|
| |
* guix/scripts/lint.scm (check-vulnerabilities): Also check for CVEs
listed as mitigated in the package properties.
* tests/lint.scm ("cve: known safe from vulnerability"): New test.
|
|
|
|
|
|
| |
* guix/licenses.scm (wxwindows3.1+): New variable.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
|
|
|
|
|
|
|
|
|
| |
* guix/scripts/archive.scm (%default-options): Add 'build-hook?'.
* guix/scripts/copy.scm (%default-options): Likewise.
* guix/scripts/environment.scm (%default-options): Likewise.
* guix/scripts/pack.scm (%default-options): Likewise.
* guix/scripts/package.scm (%default-options): Likewise.
* guix/scripts/pull.scm (%default-options): Likewise.
|
|\ |
|
| |
| |
| |
| |
| |
| | |
This reverts commit 91c9b5d016ac8bed127557d378c70fbc56cec0e5
following the concerns raised by Mark, Ben, and Tobias:
<https://lists.gnu.org/archive/html/guix-devel/2017-12/msg00081.html>.
|
| |
| |
| |
| | |
* guix/build/syscalls.scm (input-flags): New macro.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
'package-grafts' returns a list of potentially applicable grafts, which
'cumulative-grafts' then narrows by looking at store item references and
determining the subset of the grafts that's actually applicable.
Until now, 'package-grafts' would traverse native inputs and would thus
return a large superset of the applicable grafts, since native inputs
are not in the reference graph by definition. This patch fixes that by
having 'package-grafts' ignore entirely native inputs from the
dependency graph.
* guix/packages.scm (fold-bag-dependencies)[bag-direct-inputs*]: Add
special case for libc.
* guix/packages.scm (bag-grafts)[native-grafts, target-grafts]: Remove.
[grafts]: New procedure.
Use it.
* tests/packages.scm ("package-grafts, grafts of native inputs
ignored"): New test.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Previously recursive calls to 'loop' would always consider all the bag
inputs rather than those corresponding to NATIVE?.
* guix/packages.scm (fold-bag-dependencies)[bag-direct-inputs*]: New
procedure. Use it both in the 'match' expression and in its body.
|
|/
|
|
|
|
|
|
| |
* gnu/bootloader/extlinux.scm (dd): Remove it,
(install-extlinux): replace dd call by Guile I/O procedures.
* gnu/system/vm.scm (qemu-image): Add (ice-9 binary-ports) to used-modules
list to provide "get-bytevector-n" and "put-bytevector".
* guix/scripts/system.scm (bootloader-installer-derivation): Ditto.
|
|
|
|
|
| |
* guix/ui.scm (call-with-error-handling): Use 'manifest-entry-output*'
when reporting conflicting profile entries.
|
|
|
|
|
|
|
|
| |
This is a followup to 2815fca1423cf72e6f3d0e774f1058bcbf8dfdbf.
* guix/profiles.scm (profile-derivation)[builder]: Remove
'debug-disable' call, which was ineffective.
Pass #:env-vars to 'gexp->derivation'.
|