aboutsummaryrefslogtreecommitdiff
path: root/doc/guix.texi
Commit message (Collapse)AuthorAge
* monad-repl: Add REPL commands to inspect package arguments.Ludovic Courtès2023-12-04
| | | | | | | | | | | | * guix/monad-repl.scm (keyword-argument-value, package-argument-command): New procedures. (phases, configure-flags, make-flags): New REPL commands. * doc/guix.texi (package Reference): Link to “Using Guix Interactively”. (Defining Package Variants): Add “Tips” quotation. (Build Phases): Add “Tip” quotation. (Using Guix Interactively): Document the new REPL commands. Change-Id: I7049c1d8aa9241e07d7c921aa396e578a1b4ef16
* doc: Update yggdrasil related documentation.Aleksandr Vityazev2023-11-25
| | | | | | | | * doc/guix.texi (Networking Services): Update the sample yggdrasil-private.conf. Remove obsolete options that may contain a file whose path is specified in the config-file field of yggdrasil-configuration. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* doc: Fix childhurd host SSH port number.Ludovic Courtès2023-11-25
| | | | | | | | | | Fixes <https://issues.guix.gnu.org/66739>. * doc/guix.texi (Virtualization Services): Fix childhurd host SSH port number. Reported-by: Nathan Dehnel <ncdehnel@gmail.com> Change-Id: I032b3447c7061ada8ba6d6f15c5454eab0e277d9
* services: Add oci-container-service-type.Giacomo Leidi2023-11-23
| | | | | | | | | | * gnu/services/docker.scm (oci-container-configuration): New variable; (oci-container-shepherd-service): new variable; (oci-container-service-type): new variable. * doc/guix.texi (Miscellaneous Services): Document it. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Change-Id: I17cede1975051a9fdd0e0a13b2191d8055266f80
* build-system: Add vim-build-system.Jonathan Scoresby2023-11-08
| | | | | | | | | | * guix/build-system/vim.scm, * guix/build/vim-build-system.scm: New modules. * Makefile.am (MODULES): Register new files. * doc/guix.texi: Document it. Co-authored-by: Efraim Flashner <efraim@flashner.co.il> Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
* git-download: Add support for Git Large File Storage (LFS).Maxim Cournoyer2023-11-07
| | | | | | | | | | | | | | | | | | | | * guix/build/git.scm (git-fetch) [lfs?]: New argument, doc and setup code. (git-fetch-with-fallback) [lfs?]: New argument. Pass it to git-fetch. * guix/git-download.scm (git-lfs-package): New procedure. (git-fetch/in-band*): New procedure, made of the logic of git-fetch/in-band, with new git-lfs specifics, with the following changes: New #:git-lfs argument. <inputs>: Remove labels. Conditionally add git-lfs. <build>: Read "git lfs?" environment variable and pass its value to the #:lfs? argument of git-fetch-with-fallback. Use INPUTS directly; update comment. <gexp->derivation>: Add "git lfs?" to #:env-vars. (git-fetch/in-band): Express in terms of git-fetch/in-band*. (git-fetch/lfs): New procedure. * doc/guix.texi (origin Reference): Document it. Change-Id: I5b233b8642a7bdb8737b9d9b740e7254a89ccb25 Reviewed-by: Ludovic Courtès <ludo@gnu.org>
* home: services: Add 'x11-display' service.Ludovic Courtès2023-11-05
| | | | | | | | | | * gnu/home/services/desktop.scm (x11-shepherd-service): New procedure. (home-x11-service-type): New variable. (redshift-shepherd-service): Add 'requirement' field. (home-redshift-service-type): Extend 'home-x11-service-type'. * doc/guix.texi (Desktop Home Services): Document it. Change-Id: Ibd46d71cbb80fcdff8dbf3e8dbcfc3b24163bdb6
* doc: Mention Guix Home in “Getting Started”.Ludovic Courtès2023-10-24
| | | | | * doc/guix.texi (Getting Started): Mention Guix Home. (Home Configuration): Remove “still under development” note.
* doc: Move “System Troubleshooting Tips” below.Ludovic Courtès2023-10-24
| | | | | | | | So far this section would appear before “Getting Started”. This moves it right after “System Configuration”. * doc/guix.texi (System Troubleshooting Tips): Move after “System Configuration”.
* build-system: Add zig-build-system.Ekaitz Zarraga2023-10-21
| | | | | | | | | | | * guix/build-system/zig.scm: New file. * guix/build/zig-build-system.scm: New file. * Makefile.am: Add them. * doc/guix.texi: Document it. * etc/snippets/yas/scheme-mode/guix-package (build-system): Add zig-build-system. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* doc: Expand origin-Reference sectionChristina O'Donnell2023-10-18
| | | | | | | * doc/guix.texi (origin Reference): Add references for hg-reference, svn-reference, bzr-fetch, and bzr-reference. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* doc: Clarify partition LBA compatibility.Gabriel Wicki2023-10-17
| | | | | | * doc/guix.texi (partition Reference): Clarify LBA compatibility. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* doc: Use herd for cerbot deploy hook example.Bruno Victal2023-10-14
| | | | | | | | * doc/guix.texi (Certificate Services): Replace PID file based example with one using (gnu services herd). Rename %nginx-deploy-hook to %certbot-deploy-hook. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* pack: Allow setting a custom image tag for Docker imagesSören Tempel2023-10-14
| | | | | | | | | | | | | | | | | | | | | | | | | Previously, the image repository name was automatically computed from the packages in the manifest without allowing the user to set a custom one. As such, changing the packages in the manifest would result in a new image name. Thereby requiring updating documentation et cetera when using `docker load` directory on the resulting image. Inspired by `docker build -t`, this commit adds a new Docker-specific option to `guix pack` which allows setting a custom repository name for the resulting image. If this option is not specified, pack falls back to computing the name from the manifest. Therefore, this change is entirely backwards compatible. * guix/scripts/pack.scm (guix-pack): Add --image-tag option. (%docker-format-options): New constant. (show-docker-format-options): New procedure. (show-docker-format-options/detailed): New procedure. (docker-image): Allow setting a custom repository name for the created docker image via extra-options. * doc/guix.texi (Invoking guix pack)[docker]: Document --image-tag option. Signed-off-by: Sören Tempel <soeren@soeren-tempel.net> Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* doc: Document specification->package+output.Efraim Flashner2023-10-13
| | | | | | | Reported by nutcase on IRC. * doc/guix.texi (Using the Configuration System): Add a section about using specification->package+output.
* services: cuirass: Add ‘log-expiry’ option for ‘remote-server’.Ludovic Courtès2023-10-12
| | | | | | | * gnu/services/cuirass.scm (<cuirass-remote-server-configuration>)[log-expiry]: New field. (cuirass-shepherd-service): Honor it. * doc/guix.texi (Continuous Integration): Document it.
* doc: Fix typo.Ludovic Courtès2023-10-12
| | | | * doc/guix.texi (Derivations): Fix typo.
* services: static-networking: Add support for bonding.Alexey Abramov2023-10-11
| | | | | | | | | | | | | | | | * gnu/services/base.scm (<network-link>): Add mac-address field. Set type field to #f by default, so it won't be mandatory. network-link without a type will be used for existing interfaces. (assert-network-link-mac-address, mac-address?): Add sanitizer. Allow valid mac-address or #f. (assert-network-link-type): Add sanitizer. Allow symbol or #f. * gnu/services/base.scm (network-set-up/linux, network-tear-down/linux): Adapt to new structure. * doc/guix.texi (Networking Setup): Document it. * gnu/tests/networking.scm (run-static-networking-advanced-test): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* doc: Fix typo.Ludovic Courtès2023-10-08
| | | | * doc/guix.texi (GNU Privacy Guard): Fix typo.
* services: configuration: Add some commonly used predicates.Bruno Victal2023-10-07
| | | | | | | | | | | | | * gnu/services/configuration.scm (list-of-packages?, list-of-symbols?): New predicate. * gnu/services/audio.scm (list-of-symbol?): Remove. * gnu/services/telephony.scm (string-list?): Remove. (serialize-string-list): Rename to … (serialize-list-of-strings): … this. (account-fingerprint-list?, jami-account-list?): Use list-of. * doc/guix.texi: Update it. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
* doc: Rewrite define-configuration.Bruno Victal2023-10-07
| | | | | | | | | | Rewrite this section to make it easier to document later syntactical changes. * doc/guix.texi (Complex Configurations): Rewrite define-configuration documentation. Fix simple serializer example. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
* doc: Fix channel name typo.Nikolaos Chatzikonstantinou2023-10-05
| | | | | | | | | | | | | | | | | | | | | When the manual has "variant-personal-packages", it actually refers to the channel "variant-packages", as it is named so elsewhere. To correct this, I ran the command grep -r -l variant-personal-packages | xargs \ sed -i 's/variang-personal-packages/variant-packages/g' * doc/guix.texi (Specifying Additional Channels): Fix channel name typo. * po/doc/guix-manual.de.po: Fix channel name typo. * po/doc/guix-manual.es.po: Fix channel name typo. * po/doc/guix-manual.fr.po: Fix channel name typo. * po/doc/guix-manual.pt_BR.po: Fix channel name typo. * po/doc/guix-manual.ru.po: Fix channel name typo. * po/doc/guix-manual.zh_CN.po: Fix channel name typo. Signed-off-by: Nikolaos Chatzikonstantinou <nchatz314@gmail.com> Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* 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.
* 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.
* Merge branch 'master' into emacs-teamLiliana Marie Prikler2023-09-22
|\
| * 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.
| * 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
|\|
| * 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.
| * 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>
| * 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>
* 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.