summaryrefslogtreecommitdiff
path: root/doc
Commit message (Collapse)AuthorAge
* scripts: system: Add support for image-type.Mathieu Othacehe2020-09-30
| | | | | | | | | | | | | | | | | | | * guix/scripts/system.scm (list-image-types): New procedure, (%options): add "image-type" and "list-image-types" options, remove "file-system-type" option, (show-help): adapt accordingly, (%default-options): also adapt, and set the default "image-type" to "raw", (perform-action): add image-type argument and remove file-system-type argument, (process-action): adapt perform-action call, (system-derivation-for-action): remove base-image argument, add image-type argument, and use it to create the image passed to "system-image". * tests/guix-system.sh: Adapt accordingly and add a test for "--list-image-types" command. * doc/guix.texi (Building the Installation Image, Invoking guix system): Adapt accordingly. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* services: hurd-vm: Initialize the guest's SSH/Guix keys at activation time.Ludovic Courtès2020-09-29
| | | | | | | | | | * gnu/services/virtualization.scm (initialize-hurd-vm-substitutes) (hurd-vm-activation): New procedures. (hurd-vm-service-type)[extensions]: Add ACTIVATION-SERVICE-TYPE extension. * doc/guix.texi (Transparent Emulation with QEMU): Mention GNU/Hurd. (The Hurd in a Virtual Machine): Explain which files are automatically installed and mention offloading.
* services: guix: Generate key pair if needed during activation.Ludovic Courtès2020-09-29
| | | | | | | | * gnu/services/base.scm (guix-activation): Invoke "guix archive --generate-key". * doc/guix.texi (Invoking guix archive) (Invoking guix deploy): Mention that 'guix-service-type' takes care of generating the key pair.
* services: Add elogind ‘handle-lid-switch-external-power’.Tobias Geerinckx-Rice2020-09-28
| | | | | | | * gnu/services/desktop.scm <elogind-configuration>: Add an handle-lid-switch-external-power field, mapping to the HandleLidSwitchExternalPower logind.conf setting. * doc/guix.texi (Desktop Services): ‘Document’ it.
* doc: Clarify how to choose a user account shell.Ludovic Courtès2020-09-28
| | | | | * doc/guix.texi (User Accounts): Add example with custom shell and custom home directory. Add examples of shell gexps.
* doc: Move channel @cindex within their nodes.Ludovic Courtès2020-09-27
| | | | | * doc/guix.texi (Channels): Move @cindex at the beginning of the node they refer to from the end of the previous node.
* doc: Move "Primary URL" after "Specifying Channel Authorizations".Ludovic Courtès2020-09-27
| | | | | | * doc/guix.texi (Primary URL): Move after "Specifying Channel Authorizations" since the audience is channel authors who've already taken care of authorizations.
* doc: Promote "Channels" as chapter and reorder.zimoun2020-09-27
| | | | | | | | | | | | | | | | | | | | | | The sectioning becomes: 1. Specifying Additional Channels (was 3.) 2. Using a Custom Guix Channel (was 2.) 3. Replicating Guix (was 9.) 4. Channel Authentication (was 1.) 5. Primary URL (was 7.) 6. Creating a Channel (reworded) 7. Package Modules in a Sub-directory (was 5.) 8. Declaring Channel Dependencies (was 4.) 9. Specifying Channel Authorizations (was 6.) 10. Writing Channel News (was 8.) * doc/guix.texi (Channels): Move section to chapter. Reorder the chapter. Minor tweaks to keep uniformity. Update the master menu. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* doc: Update the master menu.zimoun2020-09-27
| | | | | | * doc/guix.texi: Update the master menu. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* packages: 'package-input-rewriting' has a #:deep? parameter.Ludovic Courtès2020-09-27
| | | | | | | | | | | | | * guix/packages.scm (package-input-rewriting): Add #:deep? and pass it to 'package-mapping'. [replacement-property]: New variable. [rewrite]: Check it. [cut?]: New procedure. * tests/packages.scm ("package-input-rewriting"): Pass #:deep? #f and ensure implicit inputs were not rewritten. Avoid 'eq?' comparisons. ("package-input-rewriting, deep"): New test. * gnu/packages/guile.scm (package-for-guile-2.0, package-for-guile-3.0): Pass #:deep? #f.
* packages: 'package-input-rewriting/spec' can rewrite implicit dependencies.Ludovic Courtès2020-09-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With this change, '--with-input', '--with-graft', etc. also apply to implicit dependencies. Thus, it's now possible to do: guix build python-itsdangerous --with-input=python-wrapper=python@2 or: guix build hello --with-graft=glibc=glibc@2.29 Additionally, before, implicit inputs were not rewritten, which could lead to duplicates in the output of 'bag-transitive-inputs' (packages that are not 'eq?' but lead to the same derivation). This in turn would lead to unnecessary rebuilds when using '--with-input' & co. This change fixes it by ensuring even implicit inputs are rewritten. Fixes <https://bugs.gnu.org/42156>. * guix/packages.scm (package-input-rewriting/spec): Add #:deep? defaulting to #true, and pass it to 'package-mapping'. [replacement-property]: New variable. [rewrite]: Check that property and set it on the result of PROC. [cut?]: New procedure. * tests/packages.scm ("package-input-rewriting/spec"): Ensure implicit inputs were unchanged. ("package-input-rewriting/spec, partial match"): Pass #:deep? #f. ("package-input-rewriting/spec, deep") ("package-input-rewriting/spec, no duplicates"): New tests. (package/inherit): Move before use. * tests/guix-build.sh: Add tests. * tests/scripts-build.scm ("options->transformation, with-graft"): Compare dependencies by package name or derivation file name. * doc/guix.texi (Defining Packages): Adjust accordingly.
* packages: 'package-mapping' can recurse on implicit inputs.Ludovic Courtès2020-09-27
| | | | | | | | * guix/packages.scm (build-system-with-package-mapping): New procedure. (package-mapping): Add #:deep? and honor it. * tests/packages.scm ("package-mapping"): Compare the direct inputs of the bag of P0 and that of P1. ("package-mapping, deep"): New test.
* guix build: Add '--without-tests'.Ludovic Courtès2020-09-27
| | | | | | | | | * guix/scripts/build.scm (transform-package-tests): New procedure. (%transformations, %transformation-options) show-transformation-options-help): Add it. * tests/scripts-build.scm ("options->transformation, without-tests"): New test. * doc/guix.texi (Package Transformation Options): Document it.
* doc: Document new bootloader grub-efi-netboot-bootloader.Stefan2020-09-27
| | | | | | | | * doc/guix.texi (Bootloader Configuration)[bootloader]: Add grub-efi-netboot-bootloader. [target]: Document TFTP root directory for grub-efi-netboot-bootloader. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
* doc: Use @var for meta-syntactic variables.Ludovic Courtès2020-09-25
| | | | | * doc/guix.texi (Transparent Emulation with QEMU): Use @var instead of angle brackets for meta-syntactic variables.
* doc: Remove "--hda" from non-volatile childhurd example.Ludovic Courtès2020-09-25
| | | | | | | Reported by Andreas Enge. * doc/guix.texi (Transparent Emulation with QEMU): Remove "--hda" in 'image' example.
* doc: Explain how to connect to a childhurd.Ludovic Courtès2020-09-25
| | | | | * doc/guix.texi (The Hurd in a Virtual Machine): Add instructions for VNC and SSH access. Mention childhurd secrets and /etc/childhurd.
* doc: Fix outdated info and add missing space.André Batista2020-09-25
| | | | | | | * doc/guix.texi (Messaging Services): Fix outdated info and add missing space. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* services: WPA Supplicant: Conditionally depend on D-Bus.Marius Bakke2020-09-24
| | | | | | | | | | | Fixes <https://bugs.gnu.org/43567>. Reported by calcium <calcium@disroot.org>. * gnu/services/networking.scm (<wpa-supplicant-configuration>)[requirement]: Remove 'dbus-system. (wpa-supplicant-shepherd-service)[requirement]: Add 'dbus-system when DBUS? is true. * doc/guix.texi (Networking Services)[wpa-supplicant-service-type]: Adjust accordingly.
* services: cuirass: Add web SQL queries logging support.Mathieu Othacehe2020-09-24
| | | | | | | | * gnu/services/cuirass.scm (<cuirass-configuration>)[web-queries-log-file]: New field. (cuirass-shepherd-service): Honor it. (cuirass-log-rotations): If defined, add the web queries log file to the log rotation.
* services: cuirass: Add SQL queries logging support.Mathieu Othacehe2020-09-24
| | | | | | | | * gnu/services/cuirass.scm (<cuirass-configuration>)[queries-log-file]: New field. (cuirass-shepherd-service): Honor it. (cuirass-log-rotations): If defined, add the queries log file to the log rotation.
* environment: '--link-profile' uses ~/.guix-profile for environment variables.Ludovic Courtès2020-09-21
| | | | | | | | | | | | | | | | | | | | | | | | Before this patch, we had: $ guix environment -CP --ad-hoc coreutils [env]$ echo $PATH /gnu/store/…-profile/bin [env]$ echo $GUIX_ENVIRONMENT /gnu/store/…-profile After this patch: $ guix environment -CP --ad-hoc coreutils [env]$ echo $PATH /home/ludo/.guix-profile/bin [env]$ echo $GUIX_ENVIRONMENT /home/ludo/.guix-profile * guix/scripts/environment.scm (launch-environment/container): When LINK-PROFILE? is true, pass ~/.guix-profile as the second argument to 'launch-environment'. * tests/guix-environment-container.sh: Adjust test accordingly. * doc/guix.texi (Invoking guix environment): Update accordingly.
* doc: Fix broken hyperlinks in the contribution instructions.Greg Hogan2020-09-18
| | | | | * doc/contributing.texi (Packaging Guidelines, Submitting Patches): Change URLs from relative to absolute links.
* doc: Clarify what propagated inputs are.Florian Pelz2020-09-18
| | | | | | Fixes <https://bugs.gnu.org/26170>. * doc/guix.texi (package Reference)[package-propagated-inputs]: Clarify.
* services: docker: Fix service definition.Oleg Pykhalov2020-09-15
| | | | | | | | | This commit follows a404716d411cf7cd49ff02e3100f0bbf6622d6d5. * gnu/services/docker.scm (docker-configuration)[docker-cli]: New record field. (docker-service-type): Use this. * doc/guix.texi (Miscellaneous Services)[Docker Service]: Document this.
* doc: Fix docker configuration options.Efraim Flashner2020-09-14
| | | | * doc/guix.texi (Docker Service): Fix typo in enable-proxy? default.
* services: certbot: Support registration without email.Timotej Lazar2020-09-13
| | | | | | | | | * gnu/services/certbot.scm (certbot-configuration): Add default for the email option. (certbot-command): Pass email for registration only when specified. * doc/guix.texi (Certificate Services): "mandatory"→"optional" email. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* doc: Document the use of snippets vs phases.Maxim Cournoyer2020-09-12
| | | | * doc/contributing.texi (Snippets versus phases): New section.
* Revert "services: dovecot: Use modules via symlink to system profile."Tobias Geerinckx-Rice2020-09-11
| | | | | | | | | This reverts commit bcfe0f0c1e9a2b91049d7c6c591c7f0c6a002c14 for now. It breaks most current use(r)s of the Dovecot service and needs to be combined with an extra modules configuration field of some kind. See <https://issues.guix.gnu.org/43347>.
* doc: Distinguish the "nar bundle" format from "nar".Ludovic Courtès2020-09-11
| | | | | | | * doc/guix.texi (Invoking guix archive): Introduce the term "nar bundle" and clarify what the output of "guix archive --export" really is. * guix/nar.scm (restore-one-item, restore-file-set): Use the term "nar bundle" in docstrings.
* services: php-fpm: Add 'php-ini-file' configuration.Jelle Licht2020-09-10
| | | | | | * gnu/services/web.scm: (<php-fpm-configuration>)[php-ini-file]: New record field. (php-fpm-shepherd-service): Use it. * doc/guix.texi (Web Services): Document it.
* services: dovecot: Use modules via symlink to system profile.Alexey Abramov2020-09-09
| | | | | | | | * gnu/services/mail.scm (%dovecot-activation): Link the location with multiple plugins (dovecot-pigeonhole, etc), to a place where dovecot can find them. * gnu/services/mail.scm (dovecot-configuration): Use the symlink. Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
* doc: cookbook: Adding a section "Running Guix on a Linode Server"Joshua Branson2020-09-09
| | | | | | | | * doc/guix-cookbook.texi (Running Guix on a Linode Server): I added a section that explains how to run guix on a linode server. Thanks Chris Webber! Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* doc: Tweak .texi to avoid po4a-translate infinite loop.Ludovic Courtès2020-09-08
| | | | | * doc/guix.texi (Requirements): Keep @uref on one line as splitting it would lead po4a-translate to enter an infinite loop.
* Remove (guix json) and require Guile-JSON 4.3.0+.Ludovic Courtès2020-09-08
| | | | | | | | | | | | | | This is a followup to 4071879c86d059ee087c8986915ea72b8c742b72. * guix/json.scm: Remove. * Makefile.am (MODULES): Adjust accordingly. * m4/guix.m4 (GUIX_CHECK_GUILE_JSON): Check for 'define-json-mapping'. * doc/guix.texi (Requirements): Require Guile-JSON 4.3.0+. * guix/ci.scm, guix/cve.scm, guix/import/cpan.scm, guix/import/crate.scm, guix/swh.scm: Remove (guix json) import. * guix/import/gem.scm, guix/import/pypi.scm: Likewise, and import (json). * guix/self.scm (specification->package): Switch to GUILE-JSON-4. * guix/git-download.scm (git-fetch): Likewise.
* doc: Document 'file-system-label' and 'uuid'.Ludovic Courtès2020-09-04
| | | | * doc/guix.texi (File Systems): Document 'file-system-label' and 'uuid'.
* doc: Syntax highlighting now handles @var within @lisp.Ludovic Courtès2020-09-04
| | | | | * doc/build.scm (syntax-highlighted-html)[build](concatenate-pieces): Handle @var{name}.
* doc: Balance parens in R Shiny example.Ludovic Courtès2020-09-04
| | | | | * doc/guix.texi (Miscellaneous Services): Balance parens in R Shiny example.
* doc: Add "Getting Started" section.Ludovic Courtès2020-09-03
| | | | | | | * doc/guix.texi (Getting Started): New node. (Binary Installation): Refer to it and to "Application Setup". (After System Installation): Refer to "Getting Started". (Features): Add introductory sentence.
* services: childhurd: Support installing secrets from the host.Jan (janneke) Nieuwenhuizen2020-09-01
| | | | | | | * gnu/services/virtualization.scm (%hurd-vm-operating-system): Add secret-service. (hurd-vm-shepherd-service): Use it to install secrets. * doc/guix.texi (The Hurd in a Virtual Machine): Document it.
* gexp: computed-file: Prevent mistakenly overriding default option values.Maxim Cournoyer2020-09-01
| | | | | | | | | | | | | In order to do so, default to an empty options list, and expose options whose default values are sensitive directly as keyword arguments. * guix/gexp.scm (computed-file): Extract the LOCAL-BUILD? parameter from the OPTIONS parameter to make it a stand-alone keyword argument. Introduce an OPTIONS* binding which is obtained by combining the LOCAL-BUILD? keyword and its value with OPTIONS. * doc/guix.texi (G-Expressions): Adjust doc. Suggested-by: Ludovic Courtès <ludo@gnu.org>
* guix: system: Add `--label' option.Julien Lepiller2020-08-31
| | | | | | | | | * guix/scripts/system.scm (%options): Add `--label'. (system-derivation-for-action): Take a #:label key to set volume ID. (perform-action): Take a #:label key. (%default-options): Add default label value. (process-action): Pass label value from command-line to perform-action. * gnu/system/image.scm (image-with-label): New procedure.
* doc: Document the 'description' and 'default-value' of <service-type>.Ludovic Courtès2020-08-28
| | | | | * doc/guix.texi (Service Reference): Document the 'description' and 'default-value' fields of <service-type>.
* doc: Improve the instructions regarding `guix git authenticate`.Joshua Branson2020-08-27
| | | | | | | * doc/contributing.texi (Building from Git): Instruct the user to fetch the 'keyring' branch. Fix a typo. Signed-off-by: Leo Famulari <leo@famulari.name>
* offload: Modify the build-machine record to accept multiple systems.Maxim Cournoyer2020-08-25
| | | | | | | | | | | | | * guix/scripts/offload.scm (<build-machine>)[systems]: New field. [system]: Accessor changed to %build-machine-system. Default to #f. * guix/scripts/offload.scm (build-machine-system): Wrap %build-machine-system with a deprecation warning. (build-machine-systems): Access the new systems field or fallback to use build-machine-system, for backward compatibility. (machine-matches?): Adjust. * tests/offload.scm: Add tests... * Makefile.am (SCM_TESTS): ...and register them. * doc/guix.texi (Daemon Offload Setup): Update doc.
* doc: Fix typo.Tobias Geerinckx-Rice2020-08-25
| | | | * doc/guix.texi (Virtualization Services): Fix typo.
* services: unattended-upgrade: Add 'operating-system-file' field.Ludovic Courtès2020-08-24
| | | | | | | * gnu/services/admin.scm (<unattended-upgrade-configuration>)[operating-system-file]: New field. (unattended-upgrade-mcron-jobs): Honor it. * doc/guix.texi (Unattended Upgrades): Document it.
* Use "guile-zlib" and "guile-lzlib" instead of (guix config).Mathieu Othacehe2020-08-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Makefile.am (MODULES): Remove guix/zlib.scm and guix/lzlib.scm, (SCM_TESTS): remove tests/zlib.scm, tests/lzlib.scm. * build-aux/build-self.scm (make-config.scm): Remove unused %libz variable. * configure.ac: Remove LIBZ and LIBLZ variables and check instead for Guile-zlib and Guile-lzlib. * doc/guix.texi ("Requirements"): Remove zlib requirement and add Guile-zlib and Guile-lzlib instead. * gnu/packages/package-management.scm (guix)[native-inputs]: Add "guile-zlib" and "guile-lzlib", [inputs]: remove "zlib" and "lzlib", [propagated-inputs]: ditto, [arguments]: add "guile-zlib" and "guile-lzlib" to Guile load path. * guix/config.scm.in (%libz, %liblz): Remove them. * guix/lzlib.scm: Remove it. * guix/man-db.scm: Use (zlib) instead of (guix zlib). * guix/profiles.scm (manual-database): Do not stub (guix config) in imported modules list, instead add "guile-zlib" to the extension list. * guix/scripts/publish.scm: Use (zlib) instead of (guix zlib) and (lzlib) instead of (guix lzlib), (string->compression-type, effective-compression): do not check for zlib and lzlib availability. * guix/scripts/substitute.scm (%compression-methods): Do not check for lzlib availability. * guix/self.scm (specification->package): Add "guile-zlib" and "guile-lzlib" and remove "zlib" and "lzlib", (compiled-guix): remove "zlib" and "lzlib" arguments and add guile-zlib and guile-lzlib to the dependencies, also do not pass "zlib" and "lzlib" to "make-config.scm" procedure, (make-config.scm): remove "zlib" and "lzlib" arguments as well as %libz and %liblz variables. * guix/utils.scm (lzip-port): Use (lzlib) instead of (guix lzlib) and do not check for lzlib availability. * guix/zlib.scm: Remove it. * m4/guix.m4 (GUIX_LIBZ_LIBDIR, GUIX_LIBLZ_FILE_NAME): Remove them. * tests/lzlib.scm: Use (zlib) instead of (guix zlib) and (lzlib) instead of (guix lzlib), and do not check for zlib and lzlib availability. * tests/publish.scm: Ditto. * tests/substitute.scm: Do not check for lzlib availability. * tests/utils.scm: Ditto. * tests/zlib.scm: Remove it.
* doc: cookbook: Add chapter about Guix environment.Oleg Pykhalov2020-08-23
| | | | * doc/guix-cookbook.texi (Environment management): New chapter.
* doc: Fix a typo in the AutoSSH service documentation.Maxim Cournoyer2020-08-17
| | | | * doc/guix.texi (Networking Services)[autossh-configuration]: Fix typo.