aboutsummaryrefslogtreecommitdiff
path: root/tests/store.scm
diff options
context:
space:
mode:
Diffstat (limited to 'tests/store.scm')
0 files changed, 0 insertions, 0 deletions
10.1. 2020-12-11guix: 'guile' executable ignores GUILE_LOAD_PATH during startup.Ludovic Courtès When starting the 'guix' command, this ensures Guile modules are immediately found instead of being search for in other directories. This reduces the number of 'stat' calls during startup when GUILE_LOAD_PATH is set to (almost) that of "env -i $(type -P guix)". * gnu/packages/aux-files/guile-launcher.c (load_path) (load_compiled_path): New variables. (inner_main): Restore GUILE_LOAD_PATH and GUILE_LOAD_COMPILED_PATH and set %load-path and %load-compiled-path accordingly. (main): Save GUILE_LOAD_PATH and GUILE_LOAD_COMPILED_PATH and unset them. 2020-10-31pack: Relocatable wrapper leaves root available to child processes.Ludovic Courtès Fixes <https://bugs.gnu.org/44261>. Reported by Jan Nieuwenhuizen <janneke@gnu.org>. * gnu/packages/aux-files/run-in-namespace.c (exec_in_user_namespace): Add call to 'prctl'. Call 'mount' for NEW_ROOT and define 'is_tmpfs'. When IS_TMPFS is true, call 'umount' and 'rmdir' after 'waitpid'; otherwise, call 'rm_rf' only when 'waitpid' returns -1 the second time. (exec_with_loader): Call 'prctl'. Remove NEW_ROOT only when 'waitpid' returns -1 the second time, otherwise leave it behind. * tests/guix-pack-relocatable.sh (wait_for_file): New function. Add test. 2020-10-30gnu: linux-libre: Update to 5.9.2.Leo Famulari * gnu/packages/linux.scm (linux-libre-5.9-version): Update to 5.9.2. (deblob-scripts-5.9, linux-libre-5.9-pristine-source): Update hashes. * gnu/packages/aux-files/linux-libre/5.9-arm.conf, gnu/packages/aux-files/linux-libre/5.9-arm64.conf, gnu/packages/aux-files/linux-libre/5.9-i686.conf, gnu/packages/aux-files/linux-libre/5.9-x86_64.conf: Update kernel configurations for 5.9.2. 2020-10-30guix: pack: Fix offset calculation for store directory mount point.Eric Bavier Fixes wrapping of non-package things, where the target store directory may differ in length from the original. * guix/scripts/pack.scm (wrapped-package)<build-wrapper>: Define WRAPPER_PROGRAM macro with wrapper's file name. * gnu/packages/aux-files/run-in-namespace.c (main): Offset index by len of that file name. 2020-10-24gnu: linux-libre: Update to 5.9.1.Leo Famulari * gnu/packages/aux-files/linux-libre/5.8-arm.conf, gnu/packages/aux-files/linux-libre/5.8-arm64.conf, gnu/packages/aux-files/linux-libre/5.8-i686.conf, gnu/packages/aux-files/linux-libre/5.8-x86_64.conf: Delete files. * gnu/packages/aux-files/linux-libre/5.9-arm.conf, gnu/packages/aux-files/linux-libre/5.9-arm64.conf, gnu/packages/aux-files/linux-libre/5.9-i686.conf, gnu/packages/aux-files/linux-libre/5.9-x86_64.conf: New files. * Makefile.am (AUX_FILES): Adjust accordingly. * gnu/packages/linux.scm (linux-libre-5.8-version, deblob-scripts-5.8, linux-libre-5.8-pristine-source, linux-libre-5.8-source, linux-libre-headers-5.8, linux-libre-5.8): Remove variables. (linux-libre-5.9-version, deblob-scripts-5.9, linux-libre-5.9-pristine-source, linux-libre-5.9-source, linux-libre-headers-5.9, linux-libre-5.9): New variables. (linux-libre-version, linux-libre-pristine-source, linux-libre-source, linux-libre): Point to linux-libre-5.9*. (linux-libre-with-bpf): Use linux-libre-5.9. 2020-10-15gnu: linux-libre: Enable XDP sockets and their monitoring.Tobias Geerinckx-Rice via Guix-patches via * gnu/packages/aux-files/linux-libre/4.19-arm.conf: Enable AF_XDP sockets and the associated monitor interface. * gnu/packages/aux-files/linux-libre/4.19-arm64.conf: Likewise * gnu/packages/aux-files/linux-libre/4.19-i686.conf: Likewise * gnu/packages/aux-files/linux-libre/4.19-x86_64.conf: Likewise * gnu/packages/aux-files/linux-libre/5.4-arm.conf: Likewise * gnu/packages/aux-files/linux-libre/5.4-arm64.conf: Likewise * gnu/packages/aux-files/linux-libre/5.4-i686.conf: Likewise * gnu/packages/aux-files/linux-libre/5.4-x86_64.conf: Likewise * gnu/packages/aux-files/linux-libre/5.8-arm.conf: Likewise * gnu/packages/aux-files/linux-libre/5.8-arm64.conf: Likewise * gnu/packages/aux-files/linux-libre/5.8-i686.conf: Likewise * gnu/packages/aux-files/linux-libre/5.8-x86_64.conf: Likewise 2020-10-05self: Use a 'guile' that doesn't complain about locales.Ludovic Courtès Since commit ba48895899a117d6ace2209c3f54411a4a989133, selected UTF-8 locales are bundled. However, because 'guix-command' is itself a Guile script, users would still see Guile's warning, particularly on foreign distros: $ LC_ALL=sdf guix foo guile: warning: failed to install locale hint: Consider installing the `glibc-utf8-locales' [...] User commands would print that warning, but more importantly, each invocation of 'guix substitute' would print it, even though 'guix-daemon.service' explicitly chooses "en_US.utf8", which is in 'glibc-utf8-locales'. This leads to confusion since users would keep seeing this message unless/until they realize they also need to install 'glibc-utf8-locales' in root's profile. This patch gets rid of "guile: warning: ..." for a guix-pulled 'guix' command. * guix/self.scm (specification->package): Add "gcc-toolchain". (quiet-guile): New procedure. (guix-command): Use it. * gnu/packages/aux-files/guile-launcher.c: New file. * Makefile.am (AUX_FILES): Add it. 2020-08-30gnu: Remove linux-libre 5.7.Leo Famulari The 5.7 kernel series is no longer supported upstream. * gnu/packages/linux.scm (deblob-scripts-5.7, linux-libre-5.7-version, linux-libre-5.7-pristine-source, linux-libre-5.7-source, linux-libre-headers-5.7, linux-libre-5.7) Remove variables. * gnu/packages/aux-files/linux-libre/5.7-arm.conf, gnu/packages/aux-files/linux-libre/5.7-arm64.conf, gnu/packages/aux-files/linux-libre/5.7-i686.conf, gnu/packages/aux-files/linux-libre/5.7-x86_64.conf: Delete files. * Makefile.am (AUX_FILES): Remove them. 2020-08-27pack: fakechroot: Honor $LD_LIBRARY_PATH.Ludovic Courtès Until now, when using the "fakechroot" engine, $LD_LIBRARY_PATH would always be ignored. However, it's useful in some cases to allow users to specify LD_LIBRARY_PATH, so honor it. * gnu/packages/aux-files/run-in-namespace.c (concat_paths): New function. (exec_with_loader): Concatenante $LD_LIBRARY_PATH to the relocated AUDIT_LIBRARY_PATH. 2020-08-27linux-libre: Enable module compression for all versions.Mathieu Othacehe This is a follow-up of 5fe12be0dd03d1a316343549f8c131d931f21a9a. It enables module compression for all supported Linux versions. * gnu/packages/aux-files/linux-libre/4.14-arm.conf: Enable GZIP module compression. * gnu/packages/aux-files/linux-libre/4.14-i686.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.14-x86_64.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.19-arm.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.19-arm64.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.19-i686.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.19-x86_64.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.4-i686.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.4-x86_64.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.9-i686.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.9-x86_64.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.4-arm.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.4-arm64.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.4-i686.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.4-x86_64.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.7-arm.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.7-arm64.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.7-i686.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.7-x86_64.conf: Ditto. 2020-08-25linux-libre: Enable module compression.Mathieu Othacehe This commit enables GZIP compression for linux-libre kernel modules, reducing the size of linux-libre by 63% (165MB). * gnu/packages/aux-files/linux-libre/5.8-arm.conf: Enable GZ compression. * gnu/packages/aux-files/linux-libre/5.8-arm64.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.8-i686.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.8-x86_64.conf: Ditto. 2020-08-21gnu: linux-libre: Update to 5.8.2.Leo Famulari * gnu/packages/aux-files/linux-libre/5.8-arm.conf, gnu/packages/aux-files/linux-libre/5.8-arm64.conf, gnu/packages/aux-files/linux-libre/5.8-i686.conf, gnu/packages/aux-files/linux-libre/5.8-x86_64.conf: New files. * Makefile.am (AUX_FILES): Add them. * gnu/packages/linux.scm (linux-libre-5.8): New variable. (linux-libre-version, linux-libre-pristine-source, linux-libre-source, linux-libre): Point to linux-libre-5.8*. 2020-08-10gnu: linux-libre: Fix typo in the configuration for 5.7 on x86_64.Leo Famulari * gnu/packages/aux-files/linux-libre/5.7-x86_64.conf: Fix typo. 2020-08-05gnu: linux-libre: Update to 5.7.12.Leo Famulari * gnu/packages/aux-files/linux-libre/5.7-arm.conf, gnu/packages/aux-files/linux-libre/5.7-arm64.conf, gnu/packages/aux-files/linux-libre/5.7-i686.conf, gnu/packages/aux-files/linux-libre/5.7-x86_64.conf: New files. * Makefile.am (AUX_FILES): Update accordingly. * gnu/packages/linux.scm: (linux-libre-5.7): New variable. (linux-libre-version, linux-libre-pristine-source) (linux-libre-source, linux-libre): Point to linux-libre-5.7*. 2020-07-28pack: "fakechroot" engine always creates its store.Ludovic Courtès Previously it would silently fail to create the /gnu/store symlink when the host has a read-only /gnu as is the case in these tests. * gnu/packages/aux-files/run-in-namespace.c (exec_with_loader): Unlink the ancestor of ORIGINAL_STORE under NEW_ROOT. Check the return value of 'symlink' when creating NEW_STORE. * tests/guix-pack-relocatable.sh: Check the contents of the store as seen by the wrapped executable, with all three engines, and with both "/gnu" and "/gnu/store" erased. 2020-07-28pack: "fakechroot" execution engine can load its audit module.Ludovic Courtès Fixes <https://bugs.gnu.org/42558>. Until now, loading 'pack-audit.so' in a truly non-Guix environment would usually fail because 'pack-audit.so' depends on 'libgcc_s.so' and 'libc.so', none of which could be found. Furthermore, the test was not working as expected: the trick unshare -mrf sh -c 'mount -t tmpfs none /gnu ; ...' would allow the fakechroot engine to make its store available as /gnu/store as a result of another bug. * gnu/packages/aux-files/run-in-namespace.c (relocated_search_path): New function. (exec_with_loader): Pass "--library-path" to the loader. * guix/scripts/pack.scm (wrapped-package)[build](runpath): New procedure. (elf-loader-compile-flags): Pass "-DLOADER_AUDIT_RUNPATH". * tests/guix-pack-relocatable.sh: Remove 'STORE_PARENT'. (run_without_store): New function. Erase $NIX_STORE_DIR instead of $STORE_PARENT. Use 'run_without_store' throughout. 2020-05-14pack: Add relocation via ld.so and fakechroot.Ludovic Courtès * gnu/packages/aux-files/run-in-namespace.c (HAVE_EXEC_WITH_LOADER): New macro. (bind_mount): Rename to... (mirror_directory): ... this. Add 'firmlink' argument and use it instead of calling mkdir/open/close/mount directly. (bind_mount, make_symlink): New functions. (exec_in_user_namespace): Adjust accordingly. (exec_with_loader) [HAVE_EXEC_WITH_LOADER]: New function. (exec_performance): New function. (engines): Add them. * guix/scripts/pack.scm (wrapped-package)[fakechroot-library] [audit-module]: New procedures. [audit-source]: New variable. [build](elf-interpreter, elf-loader-compile-flags): New procedures. (build-wrapper): Use them. * tests/guix-pack-relocatable.sh: Test with 'GUIX_EXECUTION_ENGINE=fakechroot'. * doc/guix.texi (Invoking guix pack): Document the 'performance' and 'fakechroot' engines. * gnu/packages/aux-files/pack-audit.c: New file. * Makefile.am (AUX_FILES): Add it. 2020-05-14pack: Factorize store references in wrapper.Ludovic Courtès * gnu/packages/aux-files/run-in-namespace.c (original_store): New variable. (exec_in_user_namespace, exec_with_proot, main): Use it instead of the literal "@STORE_DIRECTORY@". 2020-05-14pack: Wrapper honors 'GUIX_EXECUTION_ENGINE' environment variable.Ludovic Courtès * gnu/packages/aux-files/run-in-namespace.c (struct engine): New type. (exec_default): New function. (engines): New variable. (execution_engine): New function. (main): Use it instead of calling 'exec_in_user_namespace' and 'exec_with_proot' directly. * tests/guix-pack-relocatable.sh: Add test with 'GUIX_EXECUTION_ENGINE'. * doc/guix.texi (Invoking guix pack): Document 'GUIX_EXECUTION_ENGINE'. 2020-05-07pack: Factorize 'exec_in_user_namespace' wrapper.Ludovic Courtès * gnu/packages/aux-files/run-in-namespace.c (exec_in_user_namespace): New function, with code taken from... (main): ... here. Call it. 2020-05-07pack: Add 'xmalloc' in wrapper.Ludovic Courtès * gnu/packages/aux-files/run-in-namespace.c (xmalloc): New function. (concat): Use it. 2020-05-07pack: Fix off-by-one in PRoot handling in the wrapper.Ludovic Courtès * gnu/packages/aux-files/run-in-namespace.c (exec_with_proot): Make 'proot_argv' one element larger to account for the terminating NULL. 2020-04-24pack: 'guix pack -R' wrapper correctly reports exit code.Ludovic Courtès Fixes <https://bugs.gnu.org/40816>. Reported by Jan (janneke) Nieuwenhuizen <janneke@gnu.org>. * gnu/packages/aux-files/run-in-namespace.c (main): In the 'default' case, check 'WIFEXITED (status)' and exit with the corresponding code in that case. Exit with 255 in other cases. * tests/guix-pack-relocatable.sh: Add test. 2020-03-22gnu: linux-libre-arm-veyron: Deprecate package.Vagrant Cascadian * gnu/packages/linux (linux-libre-arm-veyron): Mark as deprecated package. (kernel-config-veyron): Remove obsolete function. * gnu/system/examples/asus-c201.tmpl: Update to use linux-libre-arm-generic. * gnu/packages/aux-files/linux-libre/5.4-arm-veyron.conf: Delete file. * Makefile.am (AUX_FILES): Update accordingly. 2020-03-22gnu: emacs: Remove obsolete FIXME comment.Maxim Cournoyer * gnu/packages/aux-files/emacs/guix-emacs.el: Remove comment. 2020-02-27emacs-build-system: Byte compile the autoload files.Maxim Cournoyer * guix/build/emacs-build-system.scm (enable-autoloads-compilation) (validate-compiled-autoloads): Add procedures. (%standard-phases): Register the new procedures. * gnu/packages/aux-files/emacs/guix-emacs.el (guix-emacs-find-autoloads): Remove duplicates in the list of autoload files found. * guix/build/emacs-utils.scm (expr->string): Add procedure. (emacs-batch-eval, emacs-batch-edit-file): Use it.