aboutsummaryrefslogtreecommitdiff
path: root/gnu/system
Commit message (Collapse)AuthorAge
* vm-image: Remove NetworkManager & co. and add the DHCP client.Ludovic Courtès2019-04-26
| | | | | * gnu/system/examples/vm-image.tmpl (services): Remove wpa-supplicant, cups-pk-helper, and NetworkManager. Add DHCP-CLIENT-SERVICE-TYPE.
* vm-image: Use the actual file name of the current file.Ludovic Courtès2019-04-26
| | | | | * gnu/system/examples/vm-image.tmpl (this-file): Use 'basename' and 'current-source-location'.
* system: Provide a new VM image configuration.Ludovic Courtès2019-04-26
| | | | | * gnu/system/examples/vm-image.tmpl: Rewrite. * doc/guix.texi (Running Guix in a VM): Adjust accordingly.
* vm: 'system-disk-image' no longer requires the OS to define the "/" file system.Ludovic Courtès2019-04-25
| | | | | | | | | | Previously 'guix system disk-image' would fail if the OS didn't define a "/" file system, even though it actually overrides that file system. * gnu/system/vm.scm (system-disk-image)[root-uuid]: Turn into a procedure. Call 'root-uuid' on a variant of OS with a "/" file system and inherit from that.
* install: Add node name in Castellano.Ludovic Courtès2019-04-25
| | | | * gnu/system/install.scm (%installation-node-names): Add "es".
* linux-container: Remove '%containerized-shepherd-service' hack.Ludovic Courtès2019-04-23
| | | | | | | | | This hack worked around a defect in the Shepherd 0.5.0 and is no longer needed. * gnu/services/shepherd.scm (%containerized-shepherd-service): Remove. * gnu/system/linux-container.scm (container-essential-services): Don't use it.
* services: account: Make 'user-homes' a one-shot service.Ludovic Courtès2019-04-23
| | | | | * gnu/system/shadow.scm (account-shepherd-service): Add 'one-shot?' field. Return #t from 'start'.
* install: Pass "quiet" to the kernel.Ludovic Courtès2019-04-23
| | | | | | This is a followup to 5582aa8e31bf88f981caedeb4fbbb758486b6ca7. * gnu/system/install.scm (installation-os)[kernel-arguments]: Add "quiet".
* install: Pass "modprobe.blacklist=radeon".Ludovic Courtès2019-04-21
| | | | * gnu/system/install.scm (installation-os)[kernel-arguments]: New field.
* install: Provide a meaningful label.Ludovic Courtès2019-04-15
| | | | * gnu/system/install.scm (installation-os)[label]: New field.
* vm: Do not mount /xchg with "cache=loose".Ludovic Courtès2019-04-14
| | | | | | | | Fixes <https://bugs.gnu.org/33639>. * gnu/system/vm.scm (%linux-vm-file-systems): Remove "cache=loose" for /xchg. (system-docker-image): Remove 'sync' call, now unneeded, and which was probably insufficient.
* install: Use a font with more glyphs on tty2.Ludovic Courtès2019-04-12
| | | | | * gnu/system/install.scm (%installation-services): For 'console-font-service-type', use LatGrkCyr-8x16 on tty2.
* installer: Choosing a locale opens the translated manual on tty2.Ludovic Courtès2019-04-12
| | | | | | | | | | | | | Suggested by Florian Pelz. * gnu/system/install.scm (%installation-node-names): New variable. (log-to-info): Expect the chosen locale as an argument. Compute the language, Info file name, and node name. Install the locale. (documentation-shepherd-service): Add 'locale' parameter to the 'start' action and honor it. Set GUIX_LOCPATH and TERM as environment variables for the process. * gnu/installer.scm (apply-locale): Use (gnu services herd). Call 'stop-service' and 'start-service' with the chosen locale.
* install: Add standalone documentation service.Ludovic Courtès2019-04-12
| | | | | | | | * gnu/system/install.scm (log-to-info): Add 'tty' and 'user' parameters. Open the tty and change UIDs/GIDs. (documentation-shepherd-service): New procedure. (%documentation-users, documentation-service-type): New variables. (%installation-services): Use it instead of 'mingetty-service'.
* doc: Adjust desktop instructions for GDM.Ludovic Courtès2019-04-10
| | | | * gnu/system/examples/desktop.tmpl: Adjust comment that referred to SLiM.
* install: Tweak motd.Ludovic Courtès2019-04-07
| | | | * gnu/system/install.scm (%installation-services): Tweak motd.
* install: Remove "GuixSD".Ludovic Courtès2019-04-07
| | | | | * gnu/system/install.scm (%installation-services): Remove "Guix System Distribution" from motd.
* services: xorg: Add 'set-xorg-configuration'.Ludovic Courtès2019-04-05
| | | | | | | | * gnu/services/xorg.scm (gdm-service-type)[compose, extend]: New fields. (set-xorg-configuration): New procedure. * doc/guix.texi (Keyboard Layout): Use it. (X Window): Document it. * gnu/system/examples/desktop.tmpl: Add 'keyboard-layout' fields.
* gnu: Add example system configuration for asus-c201.Timothy Sample2019-04-03
| | | | | | | * gnu/system/examples/asus-c201.tmpl: New file. * Makefile.am (EXAMPLES): Add it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* system: Fix typo in desktop example.Ludovic Courtès2019-03-28
| | | | | | | The typo was introduced in 391e0d65d7129d53c025963d2758724e75626eb4. * gnu/system/examples/desktop.tmpl: Use XFCE-DESKTOP-SERVICE-TYPE, not XFCE-DESKTOP-SERVICE.
* vm: Ask QEMU for more RAM in the VM that makes ISO9660 images.Ludovic Courtès2019-03-27
| | | | | * gnu/system/vm.scm (iso9660-image): Pass #:memory-size to 'expression->derivation-in-linux-vm'.
* services: Deprecate 'xfce-desktop-service'.Ludovic Courtès2019-03-27
| | | | | | | | | | * gnu/services/desktop.scm (xfce-desktop-service-type)[default-value] [description]: New fields. (xfce-desktop-service): Deprecate. * gnu/system/examples/desktop.tmpl: Use the (service …) form. * gnu/installer/services.scm (%desktop-environments): Add TODO comment. * doc/guix.texi (Desktop Services): Adjust accordingly, and fix spelling of "Xfce" throughout.
* services: Deprecate 'gnome-desktop-service'.Ludovic Courtès2019-03-27
| | | | | | | | | | * gnu/services/desktop.scm (gnome-desktop-service-type)[default-value]: New field. (gnome-desktop-service): Deprecate. * gnu/installer/services.scm (%desktop-environments): Use the (service …) form for GNOME. * gnu/system/examples/desktop.tmpl: Likewise. * doc/guix.texi (Desktop Services): Adjust accordingly.
* system: Add 'essential-services' field to <operating-system>.Ludovic Courtès2019-03-25
| | | | | | | | | | | | | | | | | | * gnu/system.scm (<operating-system>)[essential-services]: New field. (operating-system-directory-base-entries): Remove #:container? keyword and keep only the not-container branch. (essential-services): Likewise. (operating-system-services): Likewise, and call 'operating-system-essential-services' instead of 'essential-services'. (operating-system-activation-script): Remove #:container?. (operating-system-boot-script): Likewise. (operating-system-derivation): Likewise. * gnu/system/linux-container.scm (container-essential-services): New procedure. (containerized-operating-system): Use it and set the 'essential-services' field. (container-script): Remove call to 'operating-system-derivation'. * gnu/system/vm.scm (system-docker-image): Likewise. * doc/guix.texi (operating-system Reference): Document 'essential-services'.
* accounts: Add default value for the 'home-directory' field of <user-account>.Ludovic Courtès2019-03-25
| | | | | | | | | | | | | | | | | | * gnu/system/accounts.scm (<user-account>)[home-directory]: Mark as thunked and add a default value. (default-home-directory): New procedure. * doc/guix.texi (User Accounts): Remove 'home-directory' from example. * gnu/system/examples/bare-bones.tmpl: Likewise. * gnu/system/examples/beaglebone-black.tmpl: Likewise. * gnu/system/examples/desktop.tmpl: Likewise. * gnu/system/examples/docker-image.tmpl: Likewise. * gnu/system/examples/lightweight-desktop.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, %encrypted-root-os, %btrfs-root-os): Likewise. * tests/accounts.scm ("allocate-passwd") ("allocate-passwd with previous state"): Likewise.
* system: Initialize console keyboard layout in the initrd.Ludovic Courtès2019-03-24
| | | | | | | | | | | | | | | | | Partially fixes <https://bugs.gnu.org/25453>. * gnu/system.scm (<operating-system>)[keyboard-layout]: New field. (operating-system-initrd-file): Pass #:keyboard-layout to MAKE-INITRD. * gnu/system/linux-initrd.scm (raw-initrd): Add #:keyboard-layout. Pass #:keymap-file to 'boot-system'. (base-initrd): Add #:keyboard-layout. [helper-packages]: Add LOADKEYS-STATIC when KEYBOARD-LAYOUT is true. Pass #:keyboard-layout to 'raw-initrd'. * gnu/build/linux-boot.scm (boot-system): Add #:keymap-file and honor it. * doc/guix.texi (operating-system Reference): Document the 'keyboard-layout' field. (Initial RAM Disk): Update 'raw-initrd' and 'base-initrd' documentation.
* vm: 'virtualized-operating-system' inherits from the user's bootloader config.Ludovic Courtès2019-03-24
| | | | | * gnu/system/vm.scm (virtualized-operating-system): Inherit from the bootloader of OS.
* Add (gnu system keyboard).Ludovic Courtès2019-03-24
| | | | | | * gnu/system/keyboard.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * gnu.scm (%public-modules): Add it.
* vm: 'system-docker-image' calls 'sync' before rebooting.Ludovic Courtès2019-03-22
| | | | | | Previously we could end up silently building truncated tarballs. * gnu/system/vm.scm (system-docker-image)[build]: Add call to 'sync'.
* vm: 'expression->derivation-in-linux-vm' leads to a kernel panic upon failure.Ludovic Courtès2019-03-17
| | | | | | | | Partially fixes <https://bugs.gnu.org/34276>. Reported by Tobias Geerinckx-Rice <me@tobias.gr>. * gnu/system/vm.scm (expression->derivation-in-linux-vm)[loader]: Call 'exit' when USER-BUILDER exits with a non-zero code.
* linux-container: 'containerized-operating-system' removes "useless" services.Ludovic Courtès2019-03-13
| | | | | | | | | Fixes <https://bugs.gnu.org/34211>. Reported by Efraim Flashner <efraim@flashner.co.il>. * gnu/system/linux-container.scm (containerized-operating-system) [useless-services]: New variable. Add 'services' field.
* linux-modules: Factorize 'missing-modules'.Ludovic Courtès2019-03-13
| | | | | * gnu/build/linux-modules.scm (missing-modules): New procedure. * gnu/system/mapped-devices.scm (check-device-initrd-modules): Use it.
* Remove traces of "GuixSD".Ludovic Courtès2019-03-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/bootloader/extlinux.scm (extlinux-configuration-file): Remove mentions of "GuixSD". * gnu/bootloader/grub.scm (install-grub-efi): Likewise. * gnu/build/vm.scm (make-iso9660-image): Change default #:volume-id to "Guix_image". (initialize-hard-disk): Search for the "Guix_image" label. * gnu/ci.scm (system-test-jobs, tarball-jobs): Remove "GuixSD". * gnu/installer/newt/welcome.scm (run-welcome-page): Likewise. * gnu/packages/audio.scm (supercollider)[description]: Likewise. * gnu/packages/curl.scm (curl): Likewise. * gnu/packages/emacs.scm (emacs): Likewise. * gnu/packages/gnome.scm (network-manager): Likewise. * gnu/packages/julia.scm (julia): Likewise. * gnu/packages/linux.scm (alsa-plugins): Likewise. (powertop, wireless-regdb): Likewise. * gnu/packages/package-management.scm (guix): Likewise. * gnu/packages/polkit.scm (polkit): Likewise. * gnu/packages/tex.scm (texlive-bin): Likewise. * gnu/services/base.scm (file-systems->fstab): Likewise. * gnu/services/cups.scm (%cups-activation): Likewise. * gnu/services/mail.scm (%dovecot-activation): Likewise. * gnu/services/messaging.scm (prosody-configuration)[log]: Likewise. * gnu/system/examples/vm-image.tmpl (vm-image-motd): Likewise. * gnu/system/install.scm (installation-os)[file-systems]: Change root file system label to "Guix_image". * gnu/system/mapped-devices.scm (check-device-initrd-modules): Remove "GuixSD". * gnu/system/vm.scm (system-docker-image): Likewise. (system-disk-image)[root-label]: Change to "Guix_image". * gnu/tests/install.scm (run-install): Remove "GuixSD". * guix/modules.scm (guix-module-name?): Likewise. * nix/libstore/optimise-store.cc: Likewise.
* activation: Build account databases with (gnu build accounts).Ludovic Courtès2019-03-07
| | | | | | | | | | | * gnu/build/activation.scm (enumerate, current-users, current-groups) (add-group, add-user, modify-user, ensure-user): Remove. (activate-users+groups)[touch, activate-user]: Remove. [make-home-directory]: New procedure. Rewrite in terms of 'user+group-databases', 'write-group', etc. * gnu/build/install.scm (directives): Remove "/root". * gnu/system/shadow.scm (account-activation): Remove (setenv "PATH" ...) expression, which is now unneeded.
* activation: Operate on <user-account> and <user-group> records.Ludovic Courtès2019-03-07
| | | | | | | | | | | | * gnu/system/accounts.scm (sexp->user-group, sexp->user-account): New procedures. * gnu/system/shadow.scm (account-activation): Call them in the arguments to 'activate-users+groups'. (account-shepherd-service): Likewise. * gnu/build/activation.scm (activate-users+groups): Expect a list of <user-account> and a list of <user-group>. Replace uses of 'match' on tuples with calls to record accessors. (activate-user-home): Likewise.
* system: Add (gnu system accounts).Ludovic Courtès2019-03-07
| | | | | | | | | | The (gnu system accounts) module is meant to be used both on the build- and on the host-side. * gnu/system/shadow.scm <top level>: Call 'default-shell'. (<user-account>, <user-group>): Move to... * gnu/system/accounts.scm: ... here. New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add system/accounts.scm.
* pack, vm: Fix incorrect use of 'package-transitive-propagated-inputs'.Ludovic Courtès2019-02-11
| | | | | | | | | | In practice the error was not triggered because 'package-transitive-propagated-inputs' currently returns the empty list for these two packages. * guix/scripts/pack.scm (gcrypt-sqlite3&co): Remove labels from the result. * gnu/system/vm.scm (gcrypt-sqlite3&co): Likewise.
* install: Use (gnu package certs) module for the nss-certs package.Pierre Neidhardt2019-02-10
| | | | * gnu/system/install.scm: Use (gnu package certs).
* install: Add nss-certs to the image.Pierre Neidhardt2019-02-10
| | | | * gnu/system/install.scm (installation-os)[packages]: Add nss-certs.
* gnu: Replace all cons* with beginner-friendly (append (list ...)).Pierre Neidhardt2019-01-23
| | | | | | | | | | | * gnu/system/examples/bare-bones.tmpl (services): Do it. * gnu/system/examples/beaglebone.tmpl (packages): Do it. (services): Do it. * gnu/system/examples/desktop.tmpl (packages): Do it. (services): Do it. * gnu/system/examples/lightweight-desktop.tmpl (file-systems): Do it. (packages): Do it. * gnu/system/examples/vm-image.tmpl (packages): Do it.
* gnu: Fix missing EFI entry in "desktop" example.Pierre Neidhardt2019-01-23
| | | | | * gnu/system/examples/desktop.tmpl (file-systems): Add EFI file-system.
* vm: Remove unnecessary import.Ludovic Courtès2019-01-22
| | | | * gnu/system/vm.scm: Remove unnecessary (guix scripts pack) import.
* services: Use guix-service-type.Efraim Flashner2019-01-20
| | | | | | * gnu/services/base.scm (%base-services): Replace guix-service with guix-service-type. * gnu/system/examples/docker-image.tmpl (services): Same.
* installer: Move everything to the build side.Mathieu Othacehe2019-01-17
| | | | | | | | | | | | | | | | | * gnu/installer.scm: Rename to ... * gnu/installer/record.scm: ... this. * gnu/installer/build-installer.scm: Move everything to the build side and rename to gnu/installer.scm. * gnu/installer/newt.scm: Remove all the gexps and add depencies to newt modules as this code will only be used on the build side by now. * gnu/local.mk (GNU_SYSTEM_MODULES): Adapt it, (dist_installer_DATA): New rule to install installer's aux-files. * gnu/system/install.scm (%installation-services): Use only 'installer-program' from (gnu installer). The installer is now choosen on the build side. * guix/self.scm (*system-modules*): Restore previous behaviour and add all installer files to #:extra-files field of the scheme-node. * po/guix/POTFILES.in: Adapt it.
* gnu: installer: Launch the installer as kmscon login-program.Mathieu Othacehe2019-01-17
| | | | | | | | | | | | | Source /etc/environment just before starting the installer. The login program is supposed to load the environment variables of this file through PAM, but as we replace it by the installer, they are no longer available. This is mostly useful for the LANG environment variable. * gnu/installer/build-installer.scm (installer-program-launcher): New exported procedure. * gnu/system/install.scm (%installation-services): Restore most of the origin code. kmscon is only started on TTY1, and the graphical installer is the login-program.
* gnu: Add graphical installer support.Mathieu Othacehe2019-01-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * configure.ac: Require that guile-newt is available. * gnu/installer.scm: New file. * gnu/installer/aux-files/logo.txt: New file. * gnu/installer/build-installer.scm: New file. * gnu/installer/connman.scm: New file. * gnu/installer/keymap.scm: New file. * gnu/installer/locale.scm: New file. * gnu/installer/newt.scm: New file. * gnu/installer/newt/ethernet.scm: New file. * gnu/installer/newt/hostname.scm: New file. * gnu/installer/newt/keymap.scm: New file. * gnu/installer/newt/locale.scm: New file. * gnu/installer/newt/menu.scm: New file. * gnu/installer/newt/network.scm: New file. * gnu/installer/newt/page.scm: New file. * gnu/installer/newt/timezone.scm: New file. * gnu/installer/newt/user.scm: New file. * gnu/installer/newt/utils.scm: New file. * gnu/installer/newt/welcome.scm: New file. * gnu/installer/newt/wifi.scm: New file. * gnu/installer/steps.scm: New file. * gnu/installer/timezone.scm: New file. * gnu/installer/utils.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add previous files. * gnu/system.scm: Export %root-account. * gnu/system/install.scm (%installation-services): Use kmscon instead of linux VT for all tty. (installation-os)[users]: Add the graphical installer as shell of the root account. [packages]: Add font related packages. * po/guix/POTFILES.in: Add installer files.
* install: Avoid deprecated 'gpm-service' procedure.Ludovic Courtès2019-01-16
| | | | | * gnu/system/install.scm (%installation-services): Use the 'service' form instead of 'gpm-service'.
* services: Deprecate a few more service procedures.Ludovic Courtès2019-01-11
| | | | | | | | | | | | | | | | | | These procedures were already either undocumented (and de facto deprecated) or documented as deprecated or redundant. * gnu/services/base.scm (guix-service, guix-publish-service): Mark as deprecated. * gnu/services/mcron.scm (mcron-service): Likewise. * gnu/services/networking.scm (tor-service): Likewise. * doc/guix.texi (Scheduled Job Execution): Remove 'mcron-service' and adjust example. (Networking Services): Remove 'tor-service'. * gnu/tests/base.scm (%mcron-os): Use 'mcron-service-type' instead of 'mcron-service'. * gnu/tests/networking.scm (%tor-os): Use 'tor-service-type' instead of 'tor-service'. * tests/guix-system.sh: Likewise.
* doc: Example vm-image doesn't need firmware.Efraim Flashner2018-12-24
| | | | | * gnu/system/examples/vm-image.tmpl (firmware): New field, explicitly empty list.
* Remove most references to hydra.gnu.org.Ludovic Courtès2018-12-04
| | | | | | | | | | | | | | | * Makefile.am (assert-binaries-available): Don't mention hydra.gnu.org in comment. * build-aux/check-available-binaries.scm: Likewise. * build-aux/check-final-inputs-self-contained.scm: Likewise. * doc/guix.texi (SUBSTITUTE-SERVER): New variable. Use it throughout instead of "mirror.hydra.gnu.org". * doc/contributing.texi (Submitting Patches): Likewise. * gnu/services/base.scm (hydra-key-authorization) (guix-activation): Remove mentions of "hydra.gnu.org" in comments and messages. * gnu/system/install.scm (%installation-services): Likewise. * guix/scripts/size.scm (guix-size): Likewise.