summary refs log tree commit diff
path: root/gnu/system/install.scm
AgeCommit message (Collapse)Author
2018-03-07services: file-systems: Include 'user-file-systems' service.Ludovic Courtès
Previously the KNOWN-FS value used in 'essential-services' would be incomplete: it would lack all the file systems provided by services that extend 'file-system-service-type' (/sys/fs/cgroup, /proc/sys/fs/binfmt_misc, etc.) Consequently, upon shutdown, 'user-processes' would unmount these file systems before their corresponding service had been stopped; when their corresponding (e.g., 'file-system-/proc/sys/fs/binfmt_misc') was stopped, its 'umount' call would fail. This was harmless in practice, but this patch makes sure things work as intended and file systems are unmounted in the right order. * gnu/services/base.scm (file-system-shepherd-services): Instantiate 'user-file-systems' Shepherd service from here. (user-unmount-service-type, user-unmount-service): Remove. * gnu/system.scm (essential-services): Remove call to 'user-unmount-service'. * gnu/system/install.scm (cow-store-service-type): Adjust comment.
2018-03-02system: Add 'initrd-modules' field.Ludovic Courtès
* gnu/system.scm (<operating-system>)[initrd-modules]: New field. (operating-system-initrd-file): Pass #:linux-modules to 'make-initrd'. * gnu/system/linux-initrd.scm (default-initrd-modules): New procedure. (%base-initrd-modules): New macro. (base-initrd): Add #:linux-modules and honor it. * gnu/system/install.scm (embedded-installation-os): Use 'initrd-modules' instead of 'initrd'. * gnu/tests/install.scm (%raid-root-os): Likewise. * doc/guix.texi (operating-system Reference): Add 'initrd-modules'. (Initial RAM Disk): Document it. Adjust example to not use #:extra-modules.
2018-02-15services: agetty: Add agetty instance to base services. Make its tty optional.Danny Milosavljevic
* gnu/services/base.scm (%base-services): Instantiate agetty-service. (default-serial-port): New variable. (agetty-shepherd-service): Make tty optional, default to the above. * doc/guix.texi (agetty-configuration): Update "tty" documentation. * gnu/system/install.scm (agetty-default-service): Delete variable. (embedded-installation-os): Remove agetty-default-service instance. Add "console" kernel-argument.
2018-01-23system: Rename a20-olinuxino-lime-sd-installation-os.Danny Milosavljevic
* gnu/system/install.scm (a20-olinuxino-lime-sd-installation-os): Rename to... (a20-olinuxino-lime-installation-os): ...this.
2018-01-22system: Add A20 OLinuXino LIME installer.Danny Milosavljevic
* gnu/bootloader/u-boot.scm (u-boot-a20-olinuxino-lime-bootloader): New exported variable. * gnu/packages/bootloaders.scm (u-boot-a20-olinuxino-lime): New exported variable. * gnu/system/install.scm (a20-olinuxino-lime-installation-os): New exported variable.
2018-01-20system: Add Nintendo NES Classic Edition installer.Danny Milosavljevic
* gnu/bootloader/u-boot.scm (u-boot-nintendo-nes-classic-edition-bootloader): New exported variable. * gnu/packages/bootloaders.scm (u-boot-nintendo-nes-classic-edition): New exported variable. * gnu/system/install.scm (nintendo-nes-classic-edition-installation-os): New exported variable.
2018-01-20system: Factor out embedded-installation-os.Danny Milosavljevic
* gnu/system/install.scm (embedded-installation-os): New variable. (beaglebone-black-installation-os): Use it. (a20-olinuxino-lime2-emmc-installation-os): Use it. (a20-olinuxino-micro-installation-os): Use it. (banana-pi-m2-ultra-installation-os): Use it.
2018-01-20system: Factor out agetty-default-service.Danny Milosavljevic
* gnu/system/install.scm (agetty-default-service): New variable. (beaglebone-black-installation-os): Use it. (a20-olinuxino-lime2-emmc-installation-os): Use it. (a20-olinuxino-micro-installation-os): Use it. (banana-pi-m2-ultra-installation-os): Use it.
2018-01-20system: Add A20 OLinuXino MICRO installer.Danny Milosavljevic
* gnu/bootloader/u-boot.scm (u-boot-a20-olinuxino-micro-bootloader): New exported variable. * gnu/packages/bootloaders.scm (u-boot-a20-olinuxino-micro): New exported variable. * gnu/system/install.scm (a20-olinuxino-micro-installation-os): New exported variable.
2018-01-20system: Add A20 OLinuXino LIME2 installer.Danny Milosavljevic
* gnu/bootloader/u-boot.scm (u-boot-a20-olinuxino-lime2-bootloader): New exported variable. * gnu/packages/bootloaders.scm (u-boot-a20-olinuxino-lime2): New exported variable. * gnu/system/install.scm (a20-olinuxino-lime2-emmc-installation-os): New exported variable.
2018-01-20system: Add Banana Pi M2 Ultra installer.Danny Milosavljevic
* gnu/bootloader/u-boot.scm (u-boot-banana-pi-m2-ultra-bootloader): New exported variable. (install-allwinner-u-boot): New variable. (u-boot-allwinner-bootloader): New variable. * gnu/packages/bootloaders.scm (u-boot-banana-pi-m2-ultra): New exported variable. * gnu/system/install.scm (banana-pi-m2-ultra-installation-os): New exported variable.
2017-12-18system: examples: Add a template for BeagleBone Black.Mathieu Othacehe
* gnu/system/examples/beaglebone-black.tmpl: New file. * Makefile.am (EXAMPLES): Add it. * gnu/system/install.scm (/etc/configuration-files): Add it.
2017-12-15system: Add BeagleBone Black installer.Mathieu Othacehe
* gnu/bootloader/u-boot.scm (u-boot-beaglebone-black-bootloader): New exported bootloader. * gnu/system/install.scm (beaglebone-black-installation-os): New exported variable.
2017-12-07Merge branch 'version-0.14.0'Ludovic Courtès
2017-12-06gnu, doc, tests: Use ‘bootloader-configuration’ everywhere.Tobias Geerinckx-Rice
* doc/guix.texi (Proceeding with the Installation): Replace the old-style ‘grub-configuration’ with the newer ‘bootloader-configuration’ syntax. * gnu/system/examples/vm-image.tmpl: Likewise. * gnu/system/install.scm (installation-os): Likewise. * gnu/tests.scm (%simple-os): Likewise. * gnu/tests/install.scm (%minimal-os, %minimal-os-on-vda, %separate-home-os) (%separate-store-os, %raid-root-os, %encrypted-root-os, %btrfs-root-os): Likewise. * gnu/tests/nfs.scm (%base-os): Likewise. * tests/guix-system.scm (OS_BASE, make_user_config): Likewise. * tests/system.scm (%os, %os-with-mapped-device): Likewise.
2017-12-04install: Don't start sshd by default.Ludovic Courtès
Reported by Christopher Baines <mail@cbaines.net> at <https://lists.gnu.org/archive/html/guix-devel/2017-12/msg00058.html>. * gnu/services/ssh.scm (<openssh-configuration>)[%auto-start?]: New field. (openssh-shepherd-service): Honor it. * gnu/system/install.scm (%installation-services): Set '%auto-start?' to #f for openssh-service-type.
2017-12-03install: Add colors in 'motd' and 'issue'.Ludovic Courtès
* gnu/system/install.scm (%installation-services)[motd]: Add colors. [services]: Use the "lat9u-16" font. (%issue): Add colors.
2017-12-03install: Add the prerequisites of 'profile-derivation' as GC roots.Ludovic Courtès
* gnu/system/install.scm (%installation-services): Add GLIBC-UTF8-LOCALES, TEXINFO, and GUILE-FINAL as GC roots.
2017-11-11install: Fix typo.Tobias Geerinckx-Rice
* gnu/system/install.scm (installation-os): Fix typo in comment.
2017-11-08install: Use overlayfs instead of unionfs.Hartmut Goebel
I dediced to keep adding /tmp as tmpfs since I was not able to trigger bug while still using unionfs, so I could not verify whether this mount is still needed with overlayfs. Mapping /tmp to tmpfs does not harm, so we are on the save side. * gnu/system/install.scm (make-cow-store): Mount /gnu/store without additional read-only bind-mount, since in overlayfs the "lower" level is always read-only. Add work-dir required by overlayfs. No need to sleep anymore since now using the mount syscall. [unionfs]: Remove now unused function. (%installation-services): Update comment. (installation-os)[file-systems]: Update comment.
2017-09-12install: Include the whole bare-bones OS in the image.Ludovic Courtès
* gnu/system/install.scm (%installation-services): Load "example/bare-bones.tmpl". Add a 'gc-root-service-type' instance.
2017-09-10install: Add OpenSSH to the global profile.Ludovic Courtès
Suggested by Jan Nieuwenhuizen. * gnu/system/install.scm (installation-os)[packages]: Add OPENSSH.
2017-09-10install: Add 'passwd' to $PATH.Ludovic Courtès
Suggested by Jan Nieuwenhuizen. * gnu/system/install.scm (installation-os)[setuid-programs]: Add 'passwd'.
2017-08-23gnu: bootloader: Deprecate "device" field in favor of "target".Andy Wingo
* gnu/bootloader.scm (<bootloader-configuration>): Deprecate "device" field in favor of "target" field. This is mostly a renaming but also a generalization to support UEFI targets being paths to a mounted partition instead of a device name. * gnu/system/examples/bare-bones.tmpl: * gnu/system/examples/desktop.tmpl: * gnu/system/examples/lightweight-desktop.tmpl: * gnu/system/examples/vm-image.tmpl: * gnu/system/install.scm: * gnu/tests.scm: * gnu/tests/install.scm: * gnu/tests/nfs.scm: * tests/system.scm: Adapt all invocations of bootloader-configuration. * guix/scripts/system.scm (perform-action): Rename device argument to bootloader-target. (process-action): Adapt caller. * doc/guix.texi (Proceeding with the Installation): * doc/guix.texi (Bootloader Configuration): Update documentation.
2017-07-17build, vm: Use a less common label.Tobias Geerinckx-Rice
* gnu/build/vm.scm (initialize-hard-disk): Use "GuixSD_image" as label. * gnu/system/install.scm (installation-os): Likewise. * gnu/system/vm.scm (system-disk-image): Likewise.
2017-07-10build, vm: Use "GuixSD" or "GUIXSD" as volume label.Danny Milosavljevic
* gnu/build/vm.scm (initialize-hard-disk): Use "GuixSD" as label. * gnu/system/install.scm (installation-os): Use "GuixSD" as label. * gnu/system/vm.scm (system-disk-image): Use "GuixSD" or "GUIXSD" as volume label. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-07-04install: Drop redundant package after c0f5eee4b2cc737be222c4ba331d0.Marius Bakke
* gnu/system/install.scm (installation-os): Remove SHADOW.
2017-07-02install: Re-add /bin/sh.Ludovic Courtès
Reported by Divan Santana <divan@santanas.co.za>. /bin/sh had disappeared in commit 387e175492f960d7d86f34f3b2e43938fa72dbf3. * gnu/system/install.scm (%installation-services): Add 'special-files-service-type' instance.
2017-05-23install: Add 'passwd' to installation image.Marius Bakke
* gnu/system/install.scm (installation-os): Add SHADOW in package list.
2017-05-18install: Enable SSH in installation image.Marius Bakke
* gnu/system/install.scm (%installation-services): Add OPENSSH-SERVICE-TYPE. * doc/guix.texi (Preparing for Installation)[Networking]: Document it.
2017-03-12Add 'guix pack'.Ludovic Courtès
* gnu/system/install.scm (self-contained-tarball): Move to... * guix/scripts/pack.scm: ... here. New file. * doc/guix.texi (Binary Installation): Mention 'guix pack'. (Invoking guix pack): New node. * build-aux/make-binary-tarball.scm: Remove. * Makefile.am (MODULES): Add guix/scripts/pack.scm. (EXTRA_DIST): Remove build-aux/make-binary-tarball.scm. (guix-binary.%.tar.xz): Rewrite using 'guix pack'. * build-aux/hydra/gnu-system.scm (tarball-jobs): Adjust accordingly.
2017-02-10gnu: Move (gnu packages grub) and (gnu packages u-boot) ...David Craven
to (gnu packages bootloaders). * gnu/packages/grub.scm: Rename to bootloaders.scm. * gnu/packages/u-boot.scm: Move to bootloaders.scm. * gnu/local.mk (GNU_SYSTEM_MODULES): Add bootloaders.scm, remove grub.scm and u-boot.scm; * gnu/system/grub.scm: Import (gnu packages bootloaders). * gnu/system/install.scm: Import (gnu packages bootloaders). * gnu/system/vm.scm: Import (gnu packages bootloaders).
2017-02-10system: install: Add gptfdisk to installation os.David Craven
* gnu/system/install.scm (installation-os)[packages]: Add gptfdisk.
2016-12-19install: The list of services is now a plain list.Ludovic Courtès
* gnu/system/install.scm (installation-services): Rename to... (%installation-services): ... this. Turn into a list instead of a thunk.
2016-12-16install: Add dosfstools.Ludovic Courtès
* gnu/system/install.scm (installation-os)[packages]: Add DOSFSTOOLS.
2016-09-19services: console-font: A single service handles all the VTs.Ludovic Courtès
* gnu/services/base.scm (%default-console-font): New variable. (console-font-shepherd-services): New procedure. (console-font-service-type): Change to use 'service-type'. (console-font-service): Rewrite using 'simple-service'. (%base-services): Use a single CONSOLE-FONT-SERVICE-TYPE instance. * gnu/system/install.scm (installation-services): Likewise.
2016-09-11install: Use login-service.David Craven
* gnu/system/install.scm (installation-services): Use login-service.
2016-08-01install: Add nvi to the image.Ludovic Courtès
* gnu/system/install.scm (installation-os)[packages]: Add NVI. * doc/guix.texi (Proceeding with the Installation): Mention it.
2016-07-15install: Add mdadm to the image.Andreas Enge
* gnu/system/install.scm (installation-os)[packages]: Add mdadm.
2016-07-12gnu: Switch to 'with-imported-modules'.Ludovic Courtès
* gnu/services.scm (directory-union): Use 'with-imported-modules' instead of the '#:modules' argument of 'computed-file'. * gnu/services/base.scm (udev-rules-union): Likewise. * gnu/services/dbus.scm (system-service-directory): Likewise. * gnu/services/desktop.scm (wrapped-dbus-service): (polkit-directory): Likewise. * gnu/services/networking.scm (tor-configuration->torrc): Likewise. * gnu/services/xorg.scm (xorg-configuration-directory): Likewise. * gnu/system/install.scm (self-contained-tarball): Likewise. * gnu/system/linux-container.scm (container-script): Likewise. * gnu/system/linux-initrd.scm (expression->initrd): Likewise, and remove #:modules parameter. (flat-linux-module-directory): Use 'with-imported-modules'. (base-initrd): Likewise. * gnu/system/locale.scm (locale-directory): Likewise. * gnu/system/shadow.scm (default-skeletons): Likewise. * gnu/system/vm.scm (expression->derivation-in-linux-vm): Likewise. * gnu/tests/base.scm (run-basic-test): Likewise. * gnu/tests/install.scm (run-install): Likewise. * doc/guix.texi (Initial RAM Disk): Update 'expression->initrd' documentation.
2016-06-21install: Pass a relative file name to 'local-file'.Ludovic Courtès
This is a followup to cbbbb7be0fbaa11ff75bce92f2d82131ff8db104. * gnu/system/install.scm (/etc/configuration-files): Pass a relative file name to 'local-file'.
2016-05-31install: 'cow-store' now bind-mounts the target's /tmp.Ludovic Courtès
Reported by Matthew Jordan <matthewjordandevops@yandex.com> at <https://lists.gnu.org/archive/html/guix-devel/2016-05/msg00967.html>. * gnu/system/install.scm (make-cow-store): Bind-mount TARGET's /tmp on /tmp.
2016-04-17install: Use 'beta' instead of 'alpha'.Ludovic Courtès
Suggested by Jelle Licht <jlicht@fsfe.org>. * gnu/system/install.scm (installation-services): Say 'beta' instead of 'alpha' and make the warning less scary.
2016-03-24install: Use 'info-reader' instead of Texinfo 4.Ludovic Courtès
* gnu/system/install.scm (installation-os)[packages]: Remove TEXINFO-4 since %BASE-PACKAGES already provides the Info reader. (log-to-info): Use INFO-READER instead of TEXINFO-4.
2016-03-24install: Remove cgroup and elogind file systems.Ludovic Courtès
* gnu/system/install.scm (installation-os): Explicitly list three file systems instead of using %BASE-FILE-SYSTEMS.
2016-03-24install: Add /tmp as a tmpfs.Ludovic Courtès
Fixes <http://bugs.gnu.org/23056>. Reported by Michael Downey <shaggy814@yandex.com> and Kei <kei@openmailbox.org>. * gnu/system/install.scm (installation-os)[file-systems]: Add "/tmp".
2016-03-23doc: Add "lightweight desktop" OS config example.Ludovic Courtès
* gnu/system/examples/desktop.tmpl (packages): Remove XFCE and RATPOISON. (services): Add 'gnome-desktop-service' and 'xfce-desktop-service'. * gnu/system/examples/lightweight-desktop.tmpl: New file. * Makefile.am (EXAMPLES): Add it. * doc.am (OS_CONFIG_EXAMPLES_TEXI): Add doc/os-config-lightweight-desktop.texi. * gnu/system/install.scm (/etc/configuration-files)[directory]: Add lightweight-desktop.tmpl.
2016-02-11install: Add btrfs-progs to the image.Tobias Geerinckx-Rice
* gnu/system/install.scm (installation-os)[packages]: Add BTRFS-PROGS. Signed-off-by: Leo Famulari <leo@famulari.name>
2016-02-10install: Do not cache lookup failures.Ludovic Courtès
Possibly fixes <http://bugs.gnu.org/22209>. * gnu/system/install.scm (%nscd-minimal-caches)[negative-time-to-live]: Set to zero.
2016-02-04install: Add glibc to the global profile.Ludovic Courtès
Suggested by petter on #guix. * gnu/system/install.scm (installation-os)[packages]: Add glibc.