summary refs log tree commit diff
path: root/gnu/system
AgeCommit message (Collapse)Author
2015-07-26vm: Make the list of partitions to build a parameter.Ludovic Courtès
* gnu/build/vm.scm (<partition>): New record type. (fold2): New procedure. (initialize-partition-table): Remove #:bootable? and 'partition-size' parameters. Add 'partitions' parameter. Invoke 'parted' with '--script'. (initialize-root-partition): Remove. (initialize-partition, root-partition-initializer): New procedures. (initialize-hard-disk): Remove #:system-directory, #:disk-image-size, #:file-system-type, #:file-system-label, #:closures, #:copy-closures?, #:bootable?, and #:register-closures? parameters. Add #:partitions. Rewrite to use 'initialize-partition' for each item of PARTITIONS. * gnu/system/vm.scm (expression->derivation-in-linux-vm): Add (guix records) to #:modules default value. (qemu-image): Adjust accordingly.
2015-07-24vm: Use the 'umount' procedure instead of util-linux's 'umount' command.Ludovic Courtès
* gnu/build/vm.scm (initialize-root-partition, initialize-hard-disk): Use the 'umount' procedure instead of invoking the 'umount' command. * gnu/system/vm.scm (qemu-image): Remove UTIL-LINUX from INPUTS.
2015-07-17file-systems: Subsystem cgroups now depend on /sys/fs/cgroup.Ludovic Courtès
* gnu/system/file-systems.scm (%control-groups): Define 'parent' variable. Initialize the 'dependencies' field for all the subsystems.
2015-07-17file-systems: Add a 'dependencies' field to <file-system>.Ludovic Courtès
* gnu/system/file-systems.scm (<file-system>)[dependencies]: New field. * gnu/system.scm (other-file-system-services)[requirements]: Honor 'file-system-dependencies'. * doc/guix.texi (File Systems): Document it.
2015-07-17system: Use the CRDA udev rules.Ludovic Courtès
* gnu/services/base.scm (%base-services): Add CRDA to the #:rules of 'udev-service'. * gnu/system/install.scm (installation-services): Likewise.
2015-07-17system: Add 'kernel-arguments' field.Ludovic Courtès
* gnu/system.scm (<operating-system>)[kernel-arguments]: New field. (operating-system-grub.cfg): Honor it. (operating-system-parameters-file): Add 'kernel-arguments' to the parameters file. * guix/scripts/system.scm (previous-grub-entries)[system->grub-entry]: Read the 'kernel-arguments' field of the parameters file, when available. * gnu/system/vm.scm (system-qemu-image/shared-store-script): Use (operating-system-kernel-arguments os) in '-append'. * doc/guix.texi (operating-system Reference): Document it.
2015-07-17system: Fix typo in 'PS1' in skeleton '.bashrc'.Ludovic Courtès
* gnu/system/shadow.scm (default-skeletons): Move misplaced backslash.
2015-07-16install: Reset the mtimes of all the files in the binary tarball.Ludovic Courtès
* gnu/system/install.scm (self-contained-tarball): Pass "--mtime=@0". The only files whose mtime was not already were those in /var/guix and /gnu/store/.links.
2015-07-16file-systems: 'uuid' raises a syntax error for invalid UUIDs.Ludovic Courtès
* gnu/system/file-systems.scm (uuid): Call 'syntax-violation' when 'string->uuid' returns #f. * tests/file-systems.scm ("uuid, syntax error"): New test.
2015-07-14file-systems: Allow users to specify file system UUIDs as strings.Ludovic Courtès
Fixes <http://bugs.gnu.org/19778>. Reported by Mark H Weaver <mhw@netris.org>. * gnu/system/file-systems.scm (%uuid-rx): New variable. (string->uuid): New procedure. (uuid): New macro. * tests/file-systems.scm: New file. * Makefile.am (SCM_TESTS): Add it. * doc/guix.texi (File Systems): Give an example of UUID.
2015-07-13gnu: file-systems: Fix typo.Mathieu Lirzin
* gnu/system/file-systems.scm (%container-file-systems): Fix typo in a comment.
2015-07-11install: Fix variable reference to iproute2 package.Mark H Weaver
This is a followup to commit d43002f64599fb80294d4c00e3a682a2776c885c. * gnu/system/install.scm (installation-os)[packages]: Refer to IPROUTE instead of IPROUTE2.
2015-07-11install: Add iproute2 to the installation image.Ludovic Courtès
Fixes <http://bugs.gnu.org/21019>. Reported by <info@danieleparisi.me>. * gnu/system/install.scm (installation-os)[packages]: Add IPROUTE2.
2015-07-10gnu: Include (guix build syscalls) module in initrd/VM derivations.David Thompson
This bug was introduced in commit 85c3127. Thanks to Christopher Webber for reporting it. * gnu/syste/linux-initrd.scm (base-initrd): Include (guix build syscalls) module in derivation. * gnu/system/vm.scm (expression->derivation-in-linux-vm): Likewise.
2015-07-09gnu: system: Add Linux container file systems.David Thompson
* gnu/system/file-systems.scm (%container-file-systems): New variable.
2015-07-07gnu: system: Move file-system->spec to (gnu system file-systems).David Thompson
* gnu/system/linux-initrd.scm (file-system->spec): Move this... * gnu/system/file-systems.scm: ... to here.
2015-07-07gnu: system: Move <file-system-mapping> into (gnu system file-systems).David Thompson
* gnu/system/vm.scm (<file-system-mapping>, %store-mapping): Move from here... * gnu/system/file-systems.scm: ...to here. * guix/scripts/system.scm: Import (gnu system file-systems).
2015-07-01environment: Define 'GUIX_ENVIRONMENT'.Ludovic Courtès
* guix/scripts/environment.scm (create-environment): Define 'GUIX_ENVIRONMENT'. * doc/guix.texi (Invoking guix environment): Document it. * gnu/system/shadow.scm (default-skeletons): Adjust 'PS1' depending on whether 'GUIX_ENVIRONMENT' is defined.
2015-06-24linux-initrd: Use (guix cpio) instead of GNU cpio.Ludovic Courtès
* gnu/build/linux-initrd.scm (write-cpio-archive): Remove 'open-pipe*' and related calls. Compute list of files in 'files' variable. Use 'cpio:write-cpio-archive'. Remove #:cpio parameter. (build-initrd): Remove #:cpio parameter. * gnu/system/linux-initrd.scm (expression->initrd): Likewise, and adjust BUILDER accordingly. Add (guix cpio) to #:modules.
2015-06-19gnu: Add control group file systems.David Thompson
* gnu/system/file-systems.scm (%control-groups): New variable. (%base-file-system): Include control group file systems.
2015-06-18install: Turn off deduplication for the binary tarball.Ludovic Courtès
* gnu/build/install.scm (register-closure): Add #:deduplicate? parameter and honor it. (populate-single-profile-directory): Likewise. * gnu/system/install.scm (self-contained-tarball): Pass #:deduplicate? #f. Invoke tar with --check-links.
2015-06-12install: Use udev rules for device-mapper.Ludovic Courtès
Fixes <http://bugs.gnu.org/20791>. Reported by Benz Schenk <benz.schenk@uzh.ch>. * gnu/system/install.scm (installation-services): Add #:rules argument for 'udev-service'.
2015-06-08install: Omit /root from the binary tarball.Ludovic Courtès
Suggested by Thomas Schwinge <thomas@codesourcery.com>. * gnu/system/install.scm (self-contained-tarball): Remove "/root/.guix-profile" from the 'tar' arguments. * doc/guix.texi (Binary Installation): Add a step to create ~root/.guix-profile.
2015-05-27install: Use the actual store name when building the tarball.Ludovic Courtès
* gnu/system/install.scm (self-contained-tarball): Use (%store-directory) instead of "/gnu".
2015-05-25system: Define '%base-user-accounts'.Ludovic Courtès
* gnu/system/shadow.scm (%base-user-accounts): New variable. * gnu/system.scm (<operating-system>)[users]: Use it as the default value. * gnu/system/examples/bare-bones.tmpl (users): Use it. * gnu/system/examples/desktop.tmpl (users): Likewise. * doc/guix.texi (operating-system Reference, User Accounts): Adjust accordingly.
2015-05-24system: Make sure user accounts refer to existing groups.Ludovic Courtès
Fixes <http://bugs.gnu.org/20646>. Reported by David Thompson <davet@gnu.org>. * gnu/system/shadow.scm (assert-valid-users/groups): New procedure * gnu/system.scm (operating-system-activation-script): Use it. * tests/guix-system.sh (make_user_config): New function. Add 3 tests using it. * po/guix/POTFILES.in: Add gnu/system/shadow.scm.
2015-05-20install: Omit /, /root, and /var from binary tarball.Mark H Weaver
* gnu/system/install.scm (self-contained-tarball): Pass "./root/.guix-profile", "./var/guix", and "./gnu" to 'tar' command instead of ".".
2015-05-18install: Files in the tarball are all root-owned.Ludovic Courtès
Fixes a thinko introduced in 175ced4. * gnu/system/install.scm (self-contained-tarball): Use "root:0" as the owner and group. * doc/guix.texi (Binary Installation): Revert 175ced4.
2015-05-18install: Use the right user and group name for files in the binary tarball.Ludovic Courtès
Suggested by Andreas Enge <andreas@enge.fr> at <http://lists.gnu.org/archive/html/guix-devel/2015-05/msg00220.html>. * gnu/system/install.scm (self-contained-tarball): Pass --owner and --group to 'tar'. * doc/guix.texi (Binary Installation): Move group and account creation before extraction. Make "run the daemon" a separate step.
2015-05-11install: desktop.tmpl: Add "netdev" to the user's supplementary groups.Mark H Weaver
* gnu/system/examples/desktop.tmpl: Add "netdev" to the user's supplementary groups.
2015-05-11doc: Document X.509 certificates.Ludovic Courtès
* doc/guix.texi (Using the Configuration System): Add xref to "X.509 Certificates". (X.509 Certificates): New section. * gnu/system/examples/desktop.tmpl: Use NSS-CERTS.
2015-05-09install: Have several OS config templates under /etc/configuration.Ludovic Courtès
* gnu/system/install.scm (configuration-template-service): Remove 'local-template' and 'template'. Add 'search' and 'templates'. [activate]: Copy all of TEMPLATES to /etc/configuration. * doc/guix.texi (System Installation): Adjust file name accordingly.
2015-05-09doc: Add desktop configuration example.Ludovic Courtès
* gnu/system/examples/bare-bones.tmpl: Change 'packages' and 'host-name'. Remove D-Bus, Avahi, and SLiM services, and add lsh instead. * gnu/system/examples/desktop.tmpl: New file. * Makefile.am (EXAMPLES): Add it.
2015-05-09doc: Rename OS config example.Ludovic Courtès
* gnu/system/os-config.tmpl: Rename to... * gnu/system/examples/bare-bones.tmpl: ... this. * Makefile.am (EXAMPLES): Adjust accordingly. * doc.am (doc/os-config.texi): Likewise. * gnu/system/install.scm (configuration-template-service)[template]: Likewise.
2015-05-08nss: Add '%mdns-host-lookup-nss'.Ludovic Courtès
* gnu/system/nss.scm (%mdns-host-lookup-nss): New variable. * doc/guix.texi (Name Service Switch): Document it.
2015-05-07artwork: Update to latest version.Ludovic Courtès
* gnu/artwork.scm (%artwork-repository): Update. * gnu/services/xorg.scm (%default-slim-theme-name): Change to "0.x". * gnu/system/grub.scm (%background-image): Change to GuixSD-fully-black-4-3.svg.
2015-05-03install: Add bash-completion to the packages.Ludovic Courtès
* gnu/system/install.scm (installation-os)[packages]: Add BASH-COMPLETION.
2015-04-20system: Make /gnu/store a read-only bind mount by default.Ludovic Courtès
* gnu/system/file-systems.scm (%immutable-store): New variable. (%base-file-systems): Add it. * doc/guix.texi (File Systems): Document it.
2015-04-14install: Add a procedure to build a self-contained binary tarball.Ludovic Courtès
Suggested by Pjotr Prins <pjotr.public12@thebird.nl> at <http://lists.gnu.org/archive/html/guix-devel/2015-04/msg00229.html>. * gnu/build/install.scm (populate-single-profile-directory): New procedure. * gnu/system/install.scm (self-contained-tarball): New procedure. * Makefile.am (guix-binary.%.tar.xz): New target.
2015-04-05linux-initrd: Add virtio drivers by default.Ludovic Courtès
* gnu/system/linux-initrd.scm (base-initrd): Change #:virtio? default to #t. This will facilitate the use of GuixSD in VM guests.
2015-04-05system: Take kernel modules from the user-specified kernel.Andy Wingo
* gnu/system/linux-initrd.scm (base-initrd): Add #:linux option to specify the linux kernel to use. * gnu/system/vm.scm (expression->derivation-in-linux-vm): Propagate #:linux to base-initrd. * gnu/system.scm (operating-system-initrd-file): Pass #:linux to 'make-initrd'. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2015-03-16system: Skeleton '.bashrc' now exports the 'SHELL' variable.Ludovic Courtès
* gnu/system/shadow.scm (default-skeletons)[bashrc]: Export 'SHELL'.
2015-03-12system: Adjust '.bashrc' skeleton for non-interactive SSH sessions.Ludovic Courtès
* gnu/system/shadow.scm (default-skeletons)[bashrc]: Source /etc/profile when in a non-interactive SSH session.
2015-03-10system: Don't compare <pam-service> objects with 'equal?'.Ludovic Courtès
Fixes <http://bugs.gnu.org/20037>. Reported by 宋文武 <iyzsong@gmail.com> and Tomáš Čech. * gnu/system.scm (operating-system-etc-directory): Remove call to 'delete-duplicates'. * gnu/system/linux.scm (pam-services->directory)[builder]: Add call to 'delete-duplicates'.
2015-03-08doc: Add 'packages' field to OS configuration template.Ludovic Courtès
* gnu/system/os-config.tmpl (packages): New field.
2015-02-12artwork: Update snapshot to GuixSD branding.Ludovic Courtès
* gnu/artwork.scm (%artwork-repository): Update to new "GuixSD" branding. * gnu/system/grub.scm (%background-image, %default-theme): Adjust accordingly.
2015-02-09linux-initrd: Add 'isci' module, needed for some SAS controllers.Ludovic Courtès
Encountered on a Dell Precision T3600. * gnu/system/linux-initrd.scm (base-initrd)[linux-modules]: Add isci.
2015-02-04gnu: wpa-supplicant: Add dbus support; add wpa-supplicant-light.Mark H Weaver
* gnu/packages/admin.scm (wpa-supplicant-light): New variable containing the previous dbus-free package, but renamed. Remove outdated TODO comments. (wpa-supplicant): Now inherits from wpa-supplicant-light but adds dbus support. * gnu/system/install.scm (installation-os): Use wpa-supplicant-light.
2015-02-04system: Add bindings to configure libc's NSS.Ludovic Courtès
* gnu/system/nss.scm: New file. * gnu-system.am (GNU_SYSTEM_MODULES): Add it. * gnu.scm (%public-modules): Add it. * gnu/system.scm (<operating-system>)[name-service-switch]: New field. (etc-directory): Add #:nss parameter and honor it. (operating-system-etc-directory): Adjust call accordingly. * doc/guix.texi (operating-system Reference): Document 'name-service-switch'. (Name Service Switch): New section.
2015-01-28install: Add iw to the packages.Ludovic Courtès
* gnu/system/install.scm (installation-os)[packages]: Add IW.