summaryrefslogtreecommitdiff
path: root/doc
AgeCommit message (Expand)Author
2023-10-21build-system: Add zig-build-system....* 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> Ekaitz Zarraga
2023-10-18doc: Expand origin-Reference section...* 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> Christina O'Donnell
2023-10-17doc: Clarify partition LBA compatibility....* doc/guix.texi (partition Reference): Clarify LBA compatibility. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org> Gabriel Wicki
2023-10-14doc: Use herd for cerbot deploy hook example....* 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> Bruno Victal
2023-10-14pack: Allow setting a custom image tag for Docker images...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> Sören Tempel
2023-10-13doc: Document specification->package+output....Reported by nutcase on IRC. * doc/guix.texi (Using the Configuration System): Add a section about using specification->package+output. Efraim Flashner
2023-10-12services: cuirass: Add ‘log-expiry’ option for ‘remote-server’....* gnu/services/cuirass.scm (<cuirass-remote-server-configuration>)[log-expiry]: New field. (cuirass-shepherd-service): Honor it. * doc/guix.texi (Continuous Integration): Document it. Ludovic Courtès
2023-10-12doc: Fix typo....* doc/guix.texi (Derivations): Fix typo. Ludovic Courtès
2023-10-11doc: cookbook: Add “Software Development” chapter....* doc/guix-cookbook.texi (Software Development): New chapter. Ludovic Courtès
2023-10-11services: static-networking: Add support for bonding....* 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> Alexey Abramov
2023-10-08doc: Fix typo....* doc/guix.texi (GNU Privacy Guard): Fix typo. Ludovic Courtès
2023-10-07services: configuration: Add some commonly used predicates....* 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> Bruno Victal
2023-10-07doc: Rewrite define-configuration....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> Bruno Victal
2023-10-05doc: Fix channel name typo....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> Nikolaos Chatzikonstantinou
2023-10-05doc: Suggest keeping record type descriptors private....* doc/contributing.texi (Data Types and Pattern Matching): Add paragraph about keeping RTDs private. Suggested-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Ludovic Courtès
2023-10-05doc: Update bug-reference configuration snippet....* 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> Mekeor Melire
2023-10-05doc: contributing: Add alternative setups section....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> Ekaitz Zarraga
2023-10-01services: hurd-vm: Implement zero-configuration offloading....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. Ludovic Courtès
2023-10-01doc: Give an example showing how to add an account in the childhurd....* doc/guix.texi (Virtualization Services): Give an example showing how to add an account. Ludovic Courtès
2023-10-01services: hurd-vm: Disable password-based authentication for root....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. Ludovic Courtès
2023-10-01services: hurd-vm: ‘image’ field has to be an <image> record....* 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. Ludovic Courtès
2023-10-01services: guix: Support declarative offloading setup....* 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. Ludovic Courtès
2023-09-26doc: Update bug-reference configuration snippet....* 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> Maxim Cournoyer
2023-09-26build: Add dependency on Git....* 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. Ludovic Courtès
2023-09-25doc: Add new 'Circular Module Dependencies' section....* 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 Maxim Cournoyer
2023-09-22Merge branch 'master' into emacs-teamLiliana Marie Prikler
2023-09-22doc: contributing: Clarify generating the pre-inst-env script....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. Efraim Flashner
2023-09-20image: Introduce the mbr-hybrid-raw image type....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> Mathieu Othacehe
2023-09-18doc: Fix typo....* doc/guix.texi (Specifying Channel Authorizations): Remove extra hyphen. Ludovic Courtès
2023-09-18maint: Support `guix shell' in Guix's git archive with manifest.scm....* manifest.scm: New file. * Makefile.am (EXTRA_DIST): Add it. * doc/contributing.texi (Building from Git): Mention using it. Janneke Nieuwenhuizen
2023-09-17.dir-locals.el: Update bug-reference configuration and document it....(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> Maxim Cournoyer
2023-09-17services: dhcp-client-configuration: Allow provision override....* 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> Alexey Abramov
2023-09-09Merge branch 'master' into emacs-teamLiliana Marie Prikler
2023-09-07gnu: emacs: Reload subdirs.el files in ‘guix-emacs-autoload-packages’....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> Maxim Cournoyer
2023-09-06.dir-locals: Streamline Geiser configuration....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> Maxim Cournoyer
2023-09-05doc: Fix typo....* doc/guix.texi (VNC Services): Fix typo. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Aleksandr Vityazev
2023-09-05doc: Document mumi command-line interface....* 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> Arun Isaac
2023-08-25doc: Note that `guix shell` should contain base language packages....* 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> Josselin Poiret
2023-08-25gnu: system: Add home-directory-permissions field to <user-account>....* 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> David Thompson
2023-08-25build: Add dependency on guix script for help2man targets....* doc/local.mk: Add dependency on guix script for help2man targets. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Josselin Poiret
2023-08-25image: Add mbr-raw-image-type and use by default....* 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. Josselin Poiret
2023-08-22services: file-database: Clarify 'excluded-directories' description....* 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. Ludovic Courtès
2023-09-15services: guix: Add bffe-service-type....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. Christopher Baines
2023-09-14doc: Make “crash course” xref more visible....* doc/guix.texi (Using the Configuration System): Move the “Do not panic” note right after the first example. Clarify wording. Ludovic Courtès
2023-08-21doc: Clarify 'user' field and key pairs in Daemon Offload....* 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> Bruno Victal
2023-08-20doc: Fix module for "Essential Home Services"....Signed-off-by: Ludovic Courtès <ludo@gnu.org> Nicolas Graves
2023-08-20home: services: Add Syncthing....* 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. Ludovic Courtès
2023-08-20home: services: Add dicod....* 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. Ludovic Courtès
2023-08-19Merge branch 'kde-updates'宋文武
2023-08-17pull, time-machine: Add '-q' to ignore channel files....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> Ludovic Courtès