aboutsummaryrefslogtreecommitdiff
path: root/doc
Commit message (Collapse)AuthorAge
...
* doc: cookbook: Link to "A Scheme Primer".Ludovic Courtès2022-07-08
| | | | | * doc/guix-cookbook.texi (A Scheme Crash Course): Link to "A Scheme Primer". Group references in @quotation for clarity.
* doc: cookbook: Suggest 'guix shell'.Ludovic Courtès2022-07-08
| | | | | | * doc/guix-cookbook.texi (A Scheme Crash Course): Suggest 'guix shell' instead of 'guix environment'. (Customizing the Kernel, The benefits of manifests): Likewise.
* doc: Document the documentation process.jgart2022-07-07
| | | | | | | | | | | * doc/contributing.texi (Contributing): Add Writing Documentation section. Co-authored-by: Julien Lepiller <julien@lepiller.eu> Co-authored-by: Matt Trzcinski <matt@excalamus.com> Co-authored-by: Fabio Natali <me@fabionatali.com> Co-authored-by: Gabor Boskovits <boskovits@gmail.com> Co-authored-by: Luis Felipe <luis.felipe.la@protonmail.com> Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
* doc: Document the 'validate-runpath' phase.Ludovic Courtès2022-07-05
| | | | | | | * doc/guix.texi (Build Systems): Replace paragraph about RUNPATH validation with a cross-reference. (Build Phases): Add 'validate-runpath' phase, with the paragraph taken above.
* style: Add option '--list-stylings'.Hartmut Goebel2022-07-04
| | | | | | * guix/scripts/style.scm (show-stylings): New procedure. (%options, show-help): Add "--list-stylings". * doc/guix.texi (Invoking guix style): Document "-l".
* services: Add anonip-service-type.Ricardo Wurmus2022-07-03
| | | | | | | | | | | | * gnu/services/web.scm (anonip-configuration): New record type. (anonip-configuration?, anonip-configuration-anonip, anonip-configuration-input, anonip-configuration-output, anonip-configuration-skip-private?, anonip-configuration-column, anonip-configuration-replacement, anonip-configuration-ipv4mask, anonip-configuration-ipv6mask, anonip-configuration-increment, anonip-configuration-delimiter, anonip-configuration-regex): New procedures. (anonip-service-type): New service type. * doc/guix.texi (Log Rotation): Add subheading for Anonip Service.
* challenge: Do nothing when passed zero arguments.Ludovic Courtès2022-07-03
| | | | | | | | | | Previously, 'guix challenge' without arguments would list live store items that had been locally built. This was deemed confusing, especially since 'list-live' is an expensive operation. * guix/scripts/challenge.scm (guix-challenge): Warn and exit with 0 when FILES is empty. * doc/guix.texi (Invoking guix challenge): Update accordingly.
* services: nginx: Add support for extra content in upstream blocks.Christopher Baines2022-07-01
| | | | | | | | | I'm looking at this as I'd like to use the keepalive functionality. * gnu/services/web.scm (nginx-upstream-configuration-extra-content): New procedure. (emit-nginx-upstream-config): Include the extra-content if applicable. * doc/guix.texi (NGINX): Document this.
* services: guix: Support guix-build-coordinator parallel hooks.Christopher Baines2022-07-01
| | | | | | | | | * gnu/services/guix.scm (guix-build-coordinator-configuration-parallel-hooks): New procedure. (make-guix-build-coordinator-start-script): Accept and use #:parallel-hooks. (guix-build-coordinator-shepherd-services): Pass parallel-hooks to make-guix-build-coordinator-start-script. * doc/guix.texi (Guix Build Coordinator): Document this new field.
* doc: Update "updating substitutes" message.Ludovic Courtès2022-06-26
| | | | | | | This is a followup to 2bf9351e311cce0004756890b93f50693f133bb6. * doc/guix.texi (Invoking guix challenge) (Invoking guix weather): Adjust "updating substitutes" message.
* doc: Mention installation via distro packages.Ludovic Courtès2022-06-24
| | | | | * doc/guix.texi (Binary Installation): In quotation, mention Debian, Ubuntu, and openSUSE.
* services: configuration: Remove 'validate-configuration'.Ludovic Courtès2022-06-24
| | | | | | | | | | | | Now that configuration records use the 'sanitize' property for each field, 'validate-configuration' has become useless because it's impossible to construct an invalid configuration record. * gnu/services/configuration.scm (validate-configuration): Remove. * gnu/services/mail.scm (dovecot-service): Remove call. * gnu/services/vpn.scm (openvpn-client-service) (openvpn-server-service): Likewise. * doc/guix.texi (Complex Configurations): Remove documentation.
* doc: Fix formatting of notes in multiple sections.swedebugia2022-06-24
| | | | | | | | | * doc/guix.texi (Instantiating the system): Add suggestion to keep config.scm under version control. (Printing Services, Messaging Services) (Telephony Services, Invoking guix system): Use "@quotation Note" for notes. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
* doc: Fix typo.Maxim Cournoyer2022-06-23
| | | | * doc/guix.texi (Networking Setup): Fix typo.
* doc: Expound description of the <package> 'arguments' field.Ludovic Courtès2022-06-23
| | | | | * doc/guix.texi (package Reference): Augment description of the 'arguments' field.
* doc: Remove trailing #t in example.Ludovic Courtès2022-06-23
| | | | * doc/guix.texi (Build Phases): Remove trailing #t in example.
* refresh: Repurpose '-L' for '--load-path'.Ludovic Courtès2022-06-22
| | | | | | | | | | | This incompatible change fixes an inconsistency with other commands where '-L' is short for '--load-path'. * guix/scripts/refresh.scm (%options): Add --load-path option from %STANDARD-BUILD-OPTIONS. Remove #\L shortcut for --list-updaters, and remove --load-path option that lacked the #\L shortcut. (show-help): Update accordingly. * doc/guix.texi (Invoking guix refresh): Update accordingly.
* doc: Show (service ...) form in 'home-openssh-service-type' example.Ludovic Courtès2022-06-19
| | | | | * doc/guix.texi (Secure Shell): Include the (service ...) form in the example.
* home: Add OpenSSH service.Ludovic Courtès2022-06-17
| | | | | | | * gnu/home/services/ssh.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * po/guix/POTFILES.in: Add it. * doc/guix.texi (Secure Shell): New section.
* gnu: desktop: Add seatd-service-type.muradm2022-06-17
| | | | | | | * gnu/services/desktop.scm (seatd-service-type): New variable * gnu/services/desktop.scm (seatd-configuration): New data type Signed-off-by: Lars-Dominik Braun <ldb@leibniz-psychology.org>
* gnu: base: Add greetd-service-type.muradm2022-06-17
| | | | | | | | | | | | | * gnu/services/base.scm (greetd-service-type): New variable * gnu/services/base.scm (greetd-configuration): New data type * gnu/services/base.scm (greetd-terminal-configuration): New data type * gnu/services/base.scm (greetd-agreety-session): New data type * gnu/services/base.scm (pam-limits-service-type): Should be aware of greetd PAM service * gnu/services/pam-mount.scm (pam-mount-pam-service): Should be aware of greetd PAM service Signed-off-by: Lars-Dominik Braun <ldb@leibniz-psychology.org>
* doc: Remove obsolete comment from htmlxref.cnf.Maxim Cournoyer2022-06-16
| | | | | | This is follow up to <https://issues.guix.gnu.org/55290>. * doc/htmlxref.cnf (geiser): Delete obsolete comment.
* doc: Use a minimal texlive profile in build.scm.Maxim Cournoyer2022-06-15
| | | | | | * doc/build.scm (pdf-manual) <texinfo-profile>: New variable. <PATH>: Define in terms of the above. <GUIX_TEXMF>: New environment variable.
* doc: Substitute ‘copy’ for confusing ‘drop’.Tobias Geerinckx-Rice2022-06-12
| | | | | | * doc/guix.texi (Build Environment Setup): ‘drop in’ → ‘copy to’. Reported by lechner in #guix.
* import: Add hex.pm importer.Hartmut Goebel2022-06-15
| | | | | | | | | | | | | hex.pm is a package repository for Erlang and Elixir. * guix/scripts/import.scm (importers): Add "hexpm". * guix/scripts/import/hexpm.scm, guix/import/hexpm.scm, guix/hexpm-download.scm: New files. * guix/import/utils.scm (source-spec->object): Add "hexpm-fetch" to list of fetch methods. * guix/upstream.scm (package-update/hexpm-fetch): New function. (%method-updates) Add it. * Makefile.am: Add them.
* build-system: Add 'rebar-build-system'.Hartmut Goebel2022-06-15
| | | | | | * guix/build-system/rebar.scm, guix/build/rebar-build-system.scm: New files. * Makefile.am (MODULES): Add them. * doc/guix.texi (Build Systems): Update rebar-build-system section.
* doc: Follow the 'disabled -> *unspecified* configuration refactor.Attila Lendvai2022-06-15
| | | | | | | | | | | | | | * doc/guix.texi (Networking Services) (Messaging Services) (Telephony Services) (File-Sharing Services) (VPN Services) (Power Management Services) (Complex Configurations) (Desktop Home Services): Remove mentions of the 'disabled symbol or replace them by *unspecified*, depending on context. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* doc: Document how to repair Guix System from a chroot.Maxim Cournoyer2022-06-14
| | | | * doc/guix.texi (System Troubleshooting Tips): New chapter.
* services: dbus: Add a VERBOSE? configuration option.Maxim Cournoyer2022-06-14
| | | | | | | * gnu/services/dbus.scm (<dbus-configuration>)[verbose?]: New field. (dbus-shepherd-service): Use it. (dbus-service)[verbose?]: Add argument and update doc. * doc/guix.texi (Desktop Services): Document it.
* services: guix: Generalize extensions.terramorpha2022-06-13
| | | | | | | | | * gnu/services/base.scm (<guix-extension>): New record type. (guix-extension-merge): New procedure. (guix-service-type): Honor extensions. * doc/guix.texi (Base Services): Document it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* system: Align zram priority with swap-space spec to clarify.Josselin Poiret2022-06-11
| | | | | | | | | | | | | | | | Fixes <https://issues.guix.gnu.org/54783>. * gnu/services/linux.scm (zram-device-configuration) [priority]: Adapt to use #f or an integer from 0 to 32767. Add sanitizer to warn for the change and delay the field. (zram-device-configuration->udev-string): Adapt as above. * doc/guix.texi (Zram Device Service): Remove double copyright line. Change priority description to refer to the Swap Space one, and suggest not leaving the default #f on to properly use zram. Reported-by: Stefan Baums <baums@stefanbaums.com> Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
* services: jami-configuration: Rename 'jamid' field to 'libjami'.Maxim Cournoyer2022-06-10
| | | | | | | | * gnu/services/telephony.scm (gnu): (jami-configuration)[jamid]: Rename field to... [libjami]: ... this. (jami-configuration->command-line-arguments): Adjust accordingly. (jami-shepherd-services): Likewise.
* services: jami: Modernize to adjust to Shepherd 0.9+ changes.Maxim Cournoyer2022-06-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This partially fixes <https://issues.guix.gnu.org/54786>, allowing the 'jami' and 'jami-provisioning' system tests to pass again. In version 0.9.0, Shepherd constructors are now run concurrently, via cooperative scheduling (Guile Fibers). The Jami service previously relied on blocking sleeps while polling for D-Bus services to become ready after forking a process; this wouldn't work anymore since while blocking the service process wouldn't be given the chance to finish starting. The new reliance on Fibers in Shepherd's fork+exec-command in the helper 'send-dbus' procedure also meant that it wouldn't work outside of Shepherd anymore. Finally, the 'start-service' Shepherd procedure used in the test suite would cause the Jami daemon to be spawned multiple times (a bug introduced in Shepherd 0.9.0). To fix/simplify these problems, this change does the following: 1. Use the Guile AC/D-Bus library for D-Bus communication, which simplify things, such as avoiding the need to fork 'dbus-send' processes. 2. The non-blocking 'sleep' version of Fiber is used for the 'with-retries' waiting syntax. 3. A 'dbus' package variant is used to adjust the session bus configuration, tailoring it for the use case at hand. 4. Avoid start-service in the tests, preferring 'jami-service-available?' for now. * gnu/build/jami-service.scm (parse-dbus-reply, strip-quotes) (deserialize-item, serialize-boolean, dbus-dict->alist) (dbus-array->list, parse-account-ids, parse-account-details) (parse-contacts): Delete procedures. (%send-dbus-binary, %send-dbus-bus, %send-dbus-user, %send-dbus-group) (%send-dbus-debug): Delete parameters. (jami-service-running?): New procedure. (send-dbus/configuration-manager): Rename to... (call-configuration-manager-method): ... this. Turn METHOD into a positional argument. Turn ARGUMENTS into an optional argument. Invoke `call-dbus-method' instead of `send-dbus', adjusting callers accordingly. (get-account-ids, id->account-details, id->account-details) (id->volatile-account-details, username->id, add-account remove-account) (username->contacts, remove-contact, add-contact, set-account-details) (set-all-moderators, username->all-moderators?, username->moderators) (set-moderator): Adjust accordingly. (with-retries, send-dbus, dbus-available-services) (dbus-service-available?): Move to ... * gnu/build/dbus-service.scm: ... this new module. (send-dbus): Rewrite to use the Guile AC/D-Bus library. (%dbus-query-timeout, sleep*): New variables. (%current-dbus-connection): New parameter. (initialize-dbus-connection!, argument->signature-type) (call-dbus-method): New procedures. (dbus-available-services): Adjust accordingly. * gnu/local.mk (GNU_SYSTEM_MODULES): Register new module. * gnu/packages/glib.scm (dbus-for-jami): New variable. * gnu/services/telephony.scm: (jami-configuration)[dbus]: Default to dbus-for-jami. (jami-dbus-session-activation): Write a D-Bus daemon configuration file at '/var/run/jami/session-local.conf'. (jami-shepherd-services): Add the closure of guile-ac-d-bus and guile-fibers as extensions. Adjust imported modules. Remove no longer used parameters. <jami-dbus-session>: Use a PID file, avoiding the need for the manual synchronization. <jami>: Set DBUS_SESSION_BUS_ADDRESS environment variable. Poll using 'jami-service-available?' instead of 'dbus-service-available?'. * gnu/tests/telephony.scm (run-jami-test): Add needed Guile extensions. Set DBUS_SESSION_BUS_ADDRESS environment variable. Adjust all tests to use 'jami-service-available?' to determine if the service is started rather than the now problematic Shepherd's 'start-service'.
* doc: Update example of a minimalistic home environment.Andrew Tropin2022-06-10
| | | | | | | * doc/he-config-bare-bones.scm: Adujst example according to changes in bash-service-type and home-files-service-type. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* doc: Expand ‘setuid-root’-only references.Tobias Geerinckx-Rice2022-06-05
| | | | | * doc/guix.texi (Setuid Programs, Service Reference): Don't assume setuid-root as the only possibility.
* doc: Remove left-over MIPS.Tobias Geerinckx-Rice2022-06-05
| | | | * doc/guix.texi (Additional Build Options): Substitute aarch64 for MIPS.
* bootloader: grub: Add removable grub-efi bootloader option.Karl Hallsby2022-06-06
| | | | | | | | | | | | | | | | | For single-disk installs (external USBs) and for amnesiac UEFIs, Guix is not found using its default Grub EFI bootloader location of /boot/efi/EFI/Guix/grubx64.efi means the Guix install will not be found. To handle this, we can place the bootloader file in the UEFI specification location, overwriting any other OS that may have placed a file there. This location is namely /boot/efi/EFI/BOOT/BOOTX64.efi. Grub has explicit support for this location/situation with the `--removable` flag. * gnu/bootloader/grub.scm (install-grub-efi-removable) (grub-efi-removable-bootloader): New variables. * doc/guix.texi (Bootloader Configuration): Document it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* doc: Use new-style command substitution.zimoun2022-06-05
| | | | | | | | | Follow up of beaf701d65e9f94d0539e705d6f58a65313c5655. * doc/guix.texi: Replace the shell old-style command substitution with the new-style one. Signed-off-by: Julien Lepiller <julien@lepiller.eu>
* guix home: Add 'edit' sub-command.Ludovic Courtès2022-06-04
| | | | | | | | | | * guix/scripts/home/edit.scm: New file. * Makefile.am (MODULES): Add it. * guix/scripts/home.scm (show-help): Add "edit". (process-command): Handle it. (guix-home): Add it. * po/guix/POTFILES.in: Add 'guix/scripts/home/edit.scm'. * doc/guix.texi (Invoking guix home): Document it.
* guix system: Add 'edit' sub-command.Ludovic Courtès2022-06-04
| | | | | | | | | | * guix/scripts/system/edit.scm: New file. * Makefile.am (MODULES): Add it. * guix/scripts/system.scm (show-help): Mention "edit". (actions): Add it. (process-command): Handle it. * doc/guix.texi (Invoking guix system): Document it. * po/guix/POTFILES.in: Add guix/scripts/system/edit.scm.
* doc: Capitalize and tweak cross-compilation-related node names.Ludovic Courtès2022-06-04
| | | | | | | * doc/guix.texi (Using cross-compilation): Rename to... (Cross-Compilation): ... this. (Using native builds): Rename to... (Native Builds): ... this. Adjust menus accordingly.
* doc: cookbook: Refer to the "Writing Manifests" manual node.Ludovic Courtès2022-06-01
| | | | | | * doc/guix-cookbook.texi (Basic setup with manifests): Tweak introductory paragraph. Refer to the new "Writing Manifests" node of the manual.
* gnu: Remove wicd.Maxim Cournoyer2022-05-31
| | | | | | | | | | | | | | | The last release is from 2017, stuck on Python 2. * gnu/packages/wicd.scm: Delete file. * gnu/packages/patches/wicd-bitrate-none-fix.patch: Delete file. * gnu/packages/patches/wicd-get-selected-profile-fix.patch: Likewise. * gnu/packages/patches/wicd-urwid-1.3.patch: Likewise. * gnu/packages/patches/wicd-wpa2-ttls.patch: Likewise. * gnu/local.mk: De-register them. * gnu/services/networking.scm: Remove wicd service... * doc/guix.texi: ... and its documentation. * gnu/system/linux-container.scm (containerized-operating-system) <services-to-drop>: Remove wicd-service-type.
* doc: Fix typos.Tobias Geerinckx-Rice2022-05-22
| | | | | | | * doc/guix.texi (Guix Services): Fix ‘coresponding’ typo. (Using cross-compilation): Fix ‘mecanism’ typo. (Desktop Services): Fix ‘superceeded’ typo. * doc/contributing.texi (Translating Guix): Fix ‘everytime’ typo.
* platforms: Remove the s390x platform.Mathieu Othacehe2022-05-25
| | | | | | | | | Turns out this platform doesn't have a bootstrap tarball and should be considered as not supported for now. * guix/platforms/s390.scm: Remove it. * Makefile.am (MODULES): Adapt it. * doc/guix.texi (Foreign Architectures): Ditto.
* gnu: guix-build-coordinator: Update to 0-53.3de63f1.Christopher Baines2022-05-25
| | | | | | | | | | * gnu/packages/package-management.scm (guix-build-coordinator): Update to 0-53.3de63f1. * gnu/services/guix.scm (guix-build-coordinator-queue-builds-configuration-guix-data-service-build-server-id): New procedure. (guix-build-coordinator-queue-builds-shepherd-services): Use the guix-data-service-build-server-id. * doc/guix.texi (Guix Build Coordinator): Document the new queue builds configuration field.
* doc: Improve the Foreign Architectures section.Mathieu Othacehe2022-05-25
| | | | | * doc/guix.texi (Foreign Architectures): Capitalize the chapter title, remove most of "GNU Guix" occurences and other small improvements.
* Move (gnu platform) and (gnu platforms ...) to guix/.Josselin Poiret2022-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/platform.scm: * gnu/platforms/arm.scm: * gnu/platforms/hurd.scm: * gnu/platforms/mips.scm: * gnu/platforms/powerpc.scm: * gnu/platforms/riscv.scm: * gnu/platforms/s390.scm: * gnu/platforms/x86.scm: Move to guix/. * Makefile.am: * doc/guix.texi (Porting to a New Platform): * etc/release-manifest.scm: * gnu/ci.scm: * gnu/image.scm: * gnu/local.mk: * gnu/packages/bioinformatics.scm: * gnu/packages/bootstrap.scm: * gnu/packages/cross-base.scm: * gnu/packages/instrumentation.scm: * gnu/packages/linux.scm: * gnu/system/image.scm: * gnu/system/images/hurd.scm: * gnu/system/images/novena.scm: * gnu/system/images/pine64.scm: * gnu/system/images/pinebook-pro.scm: * gnu/system/images/rock64.scm: * guix/scripts/build.scm: * guix/scripts/system.scm: * guix/self.scm: Update (gnu platform...) to (guix platform...). Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* doc: Add a 'Foreign architectures' chapter.Mathieu Othacehe2022-05-22
| | | | * doc/guix.texi ("Foreign architectures"): New chapter.
* linux: Remove system->linux-architecture procedure.Mathieu Othacehe2022-05-22
| | | | | | | | | | * gnu/packages/linux.scm (system->linux-architecture): Remove it. (make-linux-libre-headers*, make-linux-libre*): Adapt them. * guix/build-system/linux-module.scm (system->arch): Adapt it. * gnu/packages/instrumentation.scm (uftrace): Ditto. * gnu/packages/cross-base.scm (cross-kernel-headers): Ditto. * gnu/packages/bioinformatics.scm (ncbi-vdb): Ditto. * doc/guix.texi (Porting to a new platform): Update it.