| Commit message (Collapse) | Author | Age |
|
|
|
|
|
| |
*gnu/system/shadow.scm (find-duplicates): New variable.
(assert-unique-account-names, assert-unique-group-names): New variables.
(account-activation): Use them here.
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes: <https://issues.guix.gnu.org/45584>.
* gnu/system/image.scm (arm32-disk-image, arm64-disk-image): Turn into
procedures, taking the root partition offset as argument.
* gnu/system/images/novena.scm (novena-image-type): Adapt accordingly.
* gnu/system/images/pine64.scm (pine64-image-type): Ditto.
* gnu/system/images/pinebook-pro.scm (pinebook-pro-image-type): Use a 9MiB
offset for the root partition.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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'.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* gnu/installer/substitutes.scm: New file.
* gnu/installer/newt/substitutes.scm: New file.
* gnu/local.mk (INSTALLER_MODULES): Add them.
* po/guix/POTFILES.in: Add gnu/installer/newt/substitutes.scm.
* gnu/installer/proxy.scm (with-silent-shepherd): Move to ...
* gnu/installer/utils.scm: ... here.
* gnu/installer/record.scm (<installer>)[substitutes-page]: New field.
* gnu/installer/newt.scm (substitutes-page): New procedure,
(newt-installer): register it.
* gnu/installer.scm (installer-steps): Add "substitutes-page" step.
* gnu/system/install.scm (%installation-services): Add avahi-service-type and
enable substitute server discover in guix-service-type.
[<name-service-switch>]: Set it to %mdns-host-lookup-nss.
|
|
|
|
|
|
|
| |
* gnu/system/linux-initrd.scm (file-system-packages): Add
bcachefs-tools/static.
(file-system-type-modules): Add an entry for the "bcachefs" type and
module.
|
|
|
|
|
| |
* gnu/system/images/novena.scm (novena-barebones-os)[initrd-modules]: Add
i2c-dev.
|
|
|
|
|
|
|
| |
This is a follow-up of 41f27bf8702838f19b1dc5ffee8eec1d4315d4e6.
* gnu/system/image.scm (operating-system-for-image): Force "volatile-root?" to
true when producing ISO images.
|
|
|
|
|
|
| |
* gnu/system/images/novena.scm (novena-barebones-os)[kernel-arguments]: New
field.
[services]: Remove field.
|
|
|
|
|
| |
* gnu/system/images/novena.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* gnu/system/mapped-devices.scm (lvm-device-mapping, open-lvm-device,
close-lvm-device): New variables.
* gnu/tests/install.scm (%lvm-separate-home-os,
%lvm-separate-home-os-source, %lvm-separate-home-installation-script,
%test-lvm-separate-home-os): New variables.
* gnu/system/linux-initrd.scm (raw-initrd): Add (srfi srfi-1) to initrd expression.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
| |
* gnu/system/mapped-devices.scm (<mapped-device>): Rename constructor to
%mapped-device.
[target]: Remove field.
[targets]: New field. Adjust users.
(mapped-device-compatibility-helper, mapped-device): New macros.
(mapped-device-target): New deprecated procedure.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
|
|
|
|
| |
* gnu/system/images/pinebook-pro.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* gnu/ci.scm (%guix-system-images): Add pinebook-pro-barebones-raw-image.
|
|
|
|
|
|
| |
* gnu/system/vm.scm (system-disk-image-in-vm): Remove.
Reported-by: Ludovic Courtès <ludo@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
| |
When the image type is "raw" or derived from it (such as "qcow2"), an ESP
partition and file system is already added by the image generator. If a
conflicting user-provided EFI file system is provided, it causes the boot to
fail, as happens for the lightweight-desktop.tmpl and desktop.tmpl templates
under gnu/system/examples.
* gnu/system/image.scm (operating-system-for-image): Remove file systems whose
mount point is "/boot/efi".
|
|\ |
|
| |
| |
| |
| |
| | |
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Add calls to
'setenv' and 'setlocale'.
|
| |
| |
| |
| |
| |
| |
| | |
Fixes <https://bugs.gnu.org/44511>.
Reported by Maxim Cournoyer <maxim.cournoyer@gmail.com>.
* gnu/system/vm.scm (system-qemu-image): Add 'bootloader' field to OS.
|
| |
| |
| |
| |
| |
| |
| | |
This is a followup to 99efa804bd6df5de4760ec5974ed2297f1746366.
* gnu/system/image.scm (system-disk-image): Pass #:local-build? #f to
'computed-file'.
|
| |
| |
| |
| |
| |
| |
| | |
This is a followup to 99efa804bd6df5de4760ec5974ed2297f1746366.
* gnu/system/image.scm (system-disk-image): Pass #:local-build? #f to
'computed-file'.
|
| |
| |
| |
| |
| | |
* gnu/system/uuid.scm (string->bcachefs-uuid): New exported procedure.
(%uuid-parsers, %uuid-printers): Add the ‘bcachefs’ file system type.
|
|/
|
|
|
|
|
|
|
|
|
|
| |
* gnu/services/networking.scm (yggdrasil-configuration)
(yggdrasil-configuration?, yggdrasil-configuration-package)
(yggdrasil-configuration-auto-conf, yggdrasil-configuration-log-level)
(yggdrasil-configuration-log-to): New procedures.
(yggdrasil-service-type): New variable.
* doc/guix.texi: Document it.
* gnu/system/examples/yggdrasil.tmpl: Provide example.
Signed-off-by: Julien Lepiller <julien@lepiller.eu>
|
|
|
|
|
|
| |
* gnu/system/vm.scm (system-qemu-image)[file-systems-to-keep]: Check
whether SOURCE is a string before calling 'string-prefix?'. Remove
UUIDs and file system labels as well.
|
|
|
|
|
|
|
|
| |
This builds are extremely I/O-intensive so they'd rather not run on the
head node of the build farm.
* gnu/system/image.scm (system-disk-image, system-iso9660-image): Pass
#:local-build? #f.
|
|
|
|
|
|
| |
* gnu/system/image.scm (arm32-disk-image, arm32-image-type): New variables.
(arm64-disk-image): Inherit from arm32-disk-image.
(arm64-image-type): Change name to 'arm64-raw.
|
|
|
|
|
|
|
|
|
| |
* gnu/system.scm (%base-packages-interactive): Add nvi.
* gnu/system/install.scm (installation-os)[packages]: Remove parted,
gptfdisk, ddrescue, cryptsetup, mdadm, dosfstools, btrfs-progs,
f2fs-tools, jfstools, openssh, wireless-tools, iw,
wpa-supplicant-minimal, iproute, bash-completion, nvi. Add
%base-packages-disk-utilities.
|
|
|
|
|
|
| |
* gnu/system/image.scm: Use (srfi srfi-34) for 'raise'.
(lookup-image-type-by-name): Remove extra newline in 'formatted-message'
string.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Suggested by zenny via IRC.
* gnu/installer/services.scm (%system-services): Add emacs, emacs-exwm,
emacs-desktop-environment.
* etc/release-manifest.scm (%system-packages): Likewise.
* gnu/system/examples/lightweight-desktop.tmpl: Likewise.
* gnu/tests/install.scm (installation-target-desktop-os-for-gui-tests)
[packages]: Likewise
* gnu/installer/newt/services.scm (run-desktop-environments-cbt-page): Make
one entry taller.
|
|
|
|
|
|
| |
This reverts commit 73ddcab6075f60ef9b3cd72a35fbf7f5d622b6ef.
Blacklisting has become necessary again on my AMD machines, else
the installer screen stays black.
|
|
|
|
|
| |
* gnu/system/hurd.scm (%base-packages/hurd): Add diffutils, patch, gawk, tar, gzip,
bzip2, xz, and lzip.
|
|
|
|
|
| |
* gnu/system/hurd.scm (%base-packages/hurd): Change GUILE-3.0 to
GUILE-3.0-LATEST.
|
|
|
|
|
|
|
|
|
|
|
| |
* gnu/system.scm (hurd-default-essential-services): Add
setuid-program-service-type.
* gnu/system/hurd.scm (%base-packages/hurd): Add shadow, sudo.
(%setuid-programs/hurd): New variable.
(%hurd-default-operating-system)[setuid-program]: Use it.
[pam-services, sudoers-file]: Remove overrides; enabling regular defaults.
* gnu/system/examples/bare-hurd.tmpl (%hurd-os)[users]: New field.
[services]: Do not disable PAM in SSH.
|
|
|
|
|
| |
* gnu/system/images/pine64.scm (pine64-barebones-raw-image): New variable.
* gnu/ci.scm (%guix-system-images): Add it.
|
|
|
|
|
|
| |
* gnu/system/images/pine64.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* gnu/system/image.scm (arm64-disk-image, arm64-image-type): New variables.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a follow-up of f19cf27c2b9ff92e2c0fd931ef7fde39c376adaa. The
bootloader installation must be done on the final disk-image, hence using
"disk-image-installer" instead of "installer" callback.
* gnu/bootloader/u-boot.scm: Turn all installer callbacks into
disk-image-installer callbacks.
* gnu/build/bootloader.scm (write-file-on-device): Open the output file with
'no-truncate and 'no-create options.
* gnu/system/image.scm (with-imported-modules*): Add (gnu build bootloader)
module.
|
|
|
|
| |
* gnu/system/image.scm (qcow2-image-type): New variable.
|
|
|
|
|
|
|
|
|
|
| |
* gnu/system/linux-container.scm (%nscd-container-caches): New variable.
(containerized-operating-system): Instantiate nscd-service with smaller caches
and add it to the generated operating-system, replacing any nscd-service
specified by the caller.
* gnu/system/file-systems.scm: (%network-file-mappings): Remove "/var/run/nscd".
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* gnu/system/image.scm (image-with-os): New macro. Rename the old
"image-with-os" procedure to ...
(image-with-os*): ... this new procedure,
(system-image): adapt according,
(raw-image-type, iso-image-type, uncompressed-iso-image-type
%image-types): new variables,
(lookup-image-type-by-name): new procedure.
(find-image): remove it.
* gnu/system/images/hurd.scm (hurd-image-type): New variable,
use it to define ...
(hurd-disk-image): ... this variable, using "os->image" procedure.
* gnu/tests/install.scm (run-install): Rename
installation-disk-image-file-system-type parameter to installation-image-type,
use os->config instead of find-image to compute the image passed to system-image,
(%test-iso-image-installer) adapt accordingly,
(guided-installation-test): ditto.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
|
|
|
|
| |
* gnu/system/images/hurd.scm (hurd-barebones-qcow2-image): New variable.
|
|
|
|
|
|
|
|
|
| |
* gnu/build/image.scm (convert-disk-image): New procedure.
(genimage): Remove target argument.
* gnu/system/image.scm (system-disk-image): Add support for 'compressed-qcow2
image format. Call "convert-disk-image" to apply image conversions on the
final image. Add "qemu-minimal" to the build inputs.
(system-image): Also add support for 'compressed-qcow2.
|
|
|
|
|
| |
* gnu/system/image.scm (system-iso9660-image): Change the default file output
name to "image.iso".
|
|
|
|
|
|
|
|
|
|
| |
Move the cow-store procedure from the service declaration in (gnu system
install) to (gnu build install), so that it can be called from within a
different context than Shepherd.
* gnu/build/install.scm (mount-cow-store, unmount-cow-store): New procedures.
* gnu/system/install.scm (make-cow-store): Remove it,
(cow-store-service-type): adapt it accordingly.
|
|
|
|
|
| |
This reverts commit 6a9581741e4ee81226aeb2f1c997df76670a6aab, which is
obsoleted by the previous commit.
|
|
|
|
|
|
|
|
|
| |
* guix/scripts/system.scm (%options): Add `--label'.
(system-derivation-for-action): Take a #:label key to set volume ID.
(perform-action): Take a #:label key.
(%default-options): Add default label value.
(process-action): Pass label value from command-line to perform-action.
* gnu/system/image.scm (image-with-label): New procedure.
|
|
|
|
|
|
|
|
| |
Fixes <https://bugs.gnu.org/43062>.
Reported by elaexuotee@wilsonb.com.
* gnu/system/vm.scm (mapping->file-system)[options]: Disable loose
caching when WRITABLE? is true.
|
|
|
|
|
|
|
| |
This is a followup to c7af96871737ffa0e2be879e200573bc60603c8c.
* gnu/system/examples/lightweight-desktop.tmpl: Remove extra
'use-package-modules' line.
|
|
|
|
|
|
|
|
|
|
| |
Image files can be very large (multiple gigabytes), and the process of
generating them is primarily I/O bound. As disk access is typically faster
than network access, it makes sense build them locally.
* gnu/system/image.scm (system-disk-image): Pass the #:local-build? #t
parameter to computed-file calls dealing with generating image files.
(system-iso9660-image): Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a follow-up of 755f365b02b42a5d1e8ef3000dadef069553a478.
As (zlib) is autoloaded in (gnu build linux-modules), "guile-zlib" is needed
as an extension only when it is effectively used.
* gnu/installer.scm (installer-program): Remove "guile-zlib" from the extensions.
* gnu/machine/ssh.scm (machine-check-initrd-modules): Ditto.
* gnu/services.scm (activation-script): Ditto.
* gnu/services/base.scm (default-serial-port): Ditto,
(agetty-shepherd-service): ditto,
(udev-service-type): ditto.
* gnu/system/image.scm (gcrypt-sqlite3&co): Ditto.
* gnu/system/shadow.scm (account-shepherd-service): Ditto.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds support for GZIP compression for linux-libre kernel
modules. The initrd modules are kept uncompressed as the initrd is already
compressed as a whole.
The linux-libre kernel also supports XZ compression, but as Guix does not have
any available bindings for now, and the compression time is far more
significant, GZIP seems to be a better option.
* gnu/build/linux-modules.scm (modinfo-section-contents): Use
'call-with-gzip-input-port' to read from a module file using '.gz' extension,
(strip-extension): new procedure,
(dot-ko): adapt to support compression,
(ensure-dot-ko): ditto,
(file-name->module-name): ditto,
(find-module-file): ditto,
(load-linux-module*): ditto,
(module-name->file-name/guess): ditto,
(module-name-lookup): ditto,
(write-module-name-database): ditto,
(write-module-alias-database): ditto,
(write-module-device-database): ditto.
* gnu/installer.scm (installer-program): Add "guile-zlib" to the extensions.
* gnu/machine/ssh.scm (machine-check-initrd-modules): Ditto.
* gnu/services.scm (activation-script): Ditto.
* gnu/services/base.scm (default-serial-port): Ditto,
(agetty-shepherd-service): ditto,
(udev-service-type): ditto.
* gnu/system/image.scm (gcrypt-sqlite3&co): Ditto.
* gnu/system/linux-initrd.scm (flat-linux-module-directory): Add "guile-zlib"
to the extensions and make sure that the initrd only contains
uncompressed module files.
* gnu/system/shadow.scm (account-shepherd-service): Add "guile-zlib" to the
extensions.
* guix/profiles.scm (linux-module-database): Ditto.
|
|
|
|
|
| |
* gnu/system/file-systems.scm (spec->file-system): Ignore extra fields.
(file-system->spec): Add comment.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Tools such as efibootmgr rely on the deprecated /sys/firmware/efi/vars API as
well as on the new /sys/firmware/efi/efivars API. The latter needs to be
mounted.
Reported by Keyhenge here:
https://lists.gnu.org/archive/html/bug-guix/2020-04/msg00274.html
Here is the efivarfs documentation:
https://www.kernel.org/doc/Documentation/filesystems/efivarfs.txt.
* gnu/system/file-systems.scm (%efivars-file-system): New exported variable,
(%base-file-systems): add it.
* gnu/system/install.scm (%efivars-file-system): Add it.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
|