summaryrefslogtreecommitdiff
path: root/gnu/system
AgeCommit message (Expand)Author
2017-03-11linux-initrd: Add a raw-initrd and use it to define base-initrd....* gnu/system/linux-initrd.scm (raw-initrd): New exported variable. (base-initrd): Use raw-initrd to build the initrd. * doc/guix.texi (Initial RAM Disk): Document it. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Mathieu Othacehe
2017-03-06vm: Fix full-boot? option....* gnu/system/vm.scm (virtualized-operating-system): Add full-boot? option. Don't add a %store-mapping when full-boot? is passed. This leads the grub-configuration-file procedure to look for the kernel and initrd in / instead of /gnu/store. Signed-off-by: Ludovic Courtès <ludo@gnu.org> David Craven
2017-03-06system: grub: Add missing URL in comment....* gnu/system/grub.scm (grub-root-search): Add missing URL in comment. Ludovic Courtès
2017-03-01vm: Improve readability of run-vm.sh generation....* gnu/system/vm.scm (common-qemu-options, system-qemu-image/shared-store-script): Improve readability. David Craven
2017-02-28vm: Remove hard coded kernel file name....* gnu/system/vm.scm (system-qemu-image/shared-store-script, expression->derivation-in-linux-vm): Use operating-system-kernel-file and system-linux-image-file-name. * gnu/system.scm (system-linux-image-file-name): Add ARM. David Craven
2017-02-23gnu: lightweight-desktop.tmpl: Remove xmonad....* gnu/system/examples/lightweight-desktop.tmpl (packages): Remove xmonad. Leo Famulari
2017-02-23gnu: lightweight-desktop.tmpl: Complete i3-wm....* gnu/system/examples/lightweight-desktop.tmpl (packages): Add i3status and dmenu. (use-package-modules): Add suckless. Leo Famulari
2017-02-13system: Use the normalized codeset for the locale name in the examples....* gnu/system/examples/bare-bones.tmpl <locale>: Change to "en_US.utf8". * gnu/system/examples/desktop.tmpl <locale>: Likewise. * gnu/system/examples/lightweight-desktop.tmpl <locale>: Likewise. Ludovic Courtès
2017-02-10gnu: Move (gnu packages grub) and (gnu packages u-boot) ...... 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). David Craven
2017-02-10system: install: Add gptfdisk to installation os....* gnu/system/install.scm (installation-os)[packages]: Add gptfdisk. David Craven
2017-02-07file-systems: Add '%network-configuration-files' and '%network-file-mappings'....* gnu/system/file-systems.scm (%network-configuration-files) (%network-file-mappings): New variables. * guix/scripts/environment.scm (%network-configuration-files): Remove. (launch-environment/container): Refer to '%network-file-mappings' instead of calling 'filter-map'. Ludovic Courtès
2017-02-04file-systems: Remove dependency on (guix store)....(gnu system file-systems) is used on the "build" side since commit 5970e8e248f6327c41c83b86bb2c89be7c3b1b4e. * gnu/system/file-systems.scm: Remove dependency on (guix store). (%store-prefix): New procedure. * tests/file-systems.scm ("does not pull (guix config)"): New test. Ludovic Courtès
2017-02-03file-systems: Add 'file-system-mapping->bind-mount'....* gnu/system/file-systems.scm (file-system-mapping->bind-mount): New procedure. * gnu/system/linux-container.scm (mapping->file-system): Remove. (containerized-operating-system)[mapping->fs]: Use 'file-system-mapping->bind-mount' instead of 'mapping->file-system'. * guix/scripts/environment.scm (launch-environment/container): Likewise. Ludovic Courtès
2017-02-01system: More 'file-append' instead of #~(string-append #$thing …)....* gnu/system/shadow.scm (<user-account>)[shell]: Use 'file-append'. (%base-user-accounts): Likewise. * gnu/system/grub.scm (%background-image): Likewise. Ludovic Courtès
2017-02-01system: Create home directories once 'file-systems' is up....Fixes <http://bugs.gnu.org/21108>. Reported by Andy Patterson <ajpatter@uwaterloo.ca> and Leo Famulari <leo@famulari.name>. * gnu/build/activation.scm (activate-users+groups)[activate-user]: Pass #:create-home? #t iff CREATE-HOME? and SYSTEM?. (activate-user-home): New procedure. * gnu/system/shadow.scm (account-shepherd-service): New procedure. (account-service-type)[extensions]: Add SHEPHERD-ROOT-SERVICE-TYPE extension. * gnu/tests/base.scm (run-basic-test)["home"] ["skeletons in home directories"]: New tests. * gnu/tests/install.scm (%separate-home-os, %separate-home-os-source) (%test-separate-home-os): New variables. Ludovic Courtès
2017-01-24mapped-devices: 'source' can be a list of strings....Reported by myglc2 <myglc2@gmail.com>. * gnu/system/mapped-devices.scm (<mapped-device>)[source]: Update comment to note that this can be a list of strings. Ludovic Courtès
2017-01-16file-systems: 'file-system-needed-for-boot?' is #t for parents of the store....Suggested by John Darrington <john@darrington.wattle.id.au>. * gnu/system/file-systems.scm (%not-slash): New variable. (file-prefix?): New procedure. (file-system-needed-for-boot?): Use it to check whether FS holds the store. * tests/file-systems.scm ("file-system-needed-for-boot?"): New test. * gnu/tests/install.scm (%separate-store-os)[file-systems]: Remove 'needed-for-boot?' field for "/gnu". Ludovic Courtès
2017-01-10system: Add btrfs file system support....* gnu/build/file-systems.scm (%btrfs-endianness, btrfs-superblock?, read-btrfs-superblock, btrfs-superblock-uuid, btrfs-superblock-volume-name, check-btrfs-file-system): New variables. (%paritition-label-readers, %partition-uuid-readers): Add btrfs readers. * gnu/system/linux-initrd.scm (linux-modules): Add btrfs modules when a btrfs file-system is used. * gnu/tests/install.scm (%btrfs-root-os %btrfs-root-os-source, %btrfs-root-installation-script, %test-btrfs-root-os): New system test. * doc/guix.texi: Adjust accordingly. Fixes <http://bugs.gnu.org/19280>. David Craven
2017-01-03system: grub: Load relevant EFI modules on EFI systems....* gnu/system/grub.scm (eye-candy)[setup-gfxterm-body]: Add 'insmod' invocations when ${grub_platform} is "efi". Ludovic Courtès
2016-12-19install: The list of services is now a plain list....* gnu/system/install.scm (installation-services): Rename to... (%installation-services): ... this. Turn into a list instead of a thunk. Ludovic Courtès
2016-12-18linux-initrd: Support FAT filesystems....* gnu/system/linux-initrd.scm (base-initrd): When a FAT filesystem is present: Add fatfsck/static in 'helper-packages'; and add nls_iso8859-1 in 'linux-modules'. Marius Bakke
2016-12-16install: Add dosfstools....* gnu/system/install.scm (installation-os)[packages]: Add DOSFSTOOLS. Ludovic Courtès
2016-11-28doc: Suggest installing gvfs....* gnu/system/examples/desktop.tmpl: Add gvfs to the system-wide list of packages. Ricardo Wurmus
2016-11-24doc: Document encrypted root partitions....This is a followup to f7f292d359e0eb77617f4ecf6b3164f868ec1784. * doc/guix.texi (Preparing for Installation): Give commands for encrypted root installation. (Proceeding with the Installation): Add item about mapped devices. (File Systems): Mention that 'dependencies' can list <mapped-device> objects. * gnu/system/examples/desktop.tmpl (mapped-devices): New field. (file-systems): Add 'dependencies' field. Ludovic Courtès
2016-11-23mapped-devices: Use 'cryptsetup-static' in 'luks-device-mapping'....* gnu/system/mapped-devices.scm (open-luks-device): Use CRYPTSETUP-STATIC instead of CRYPTSETUP. Use 'file-append'. (close-luks-device): Likewise. Ludovic Courtès
2016-11-19vm: Disable initrd-time QEMU networking for VM images....Fixes <http://bugs.gnu.org/24943>. Reported by dian_cecht@zoho.com. * gnu/system/vm.scm (system-qemu-image)[initrd]: Remove #:qemu-networking? #t. (virtualized-operating-system): Likewise Ludovic Courtès
2016-11-10container: Pass a list of <file-system> objects as things to mount....* gnu/build/linux-container.scm (mount-file-systems): 'mounts' is now a list of <file-system> objects instead of a list of lists ("specs"). Add call to 'file-system->spec' as the argument to 'mount-file-system'. (run-container, call-with-container): Adjust docstring accordingly. * gnu/system/file-systems.scm (spec->file-system): New procedure. * gnu/system/linux-container.scm (container-script)[script]: Call 'spec->file-system' inside gexp. * guix/scripts/environment.scm (launch-environment/container): Remove call to 'file-system->spec'. * tests/containers.scm ("call-with-container, mnt namespace") ("call-with-container, mnt namespace, wrong bind mount"): Pass a list of <file-system> objects. Ludovic Courtès
2016-11-10linux-container: Use 'source-module-closure' when generating the script....* gnu/system/linux-container.scm (container-script)[script]: Use 'source-module-closure' in 'with-imported-modules' form. Ludovic Courtès
2016-11-08system: Use grub from bootloader configuration....* gnu/system/grub.scm (gnu): Export grub-configuration-grub. * guix/scripts/system.scm (perform-action): Use it. (define-module): Don't import (gnu packages grub). Co-authored-by: Danny Milosavljevic <dannym@scratchpost.org> Marius Bakke
2016-11-06gnu: Remove comment which is factually incorrect....* gnu/system/pam.scm: Remove incorrect comment. John Darrington
2016-10-30system: Record store file system info in each generation....* gnu/system.scm (<boot-parameters>)[store-device, store-mount-point]: New fields. (read-boot-parameters): Initialize them. (operating-system-grub.cfg): Likewise. Remove STORE-FS argument from call to 'grub-configuration-file'. (operating-system-parameters-file): Add 'store' element in 'boot-parameters'. * gnu/system/grub.scm (strip-mount-point): Replace 'store-fs' parameter by 'mount-point'; adjust accordingly. Adjust callers. (<menu-entry>)[device, device-mount-point]: New fields. (eye-candy): Replace 'root-fs' parameter by 'store-device'; add 'store-mount-point'. Use keyword arguments for 'system' and 'port'. (grub-root-search): Remove 'root-fs' by 'device' and adjust accordingly. (grub-configuration-file): Remove 'store-fs' parameter. Adjust accordingly. * guix/scripts/system.scm (previous-grub-entries): Initialize 'device' and 'device-mount-point' fields from PARAMS. * doc/guix.texi (GRUB Configuration): Document 'device' and 'device-mount-point'. Explain that 'linux' can be prefixed by a GRUB device name. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Chris Marusich
2016-10-27mapped-devices: Use 'mdadm-static' in 'raid-device-mapping'....* gnu/system/mapped-devices.scm (open-raid-device, close-raid-device): Use MDADM-STATIC instead of MDADM. Use 'file-append'. Ludovic Courtès
2016-10-25system: grub: Use Guile-{RSVG,Cairo} instead of Inkscape + ImageMagick....Based on a suggestion by Andy Wingo at <https://lists.gnu.org/archive/html/guix-devel/2015-08/msg00753.html>. * gnu/build/svg.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * gnu/system/grub.scm (svg->png): Add #:width and #:height. Rewrite to use (gnu build svg). (resize-image): Remove. (grub-background-image): Adjust accordingly. Ludovic Courtès
2016-10-04mapped-devices: Properly open RAID devices....This fixes a type error introduced in 7f8ad82bf23b032ad6bd85bb1daa87cc83de509c, given that SOURCES is a list. * gnu/system/mapped-devices.scm (open-raid-device): Add 'apply' invocation. Ludovic Courtès
2016-09-27Add missing exports....Reported by Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com> at <https://lists.gnu.org/archive/html/guix-devel/2016-09/msg01686.html>. * gnu/system/file-systems.scm (%tty-gid): Export. * guix/build-system/python.scm (default-python, default-python2): Export. Ludovic Courtès
2016-09-26system: Don't emit a GRUB 'search' command when passed a GRUB file name....Reported by Tomáš Čech <tcech@suse.com> at <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20067#26>. * gnu/system/grub.scm (grub-root-search): Don't emit anything when FILE is a string that does not denote an absolute file name. Ludovic Courtès
2016-09-24system: grub.cfg uses correct file names when store is not in root partition....Fixes <http://bugs.gnu.org/24346>. Reported by csanchezdll@gmail.com (Carlos Sánchez de La Lama). * guix/scripts/system.scm (previous-grub-entries): Get the initrd file name from PARAMS. * gnu/system.scm (operating-system-grub.cfg): Use 'operating-system-initrd-file' to retrieve the initrd file name. * gnu/system/grub.scm (strip-mount-point): New procedure. (grub-configuration-file)[entry->gexp]: Call 'strip-mount-point' for LINUX and INITRD. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Carlos Sánchez de La Lama
2016-09-19services: console-font: A single service handles all the VTs....* 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. Ludovic Courtès
2016-09-11install: Use login-service....* gnu/system/install.scm (installation-services): Use login-service. David Craven
2016-09-09system: grub: Allow arbitrary kernel file names in 'menu-entry'....Fixes <http://bugs.gnu.org/20067>. Reported by Tomáš Čech <sleep_walker@suse.cz>. * gnu/system.scm (system-linux-image-file-name) (operating-system-kernel-file): New procedures. (operating-system-grub.cfg): Use 'operating-system-kernel-file' for the 'kernel' field of 'menu-entry'. (operating-system-parameters-file): Likewise for the 'kernel' entry. (read-boot-parameters): Adjust 'kernel' field so that it contains the absolute file name of the image. * gnu/system/grub.scm (grub-configuration-file)[linux-image-name]: Remove. [entry->gexp]: Assume LINUX is the absolute file name of the kernel image. * doc/guix.texi (GRUB Configuration): Add an example, and adjust 'kernel' field documentation accordingly. Ludovic Courtès
2016-09-08gnu: Add edit warning to generated grub.cfg files...* gnu/services/grub.scm (grub-configuration-file): Add code to emit warning. John Darrington
2016-09-08gnu: lightweight-desktop.tmpl: Fix typo....* gnu/system/examples/lightweight-desktop.tmpl: While it is currently unknown if Bob has a brother, it is sufficiently documented that Alice is, in fact, Bob's sister. Efraim Flashner
2016-09-06system: vm: Remove -net user flag....* gnu/system/vm.scm (common-qemu-options): Remove -net user flag. David Craven
2016-09-05system: Use 'source-module-closure' where needed....* gnu/system/vm.scm (%vm-module-closure): Remove. (expression->derivation-in-linux-vm): Use 'source-module-closure' instead of %VM-MODULE-CLOSURE. (qemu-image): Likewise. * gnu/system/linux-initrd.scm (expression->initrd): Likewise. (flat-linux-module-directory, base-initrd): Likewise. * gnu/system/mapped-devices.scm (open-luks-device): Likewise. Ludovic Courtès
2016-09-01Reinstate "services: elogind: Provide '%elogind-file-systems' by extension."...This reverts commit 17073dafc59d62fb8cbb8b94d61d3ecc488ac59f. Ludovic Courtès
2016-08-28system: Do not create the home directory of "nobody"....Fixes <http://bugs.gnu.org/24275>. Reported by John Darrington <john@darrington.wattle.id.au>. * gnu/system/shadow.scm (%base-user-accounts): Add (create-home-directory? #f) for "nobody". Ludovic Courtès
2016-08-28system: Add 'create-home-directory?' field to <user-account>....* gnu/system/shadow.scm (<user-account>)[create-home-directory?]: New field. (user-account->gexp): Serialize it. * gnu/build/activation.scm (activate-users+groups)[activate-user]: Update 'match-lambda' pattern accordingly. Pass #:create-home? to 'ensure-user'. (add-user, modify-user, ensure-user): Add #:create-home? parameter and honor it. * doc/guix.texi (User Accounts): Document it. Ludovic Courtès
2016-08-22Revert "services: elogind: Provide '%elogind-file-systems' by extension."...This reverts commit 3cf319a3f8e23831960a0f1320122cc514188a37. Mark H Weaver
2016-08-22services: elogind: Provide '%elogind-file-systems' by extension....* gnu/system/file-systems.scm (%base-file-systems): Remove %ELOGIND-FILE-SYSTEMS. * gnu/services/desktop.scm (elogind-service-type): Extend FILE-SYSTEM-SERVICE-TYPE to provide %ELOGIND-FILE-SYSTEMS. Ludovic Courtès
2016-08-04ui: Remove dependency on (gnu system file-systems)....* guix/ui.scm (specification->file-system-mapping): Move to... * gnu/system/file-systems.scm (specification->file-system-mapping): ... here. Ludovic Courtès