aboutsummaryrefslogtreecommitdiff
path: root/doc
AgeCommit message (Collapse)Author
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>
2023-09-18doc: Fix typo.Ludovic Courtès
* doc/guix.texi (Specifying Channel Authorizations): Remove extra hyphen.
2023-09-18maint: Support `guix shell' in Guix's git archive with manifest.scm.Janneke Nieuwenhuizen
* manifest.scm: New file. * Makefile.am (EXTRA_DIST): Add it. * doc/contributing.texi (Building from Git): Mention using it.
2023-09-17.dir-locals.el: Update bug-reference configuration and document it.Maxim Cournoyer
(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>
2023-09-17services: dhcp-client-configuration: Allow provision override.Alexey Abramov
* 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>
2023-09-09Merge branch 'master' into emacs-teamLiliana Marie Prikler
2023-09-07gnu: emacs: Reload subdirs.el files in ‘guix-emacs-autoload-packages’.Maxim Cournoyer
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>