aboutsummaryrefslogtreecommitdiff
path: root/doc
Commit message (Collapse)AuthorAge
* services: Add openntpd service.Efraim Flashner2018-03-05
| | | | | | | | | | * gnu/packages/ntp.scm (openntpd)[arguments]: Add 'configure-flags to set openntpd daemon's user and localstatedir. Add a custom phase to not try to create said directory at install time. * gnu/services/networking.scm (<openntpd-configuration>): New record type. (openntpd-shepherd-service, openntpd-service-activation): New procedures. (openntpd-service-type): New variable. * doc/guix.texi (Networking Services): Add openntpd documentation.
* services: messaging: Prosody config supports file-like objects.Clément Lassieur2018-03-03
| | | | | | | | | | | | | | | | | | | | | | | | * doc/guix.texi (Messaging Services): Update accordingly. * gnu/services/configuration.scm (serialize-configuration, serialize-maybe-stem, serialize-package): Return strings or string-valued gexps (these procedures were only used for their side-effects). * gnu/services/messaging.scm (serialize-field, serialize-field-list, enclose-quotes, serialize-raw-content, serialize-ssl-configuration, serialize-virtualhost-configuration-list, serialize-int-component-configuration-list, serialize-ext-component-configuration-list, serialize-virtualhost-configuration, serialize-int-component-configuration, serialize-ext-component-configuration, serialize-prosody-configuration): Return strings or string-valued gexps and stop printing. (prosody-activation): Use SERIALIZE-PROSODY-CONFIGURATION's return value with MIXED-TEXT-FILE instead of using its output with PLAIN-FILE. (serialize-non-negative-integer, serialize-non-negative-integer-list): Convert numbers to strings. (file-object?, serialize-file-object, file-object-list?, serialize-file-object-list): New procedures. (ssl-configuration)[capath, cafile], (prosody-configuration)[plugin-paths, groups-file]: Replace FILE-NAME with FILE-OBJECT. * guix/gexp.scm (file-like?): New exported procedure.
* linux-initrd: Add virtio modules to '%base-initrd-modules'.Ludovic Courtès2018-03-03
| | | | | | | | | | | | | | | | | | | Fixes a regression in installation tests, whereby 'guix system init' would report that virtio modules are missing for the target devices. In practice virtio modules were always available since 'base-initrd' was always called with #:virtio? #t. This commit simply moves them to '%base-initrd-modules' so that 'guix system' knows they're available. Reported by Danny Milosavljevic <dannym@scratchpost.org> at <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=30629#112>. * gnu/system/linux-initrd.scm (default-initrd-modules): Add virtio modules. (base-initrd): Remove #:virtio? and 'virtio-modules'. * gnu/system/vm.scm (expression->derivation-in-linux-vm) (system-qemu-image, virtualized-operating-system): Remove uses of #:virtio?. * doc/guix.texi (Initial RAM Disk): Update 'base-initrd' doc.
* system: Add 'initrd-modules' field.Ludovic Courtès2018-03-02
| | | | | | | | | | | | | | * 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.
* environment: Add --user.Mike Gerwitz2018-03-02
| | | | | | | | | | | | | | | | | | This change allows overriding the home directory of all filesystem mappings to help hide the identity of the calling user in a container. * doc/guix.texi (Invoking guix environment)[--container]: Mention --user. [--user]: Add item. * guix/scripts/environment.scm (show-help): Add --user. (%options): Add --user. (launch-environment/container) Add 'user' parameter. Update doc. Override 'user-mappings' using 'override-user-mappings'. Consider override for chdir. (mock-passwd, user-override-home, overrid-euser-dir): New procedures. (guix-environment): Disallow --user without --container. Provide user to 'launch-environment/container'. * tests/guix-environment.sh: Add user test. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* environment: Add --link-profile.Mike Gerwitz2018-03-02
| | | | | | | | | | | | | | | | | | | | | This change is motivated by attempts to run programs (like GNU IceCat) within containers. The 'fontconfig' program, for example, is configured explicitly to check ~/.guix-profile for additional fonts. There were no existing container tests in 'tests/guix-environment.sh', but I added one anyway for this change. * doc/guix.texi (Invoking guix environment): Add '--link-profile'. * guix/scripts/environment.scm (show-help): Add '--link-profile'. (%options): Add 'link-profile' as '#\P', assigned to 'link-profile?'. (link-environment): New procedure. (launch-environment/container): Use it when 'link-profile?'. [link-profile?]: New parameter. (guix-environment): Leave when '--link-prof' but not '--container'. Add '#:link-profile?' argument to 'launch-environment/container' application. * tests/guix-environment-container.sh: New '--link-profile' test. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* services: cgit: Add more configuration fields.Oleg Pykhalov2018-02-28
| | | | | | | | * gnu/services/version-control.scm (cgit-service-type): Move to separate file. * gnu/services/cgit.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add this. * gnu/tests/version-control.scm: Add this. * doc/guix.texi (Cgit Service): Document this.
* build: Require Guile >= 2.0.13.Ludovic Courtès2018-02-26
| | | | | | | | | | | | | | | | | | * README, configure.ac, doc/guix.texi (Requirements): Increase minimum Guile version from 2.0.9 to 2.0.13. * config-daemon.ac: Remove use of 'GUIX_CHECK_UNBUFFERED_CBIP'. * m4/guix.m4 (GUIX_CHECK_UNBUFFERED_CBIP): Remove. * guix/build/download.scm (current-http-proxy): Remove. * guix/build/syscalls.scm (%libc-errno-pointer, errno): Remove. (syscall->procedure): Use #:return-errno unconditionally. * guix/hash.scm (open-sha256-input-port)[unbuffered]: Remove outdated comment. * guix/http-client.scm (when-guile<=2.0.5-or-otherwise-broken): Remove. <top level>: Remove 'when-guile<=2.0.5-or-otherwise-broken' block. * guix/scripts/substitute.scm (fetch): Remove 'guile-version>?' conditional. * tests/hash.scm (supports-unbuffered-cbip?): Remove. <top level>: Remove 'test-skip' call.
* services: certbot: Allow to set a deploy hook.Clément Lassieur2018-02-22
| | | | | | * doc/guix.texi (Certificate Services): Document it. * gnu/services/certbot.scm (<certificate-configuration>, certbot-command): Add it.
* services: certbot: Allow to set RSA key size.Clément Lassieur2018-02-22
| | | | | | * doc/guix.texi (Certificate Services): Document it. * gnu/services/certbot.scm (<cerbot-configuration>, certbot-command, certbot-activation, certbot-nginx-server-configurations): Add it.
* doc: Fix typo in certbot-configuration description.Clément Lassieur2018-02-22
| | | | * doc/guix.texi (Certificate Services): Fix typo.
* services: certbot: Associate one certificate with several domains.Clément Lassieur2018-02-22
| | | | | | | | | | | | * doc/guix.texi (Certificate Services): Document <certificate-configuration>, the change from domains to certificates and the fact that their path is now derived from their name. * gnu/services/certbot.scm (<certificate-configuration>): Add and export it. (certbot-configuration, certbot-command, certbot-activation, certbot-nginx-server-configurations, certbot-service-type): Replace 'domains' with 'certificates'. (certbot-nginx-server-configurations): Use only one nginx-server-configuration and use all certificate domains as the server-name.
* services: certbot: Get certbot to run non-interactively.Clément Lassieur2018-02-22
| | | | | | | | | * doc/guix.texi (Certificate Services): Add email field and link to the ACME Subscriber Agreement. * gnu/services/certbot.scm (<certbot-configuration>, certbot-command, certbot-activation, certbot-nginx-server-configurations): Add email field. (certbot-command): Add '-n' and '--agree-tos' options. (certbot-service-type): Remove default-value.
* services: certbot: Rename 'host' to 'domain'.Clément Lassieur2018-02-22
| | | | | | | * doc/guix.texi (Certificate Services): Rename 'host' to 'domain'. * gnu/services/certbot.scm (<certbot-configuration>, certbot-renewal-jobs, certbot-activation, certbot-nginx-server-configurations, certbot-service-type): Rename 'host' to 'domain'.
* services: certbot: Run certbot twice a day at a random minute.Clément Lassieur2018-02-22
| | | | | | * doc/guix.texi (Certificate Services): Document it. * gnu/services/certbot.scm (certbot-renewal-jobs): Change job's time specification.
* environment: Add --manifest option.David Thompson2018-02-21
| | | | | | | * guix/scripts/environment.scm (show-help, %options): Add -m/--manifest. (options/resolve-packages): Handle manifests. * tests/guix-envronment.sh: Add a test. * doc/guix.texi (Invoking guix environment): Document it.
* services: slim: Make the logged-in session show up in "w".Danny Milosavljevic2018-02-20
| | | | | | * gnu/services/xorg.scm (slim-shepherd-service): Use SESSREG to register X11 session. * doc/guix.texi (slim-configuration): Document new field "sessreg".
* pack: Add '--manifest'.Konrad Hinsen2018-02-15
| | | | | | | | | * guix/scripts/pack.scm (%options, show-help): Add --manifest. (guix-pack)[manifest-from-args]: New procedure. Use it. * doc/guix.texi (Invoking guix pack): Document --manifest. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* services: agetty: Add agetty instance to base services. Make its tty optional.Danny Milosavljevic2018-02-15
| | | | | | | | | | * 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.
* gnu: Add cat-avatar-generator-service.Julien Lepiller2018-02-14
| | | | | * gnu/services/web.scm (cat-avatar-generator-service): New variable. * doc/guix.text (Web Services): Document it.
* doc: Mention starting GNOME on Wayland manually.Rutger Helling2018-02-14
| | | | * doc/guix.texi (Desktop Services): Mention starting GNOME on Wayland manually.
* gnu: services: Add wesnothd service.Arun Isaac2018-02-09
| | | | | | * gnu/services/games.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (Game Services): Document the service.
* etc: Add SELinux policy for the daemon.Ricardo Wurmus2018-02-07
| | | | | | | * etc/guix-daemon.cil.in: New file. * Makefile.am (dist_selinux_policy_DATA): Define it. * configure.ac: Handle --with-selinux-policy-dir. * doc/guix.texi (SELinux Support): New section.
* doc: Document the 'upstream-name' property.Ludovic Courtès2018-02-05
| | | | | | Reported by Hartmut Goebel <h.goebel@crazy-compilers.com>. * doc/guix.texi (Invoking guix refresh): Document 'upstream-name'.
* doc: guix-publish-configuration-ttl is in seconds.Tobias Geerinckx-Rice2018-02-04
| | | | | * doc/guix.texi (Base Services): Document that guix-publish-configuration-ttl takes its value in seconds.
* etc: Add installation script.Ricardo Wurmus2018-01-30
| | | | | | | | * etc/guix-install.sh: New file. * Makefile.am (EXTRA_DIST): Add it. * doc/guix.texi (Binary Installation): Mention it. Co-authored-by: sharlatan <sharlatanus@gmail.com>
* doc: Unconfuse file systems and partitions.Tobias Geerinckx-Rice2018-01-29
| | | | | | | | | | Partitions can have their own labels and UUIDs (e.g. under GPT) that are unrelated to those of the contained file system. Confusing the two ends poorly. * doc/guix.scm (File Systems, Proceeding with the Installation) (Using the Configuration System, Initial RAM Disk): Substitute `file system' for `partition' when talking about labels and UUIDs.
* doc, gnu: Fix spelling of screen-things.Tobias Geerinckx-Rice2018-01-29
| | | | | | * doc/guix.texi (X Window): Write 'screen locker' and 'screen saver' in prose. * gnu/services/xorg.scm (screen-locker-service): Likewise.
* doc: Fix SCREEN-LOCKER-SERVICE description.Tobias Geerinckx-Rice2018-01-29
| | | | | * doc/guix.texi (X Window): Correct the documentation for the SCREEN-LOCKER-SERVICE procedure.
* doc: Replace a stale reference to a code snippet.Tobias Geerinckx-Rice2018-01-29
| | | | | | | | The text refers to a snippet which has since been removed, but a suitable replacement is near. Use it. * doc/guix.texi (Using the Configuration System): Substitute bind for tcpdump.
* doc: Mention escpr in CUPS configuration example.Diego Nicola Barbato2018-01-28
| | | | | | | | | Suggested by Danny Milosavljevic <dannym@scratchpost.org>. * doc/guix.texi (Printing Services): Mention how to add support for Epson printers to CUPS via escpr in the configuration example. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* doc: Improve ‘fix-runpath’ description.Tobias Geerinckx-Rice2018-01-21
| | | | | * doc/guix.texi (Build Systems): Re-write ‘fix-runpath’ documentation entirely. Just fixing the typos didn't do much.
* services: Missing services are automatically instantiated.Ludovic Courtès2018-01-21
| | | | | | | | | | | | | | | | | | | | | | | This simplifies OS configuration: users no longer need to be aware of what a given service depends on. See the discussion at <https://lists.gnu.org/archive/html/guix-devel/2018-01/msg00114.html>. * gnu/services.scm (missing-target-error): New procedure. (service-back-edges): Use it. (instantiate-missing-services): New procedure. * gnu/system.scm (operating-system-services): Call 'instantiate-missing-services'. * tests/services.scm ("instantiate-missing-services") ("instantiate-missing-services, no default value"): New tests. * gnu/services/version-control.scm (cgit-service-type)[extensions]: Add FCGIWRAP-SERVICE-TYPE. * gnu/tests/version-control.scm (%cgit-os): Remove NGINX-SERVICE-TYPE and FCGIWRAP-SERVICE-TYPE instances. * doc/guix.texi (Log Rotation): Remove 'mcron-service-type' in example. (Miscellaneous Services): Remove 'nginx-service-type' and 'fcgiwrap-service-type' in Cgit example.
* build: Declare “doc/guix.texi“ dependencies.Mathieu Lirzin2018-01-20
| | | | | | | | | | Fixes <https://bugs.gnu.org/29727>. * doc/local.mk (%C%_guix_TEXINFOS): New variable containing files included by “doc/guix.texi”. (EXTRA_DIST): Remove ‘.texi’ files. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu: Consistently Write ‘file system(s)’.Tobias Geerinckx-Rice2018-01-19
| | | | | | | | | | | | | | | | | | | | | | | | | It is the GNU way. * doc/guix.texi (Build Systems, DNS Services): Write ‘file system(s)’. * gnu/build/vm.scm (create-ext-file-system, create-fat-file-system): Likewise. * gnu/packages/backup.scm (dirvish, rsnapshot)[description]: Likewise. * gnu/packages/check.scm (python-testpath)[description]: Likewise. * gnu/packages/disk.scm (pydf)[description]: Likewise. * gnu/packages/file-systems.scm (disorderfs)[synopsis, description]: Likewise. (glusterfs)[description]: Likewise. * gnu/packages/haskell.scm (ghc-directory, ghc-system-fileio-bootstrap) (ghc-system-fileio)[synopsis]: Likewise. (ghc-fsnotify)[description]: Likewise. * gnu/packages/linux.scm (proot)[description]: Likewise. (jmtpfs)[synopsis, description]: Likewise. * gnu/packages/mate.scm (caja, caja-extensions)[description]: Likewise. * gnu/packages/storage.scm (ceph)[description]: Likewise. * gnu/packages/sync.scm (lsyncd)[description]: Likewise. * gnu/packages/syncthing.scm (syncthing)[synopsis]: Likewise. (go-github-com-zillode-notify)[description]: Likewise. * gnu/services/nfs.scm (pipefs-service-type): Likewise. * guix/scripts/system.scm (perform-action): Likewise.
* doc: Suggest running guix-daemon with 'sudo -E'.Ludovic Courtès2018-01-17
| | | | | | | Suggested by Martin H. <maze@strahlungsfrei.de>. * doc/contributing.texi (Running Guix Before It Is Installed): Suggest 'sudo -E'.
* docs: Fix typo in qemu-binfmt example.Danny Milosavljevic2018-01-17
| | | | * doc/guix.texi (Virtualization Services): Document 'guix-support?' properly.
* gnu: services: web: Add service for httpd.Christopher Baines2018-01-17
| | | | | | | | | | | | | * gnu/services/web.scm (<httpd-module>, <httpd-config-file>, <httpd-virtualhost> <httpd-configuration>): New record types. (%default-httpd-modules, %httpd-accounts, httpd-service-type): New variables. (httpd-shepherd-services, httpd-activation, httpd-process-extensions): New procedures. * gnu/tests/web.scm (run-httpd-test): New procedure. (%httpd-os, %tests-httpd): New variables. * doc/guix.texi (Web Services): Document the Apache HTTP Server.
* doc: Fix typo.Ludovic Courtès2018-01-16
| | | | | | Reported by Nicolas Goaziou. * doc/guix.texi (Invoking guix archive): Fix typo.
* doc: Deprecate 'bitlbee-service' procedure.Ludovic Courtès2018-01-15
| | | | | | * gnu/services/messaging.scm (bitlbee-service): Mark as deprecated. * doc/guix.texi (Messaging Services): Document 'bitlbee-service-type' and 'bitlbee-configuration'. Remove 'bitlbee-service'.
* services: bitlbee: Move to (gnu services messaging).Ludovic Courtès2018-01-15
| | | | | | | | | * gnu/services/networking.scm (<bitlbee-configuration>) (bitlbee-shepherd-service, %bitlbee-accounts, %bitlbee-activation) (bitlbee-service-type, bitlbee-service): Move to... * gnu/services/messaging.scm: ... here. * doc/guix.texi (Networking Services): Move 'bitlbee-service' doc to... (Messaging Services): ... here.
* doc: Connect "guix archive", "guix pack", and co.Ludovic Courtès2018-01-15
| | | | | | * doc/guix.texi (Invoking guix pack): Add xrefs to "guix publish", "guix copy", and "guix archive". (Invoking guix archive): Add xref to "guix pack".
* doc: Correct documentation of NGINX-LOCATION-CONFIGURATION.Andreas Enge2018-01-14
| | | | | * doc/guix.texi (Web Services): The body of an NGINX-LOCATION-CONFIGURATION is a list of strings and not a string.
* services: qemu-binfmt: Extend guix-daemon with extra chroot directories.Ludovic Courtès2018-01-11
| | | | | | | | | | | | Fixes <https://bugs.gnu.org/20239>. * gnu/services/virtualization.scm (<qemu-binfmt-configuration>)[guix-support?]: New field. (qemu-binfmt-guix-chroot): New procedure. (qemu-binfmt-service-type)[extensions]: Add GUIX-SERVICE-TYPE. * doc/guix.texi (Virtualization Services): Document 'guix-support?'. (Additional Build Options): Mention binfmt_misc and offloading under '--system'.
* services: Add qemu-binfmt.Ludovic Courtès2018-01-11
| | | | | | | | | | | | | | | | | | | * gnu/services/virtualization.scm (<qemu-platform>): New record type. (bv): New macro. (%i386, %i486, %alpha, %arm, %armeb, %sparc, %sparc32plus) (%ppc, %ppc64, %ppc64le, %m68k, %mips, %mipsel, %mipsn32el) (%mips64, %mips64el, %sh4, %sh4eb, %s390x, %aarch64, %hppa) (%qemu-platforms): New variables. (lookup-qemu-platforms): New procedure. (<qemu-binfmt-configuration>): New record type. (qemu-platform->binfmt): New procedures. (%binfmt-mount-point, %binfmt-register-file, %binfmt-file-system) (qemu-binfmt-service-type): New variables. (qemu-binfmt-shepherd-services): New procedures. * doc/guix.texi (Virtualization Services): Add "Transparent Emulation with QEMU" heading. binfmt fixlet
* doc: Fix typo in 'guix environment' example.Ludovic Courtès2018-01-11
| | | | * doc/guix.texi (Invoking guix environment): Add missing @ in example.
* gnu: services: Add darkstat service.宋文武2018-01-08
| | | | | | * gnu/services/monitoring.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (Monitoring Services): Document it.
* services: guix: Add 'log-compression' option.Ludovic Courtès2018-01-08
| | | | | | | | * gnu/services/base.scm (<guix-configuration>)[log-compression]: New field. (guix-shepherd-service): Use 'match-record' instead of 'match'. Honor 'log-compression'. * doc/guix.texi (Base Services): Document 'log-compression'.
* publish: Publish build logs.Ludovic Courtès2018-01-07
| | | | | | | | * guix/scripts/publish.scm (render-log-file): New procedure. (make-request-handler): Add "log" case. * tests/publish.scm ("/log/NAME") ("/log/NAME not found"): New tests. * doc/guix.texi (Invoking guix publish): Document /log URLs.
* doc: Mark zlib as mandatory, libbz2 as optional.Ludovic Courtès2018-01-07
| | | | | | * doc/guix.texi (Requirements): Move zlib to mandatory and libbz2 to optional. * README: Ditto.