guix: offload: Add "status" sub-command. * guix/scripts/offload.scm (check-machine-status): New procedure. (guix-offload): Call it when the argument is "status". * doc/guix.texi (Daemon Offload Setup): Document it.
etc: Add snippets. * etc/snippets/scheme-mode/guix-cvs-reference, etc/snippets/scheme-mode/guix-git-reference, etc/snippets/scheme-mode/guix-hg-reference, etc/snippets/scheme-mode/guix-origin, etc/snippets/scheme-mode/guix-package, etc/snippets/scheme-mode/guix-svn-reference, etc/snippets/text-mode/guix-commit-message-add-package, etc/snippets/text-mode/guix-commit-message-update-package: New files. * doc/contributing.texi (The Perfect Setup): Document snippets.
scripts: system: Add --expression option. * guix/scripts/system.scm (show-help): Add expression option. (%options): Ditto. (guix-system): Allow commands taking a file as an argument to use an expression instead. (process-action): Read operating-system from expression or file. * doc/guix.texi (Invoking guix system): Introduce the expression option.
doc: Fix typo. * doc/guix.texi (DNS Services): Fix knot-configuration.
doc: Fix typo. * doc/guix.texi: Add missing ‘@*’ to copyright headers.
gnu: services: Add php-fpm. * gnu/services/web.scm (<php-fpm-configuration>, <php-fpm-process-manager-configuration>): New record types. (php-fpm-configuration?, php-fpm-process-manager-configuration?, php-fpm-service-type, nginx-php-location): New procedures. * doc/guix.texi (Web-Services): Document php-fpm service. * gnu/tests/web.scm: Add php-fpm system test. Signed-off-by: Christopher Baines <mail@cbaines.net>
services: web: Add support for configuring the nginx server names hash. The nginx service can fail to start if the server names hash bucket size is too small, which can happen on some systems, and when using QEMU, depending on the CPU. * gnu/services/web.scm (<nginx-configuration>): Add server-names-hash-bucket-size and server-names-hash-bucket-max-size. (default-nginx-config): Add support for the new hash bucket size parameters. (nginx-service, nginx-activation): Pass the new hash bucket size parameters through to the default-nginx-config procedure. * doc/guix.texi (Web Services): Document the new hash bucket size parameters.
services: web: Remove default certificate and key files for nginx. If nginx is configured with a ssl-certificate file, and ssl-certificate-key, it will fail to start unless these exist. To avoid this happening, change the default to #f. * gnu/services/web.scm (<nginx-server-configuration>) [ssl-certificate,ssl-certificate-key]: Set the defaults to #f. * gnu/tests/web.scm (%nginx-servers): Remove redundant nginx-server-configuration fields. * doc/guix.texi (Web Services): Update examples and documentation.
doc: Fix typo. * doc/guix.texi (Package Management): Fix typo.
doc: Update metacpan.org API endpoint. * doc/guix.texi (Invoking guix import): Match the URI actually used by the updater.
gnu, doc, tests: Use ‘bootloader-configuration’ everywhere. * doc/guix.texi (Proceeding with the Installation): Replace the old-style ‘grub-configuration’ with the newer ‘bootloader-configuration’ syntax. * gnu/system/examples/vm-image.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) (%separate-store-os, %raid-root-os, %encrypted-root-os, %btrfs-root-os): Likewise. * gnu/tests/nfs.scm (%base-os): Likewise. * tests/guix-system.scm (OS_BASE, make_user_config): Likewise. * tests/system.scm (%os, %os-with-mapped-device): Likewise.
doc: Mention berlin.guixsd.org. * doc/guix.texi (Substitute Server Authorization): Add note about berlin.guixsd.org. Nitpick.
maint: Add the '.iso' extension to installation images. * Makefile.am (release): Add the '.iso' suffix to image files. * doc/guix.texi (USB Stick and DVD Installation): Adjust accordingly.
doc: Merge "USB Stick Installation" and "DVD Installation". * doc/guix.texi (USB Stick Installation): Rename to... (USB Stick and DVD Installation): ... this. Merge contents with... (DVD Installation): ... this node. Remove.
doc: Link to work on bootstrapping. * doc/guix.texi (Reducing the Set of Bootstrap Binaries): New section.
doc: Update the example VCS snapshot package definition. In commit ee17a9e06e636400e3354796a42ac445dbcc8f96, the helpers git-version and git-file-name removed the need to build version and file name strings manually for packages that use VCS snapshots. doc/guix.texi (Version Numbers): Use git-version and git-file-name.
build-system: Add scons-build-system. * guix/build-system/scons.scm: New file. * guix/build/scons-build-system.scm: New file. * Makefile.am (MODULES): Register them. * doc/guix.texi (Build Systems): Add scons-build-system.
doc: Give the absolute file name of 'hydra.gnu.org.pub' in snippets. * doc/guix.texi (Substitute Server Authorization): Give the absolute file name of 'hydra.gnu.org.pub' in the snippet.
gexp: 'compiled-modules' disables deprecation warnings by default. This avoids repeated deprecation messages, particularly while running 'guix system build' or similar. * guix/gexp.scm (gexp->derivation): Add #:deprecation-warnings. Pass it to 'compiled-modules'. (compiled-modules): Add #:deprecation-warnings and honor it. * doc/guix.texi (G-Expressions): Update 'gexp->derivation' documentation. * guix/packages.scm (patch-and-repack): Pass #:deprecation-warnings #t.
services: Add Git HTTP(S) service support. * doc/guix.texi (Version Control Services): Add documentation on the HTTP backend for git. * gnu/services/version-control.scm (<git-http-configuration>): New data type. (git-http-nginx-location-configuration): New helper function. Signed-off-by: Ludovic Courtès <ludo@gnu.org>