summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* database: Remove #:deduplicate? from 'register-items'.Ludovic Courtès2020-12-15
| | | | | | | | | | | | It is now up to the caller to deduplicate store contents. * guix/store/database.scm (register-items): Remove #:deduplicate? parameter and call to 'deduplicate'. (register-path): Call 'deduplicate' when #:deduplicate? is true. * gnu/build/image.scm (register-closure): Adjust call accordingly. * gnu/build/vm.scm (register-closure): Likewise. * guix/nar.scm (finalize-store-file): Likewise. * guix/scripts/pack.scm (store-database): Likewise.
* image: 'register-closure' leaves it up to the caller to deduplicate.Ludovic Courtès2020-12-15
| | | | | | | | * gnu/build/image.scm (register-closure): Remove #:deduplicate? parameter and pass #:deduplicate? #f to 'register-items'. (initialize-root-partition): Adjust accordingly. * gnu/build/vm.scm (register-closure, root-partition-initializer): Likewise.
* store-copy: 'populate-store' can optionally deduplicate files.Ludovic Courtès2020-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Until now deduplication was performed as an additional pass after copying files, which involve re-traversing all the files that had just been copied. * guix/store/deduplication.scm (copy-file/deduplicate): New procedure. * tests/store-deduplication.scm ("copy-file/deduplicate"): New test. * guix/build/store-copy.scm (populate-store): Add #:deduplicate? parameter and honor it. * tests/gexp.scm ("gexp->derivation, store copy"): Pass #:deduplicate? #f to 'populate-store'. * gnu/build/image.scm (initialize-root-partition): Pass #:deduplicate? to 'populate-store'. Pass #:deduplicate? #f to 'register-closure'. * gnu/build/vm.scm (root-partition-initializer): Likewise. * gnu/build/install.scm (populate-single-profile-directory): Pass #:deduplicate? #f to 'populate-store'. * gnu/build/linux-initrd.scm (build-initrd): Likewise. * guix/scripts/pack.scm (self-contained-tarball)[import-module?]: New procedure. [build]: Pass it as an argument to 'source-module-closure'. * guix/scripts/pack.scm (squashfs-image)[build]: Wrap in 'with-extensions'. * gnu/system/linux-initrd.scm (expression->initrd)[import-module?]: New procedure. [builder]: Pass it to 'source-module-closure'. * gnu/system/install.scm (cow-store-service-type)[import-module?]: New procedure. Pass it to 'source-module-closure'.
* database: Remove #:reset-timestamps? from 'register-items'.Ludovic Courtès2020-12-15
| | | | | | | | | | | | | | The assumption now is that the caller took care of resetting timestamps and permissions. * guix/store/database.scm (register-items): Remove #:reset-timestamps? parameter and the call to 'reset-timestamps'. (register-path): Adjust accordingly and add call to 'reset-timestamps'. * gnu/build/image.scm (register-closure): Remove #:reset-timestamps? parameter to 'register-items'. * gnu/build/vm.scm (register-closure): Likewise. * guix/nar.scm (finalize-store-file): Adjust accordingly. * guix/scripts/pack.scm (store-database)[build]: Likewise.
* image: 'register-closure' assumes already-reset timestamps.Ludovic Courtès2020-12-15
| | | | | | | | * gnu/build/image.scm (register-closure): Remove #:reset-timestamps? parameter. Pass #:reset-timestamps? #f to 'register-items'. (initialize-root-partition): Adjust accordingly. * gnu/build/vm.scm (register-closure, root-partition-initializer): Likewise.
* store-copy: 'populate-store' resets timestamps.Ludovic Courtès2020-12-15
| | | | | | | | | | | | | | | | Until now, 'populate-store' would reset permissions but not timestamps, so callers would resort to going through an extra directory traversal to reset timestamps. * guix/build/store-copy.scm (reset-permissions): Remove. (copy-recursively): New procedure. (populate-store): Pass #:keep-permissions? to 'copy-recursively'. Remove call to 'reset-permissions'. * tests/gexp.scm ("gexp->derivation, store copy"): In BUILD-DRV, check whether 'populate-store' canonicalizes permissions and timestamps. * gnu/build/image.scm (initialize-root-partition): Pass #:reset-timestamps? #f to 'register-closure'. * gnu/build/vm.scm (root-partition-initializer): Likewise.
* nar: Deduplicate files right as they are restored.Ludovic Courtès2020-12-15
| | | | | | | | | | | | | This avoids having to traverse and re-read the files that we have just restored, thereby reducing I/O. * guix/serialization.scm (dump-file): New procedure. (restore-file): Add #:dump-file parameter and honor it. * guix/store/deduplication.scm (tee, dump-file/deduplicate): New procedures. * guix/nar.scm (restore-one-item): Pass #:dump-file to 'restore-file'. (finalize-store-file): Pass #:deduplicate? #f to 'register-items'. * tests/nar.scm <top level>: Call 'setenv' to set "NIX_STORE".
* serialization: 'restore-file' sets canonical timestamp and permissions.Ludovic Courtès2020-12-15
| | | | | | | | | | | * guix/serialization.scm (restore-file): Set the permissions and mtime of FILE. * guix/nar.scm (finalize-store-file): Pass #:reset-timestamps? #f to 'register-items'. * tests/nar.scm (rm-rf): Add 'chmod' calls to ensure files are writable. ("write-file + restore-file with symlinks"): Ensure every file in OUTPUT passes 'canonical-file?'. * tests/guix-archive.sh: Run "chmod -R +w" before "rm -rf".
* serialization: 'fold-archive' notifies about directory processing completion.Ludovic Courtès2020-12-15
| | | | | | | | | * guix/serialization.scm (fold-archive): Call PROC with a 'directory-complete tag when done with a directory. (restore-file): Handle it. * guix/scripts/archive.scm (list-contents): Likewise. * guix/scripts/challenge.scm (archive-contents): Likewise. * tests/nar.scm ("write-file-tree + fold-archive"): Adjust accordingly.
* Revert "gnu: grub: Fix unicode font loading when booting over TFTP."Ludovic Courtès2020-12-15
| | | | | | | | This reverts commit 03fb57ff77b57de510b59485845ed7cb4e0a77a7, which breaks most system tests. Specifically, grub.cfg.drv fails to build: ERROR: In procedure canonicalize-path: In procedure canonicalize-path: No such file or directory
* gnu: Add ocaml-reactivedata.divoplade2020-12-15
| | | | | | * gnu/packages/ocaml.scm (ocaml-reactivedata): Add ocaml-reactivedata. Signed-off-by: Julien Lepiller <julien@lepiller.eu>
* gnu: maven-wagon-http: Disable a failing test.Michael Rohleder2020-12-15
| | | | | | | * gnu/packages/maven.scm (maven-wagon-http)[arguments]: Add HugeFileDownloadTest to excluded tests. Signed-off-by: Julien Lepiller <julien@lepiller.eu>
* offload: Print warning in context.Julien Lepiller2020-12-15
| | | | | * guix/scripts/offload.scm (build-machine): Add `location` field. (build-machine-system): Print location with warning.
* gnu: iproute: Fix cross compiling.Efraim Flashner2020-12-15
| | | | | | * gnu/packages/linux.scm (iproute)[arguments]: Set CC and HOSTCC in make-flags. Add custom phase to replace the value for PKG_CONFIG in hand-written configure script.
* gnu: Add rust-ndarray-0.12.Efraim Flashner2020-12-15
| | | | | | * gnu/packages/crates-io.scm (rust-ndarray-0.12): New variable. * gnu/packages/patches/rust-ndarray-remove-blas-src-dep.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it.
* gnu: rust-cblas-sys-0.1: Don't skip build.Efraim Flashner2020-12-15
| | | | | * gnu/packages/crates-io.scm (rust-cblas-sys-0.1)[arguments]: Don't skip build.
* gnu: Add rust-handlegraph-0.3.Efraim Flashner2020-12-15
| | | | * gnu/packages/crates-io.scm (rust-handlegraph-0.3): New variable.
* gnu: esbuild: Update to 0.8.23.Ryan Prior2020-12-15
| | | | | | * gnu/packages/web.scm (esbuild): Update to 0.8.23. Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu: ffmpeg-2.8: Remove extraneous inputs.Leo Famulari2020-12-15
| | | | | | | These inputs are not used by FFmpeg 2. * gnu/packages/video.scm (ffmpeg-2.8)[inputs]: Remove dav1d, libaom, rav1e, and srt.
* gnu: ffmpeg-4.2: Remove extraneous input rav1e.Leo Prikler2020-12-15
| | | | | | * gnu/packages/video.scm (ffmpeg-4.2)[inputs]: Remove rav1e. Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu: Add python-sanic.Giacomo Leidi2020-12-15
| | | | | | * gnu/packages/python-web.scm (python-sanic): New variable. Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu: Add python-pytest-sanic.Giacomo Leidi2020-12-15
| | | | | | * gnu/packages/python-check.scm (python-pytest-sanic): New variable. Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu: Add python-pywatchman.Giacomo Leidi2020-12-15
| | | | | | * gnu/packages/python-xyz.scm (python-pywatchman): New variable. Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu: Add python-dataclasses.Giacomo Leidi2020-12-15
| | | | | | * gnu/packages/python-xyz.scm (python-dataclasses): New variable. Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu: Add python-nbsphinx.Giacomo Leidi2020-12-15
| | | | | | * gnu/packages/sphinx.scm (python-nbsphinx): New variable. Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu: Add python-pyre-extensions.Giacomo Leidi2020-12-15
| | | | | | * gnu/packages/python-xyz.scm (python-pyre-extensions): New variable. Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu: Add python-hstspreload.Giacomo Leidi2020-12-15
| | | | | | * gnu/packages/python-web.scm (python-hstspreload): New variable. Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu: Add python-aiofiles.Giacomo Leidi2020-12-15
| | | | | | * gnu/packages/python-xyz.scm (python-aiofiles): New variable. Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu: Add python-contextvars.Giacomo Leidi2020-12-15
| | | | | | * gnu/packages/python-xyz.scm (python-contextvars): New variable. Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu: Add kanshi.Robert Smith2020-12-15
| | | | | | * gnu/packages/wm.scm (kanshi): New variable. Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu: Add r-lpme.Aniket Patil2020-12-15
| | | | | | * gnu/packages/cran.scm (r-lpme): New variable. Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu: Add r-locpol.Aniket Patil2020-12-15
| | | | | | * gnu/packages/cran.scm (r-locpol): New variable. Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu: Add r-decon.Aniket Patil2020-12-15
| | | | | | * gnu/packages/cran.scm (r-decon): New variable. Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu: emacs-transmission: Update to 0.12.2.Brett Gilio2020-12-14
| | | | * gnu/packages/emacs-xyz.scm (emacs-transmission): Update to 0.12.2.
* gnu: grub: Fix unicode font loading when booting over TFTP.Stefan2020-12-14
| | | | | | | * gnu/bootloader/grub.scm (eye-candy)(font-file): Fix unicode font loading when booting over TFTP. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
* doc: Note different texlive-tiny & texline-union natures.Tobias Geerinckx-Rice2020-12-14
| | | | | | | * doc/contributing.texi (Submitting Patches): Add ‘package’ and ‘procedure’. Inspired-by: Jorge P. de Morais Neto
* gnu: kitty: Re-order inputs and native-inputs alphabetically.Nicolas Goaziou2020-12-14
| | | | | * gnu/packages/terminals.scm (kitty)[inputs, native-inputs]: Re-order alphabetically.
* gnu: kitty: Update to 0.19.2.Nicolas Goaziou2020-12-14
| | | | | | | * gnu/packages/terminals.scm (kitty): Update to 0.19.2. [inputs]: Add lcms. Switch to python-wrapper. [arguments]: Merge hard-code-libegl phase in build phase. Change build command. Disable checking for updates. Fix error in tests.
* maint: Only run `make authenticate` when pushing commits.Leo Famulari2020-12-14
| | | | * etc/git/pre-push: Exit early when deleting a branch.
* gnu: emacs-org-contrib: Update to 20201213.Nicolas Goaziou2020-12-14
| | | | * gnu/packages/emacs-xyz.scm (emacs-org-contrib): Update to 20201213.
* gnu: emacs-org: Update to 9.4.2.Nicolas Goaziou2020-12-14
| | | | * gnu/packages/emacs-xyz.scm (emacs-org): Update to 9.4.2.
* gnu: emacs-ivy-posframe: Update to 0.5.4.Nicolas Goaziou2020-12-14
| | | | * gnu/packages/emacs-xyz.scm (emacs-ivy-posframe): Update to 0.5.4.
* gnu: pies: Update to 1.5.Efraim Flashner2020-12-14
| | | | * gnu/packages/admin.scm (pies): Update to 1.5.
* gnu: ecl: Remove build-stamp to improve reproducibility.Zhu Zihao2020-12-14
| | | | | | | * gnu/packages/lisp.scm (ecl)[arguments]<phases>: Add "remove-build-stamp" phase. Move "wrap" phase after "remove-build-stamp" phase. Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
* gnu: ecl: Return #t in wrap phase.Zhu Zihao2020-12-14
| | | | | | * gnu/packages/lisp.scm (ecl)[arguments]<phases>: In phase "wrap", return #t. Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
* gnu: emacs-helm-switch-to-repl: Update to 0.1.1.Pierre Neidhardt2020-12-14
| | | | * gnu/packages/emacs-xyz.scm (emacs-helm-switch-to-repl): Update to 0.1.1.
* gnu: b4: Update to 0.6.1.Kyle Meyer2020-12-14
| | | | | | | | | * gnu/packages/version-control.scm (b4): Update to 0.6.1. [source]: Download from pypi, which now includes the manpage. [arguments]: Remove now unnecessary install-manpages phase. [inputs]: Add python-dkimpy and python-dnspython. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu: python-dnspython: Update to 2.0.0.Kyle Meyer2020-12-14
| | | | | | | | | | | | | | * gnu/packages/python-xyz.scm (python-dnspython): Update to 2.0.0. [source]: Download from pypi. [native-inputs]: Add unzip. [home-page]: Prefer https. (python-dnspython-1.16): (python2-dnspython-1.16): New variables. * gnu/packages/ebook.scm (calibre): * gnu/packages/web.scm (linkchecker): Use python2-dnspython-1.16. * gnu/packages/finance.scm (electrum): Use python-dnspython-1.16. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu: python-dnspython: Fix indentation.Kyle Meyer2020-12-14
| | | | | | * gnu/packages/python-xyz.scm (python-dnspython): Fix indentation. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* doc: Link to "Pattern Matching" in Guile.Ludovic Courtès2020-12-14
| | | | | * doc/contributing.texi (Data Types and Pattern Matching): Link to the "Pattern Matching" node of the Guile manual.