aboutsummaryrefslogtreecommitdiff
path: root/gnu/system
Commit message (Collapse)AuthorAge
...
* system: bare-bones: Remove dependency to X libraries.Mathieu Othacehe2020-06-08
| | | | | | | | Use "openssh-sans-x" to prevent the inclusion of X libraries to the bare-bones system closure. * gnu/system/examples/bare-bones.tmpl (operating-system)[services]: Use openssh-sans-x instead of openssh.
* system: install: Add default libcs to gc-roots.Mathieu Othacehe2020-06-08
| | | | | | | | | | | During the installation, it may be needed to build locales that are not covered by glibc-utf8-locales. Make sure that the libraries required to build locales are available. This is a follow-up of 0eed77127592323d89f56c215a15374a1aaae110. * gnu/system/install.scm (installation-os)[services]: Add %default-locale-libcs to gc-root-service-type.
* vm: Shared-store script runs the native QEMU and Bash.Ludovic Courtès2020-06-06
| | | | | * gnu/system/vm.scm (system-qemu-image/shared-store-script): Use #+ for QEMU and BASH.
* vm: <virtual-machine> compiler honors system and target.Ludovic Courtès2020-06-06
| | | | | | | * gnu/system/vm.scm (system-qemu-image/shared-store): Add #:system and #:target. Pass it down. (system-qemu-image/shared-store-script): Likewise. (virtual-machine-compiler): Likewise.
* vm: 'qemu-image' preserves the cross-compilation target of the OS.Ludovic Courtès2020-06-06
| | | | | | * gnu/system/vm.scm (qemu-image)[preserve-target, inputs*]: New variables. In gexp, use INPUTS* instead of INPUTS. Wrap OS and BOOTCFG-DRV in 'preserve-target'. Pass INPUTS* instead of INPUTS as the #:references-graphs.
* vm: 'qemu-image' uses the native partitioning tools and bootloader.Ludovic Courtès2020-06-06
| | | | * gnu/system/vm.scm (qemu-image): Use #+ for Parted, the bootloader, etc.
* vm: 'expression->derivation-in-linux-vm' always returns a native build.Ludovic Courtès2020-06-06
| | | | | | | | | | * gnu/system/vm.scm (expression->derivation-in-linux-vm): Remove #:target. [builder]: Use #+. Don't pass #:target-arm32? and #:target-aarch64? to 'load-in-linux-vm'. Pass #:target #f to 'gexp->derivation'. (qemu-image): Adjust accordingly. * gnu/build/vm.scm (load-in-linux-vm): Remove #:target-aarch64? and #:target-arm32?. Define them as local variables.
* image: Do not use VM to create disk-images.Mathieu Othacehe2020-05-29
| | | | | | | | | | | | | | | | Now that installing Grub on raw disk-images is supported, we do not need to rely on (gnu system vm) module. * gnu/system/image.scm (make-system-image): Rename to ... (system-image): ... this, and remove the compatibility wrapper. (find-image): Turn to a monadic procedure. This will become useful when introducing Hurd support, to be able to detect the target system. * gnu/ci.scm (qemu-jobs): Use lower-object now that system-image returns a file-like object. * gnu/tests/install.scm (run-install): Ditto. * guix/scripts/system.scm (system-derivation-for-action): Add a 'base-image' argument, (perform-action): adapt accordingly.
* image: Add a post-MBR gap to the default image.Mathieu Othacehe2020-05-29
| | | | | | | | | | The generic 'efi-disk-image' needs to be bootable on systems without EFI. To do that, GRUB is installed in the post-MBR gap. Make sure that the first partition starts with an offset, to make this gap large enough for GRUB. * gnu/system/image.scm (root-offset, root-label): New variables, (esp-partition): use 'root-offset' as the partition offset, (root-partition): use 'root-label' as the partition label.
* system: image: Fix image-with-os.Mathieu Othacehe2020-05-29
| | | | | * gnu/system/image.scm (image-with-os): Do not reorder partitions, as we want them to be created according to definition order.
* image: Use grub-efi to install the EFI bootloader.Mathieu Othacehe2020-05-29
| | | | | | | * gnu/build/image.scm (initialize-efi-partition): Rename bootloader-package argument to grub-efi. * gnu/system/image.scm (system-disk-image): Adapt accordingly to pass grub-efi package.
* system: image: Correct genimage configuration file indentation.Mathieu Othacehe2020-05-29
| | | | | * gnu/system/image.scm (system-disk-image): Fix genimage configuration file indentation.
* image: Add bootloader installation support.Mathieu Othacehe2020-05-29
| | | | | | | * gnu/build/image.scm (initialize-root-partition): Add bootloader-package and bootloader-installer arguments. Run the bootloader-installer if defined. * gnu/system/image.scm (system-disk-image): Adapt the partition initializer call accordingly.
* bootloader: Add 'disk-image-installer'.Mathieu Othacehe2020-05-29
| | | | | | | | | | | | | * gnu/bootloader.scm (<bootloader>)[disk-image-installer]: New field, (bootloader-disk-image-installer): export it. * gnu/bootloader/grub.scm (install-grub-disk-image): New procedure ... (grub-bootloader): ... used as "disk-image-installer" here. (grub-efi-bootloader): set "disk-image-installer" to #f. * gnu/system/image.scm (root-partition?, find-root-partition): Move to "Helpers" section. (root-partition-index): New procedure. (system-disk-image): Honor disk-image-installer, and use it to install the bootloader directly on the disk-image, if supported.
* system: hurd: Remove custom <manifest> gexp compiler.Ludovic Courtès2020-05-28
| | | | | | | | This is superseded by <profile>, which was added in ef674a24c527eaf54801707d34dbf5d12ec139cb. * gnu/system/hurd.scm (compile-manifest): Remove. (cross-hurd-image)[system-profile]: Define using 'profile'.
* image: Add partition file-system options support.Mathieu Othacehe2020-05-26
| | | | | | | | * gnu/image.scm (<partition>)[file-system-options]: New field, (partition-file-system-options): new exported procedure. * gnu/system/image.scm (partition->gexp): Adapt accordingly. * gnu/build/image.scm (sexp->partition): Also adapt accordingly, (make-ext-image): and pass file-system options to mke2fs.
* image: Set offset default to zero.Mathieu Othacehe2020-05-26
| | | | | * gnu/image.scm (<partition>)[offset]: Set to zero by default. * gnu/system/image.scm (system-disk-image): Adapt accordingly.
* system: image: Fix disk-image cross-compilation.Mathieu Othacehe2020-05-26
| | | | | | * gnu/system/image.scm (system-disk-image): Use the native version of the helper packages (e2fsprogs, dosfstools, mtools, genimage, coreutils and findutils).
* image: Add partition offset support.Mathieu Othacehe2020-05-26
| | | | | | * gnu/image.scm (partition-offset): New procedure, (<partition>)[offset]: new field. * gnu/system/image.scm (system-disk-image): Apply the partition offset.
* bootloader: grub: Allow booting from a Btrfs subvolume.Maxim Cournoyer2020-05-20
| | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/bootloader/grub.scm (strip-mount-point): Remove procedure. (normalize-file): Add procedure. (grub-configuration-file): New BTRFS-SUBVOLUME-FILE-NAME parameter. When defined, prepend its value to the kernel and initrd file names, using the NORMALIZE-FILE procedure. Adjust the call to EYE-CANDY to pass the BTRFS-SUBVOLUME-FILE-NAME argument. Normalize the KEYMAP file as well. (eye-candy): Add a BTRFS-SUBVOLUME-FILE-NAME parameter, and use it, along with the NORMALIZE-FILE procedure, to normalize the FONT-FILE and IMAGE nested variables. Adjust doc. * gnu/bootloader/depthcharge.scm (depthcharge-configuration-file): Adapt. * gnu/bootloader/extlinux.scm (extlinux-configuration-file): Likewise. * gnu/system/file-systems.scm (btrfs-subvolume?) (btrfs-store-subvolume-file-name): New procedures. * gnu/system.scm (operating-system-bootcfg): Specify the Btrfs subvolume file name the store resides on to the `operating-system-bootcfg' procedure, using the new BTRFS-SUBVOLUME-FILE-NAME argument. * doc/guix.texi (File Systems): Add a Btrfs subsection to document the use of subvolumes. * gnu/tests/install.scm (%btrfs-root-on-subvolume-os) (%btrfs-root-on-subvolume-os-source) (%btrfs-root-on-subvolume-installation-script) (%test-btrfs-root-on-subvolume-os): New variables.
* file-systems: Add helpers for parsing the options string into an alist.Maxim Cournoyer2020-05-20
| | | | | | | * gnu/system/file-systems.scm (file-system-options->alist) (alist->file-system-options): New procedures. * tests/file-systems.scm: New tests. * doc/guix.texi (File Systems): Add note about the newly added procedures.
* linux-initrd: Silence Guile warnings.Ludovic Courtès2020-05-16
| | | | | | | | | | Previously, since the switch to Guile 3, we'd see this warning repeated several times at boot time: WARNING: …: imported module (guix build utils) overrides core binding `delete' * gnu/system/linux-initrd.scm (raw-initrd): In gexp, #:hide 'delete' from (guix build utils). Wrap 'boot-system' in 'parameterize'.
* vm: Use 'let-system'.Ludovic Courtès2020-05-16
| | | | | | * gnu/system/vm.scm (expression->derivation-in-linux-vm)[check]: New macro. [builder]: Use 'let-system' and 'check' instead of referencing '%current-system' and '%current-target-system'.
* locale: Use the native gzip and libc when building locales.Ludovic Courtès2020-05-15
| | | | | | | This fixes system cross-compilation. * gnu/system/locale.scm (single-locale-directory)[build]: Use the native GZIP and LIBC.
* Merge branch 'core-updates'Marius Bakke2020-05-08
|\
| * Merge branch 'master' into core-updatesMarius Bakke2020-05-05
| |\
| * | locale: Add glibc 2.29 to '%default-locale-libcs'.Ludovic Courtès2020-05-03
| | | | | | | | | | | | | | | | | | | | | This eases transition for anyone reconfiguring and still having profiles with packages using the former libc. * gnu/system/locale.scm (%default-locale-libcs): Add GLIBC-2.29.
| * | Merge branch 'master' into core-updatesMarius Bakke2020-05-02
| |\ \
| * | | gnu: linux-initrd: Use Guile 3.0.Marius Bakke2020-05-01
| | | | | | | | | | | | | | | | | | | | * gnu/system/linux-initrd.scm (expression->initrd): Change from %GUILE-STATIC-STRIPPED to %GUILE-3.0-STATIC-STRIPPED.
| * | | system: hurd: Add /etc/group.Jan (janneke) Nieuwenhuizen2020-05-01
| | | | | | | | | | | | | | | | | | | | | | | | This allows download to run. * gnu/system/hurd.scm (cross-hurd-image): Add /etc/group with guixbuilder.
| * | | system: hurd: Add less, which to %base-packages/hurd.Efraim Flashner2020-05-01
| | | | | | | | | | | | | | | | * gnu/system/hurd.scm (%base-packages/hurd): Add less, which.
| * | | Merge branch 'master' into core-updatesMarius Bakke2020-04-30
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: gnu/local.mk gnu/packages/backup.scm gnu/packages/emacs-xyz.scm gnu/packages/guile.scm gnu/packages/lisp.scm gnu/packages/openldap.scm gnu/packages/package-management.scm gnu/packages/web.scm gnu/packages/xorg.scm
| * \ \ \ Merge branch 'master' into core-updatesMarius Bakke2020-04-26
| |\ \ \ \
| * \ \ \ \ Merge branch 'master' into core-updatesMarius Bakke2020-04-23
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: etc/news.scm gnu/local.mk gnu/packages/bootloaders.scm gnu/packages/linphone.scm gnu/packages/linux.scm gnu/packages/tls.scm gnu/system.scm
| * \ \ \ \ \ Merge branch 'master' into core-updatesMarius Bakke2020-04-19
| |\ \ \ \ \ \
| * | | | | | | installer: Add GC root for Guile 3.0.Marius Bakke2020-04-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/system/install.scm (%installation-services)[gc-root-service-type]: Add GC root for GUILE-3.0 instead of GUILE-2.2.
| * | | | | | | Merge branch 'master' into core-updatesMarius Bakke2020-04-15
| |\ \ \ \ \ \ \
| * | | | | | | | system: hurd: Add guile-candy.Ludovic Courtès2020-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/system/hurd.scm (%base-packages/hurd): Add GUILE-COLORIZED and GUILE-READLINE. (cross-hurd-image)[hurd-directives]: Add /root/.guile.
| * | | | | | | | system: hurd: Add net-base and inetutils, and /etc/{services,protocols}.Jan (janneke) Nieuwenhuizen2020-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes In procedure getaddrinfo: Servname not supported for ai_socktype * gnu/system/hurd.scm (%base-packages/hurd): Add net-base, inetutils. (cross-hurd-image): Add /etc/{services,protocols} from net-base.
| * | | | | | | | system: hurd: Create a proper profile.Ludovic Courtès2020-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/system/hurd.scm (compile-manifest): New procedure. (cross-hurd-image)[for-hurd, hurd-os]: Remove. [cross-built, cross-built-entry]: New procedures. [system-profile]: New variable. [grub.cfg]: Use 'cross-built'. [profile]: Rename to... [etc-profile]: ... this, and adjust accordingly. [hurd-directives]: Create /run/current-system/profile and /etc/profile. Adjust arguments to 'qemu-image'.
| * | | | | | | | system: hurd: Add root profile.Jan (janneke) Nieuwenhuizen2020-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/system/hurd.scm (%base-packages/hurd): New variable. (cross-hurd-image)[for-hurd]: New function. (cross-hurd-image)[hurd-os]: Use them. (cross-hurd-image)[profile]: Hack'y .profile for root, only setting PATH.
| * | | | | | | | system: hurd: Create /etc/{hostname,motd,login} and /root.Ludovic Courtès2020-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/system/hurd.scm (cross-hurd-image): Add /etc/{hostname,motd,login} and /root.
| * | | | | | | | system: hurd: Add "/bin/sh" symlink.Jan (janneke) Nieuwenhuizen2020-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows login.c to succeed for root. * gnu/system/hurd.scm (cross-hurd-image): Link /bin/sh to full the full bash.
| * | | | | | | | system: hurd: Add /etc/{passwd,shadow}.Jan (janneke) Nieuwenhuizen2020-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/system/hurd.scm: Generate hard-coded /etc/{passwd,shadow}, allows running chown in MAKEDEV and loggin in.
| * | | | | | | | system: hurd: Add ttys symlink in "/etc/ttys".Jan (janneke) Nieuwenhuizen2020-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/packages/hurd.scm (hurd): Substitute /libexec/. * gnu/system/hurd.scm (cross-hurd-image): Add symlink /etc/ttys => <hurd>/etc/ttys.
| * | | | | | | | system: hurd: Add "/etc/fstab".Jan (janneke) Nieuwenhuizen2020-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows running mount -o remount,rw / successfully. * gnu/system/hurd.scm (cross-hurd-image): Create a hard coded fstab and add it to hurd-os.
| * | | | | | | | Add (gnu system hurd).Ludovic Courtès2020-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/system/hurd.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
| * | | | | | | | vm: Make the device node procedure a parameter.Ludovic Courtès2020-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/build/vm.scm (root-partition-initializer): Add #:make-device-nodes parameter and use it. * gnu/system/vm.scm (qemu-image): Add #:device-node parameter. Pass #:make-device-nodes to 'root-partition-initializer'.
| * | | | | | | | vm: 'qemu-image' can pass options to the 'mkfs' command.Ludovic Courtès2020-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/build/vm.scm (<partition>)[file-system-options]: New field. (create-ext-file-system, create-fat-file-system) (format-partition): Add #:options and honor it. (initialize-partition): Pass #:options to 'format-partition'. * gnu/system/vm.scm (qemu-image): Add #:file-system-options and use it for the root partition.
| * | | | | | | | vm: 'qemu-image' accepts a list of extra populate directives.Ludovic Courtès2020-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/build/vm.scm (root-partition-initializer): Add #:extra-directives parameter and pass it to 'populate-root-file-system'. * gnu/system/vm.scm (qemu-image): Add #:extra-directives parameter and pass it to 'root-partition-initializer'.