summaryrefslogtreecommitdiff
path: root/gnu/system
Commit message (Collapse)AuthorAgeFilesLines
* gnu: system: Move file-system->spec to (gnu system file-systems).David Thompson2015-07-072-7/+10
| | | | | * gnu/system/linux-initrd.scm (file-system->spec): Move this... * gnu/system/file-systems.scm: ... to here.
* gnu: system: Move <file-system-mapping> into (gnu system file-systems).David Thompson2015-07-072-23/+31
| | | | | | * 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).
* environment: Define 'GUIX_ENVIRONMENT'.Ludovic Courtès2015-07-011-1/+7
| | | | | | | * 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.
* linux-initrd: Use (guix cpio) instead of GNU cpio.Ludovic Courtès2015-06-241-4/+2
| | | | | | | | | * 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.
* gnu: Add control group file systems.David Thompson2015-06-191-4/+23
| | | | | * gnu/system/file-systems.scm (%control-groups): New variable. (%base-file-system): Include control group file systems.
* install: Turn off deduplication for the binary tarball.Ludovic Courtès2015-06-181-1/+5
| | | | | | | | * 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.
* install: Use udev rules for device-mapper.Ludovic Courtès2015-06-121-1/+2
| | | | | | | | 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'.
* install: Omit /root from the binary tarball.Ludovic Courtès2015-06-081-3/+4
| | | | | | | | | 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.
* install: Use the actual store name when building the tarball.Ludovic Courtès2015-05-271-1/+1
| | | | | * gnu/system/install.scm (self-contained-tarball): Use (%store-directory) instead of "/gnu".
* system: Define '%base-user-accounts'.Ludovic Courtès2015-05-253-4/+17
| | | | | | | | | * 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.
* system: Make sure user accounts refer to existing groups.Ludovic Courtès2015-05-241-1/+34
| | | | | | | | | | | 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.
* install: Omit /, /root, and /var from binary tarball.Mark H Weaver2015-05-201-1/+9
| | | | | | * gnu/system/install.scm (self-contained-tarball): Pass "./root/.guix-profile", "./var/guix", and "./gnu" to 'tar' command instead of ".".
* install: Files in the tarball are all root-owned.Ludovic Courtès2015-05-181-6/+2
| | | | | | | | 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.
* install: Use the right user and group name for files in the binary tarball.Ludovic Courtès2015-05-181-1/+6
| | | | | | | | | | 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.
* install: desktop.tmpl: Add "netdev" to the user's supplementary groups.Mark H Weaver2015-05-111-1/+1
| | | | | * gnu/system/examples/desktop.tmpl: Add "netdev" to the user's supplementary groups.
* doc: Document X.509 certificates.Ludovic Courtès2015-05-111-1/+2
| | | | | | | * 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.
* install: Have several OS config templates under /etc/configuration.Ludovic Courtès2015-05-091-7/+22
| | | | | | | * 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.
* doc: Add desktop configuration example.Ludovic Courtès2015-05-092-12/+53
| | | | | | | | * 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.
* doc: Rename OS config example.Ludovic Courtès2015-05-092-1/+1
| | | | | | | | | * 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.
* nss: Add '%mdns-host-lookup-nss'.Ludovic Courtès2015-05-081-0/+23
| | | | | * gnu/system/nss.scm (%mdns-host-lookup-nss): New variable. * doc/guix.texi (Name Service Switch): Document it.
* artwork: Update to latest version.Ludovic Courtès2015-05-071-1/+2
| | | | | | | * 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.
* install: Add bash-completion to the packages.Ludovic Courtès2015-05-031-0/+2
| | | | | * gnu/system/install.scm (installation-os)[packages]: Add BASH-COMPLETION.
* system: Make /gnu/store a read-only bind mount by default.Ludovic Courtès2015-04-201-2/+16
| | | | | | * gnu/system/file-systems.scm (%immutable-store): New variable. (%base-file-systems): Add it. * doc/guix.texi (File Systems): Document it.
* install: Add a procedure to build a self-contained binary tarball.Ludovic Courtès2015-04-141-1/+38
| | | | | | | | | 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.
* linux-initrd: Add virtio drivers by default.Ludovic Courtès2015-04-051-2/+3
| | | | | * gnu/system/linux-initrd.scm (base-initrd): Change #:virtio? default to #t. This will facilitate the use of GuixSD in VM guests.
* system: Take kernel modules from the user-specified kernel.Andy Wingo2015-04-052-6/+8
| | | | | | | | | | | * 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>
* system: Skeleton '.bashrc' now exports the 'SHELL' variable.Ludovic Courtès2015-03-161-0/+4
| | | | * gnu/system/shadow.scm (default-skeletons)[bashrc]: Export 'SHELL'.
* system: Adjust '.bashrc' skeleton for non-interactive SSH sessions.Ludovic Courtès2015-03-121-0/+12
| | | | | * gnu/system/shadow.scm (default-skeletons)[bashrc]: Source /etc/profile when in a non-interactive SSH session.
* system: Don't compare <pam-service> objects with 'equal?'.Ludovic Courtès2015-03-101-2/+8
| | | | | | | | | | 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'.
* doc: Add 'packages' field to OS configuration template.Ludovic Courtès2015-03-081-1/+4
| | | | * gnu/system/os-config.tmpl (packages): New field.
* artwork: Update snapshot to GuixSD branding.Ludovic Courtès2015-02-121-3/+3
| | | | | | | * gnu/artwork.scm (%artwork-repository): Update to new "GuixSD" branding. * gnu/system/grub.scm (%background-image, %default-theme): Adjust accordingly.
* linux-initrd: Add 'isci' module, needed for some SAS controllers.Ludovic Courtès2015-02-091-0/+1
| | | | | | Encountered on a Dell Precision T3600. * gnu/system/linux-initrd.scm (base-initrd)[linux-modules]: Add isci.
* gnu: wpa-supplicant: Add dbus support; add wpa-supplicant-light.Mark H Weaver2015-02-041-1/+1
| | | | | | | | * 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.
* system: Add bindings to configure libc's NSS.Ludovic Courtès2015-02-041-0/+213
| | | | | | | | | | | | * 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.
* install: Add iw to the packages.Ludovic Courtès2015-01-281-1/+1
| | | | * gnu/system/install.scm (installation-os)[packages]: Add IW.
* linux-initrd: Add USB kernel modules to the default initrd.Ludovic Courtès2015-01-272-6/+7
| | | | | | | * gnu/system/linux-initrd.scm (base-initrd)[linux-modules]: Add usb-storage, uas, usbkbd, and usbhid. * gnu/system/vm.scm (system-disk-image): Remove #:extra-modules argument to 'base-initrd'.
* install: Mention GSD.Ludovic Courtès2015-01-271-1/+1
| | | | | * gnu/system/install.scm (installation-services): Mention the Guix System Distribution.
* doc: Add services to the configuration template.Ludovic Courtès2015-01-231-1/+11
| | | | * gnu/system/os-config.tmpl (services): New field.
* install: Make sure 'info' can decompress the Info files.Ludovic Courtès2015-01-231-4/+9
| | | | * gnu/system/install.scm (log-to-info): Add GZIP to $PATH.
* system: Add "en_US.UTF-8" to the default locales, for backward compatibility.Ludovic Courtès2015-01-161-34/+39
| | | | | * gnu/system/locale.scm (%default-locale-definitions): Add "en_US.UTF-8".
* monads: Move '%store-monad' and related procedures where they belong.Ludovic Courtès2015-01-143-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This turns (guix monads) into a generic module for monads, and moves the store monad and related monadic procedures in their corresponding module. * guix/monads.scm (store-return, store-bind, %store-monad, store-lift, text-file, interned-file, package-file, package->derivation, package->cross-derivation, origin->derivation, imported-modules, compiled, modules, built-derivations, run-with-store): Move to... * guix/store.scm (store-return, store-bind, %store-monad, store-lift, text-file, interned-file): ... here. (%guile-for-build): New variable. (run-with-store): Moved from monads.scm. Remove default value for #:guile-for-build. * guix/packages.scm (default-guile): Export. (set-guile-for-build): New procedure. (package-file, package->derivation, package->cross-derivation, origin->derivation): Moved from monads.scm. * guix/derivations.scm (%guile-for-build): Remove. (imported-modules): Rename to... (%imported-modules): ... this. (compiled-modules): Rename to... (%compiled-modules): ... this. (built-derivations, imported-modules, compiled-modules): New procedures. * gnu/services/avahi.scm, gnu/services/base.scm, gnu/services/dbus.scm, gnu/services/dmd.scm, gnu/services/networking.scm, gnu/services/ssh.scm, gnu/services/xorg.scm, gnu/system/install.scm, gnu/system/linux-initrd.scm, gnu/system/shadow.scm, guix/download.scm, guix/gexp.scm, guix/git-download.scm, guix/profiles.scm, guix/svn-download.scm, tests/monads.scm: Adjust imports accordingly. * guix/monad-repl.scm (default-guile-derivation): New procedure. (store-monad-language, run-in-store): Use it. * build-aux/hydra/gnu-system.scm (qemu-jobs): Add explicit 'set-guile-for-build' call. * guix/scripts/archive.scm (derivation-from-expression): Likewise. * guix/scripts/build.scm (options/resolve-packages): Likewise. * guix/scripts/environment.scm (guix-environment): Likewise. * guix/scripts/system.scm (guix-system): Likewise. * doc/guix.texi (The Store Monad): Adjust module names accordingly.
* install: Use a low-memory nscd caching policy.Ludovic Courtès2014-12-141-1/+12
| | | | | * gnu/system/install.scm (%nscd-minimal-caches): New variable. (installation-services): Use as 'nscd-service' argument.
* system: grub: Make sure the font and background image are always found.Ludovic Courtès2014-12-131-1/+4
| | | | * gnu/system/grub.scm (eye-candy): Add 'search --file --set'.
* system: Adjust 'grub.cfg' to work on systems with a separate /boot.Ludovic Courtès2014-12-131-8/+6
| | | | | | | | | Fixes <http://bugs.gnu.org/19220>. Reported by Nikita Karetnikov <nikita@karetnikov.org>. * gnu/system/grub.scm (grub-configuration-file)[entry->gexp]: Add 'search --file --set'. (grub-configuration-file)[builder]: Remove 'search.file'.
* vm: Use QEMU's standard VGA emulation by default.Ludovic Courtès2014-12-131-1/+1
| | | | * gnu/system/vm.scm (common-qemu-options): Add "-vga std".
* system: Add skeleton '.zlogin'.宋文武2014-12-091-0/+4
| | | | * gnu/system/shadow.scm (default-skeletons): Add .zlogin.
* system: Cleanup bash startup files.宋文武2014-12-091-4/+9
| | | | | | * gnu/system.scm (etc-directory) (bashrc): Rename to 'profile'. * gnu/system/shadow.scm (default-skeletons): Rename '.bashrc' to '.bash_profile'. Don't source /etc/profile.
* linux-initrd: Add the 'virtio_console' module for QEMU guests.Ludovic Courtès2014-12-081-1/+2
| | | | | * gnu/system/linux-initrd.scm (base-initrd)[virtio-modules]: Add "virtio_console".
* Revert "system: Add a 'needed-for-boot?' field to 'mapped-device'."Ludovic Courtès2014-11-301-4/+1
| | | | | | | This reverts commit 3b09332adf7ce8e976a4d117a62c586a53af04aa, which turned out to be a bad idea because we need to have dependency information between the device-mapping service and the file-system service that uses it.
* system: locale: Fix typo in docstring.Alex Kost2014-11-301-1/+1
| | | | * gnu/system/locale.scm (localedef-command): Fix typo.