Raw disk-images and ISO9660 images are created in a Qemu virtual machine. This
is quite fragile, very slow, and almost unusable without KVM.
For all these reasons, add support for host image generation. This implies the
use new image generation mechanisms.
- Raw disk images: images of partitions are created using tools such as mke2fs
and mkdosfs depending on the partition file-system type. The partition
images are then assembled into a final image using genimage.
- ISO9660 images: the ISO root directory is populated within the store. GNU
xorriso is then called on that directory, in the exact same way as this is
done in (gnu build vm) module.
Those mechanisms are built upon the new (gnu image) module.
* gnu/image.scm: New file.
* gnu/system/image.scm: New file.
* gnu/build/image: New file.
* gnu/local.mk: Add them.
* gnu/system/vm.scm (system-disk-image): Rename to system-disk-image-in-vm.
* gnu/ci.scm (qemu-jobs): Adapt to new API.
* gnu/tests/install.scm (run-install): Ditto.
* guix/scripts/system.scm (system-derivation-for-action): Ditto.
* gnu/packages/crates-io.scm (rust-nettle-sys-2): New variable.
* gnu/packages/patches/rust-nettle-sys-disable-vendor.patch: New file.
* gnu/local.mk: Add it.
* gnu/packages/bioinformatics.scm (grocsvs): New variable.
* gnu/packages/patches/grocsvs-dont-use-admiral.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/music.scm (extempore): Update to 0.8.6.
[snippets]: Delete bundled dependencies.
[patches]: Add it.
* gnu/packages/patches/extempore-unbundle-external-dependencies.patch: Patch
CMakeLists.txt to use system libraries.
* gnu/local.mk (dist_patch_DATA): Add it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/llvm.scm (llvm-for-extempore): Update to 3.8.
[source]: Use upstream patched source.
* gnu/packages/patches/llvm-for-extempore.patch: Delete due to source being
already patched.
* gnu/local.mk (dist_patch_DATA): Remove it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Jami is a massive package and its developers modify many libraries. Keeping
them in a single file makes maintenance easier.
* gnu/packages/telephony.scm (%jami-version, jami-source,
pjproject-jami, libring, libringclient,
jami, jami-client-gnome): Move to ...
* gnu/packages/jami.scm: ... this new file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
Signed-off-by: Mathieu Othacehe <m.othacehe@gmail.com>
* gnu/packages/openldap.scm (openldap)[replacement]: New field.
(openldap/fixed): New variable.
* gnu/packages/patches/openldap-CVE-2020-12243.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
Print a more helpful error message when someone attempts to run Telega on an
incompatible Emacs (e.g a 32-bit Emacs without wide ints).
* gnu/packages/patches/emacs-telega-test-env.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/emacs-xyz.scm (emacs-telega)[source]: Use it.
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
* gnu/packages/maths.scm (dune-*): Update to version 2.7.
(dune-uggrid)[source] Download from Git, as no release tarball for
version 2.7 exists.
(dune-alugrid,dune-subgrid,dune-pdelab)[source] Use commit hashes as no
tags for version 2.7 exist (yet?).
(dune-istl)[source](patches) Add patch required to build version 2.7
without openmpi.
* gnu/packages/patches/dune-istl-2.7-fix-non-mpi-tests.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/bootloaders (u-boot-pinebook-pro-rk3399): New variable.
* gnu/packages/patches/u-boot-DT-for-Pinebook-Pro.patch: New file.
* gnu/packages/patches/u-boot-add-boe-nv140fhmn49-display.patch: New file.
* gnu/packages/patches/u-boot-gpio-keys-binding-cons.patch: New file.
* gnu/packages/patches/u-boot-leds-common-binding-con.patch: New file.
* gnu/packages/patches/u-boot-support-Pinebook-Pro-laptop.patch: New file.
* gnu/packages/patches/u-boot-video-rockchip-fix-build.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add new patches.
* gnu/bootloader/u-boot.scm (install-pinebook-pro-rk3399-u-boot,
u-boot-pinebook-pro-rk3399-bootloader): New variable.
Co-authored-by: Jan Nieuwenhuizen <janneke@gnu.org>
* gnu/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/maths.scm (libqalculate)[source]: Use it.
Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
Reported by sirgazil on #guix.
* gnu/packages/patches/python-jedi-sort-project-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/python-xyz.scm (python-jedi)[source](patches): Add it.
[arguments]: Run tests more verbosely while at it.
Fixes <https://bugs.gnu.org/37831>.
Reported by Pierre Neidhardt <mail@ambrevar.xyz>.
* gnu/packages/patches/gdm-default-session.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gnome.scm (gdm)[source]: Use it.
* gnu/packages/textutils.scm (dbacl): Update to 1.14.1.
[source]: Add patch to fix build with current glibc.
[arguments]: (Try to) bootstrap only once.
* gnu/packages/patches/dbacl-include-locale.h.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/installer/proxy.scm: New file.
* gnu/local.mk (INSTALLER_MODULES): Add it.
* po/guix/POTFILES.in: Add it.
* gnu/installer/newt/parameters.scm (run-proxy-page): New procedure,
(run-parameters-page): add the previous procedure to the parameters menu.
* gnu/installer/newt/help.scm: New file.
* gnu/local.mk (INSTALLER_MODULES): Add it.
* po/guix/POTFILES.in: Add it.
* gnu/installer/record.scm (<installer>): Add 'help-menu' and 'help-page'
fields,
(installer-help-menu, installer-help-page): new exported procedures.
* gnu/installer/newt.scm (init): Set the help line,
(help-menu, help-page): new procedures used ...
(newt-installer): ... here.
* gnu/installer/newt/keymap.scm (run-layout-page): Add a context argument to
differenciate the help context from the main one,
(run-keymap-page): add a context argument and pass it to run-layout-page.
* gnu/installer.scm (compute-keymap-step): Add a context argument and pass it
to 'installer-keymap-page',
(installer-steps): set the help menu and pass the appropriate context to
compute-keymap-step calls,
(guile-newt): update to revision 2.
The tester binary generated gets installed with about 20 MiB of data files,
and the HTML documentation weighs another 500 KiB or so. Move them to
separate outputs.
* gnu/packages/patches/mediastreamer-srtp2.patch: Rename to...
* gnu/packages/patches/mediastreamer2-srtp2.patch: ...this, to please 'guix
lint'.
* gnu/local.mk (dist_patch_DATA): Adapt.
* gnu/packages/linphone.scm (mediastreamer2)[patches]: Likewise.
[outputs]: Add the "doc" and "tester" outputs.
[phases]: Add a phase to move the HTML doc and tester binary and data to the
'doc' and 'tester' outputs, respectively.
[description]: Remove the unicode characters surrounding the word 'powerful'.
* gnu/packages/patches/mediastreamer-srtp2.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/linphone.scm (mediastreamer2)[source]: Use it.