gnu: blueman: Remove obsolete phase.
* gnu/packages/networking.scm (blueman)[arguments]: Remove setenv phase.
gnu: php: Update to 7.4.6.
* gnu/packages/php.scm (php): Update to 7.4.6.
gnu: ccl: Update to 1.12.
* gnu/packages/lisp.scm (ccl): Update to 1.12.
[native-inputs]: Remove subversion.
[license]: Change to asl2.0.
(ccl-1.12): Remove obsolete variable.
gnu: blueman: Update package definition.
* gnu/packages/networking.scm (blueman): Fixes.
[version]: Upgrade to 2.1.3.
[source]<origin>[method]: Change from url-fetch to git-fetch.
[arguments]<#:phases>['setenv]: New phase.
['patch-python-references]: New phase.
['patch-external-programs]: New phase.
['patch-pulseaudio-libraries]: New phase.
['wrap-blueman-progs]: New phase.
[native-inputs]: Add autoconf, autogen, automake and gobject-introspection.
[inputs]: Add iptables and ppp. Remove adwaita-icon-theme.
Signed-off-by: Pierre Neidhardt <mail@ambrevar.xyz>
gnu: Add libappindicator.
* gnu/packages/freedesktop.scm (libappindicator): New variable.
Signed-off-by: Pierre Neidhardt <mail@ambrevar.xyz>
gnu: Add libindicator.
* gnu/packages/freedesktop.scm (libindicator): New variable.
Signed-off-by: Pierre Neidhardt <mail@ambrevar.xyz>
gnu: Add dbus-test-runner.
* gnu/packages/glib.scm (dbus-test-runner): New variable.
Signed-off-by: Pierre Neidhardt <mail@ambrevar.xyz>
news: Add news entry for 'guix pack -RR' and Fakechroot.
* etc/news.scm: Add entry.
pack: Add relocation via ld.so and fakechroot.
* 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.
gnu: Add fakechroot.
* gnu/packages/linux.scm (fakechroot): New variable.
pack: Factorize store references in wrapper.
* 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@".
pack: Wrapper honors 'GUIX_EXECUTION_ENGINE' environment variable.
* 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'.
store: 'mapm/accumulate-builds' preserves '%current-target-system'.
Fixes <https://bugs.gnu.org/41182>.
* guix/store.scm (mapm/accumulate-builds): Pass #:system and #:target to
'run-with-store'.
* tests/store.scm ("mapm/accumulate-builds, %current-target-system"):
New test.
* tests/guix-pack.sh: Add 'guix pack -d --target' test.
packages: Ensure bags are insensitive to '%current-target-system'.
Fixes a bug whereby a bag's transitive dependencies would depend on the
global '%current-target-system' value.
Partly fixes <https://issues.guix.gnu.org/41182>.
* guix/packages.scm (bag-transitive-inputs)
(bag-transitive-build-inputs, bag-transitive-target-inputs):
Parameterize '%current-target-system'.
* tests/packages.scm ("package->bag, sensitivity to %current-target-system"):
New test.
pack: Do not cross-compile the image building tools.
Until now, something like:
guix pack -f docker --target=arm-linux-gnueabihf
would attempt to cross-compile tar.
* guix/scripts/pack.scm (self-contained-tarball): Pass #:target to
'gexp->derivation'.
(squashfs-image): Use #+ instead of #$ for ARCHIVER. Use 'file-append'
instead of 'string-append'. Pass #:target to 'gexp->derivation'.
(docker-image): Likewise.
gnu: dump1090: Don't hard-code CC=gcc.
* gnu/packages/radio.scm (dump1090)[arguments]: Add 'make-flags' field to set
'CC' to the right compiler, remove 'configure' phase.
gnu: js8call: Fix undefined symbol error when starting the program.
* gnu/packages/radio.scm (js8call)[arguments]: Add 'work-around-runtime-bug'
phase.
gnu: wsjtx: Fix undefined symbol error when starting the program.
* gnu/packages/radio.scm (wsjtx)[arguments]: Add 'work-around-runtime-bug'
phase.
gnu: Add sparse.
* gnu/packages/c.scm (sparse): New variable.