aboutsummaryrefslogtreecommitdiff
path: root/doc
AgeCommit message (Collapse)Author
2023-12-04monad-repl: Add REPL commands to inspect package arguments.Ludovic Courtès
* 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
2023-12-04doc: Recommend building in ‘guix shell -CPW’.Ludovic Courtès
This was prompted by <https://issues.guix.gnu.org/66537>, where someone tried to build Guix within ‘guix shell --pure’ on a foreign distro and found that ./configure would pick software from the host system. Suggested by Hiep Pham <hiepph9@proton.me>. * doc/contributing.texi (Building from Git): Recommend ‘guix shell -CPW’. Change-Id: I7694b482d982917fef6ec404f68ddacea761f482
2023-11-25doc: Update yggdrasil related documentation.Aleksandr Vityazev
* 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>
2023-11-25doc: Fix childhurd host SSH port number.Ludovic Courtès
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
2023-11-23services: Add oci-container-service-type.Giacomo Leidi
* 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
2023-11-20doc: contributing: Fix syntax in link.Ekaitz Zarraga
* doc/contributing.texi(Alternative Setups)[Vim and Neovim]: Fix broken link to fugitive.vim. Change-Id: Ib86239d98c39383169a9cdebc7549477b648206e Signed-off-by: Christopher Baines <mail@cbaines.net>
2023-11-08build-system: Add vim-build-system.Jonathan Scoresby
* 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>
2023-11-07doc: Document extra Emacs-Debbugs configurations.Maxim Cournoyer
* doc/contributing.texi (Viewing Bugs within Emacs): Document debbugs-gnu-default-packages, debbugs-gnu-default-severities. (Debbugs User Interfaces): Likewise, and mention debbugs-gnu-guix-search. Suggested-by: Michael Albinus <michael.albinus@gmx.de> Change-Id: I8e9026bc394b0cf674c8498ca713c332e48c2700
2023-11-07doc: Expound on the build-side versus host-side modules topic.Maxim Cournoyer
Discussed in <https://issues.guix.gnu.org/65924#98-lineno27>. * doc/contributing.texi (Modules): Add new context indices, and provide a real-life counter-example, and its ramifications. Reported-by: Ludovic Courtès <ludo@gnu.org> Change-Id: I06975fb24f0d67c833884313a727dc550f61d8a0
2023-11-07git-download: Add support for Git Large File Storage (LFS).Maxim Cournoyer
* 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>
2023-11-07doc: Add some guidelines for reviewing.Maxim Cournoyer
* doc/contributing.texi (Contributing) [Reviewing the Work of Others]: New section. (Debbugs Usertags): Expound with Emacs Debbugs information and document the 'reviewed-looks-good' usertag. * etc/git/gitconfig [b4]: New section. Change-Id: I56630b15ec4fbc5c67e5420dbf2838556a005d6b Reviewed-by: Ludovic Courtès <ludo@gnu.org>
2023-11-07doc: Update URL of Mumi git repository.Ricardo Wurmus
* doc/contributing.texi (Debbugs User Interfaces): Use new repository URL. Change-Id: Ieccf34be8a103740607d8c115120902dc687d4e7
2023-11-05home: services: Add 'x11-display' service.Ludovic Courtès
* 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
2023-11-05doc: contributing: Replace reference to dunst.scm.Jaeme Sifat
The contributing documentation makes a reference to dunst.scm as an example of the build process failing after an update. This patch replaces that reference with a much more permanent linux.scm. * doc/contributing.texi: Replace reference to dunst.scm. Change-Id: I89a4157eb253e25979bc35d6d3b12201a0d19951 Signed-off-by: Christopher Baines <mail@cbaines.net>
2023-11-01doc: contributiong: Fix ref usage.Julien Lepiller
Previous usage renders as "see See Teams". * doc/contributing.texi: Fix ref usage. Change-Id: I97a91697ecb87d07cc3c962a79d87dd290a70a7c
2023-10-25doc: cookbook: Fix a broken cross-reference.Florian Pelz
* doc/guix-cookbook.texi (Building with Guix): Adjust xref target. Change-Id: I87d6dc2648ff8898e3dd3b5ffca748193f14751e
2023-10-24doc: cookbook: Add cross references to the manual regarding manifests.Ludovic Courtès
* doc/guix-cookbook.texi (The benefits of manifests) (Reproducible profiles): Add cross-references.
2023-10-24doc: cookbook: Suggest ‘guix shell’ as an alternative to multiple profiles.Ludovic Courtès
Multiple profiles are relatively hard to set up and maintain, especially for newcomers. Thus, suggest ‘guix shell’ as an alternative. * doc/guix-cookbook.texi (Guix Profiles in Practice): Add note linking to ‘guix shell’. (The benefits of manifests): Remove outdated info about ‘guix environment’ and profiles that may be GC’d. Update.
2023-10-24doc: Mention Guix Home in “Getting Started”.Ludovic Courtès
* doc/guix.texi (Getting Started): Mention Guix Home. (Home Configuration): Remove “still under development” note.
2023-10-24doc: Move “System Troubleshooting Tips” below.Ludovic Courtès
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”.
2023-10-23doc: Document Cuirass build notifications.Maxim Cournoyer
* doc/contributing.texi (Tracking Bugs and Changes) <Cuirass Build Notifications>: New subsection. Change-Id: Icead24ec18cd4511ee6217aae3c1d11ec552a9c7 Reviewed-by: Mathieu Othacehe <othacehe@gnu.org>
2023-10-22build: Add a commit-msg hook that embeds Change-Id in commit messages.Maxim Cournoyer
Partially implements <https://issues.guix.gnu.org/66027>. This will make it possible to track a merged commit back to its original posting on the mailing list, and open the door to new opportunities such as closing fully merged series automatically. * Makefile.am (COMMIT_MSG_MAGIC): New variable. (.git/hooks/commit-msg): New target. * etc/git/commit-msg: New file. * doc/contributing.texi (Configuring Git): Document Change-Id. Series-changes: 3 - Clarify documentation text, as suggested by Simon Change-Id: Ia92fa958eae600fdd4e180bad494c85db8bb4dd6 Reviewed-by: Simon Tournier <zimon.toutoune@gmail.com>
2023-10-21build-system: Add zig-build-system.Ekaitz Zarraga
* 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>
2023-10-18doc: Expand origin-Reference sectionChristina O'Donnell
* 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>
2023-10-17doc: Clarify partition LBA compatibility.Gabriel Wicki
* doc/guix.texi (partition Reference): Clarify LBA compatibility. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2023-10-14doc: Use herd for cerbot deploy hook example.Bruno Victal
* 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>
2023-10-14pack: Allow setting a custom image tag for Docker imagesSören Tempel
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>
2023-10-13doc: Document specification->package+output.Efraim Flashner
Reported by nutcase on IRC. * doc/guix.texi (Using the Configuration System): Add a section about using specification->package+output.
2023-10-12services: cuirass: Add ‘log-expiry’ option for ‘remote-server’.Ludovic Courtès
* gnu/services/cuirass.scm (<cuirass-remote-server-configuration>)[log-expiry]: New field. (cuirass-shepherd-service): Honor it. * doc/guix.texi (Continuous Integration): Document it.
2023-10-12doc: Fix typo.Ludovic Courtès
* doc/guix.texi (Derivations): Fix typo.
2023-10-11doc: cookbook: Add “Software Development” chapter.Ludovic Courtès
* doc/guix-cookbook.texi (Software Development): New chapter.
2023-10-11services: static-networking: Add support for bonding.Alexey Abramov
* 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>
2023-10-08doc: Fix typo.Ludovic Courtès
* doc/guix.texi (GNU Privacy Guard): Fix typo.
2023-10-07services: configuration: Add some commonly used predicates.Bruno Victal
* 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>
2023-10-07doc: Rewrite define-configuration.Bruno Victal
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>
2023-10-05doc: Fix channel name typo.Nikolaos Chatzikonstantinou
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>
2023-10-05doc: Suggest keeping record type descriptors private.Ludovic Courtès
* doc/contributing.texi (Data Types and Pattern Matching): Add paragraph about keeping RTDs private. Suggested-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-10-05doc: Update bug-reference configuration snippet.Mekeor Melire
* doc/contributing.texi (The Perfect Setup) <Viewing Bugs within Emacs>: Make bug-reference-bug-regexp match more URLs based on issues.guix.gnu.org. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Suggested-by: Simon Tournier <zimon.toutoune@gmail.com>
2023-10-05doc: contributing: Add alternative setups section.Ekaitz Zarraga
Start with Guile Studio and Vim/NeoVim. * doc/contributing.texi (Alternative Setups): Add section explaining other setups that are similar to the one in The Perfect Setup. Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2023-10-01services: hurd-vm: Implement zero-configuration offloading.Ludovic Courtès
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.
2023-10-01doc: Give an example showing how to add an account in the childhurd.Ludovic Courtès
* doc/guix.texi (Virtualization Services): Give an example showing how to add an account.
2023-10-01services: hurd-vm: Disable password-based authentication for root.Ludovic Courtès
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.
2023-10-01services: hurd-vm: ‘image’ field has to be an <image> record.Ludovic Courtès
* 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.
2023-10-01services: guix: Support declarative offloading setup.Ludovic Courtès
* 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.
2023-09-26doc: Update bug-reference configuration snippet.Maxim Cournoyer
* 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>
2023-09-26build: Add dependency on Git.Ludovic Courtès
* 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.
2023-09-25doc: Add new 'Circular Module Dependencies' section.Maxim Cournoyer
* 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
2023-09-22Merge branch 'master' into emacs-teamLiliana Marie Prikler
2023-09-22doc: contributing: Clarify generating the pre-inst-env script.Efraim Flashner
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.
2023-09-20image: Introduce the mbr-hybrid-raw image type.Mathieu Othacehe
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>