aboutsummaryrefslogtreecommitdiff
path: root/doc
Commit message (Collapse)AuthorAge
* services: hurd-vm: Implement zero-configuration offloading.Ludovic Courtès2023-10-01
| | | | | | | | | | | | | | | | | | | This allows for zero-configuration offloading to a childhurd. * gnu/services/virtualization.scm (operating-system-with-offloading-account): New procedure. (<hurd-vm-configuration>)[offloading?]: New field. (hurd-vm-disk-image): Define ‘transform’ and use it. (hurd-vm-activation): Generate SSH key for user ‘offloading’ and add authorize it via /etc/childhurd/etc/ssh/authorized_keys.d. (hurd-vm-configuration-offloading-ssh-key) (hurd-vm-guix-extension): New procedures. (hurd-vm-service-type): Add GUIX-SERVICE-TYPE extension. * gnu/tests/virtualization.scm (run-childhurd-test)[import-module?]: New procedure. [os]: Add (gnu build install) and its closure to #:import-modules. [test]: Add “copy-on-write store” and “offloading” tests. * doc/guix.texi (Virtualization Services): Document it.
* doc: Give an example showing how to add an account in the childhurd.Ludovic Courtès2023-10-01
| | | | | * doc/guix.texi (Virtualization Services): Give an example showing how to add an account.
* services: hurd-vm: Disable password-based authentication for root.Ludovic Courtès2023-10-01
| | | | | | | | | | | | | | With offloading to a childhurd is enabled, allowing password-less root login in the childhurd to anyone amounts to providing write access to the host’s store to anyone. Thus, disable password-based root logins in the childhurd. * gnu/services/virtualization.scm (%hurd-vm-operating-system): Change ‘permit-root-login’ to 'prohibit-password. * gnu/tests/virtualization.scm (%childhurd-os): Provide a custom ‘os’ field for ‘hurd-vm-configuration’. * doc/guix.texi (Virtualization Services): Remove mention of password-less root login.
* services: hurd-vm: ‘image’ field has to be an <image> record.Ludovic Courtès2023-10-01
| | | | | | | | | | * gnu/services/virtualization.scm (<hurd-vm-configuration>)[image]: Document as being an <image> record. (hurd-vm-disk-image): Remove call to ‘system-image’. (hurd-vm-shepherd-service): Add call to ‘system-image’. * gnu/tests/virtualization.scm (hurd-vm-disk-image-raw): Remove call to ‘system-image’. * doc/guix.texi (Virtualization Services): Adjust accordingly.
* services: guix: Support declarative offloading setup.Ludovic Courtès2023-10-01
| | | | | | | | | | | | | | | * gnu/services/base.scm (guix-machines-files-installation): New procedure. (<guix-configuration>)[build-machines]: New field. (guix-activation): Call ‘ guix-machines-files-installation’. (<guix-extension>)[build-machines]: New field. (guix-extension-merge): Handle it. (guix-service-type)[extend]: Likewise. * doc/guix.texi (Daemon Offload Setup): Add note linking to ‘guix-configuration’. (Base Services): Document ‘build-machines’ field of <guix-configuration> and of <guix-extension>. (Virtualization Services): Add ‘hurd-vm’ anchor.
* doc: Update bug-reference configuration snippet.Maxim Cournoyer2023-09-26
| | | | | | | | | * doc/contributing.texi (The Perfect Setup) <Viewing Bugs within Emacs>: Properly quote Elisp functions. Add 'require' directives. Set BUG-REFERENCE-URL-FORMAT so the configuration is self-contained. Suggested-by: Mekeor Melire <mekeor@posteo.de>
* build: Add dependency on Git.Ludovic Courtès2023-09-26
| | | | | | | | | * configure.ac: Check for ‘git’ and substitute ‘GIT’. * guix/config.scm.in (%git): New variable. * guix/self.scm (compiled-guix): Define ‘git’ and pass it to ‘make-config.scm’. (make-config.scm): Add #:git; emit a ‘%git’ variable. * doc/guix.texi (Requirements): Add it.
* doc: Add new 'Circular Module Dependencies' section.Maxim Cournoyer2023-09-25
| | | | | | | | | | | | | | | * doc/contributing.texi (Circular Module Dependencies): New subsection. Series-version: 2 Series-to: 65860@debbugs.gnu.org Patch-cc: mhw@netris.org Cover-letter: Resolve a circular module dependencies in embedded modules This series is the culmination of at least a day of effort tracking down the source of a module dependency cycle (!). The last commit adds some guidelines in the hope to avoid a repeat (perhaps 'lint' could be taught to automate these checks). END
* Merge branch 'master' into emacs-teamLiliana Marie Prikler2023-09-22
|\
| * doc: contributing: Clarify generating the pre-inst-env script.Efraim Flashner2023-09-22
| | | | | | | | | | | | | | | | Lack of clarity reported by lrustland on IRC. * doc/contributing.texi (Running Guix Before It Is Installed): Refer to the Building from Git section when giving instructions for generating the pre-inst-env script.
| * image: Introduce the mbr-hybrid-raw image type.Mathieu Othacehe2023-09-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Until 209204e23b39af09e0ea92540b6fa00a60e6a0ae and d57cab764122af69d52d8cc9c843456044e5d7bc, the default image type used by "guix system image" was an MBR image with an ESP partition. Having both an MBR image and an ESP partition is handy because the image will boot on most x86 based systems using legacy BIOS and/or UEFI. We now have a distinction between MBR images and EFI images. Introduce a new MBR hybrid image type and default to it to restore the default behaviour. This also fixes the images section of (gnu ci) that was trying to install a BIOS bootloader on an EFI, GPT image and failing to do so. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
| * doc: Fix typo.Ludovic Courtès2023-09-18
| | | | | | | | | | * doc/guix.texi (Specifying Channel Authorizations): Remove extra hyphen.
| * maint: Support `guix shell' in Guix's git archive with manifest.scm.Janneke Nieuwenhuizen2023-09-18
| | | | | | | | | | | | * manifest.scm: New file. * Makefile.am (EXTRA_DIST): Add it. * doc/contributing.texi (Building from Git): Mention using it.
| * .dir-locals.el: Update bug-reference configuration and document it.Maxim Cournoyer2023-09-17
| | | | | | | | | | | | | | | | (nil) <bug-reference-url-format>: Update URL. Add comment. * doc/contributing.texi (The Perfect Setup): New "Viewing bugs within Emacs" subsection. Co-authored-by: Brian Cully <bjc@spork.org>
| * services: dhcp-client-configuration: Allow provision override.Alexey Abramov2023-09-17
| | | | | | | | | | | | | | | | | | * gnu/services/networking.scm (<dhcp-client-configuration>)[shepherd-provision]: New field. (dhcp-client-shepherd-service): Honor it. * doc/guix.texi (Networking Setup): Document it. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| * services: guix: Add bffe-service-type.Christopher Baines2023-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is intended to replace the functionality of the Guix Build Coordinator queue builds script, and also provide a web interface for build farms. * gnu/services/guix.scm (<bffe-configuration>): New record type. (bffe-configuration, bffe-configuration?, bffe-configuration-package, bffe-configuration-user, bffe-configuration-group, bffe-configuration-arguments bffe-configuration-extra-environment-variables): New procedures. (bffe-service-type): New variable. * gnu/tests/guix.scm (%test-bffe): New variable. * doc/guix.texi (Guix Services): Document the new service.
| * doc: Make “crash course” xref more visible.Ludovic Courtès2023-09-14
| | | | | | | | | | * doc/guix.texi (Using the Configuration System): Move the “Do not panic” note right after the first example. Clarify wording.
* | Merge branch 'master' into emacs-teamLiliana Marie Prikler2023-09-09
|\|
| * .dir-locals: Streamline Geiser configuration.Maxim Cournoyer2023-09-06
| | | | | | | | | | | | | | | | | | | | | | | | | | Geiser now has support locating the project root and adding it to the load path without external help; leverage it. * .dir-locals.el [nil]: Remove obsolete Geiser configuration. Set the geiser-repl-per-project-p variable to t. * doc/contributing.texi (The Perfect Setup): No longer mention explicitly setting the geiser-guile-load-path; instead mention the effect of the .dir-locals.el file. Reported-by: Wolf <wolf@wolfsden.cz>
| * doc: Fix typo.Aleksandr Vityazev2023-09-05
| | | | | | | | | | | | * doc/guix.texi (VNC Services): Fix typo. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
| * doc: Document mumi command-line interface.Arun Isaac2023-09-05
| | | | | | | | | | | | | | | | | | * doc/contributing.texi (Debbugs User Interfaces)[Command-line interface]: New subsubsection. Update menus. * doc/guix.texi: Bump copyright year. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
| * doc: manual: Update TeX Live-related sections.Nicolas Goaziou2023-09-04
| | | | | | | | | | | | | | | | | | | | * doc/guix.texi (Invoking guix import): Mention "--recursive" option. (Using TeX and LaTeX): Improve documentation of modular TeX Live. Insist on the incompatibility with TEXLIVE package, and expound part about collections and schemes. Also fix the call to `tlmgr', which does not need to happen from a "guix shell" invocation. Co-authored-by: Andreas Enge <andreas@enge.fr>
| * home: Add parcimonie service.Efraim Flashner2023-09-04
| | | | | | | | | | | | * gnu/home/services/gnupg.scm (home-parcimonie-service-type, home-parcimonie-configuration): New variables. * doc/guix.texi (GNU Privacy Guard): Document it.
| * doc: Describe black screen issue when booting the installer.Florian Pelz2023-09-02
| | | | | | | | | | | | | | | | With suggestions by Iku-Tulo Vilutar <ikutulovilutar@gmail.com>. Fixes <https://issues.guix.gnu.org/65572>. * doc/guix.texi (System Installation): Add suggestion when booting the installer fails with a black screen.
| * cookbook: Add a recipe for running Guix System on a Kimsufi server.Thomas Ieong2023-09-01
| | | | | | | | | | | | | | * doc/guix-cookbook.texi (Running Guix on a Kimsufi Server): New section. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
| * doc: cookbook: Document the configuration of a Yubikey with KeePassXC.Maxim Cournoyer2023-09-01
| | | | | | | | | | | | | | * doc/guix-cookbook.texi (Using security keys) [Requiring a Yubikey to open a KeePassXC database]: New subsection. Series-to: 65354@debbugs.gnu.org
| * doc: Update link to Mumi repository.Ricardo Wurmus2023-08-30
| | | | | | | | | | | | * doc/guix.texi (Web Services): Update URL of Mumi git repository. Reported-by: Attila Lendvai <attila@lendvai.name>
| * doc: Fix a potential problem in man page generation rule.Maxim Cournoyer2023-08-29
| | | | | | | | | | | | | | | | | | Since commit ca8acad3 ("build: Add dependency on guix script for help2man targets."), the $< special Make variable in the recipe was matching scripts/guix instead of the more specific 'guix/scripts/%.scm' source. * doc/local.mk ($(srcdir)/%D%/guix-%.1): Move the scripts/guix prerequisite to the end.
| * Revert "gnu: system: Add home-directory-permissions field to <user-account>."Tobias Geerinckx-Rice2023-08-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit e9a5eebc785cb843034b38c5c5a6dd10904bdf2a, which as far as I can tell breaks system roll-backs thusly: [...] In gnu/build/accounts.scm: 239:27 3 (_ #<<password-entry> name: "root" password: "x" uid: 0 gid: 0 real-name: "System >) In unknown file: 2 (string-join ("root" "x" "0" "0" "System administrator" "/root" #t) ":" #<undefined>) In ice-9/boot-9.scm: 1685:16 1 (raise-exception _ #:continuable? _) 1685:16 0 (raise-exception _ #:continuable? _) ice-9/boot-9.scm:1685:16: In procedure raise-exception: In procedure string-append: Wrong type (expecting string): #t
* | gnu: emacs: Reload subdirs.el files in ‘guix-emacs-autoload-packages’.Maxim Cournoyer2023-09-07
|/ | | | | | | | | | | | | | | | | This fixes a regression introduced with 79cfe30f3 ("build-system: emacs: Use subdirectories again.") which caused the 'guix-emacs-autoload-packages' to no longer be able to autoload all packages. * gnu/packages/aux-files/emacs/guix-emacs.el (guix-emacs-autoload-packages): Reload subdirs.el files unless NO-RELOAD is provided. Update docstring. * doc/guix.texi (Application Setup): Document that ‘guix-emacs-autoload-packages’ can be invoked interactively to auto-reload newly installed Emacs packages. * gnu/packages/emacs.scm (emacs)[arguments]<#:phases>: Call guix-emacs-autoload-packages with an argument in the site-start.el file. Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
* doc: Note that `guix shell` should contain base language packages.Josselin Poiret2023-08-25
| | | | | | | * doc/guix.texi (Invoking guix shell): Explain that python must be included in the invocation even if it is already available in the external environment. Suggested-by: Skyler <skyvine@protonmail.com>
* gnu: system: Add home-directory-permissions field to <user-account>.David Thompson2023-08-25
| | | | | | | | | | | * gnu/system/accounts.scm (<user-account>)[home-directory-permissions]: New field. (user-account-home-directory-permissions): New accessor. * gnu/build/activation.scm (activate-users+groups): Use home directory permission bits from the user account object. * doc/guix.texi (User Accounts): Document new field. Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
* build: Add dependency on guix script for help2man targets.Josselin Poiret2023-08-25
| | | | | | * doc/local.mk: Add dependency on guix script for help2man targets. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* image: Add mbr-raw-image-type and use by default.Josselin Poiret2023-08-25
| | | | | | | | | | | | * gnu/system/image.scm (mbr-disk-image, mbr-raw-image-type): New variables. (qcow2-image-type): Inherit mbr-disk-image. * guix/scripts/system.scm (%default-options): Use mbr-raw-image-type by default. * gnu/tests/install.scm (run-install): Use mbr-raw in the tests. * doc/guix-cookbook.texi (Guix System Image API): Update the list of image types. * doc/guix.texi (Invoking guix system, System Images, image-type Reference): Add mbr-raw and switch documented default to it.
* services: file-database: Clarify 'excluded-directories' description.Ludovic Courtès2023-08-22
| | | | | | | * gnu/services/admin.scm (file-database-configuration)[excluded-directories]: Mention that these are regexps. (%default-file-database-excluded-directories): Likewise. * doc/guix.texi (File Search Services): Adjust accordingly.
* doc: Clarify 'user' field and key pairs in Daemon Offload.Bruno Victal2023-08-21
| | | | | | | * doc/guix.texi (Daemon Offload Setup:): Clarify 'user' field of build-machine data type and the key pair used by guix archive. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* doc: Fix module for "Essential Home Services".Nicolas Graves2023-08-20
| | | | Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* home: services: Add Syncthing.Ludovic Courtès2023-08-20
| | | | | | | | | | | | | * gnu/home/services/syncthing.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * gnu/services/syncthing.scm (<syncthing-configuration>)[home-service?]: New field. Adjust 'provision' and 'requirement' depending on 'home-service?', and likewise for #:user and #:group. Use 'filter' + 'negate' instead of 'remove'. * doc/guix.texi (Networking Services): Add note and cross-reference to "Networking Home Services". (Networking Home Services): New node.
* home: services: Add dicod.Ludovic Courtès2023-08-20
| | | | | | | | | | | | | | * gnu/home/services/dict.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * gnu/services/dict.scm (<dicod-configuration>)[home-service?]: New field. (dicod-shepherd-service): Do not map /dev/log when 'home-service?' is true. Remove 'user-processes' requirement when 'home-service?' is true. (dicod-shepherd-service): Set #:user and #:group to #f when 'home-service?' is true. * doc/guix.texi (Miscellaneous Home Services): New node. (Miscellaneous Services): Add cross-reference.
* Merge branch 'kde-updates'宋文武2023-08-19
|\
| * Merge remote-tracking branch 'origin/master' into kde-updates宋文武2023-08-17
| |\
| * \ Merge remote-tracking branch 'origin/master' into kde-updates宋文武2023-08-11
| |\ \
| * | | services: Add Plasma desktop service.Hartmut Goebel2023-08-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/services/desktop.scm (kde-desktop-service-type): New variable. (<kde-desktop-configuration>): New record type. (kde-desktop-configuration): New procedure. * doc/guix.texi (Desktop Services): Document it. Co-authored-by: Zheng Junjie <873216071@qq.com> Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
* | | | pull, time-machine: Add '-q' to ignore channel files.Ludovic Courtès2023-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This also fixes <https://issues.guix.gnu.org/63726>. * guix/scripts/pull.scm (show-help, %options): Add '-q'. (channel-list): Honor it. * guix/scripts/time-machine.scm (show-help, %options): Add '-q'. * doc/guix.texi (Invoking guix pull, Invoking guix time-machine): Document it. Reported-by: Simon Tournier <zimon.toutoune@gmail.com>
* | | | doc: Fix typo.Maxim Cournoyer2023-08-17
| |_|/ |/| | | | | | | | * doc/guix.texi (VPN Services): Fix typo.
* | | doc: cookbook: Document how to disable the Yubikey OTP application.Maxim Cournoyer2023-08-17
| | | | | | | | | | | | | | | | | | | | | * doc/guix-cookbook.texi (Using security keys) <Disabling OTP code generation for a Yubikey>: New subsection. Reviewed-by: John Kehayias <john.kehayias@protonmail.com>
* | | doc: cookbook: Document a dynamic DNS update mcron job.Maxim Cournoyer2023-08-16
| | | | | | | | | | | | | | | | | | | | | * doc/guix-cookbook.texi (System Configuration) <Dynamic DNS mcron job>: New subsection. Reviewed-by: Ludovic Courtès <ludo@gnu.org>
* | | scripts: time-machine: Error when attempting to visit too old commits.Maxim Cournoyer2023-08-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/guix.texi (Invoking guix time-machine): Document limitation. * guix/inferior.scm (cached-channel-instance): New VALIDATE-CHANNELS argument. Use it to validate channels when there are no cache hit. * guix/scripts/time-machine.scm (%options): Tag the given reference with 'tag-or-commit instead of 'commit. (%oldest-possible-commit): New variable. (guix-time-machine) <validate-guix-channel>: New nested procedure. Pass it to the 'cached-channel-instance' call. * tests/guix-time-machine.sh: New test. * Makefile.am (SH_TESTS): Register it. Suggested-by: Simon Tournier <zimon.toutoune@gmail.com> Reviewed-by: Ludovic Courtès <ludo@gnu.org> Reviewed-by: Simon Tournier <zimon.toutoune@gmail.com>
* | | Revert "services: Add ddclient service."Bruno Victal2023-08-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ddclient is unmaintained as of 2023-07-04 [1] and this service has been broken for a while [2]. Remove it rather than shipping a broken service for an unmaintained program that's unlikely to be fixed. [1]: <https://github.com/ddclient/ddclient> [2]: <https://issues.guix.gnu.org/52770> This reverts commit 8490a8346b5c8207f5798be55bea1de865b0bd42. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* | | services: posgresql: Add option to specify UID/GID for postgres user.Martin Baulig2023-08-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add 'createAccount?', 'uid' and 'gid' to <postgresql-configuation>. Unlike other system daemons, the PostgreSQL data directory is typically meant to persist across 'guix system reconfigure' and once created, you don't want it's UID or GID to change anymore. Furthermore, if you want to place the data directory on a network share and use NFSv4 with idmap, then the 'postgres' user must exist when the 'rpc.idmapd' daemon is launched; prior to mounting the share. And it needs to be possible to mount the share without configuring PostgreSQL. With NFSv3, the UID and GID typically needs to match those on the server. The added options allow for both of these scenarios: You can either create the user in (operating-system (users)) completely independently of the 'postgresql-service-type' (for instance to get your NFS setup working first prior to configuring your databases) - or "pin" it's UID / GID values. * gnu/services/databases.scm (<postgresql-configuration>)[create-account?] [uid, gid]: New fields. (%postgresql-accounts): Remove. (create-postgresql-account): New procedure. (postgresql-service-type)[extensions]: Use it. * doc/guix.texi (Database Services): Update accordingly. Signed-off-by: Ludovic Courtès <ludo@gnu.org>