summaryrefslogtreecommitdiff
path: root/doc/guix.texi
AgeCommit message (Expand)Author
2020-07-06doc: Fix texinfo identifiers in Version Control Services....* doc/guix.texi (Version Control Services): Use @code, @command, @file, @indicateurl, @samp texinfo identifiers correctly. Arun Isaac
2020-07-05doc: Fix minor typo in X Window....* doc/guix.texi (X Window): Replace "not" with "no". Arun Isaac
2020-07-05doc: Fix minor typo in Programming Interface....* doc/guix.texi (Programming Interface): Replace "under a specific build users" with "under specific build users". Arun Isaac
2020-07-02services: wpa-supplicant: Support specifying additional service dependencies....* gnu/services/networking.scm (<wpa-supplicant-configuration>)[requirement]: New parameter. (wpa-supplicant-shepherd-service): Use it instead of hard-coded list. * doc/guix.texi (Networking Services): Document accordingly. Marius Bakke
2020-07-01channels: Dependencies listed in '.guix-channel' can have an introduction....Suggested by Ricardo Wurmus and Simon Tournier. * guix/channels.scm (sexp->channel-introduction): New procedure. (read-channel-metadata): Use it. (profile-channels)[sexp->channel-introduction]: Remove. * tests/channels.scm ("latest-channel-instances, authenticate dependency"): New test. * doc/guix.texi (Channels)[Declaring Channel Dependencies]: Augment example. Ludovic Courtès
2020-07-01guix describe: Display channel introductions and add 'channels-sans-intro'....* guix/scripts/describe.scm (%available-formats): Add "channels-sans-intro". (channel->sexp): Add #:include-introduction?. Emit CHANNEL's intro if INCLUDE-INTRODUCTION? is true and CHANNEL has an introduction. (channel->json): Include CHANNEL's introduction, if any. (channel->recutils): Likewise. (display-profile-info): Add 'channels-sans-intro' case. * doc/guix.texi (Invoking guix describe): Add introduction in example. Add 'channels-sans-intro' case. Ludovic Courtès
2020-07-01channels: Make channel introductions public....* guix/channels.scm (<channel-introduction>): Rename constructor to '%make-channel-introduction'. (make-channel-introduction): New procedure. * tests/channels.scm ("authenticate-channel, wrong first commit signer") ("authenticate-channel, .guix-authorizations"): Use 'make-channel-introduction' without '@@' and without third argument. * doc/guix.texi (Channels)[Channel Authentication, Specifying Channel Authorizations]: New subsections. Ludovic Courtès
2020-06-28doc: Add progress display in 'dd' command lines....* doc/guix.texi (System Installation): Adjust 'dd' command line to display progress … (System Configuration): … same here. Brice Waegeneire
2020-06-28services: Add rshiny service....* gnu/services/science.scm: New file. (<rshiny-configuration>): New record. (rshiny-shepherd-service-type): New variable. * doc/guix.texi (Miscellaneous Services): Document it. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Efraim Flashner
2020-06-26doc: 'guix hash' is not SHA256-only....This is a followup to 18ae1ec3ecfe22d55d6cdf595a442afebbc5595a. * doc/guix.texi (Invoking guix hash): Remove "SHA256" from the first paragraph. Ludovic Courtès
2020-06-21services: childhurd: Support more than one instance....* gnu/services/virtualization.scm (<hurd-vm-configuration>)[options]: Remove "--hda" option. [id,net-options]: New fields. (hurd-vm-net-options): New procedure. Parameterize port forwarding with ID. * gnu/services/virtualization.scm (hurd-vm-shepherd-service): Use them. Parameterize provision with ID, if set. Hardcode "--hda" option for image. * doc/guix.texi (Virtualization Services): Document new fields. Update for hardcoding of "--hda". Jan (janneke) Nieuwenhuizen
2020-06-18doc: Delete description of a nonexistent option....* doc/guix.texi (Invoking guix pull): Delete a paragraph about the --verbose option, which was removed in 1edcfda81ba5c20ca715473d45315662c60dd81e. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Timotej Lazar
2020-06-17channels: Warn when pulling from a mirror....* guix/channels.scm (<channel-metadata>)[url]: New field. (read-channel-metadata): Initialize it. (read-channel-metadata-from-source): Likewise. (channel-instance-primary-url): New procedure. (latest-channel-instances): Compare CHANNEL's URL against it. * doc/guix.texi (Channels)[Primary URL]: New subsection. Ludovic Courtès
2020-06-16pull: Add '--disable-authentication'....* guix/channels.scm (latest-channel-instance): Add #:authenticate? and honor it. (latest-channel-instances): Likewise. * guix/scripts/pull.scm (%default-options): Add 'authenticate-channels?'. (show-help, %options): Add '--disable-authentication'. (guix-pull): Pass #:authenticate? to 'latest-channel-instances'. * doc/guix.texi (Invoking guix pull): Document it. Ludovic Courtès
2020-06-16channels: 'latest-channel-instance' authenticates Git checkouts....Fixes <https://bugs.gnu.org/22883>. * guix/channels.scm (<channel>)[introduction]: New field. (<channel-introduction>): New record type. (%guix-channel-introduction): New variable. (%default-channels): Use it. (<channel-metadata>)[keyring-reference]: New field. (%default-keyring-reference): New variable. (read-channel-metadata, read-channel-metadata-from-source): Initialize the 'keyring-reference' field. (commit-short-id, verify-introductory-commit) (authenticate-channel): New procedures. (latest-channel-instance): Call 'authenticate-channel' when CHANNEL has an introduction. * tests/channels.scm (gpg+git-available?, commit-id-string): New procedures. ("authenticate-channel, wrong first commit signer"): ("authenticate-channel, .guix-authorizations"): New tests. * doc/guix.texi (Invoking guix pull): Mention authentication. Ludovic Courtès
2020-06-16pack: Add zstd compressor....* guix/scripts/pack.scm (%compressors): Add zstd. * doc/guix.texi (Invoking guix pack): Document it. Tobias Geerinckx-Rice
2020-06-15doc: Clarify 'hurd-vm' and 'childhurd' names....Suggested by Maxim Cournoyer via IRC. * doc/guix.texi (The Hurd in a Virtual Machine): Explicitly mention that hurd-vm and childhurd are two names for this service. Jan (janneke) Nieuwenhuizen
2020-06-14guix repl: Add script execution....* guix/scripts/repl.scm: Add filename options for script execution. * doc/guix.texi (Invoking guix repl): Document it. * tests/guix-repl.sh: Test it. * Makefile.am: (SH_TESTS): Add it. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Konrad Hinsen
2020-06-14services: Add 'hurd-vm service-type'....* gnu/services/virtualization.scm (hurd-vm-shepherd-service, hurd-vm-disk-image): New procedures. (%hurd-vm-operating-system, hurd-vm-service-type): New variables. (<hurd-vm-configuration>): New record type. * doc/guix.texi (Virtualization Services): Document it. * gnu/services/shepherd.scm (scm->go): Use let-system, remove FIXME. Fixes fixes cross-building of shepherd modules for the Hurd image. Jan (janneke) Nieuwenhuizen
2020-06-14lint: Add 'check-for-collisions' checker....Suggested by Edouard Klein <edk@beaver-labs.com>. * guix/profiles.scm (check-for-collisions): Export. * guix/lint.scm (check-profile-collisions): New procedure. (%local-checkers): Add 'profile-collisions' checker. * tests/lint.scm ("profile-collisions: no warnings") ("profile-collisions: propagated inputs collide") ("profile-collisions: propagated inputs collide, store items"): New tests. * doc/guix.texi (Invoking guix lint): Document it. Ludovic Courtès
2020-06-14doc: Mention 'guix lint -c derivation'....* doc/guix.texi (Invoking guix lint): Mention the 'derivation' checker. Ludovic Courtès
2020-06-09doc: Add note to 'udisks-service'....* doc/guix.texi (Desktop Services): Specify how to add file-systems utilities to 'udisks-service'. Brice Waegeneire
2020-06-08services: Add `hurd-getty-service-type'....* gnu/services/hurd.scm (<hurd-gettty-configuration>): New record. (hurd-ttys-shepherd-service): New procedure. (hurd-getty-service-type): New variable. * doc/guix.texi (Hurd Services): Document it. Jan (janneke) Nieuwenhuizen
2020-06-08services: Add `hurd-console-service-type'....* gnu/services/hurd.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (Hurd Services): Document it. Jan (janneke) Nieuwenhuizen
2020-06-08bootloader: Extend `<menu-entry>' for multiboot....* gnu/bootloader.scm (<menu-entry>)[multiboot-kernel,multiboot-arguments, multiboot-modules]: New fields. [linux,initrd]: Add default value '#f'. (menu-entry->sexp, sexp->menu-entry): Support multiboot entry. * doc/guix.texi (Bootloader Configuration): Document them. Jan (janneke) Nieuwenhuizen
2020-06-08system: Add 'hurd' field to <operating-system>....* gnu/system.scm (<operating-system>)[hurd]: New field. * doc/guix.texi (operating-system Reference): Document 'hurd'. Jan (janneke) Nieuwenhuizen
2020-06-03doc: Mention Btrfs compression....Suggested by Pierre Neidhardt <mail@ambrevar.xyz>. * doc/guix.texi (Keyboard Layout and Networking and Partitioning): Mention Btrfs compression. Ludovic Courtès
2020-06-03gnu: services: docker: Add a debug? parameter....* gnu/services/docker.scm (docker-configuration): Add a debug? field. (containerd-shepherd-service): Pass the "--log-level=debug" argument when DEBUG? is true. (docker-shepherd-service): Pass the "--debug" and "--log-level=debug" arguments when DEBUG? is true. * doc/guix.texi (Miscellaneous Services): Update doc. Maxim Cournoyer
2020-05-29services: nfs: Expose configuration options for TCP and UDP....* gnu/services/nfs.scm (<nfs-configuration>)[nfsd-tcp?, nfsd-udp?]: New fields. (nfs-shepherd-services)[rpc.nfsd]: Populate the --{no-,}tcp and --{no-,}udp command line options based on the values of the nfsd-tcp? and nfsd-upd? fields. * doc/guix.texi (Network File System): Add doc. Maxim Cournoyer
2020-05-29doc: Add example to calculate the size a system....* doc/guix.texi (Invoking `guix size'): Add guix size example for store item. Pierre Neidhardt
2020-05-28doc: Remove explicit support for mips64el-linux....It's been a good run, but no one is maintaining the architecture. So long, and thanks for all the fish. * doc/guix.texi (GNU Distribution): Change text for mips64el-linux to denote it is deprecated. (Daemon Offload Setup): Change occurrences of mips64el-linux to aarch64-linux and adjust local code snippets. (Guix Environment)[cross-compilation]: Change mips64el-linux-gnu to aarch64-linux-gnu. (GNU Build System)(package-cross-derivation]: Same. (G-Expressions)[cross compilation]: Same. (Additional Build Options)[cross-compilation, build logs]: Same. (qemu-binfmt-service-type): Remove mips64el. * doc/contributing.texi (Submitting Patches): Same. * m4/guix.m4: (GUIX_ASSERT_SUPPORTED_SYSTEM): Remove mips64el-linux. Efraim Flashner
2020-05-27doc: Use existing URLs and file names in installation instructions....Some users are confused that these URLs and file names don't work, so change them to the most popular architecture, while still mentioning alternatives. * doc/guix.texi (USB Stick and DVD Installation, Binary Installation): Use x86_64-linux URLs by default. Julien Lepiller
2020-05-25doc: Fix typos....* doc/guix.texi: Fix typos. * doc/contributing.texi: Fix typos. Signed-off-by: Julien Lepiller <julien@lepiller.eu> zimoun
2020-05-25pull: Protect against downgrade attacks....* guix/scripts/pull.scm (%default-options): Add 'validate-pull'. (%options, show-help): Add '--allow-downgrades'. (warn-about-backward-updates): New procedure. (guix-pull): Pass #:current-channels and #:validate-pull to 'latest-channel-instances'. * guix/channels.scm (ensure-forward-channel-update): Add hint for when (channel-commit channel) is true. * doc/guix.texi (Invoking guix pull): Document '--allow-downgrades'. Ludovic Courtès
2020-05-24doc: Update to the new 'grub-theme' procedure....This is a follow-up commit to 9cdb10d52e34f7e8fa3b6238fe268646a4bbb877: gnu: grub: Allow a PNG image and replace "aspect-ratio" with "resolution". * doc/guix.texi (Bootloader Configuration): Describe and use the 'grub-theme' procedure instead of the removed '%default-theme' variable. Jan (janneke) Nieuwenhuizen
2020-05-22doc: Update 'Bootstrapping' for further binary seed reduction....* doc/images/gcc-core-mesboot0-graph.dot: New image, replacing * doc/images/gcc-mesboot0-bag-graph.dot: ... remove file. * doc/local.mk (DOT_FILES): Update for new image file. * doc/guix.texi (Reduced Binary Seed Bootstrap): Use it in updated description of further reduction of the trusted computing base. Jan Nieuwenhuizen
2020-05-22packages: Introduce <content-hash> and use it in <origin>....* guix/packages.scm (<content-hash>): New record type. (define-content-hash-constructor, build-content-hash) (content-hash): New macros. (print-content-hash): New procedure. (<origin>): Rename constructor to '%origin'. [sha256]: Remove field. [hash]: New field. Adjust users. (origin-compatibility-helper, origin): New macros. (origin-sha256): New deprecated procedure. (origin->derivation): Adjust accordingly. * tests/packages.scm ("package-source-derivation, origin, sha512"): New test. * guix/tests.scm: Hide (gcrypt hash) 'sha256' for proper syntax matching. * tests/challenge.scm: Add #:prefix for (gcrypt hash) and adjust users. * tests/derivations.scm: Likewise. * tests/store.scm: Likewise. * tests/graph.scm ("bag DAG, including origins"): Provide 'sha256' field with the right length. * gnu/packages/aspell.scm (aspell-dictionary) (aspell-dict-ca, aspell-dict-it): Use 'hash' and 'content-hash' for proper syntax matching. * gnu/packages/bash.scm (bash-patch): Rename 'sha256' to 'sha256-bv'. * gnu/packages/bootstrap.scm (bootstrap-executable): Rename 'sha256' to 'bv'. * gnu/packages/readline.scm (readline-patch): Likewise. * gnu/packages/virtualization.scm (qemu-patch): Rename 'sha256' to 'sha256-bv'. * guix/import/utils.scm: Hide (gcrypt hash) 'sha256'. Ludovic Courtès
2020-05-22guix hash, guix download: Support base64 format....* guix/scripts/download.scm (show-help, %options): Support "base64" format. * guix/scripts/hash.scm (show-help, %options): Likewise. * tests/guix-hash.sh: Test it. * doc/guix.texi (Invoking guix hash): Document it. Ludovic Courtès
2020-05-22guix hash, guix download: Add '--hash'....* guix/scripts/download.scm (%default-options): Add 'hash-algorithm'. (show-help, %options): Add "--hash". (guix-download): Honor it. * guix/scripts/hash.scm (%default-options): Add 'hash-algorithm'. (show-help, %options): Add "--hash". (guix-hash): Honor it. * tests/guix-hash.sh: Test '-H sha512'. * doc/guix.texi (Invoking guix download): Document it. (Invoking guix hash): Document it. Ludovic Courtès
2020-05-22doc: Use "Alternatively" instead of "Alternately"....These two words have different meanings and we really meant "alternatively" here. * doc/guix.texi (System Installation): (Preparing for Installation): (Invoking guix refresh): (Invoking guix challenge): (Networking Services): "Alternatively", not "Alternately". Ludovic Courtès
2020-05-20bootloader: grub: Allow booting from a Btrfs subvolume....* gnu/bootloader/grub.scm (strip-mount-point): Remove procedure. (normalize-file): Add procedure. (grub-configuration-file): New BTRFS-SUBVOLUME-FILE-NAME parameter. When defined, prepend its value to the kernel and initrd file names, using the NORMALIZE-FILE procedure. Adjust the call to EYE-CANDY to pass the BTRFS-SUBVOLUME-FILE-NAME argument. Normalize the KEYMAP file as well. (eye-candy): Add a BTRFS-SUBVOLUME-FILE-NAME parameter, and use it, along with the NORMALIZE-FILE procedure, to normalize the FONT-FILE and IMAGE nested variables. Adjust doc. * gnu/bootloader/depthcharge.scm (depthcharge-configuration-file): Adapt. * gnu/bootloader/extlinux.scm (extlinux-configuration-file): Likewise. * gnu/system/file-systems.scm (btrfs-subvolume?) (btrfs-store-subvolume-file-name): New procedures. * gnu/system.scm (operating-system-bootcfg): Specify the Btrfs subvolume file name the store resides on to the `operating-system-bootcfg' procedure, using the new BTRFS-SUBVOLUME-FILE-NAME argument. * doc/guix.texi (File Systems): Add a Btrfs subsection to document the use of subvolumes. * gnu/tests/install.scm (%btrfs-root-on-subvolume-os) (%btrfs-root-on-subvolume-os-source) (%btrfs-root-on-subvolume-installation-script) (%test-btrfs-root-on-subvolume-os): New variables. Maxim Cournoyer
2020-05-20file-systems: Add helpers for parsing the options string into an alist....* gnu/system/file-systems.scm (file-system-options->alist) (alist->file-system-options): New procedures. * tests/file-systems.scm: New tests. * doc/guix.texi (File Systems): Add note about the newly added procedures. Maxim Cournoyer
2020-05-20linux-boot: Refactor boot-system....The --root option can now be omitted, and inferred from the root file system declaration instead. * gnu/build/file-systems.scm (canonicalize-device-spec): Extend to support NFS directly, and... * gnu/build/linux-boot.scm (boot-system): ...remove NFS special casing from here. Remove nested definitions for root-fs-type, root-fs-flags and root-fs-options, and bind those inside the let* instead. Make "--root" take precedence over the device field string representation of the root file system. * doc/guix.texi (Initial RAM Disk): Document that "--root" can be left unspecified. Maxim Cournoyer
2020-05-18guix describe: Add '--list-formats'...* guix/scripts/describe.scm (%available-formats): New variable. (list-formats): New procedure. (%options, show-help): Add --list-formats * doc/guix.texi: Add --list-formats Signed-off-by: Ludovic Courtès <ludo@gnu.org> Ekaitz Zarraga
2020-05-17doc: meson-build-system: Fix build type documentation....* doc/guix.texi (Build Systems): Fix meson build system description. Julien Lepiller
2020-05-16doc: Reword "The GCC toolchain"....Fix commit 1f14e25c1969a93908288cb302a572f3cbbaa478 as discussed in <https://bugs.gnu.org/41038>. * doc/guix.texi (Packages for C Development): Rename to... (The GCC toolchain): ...this. Add gfortran-toolchain. (Invoking guix package): Add guix-search anchor. (Application Setup)[The GCC toolchain]: Remove. Signed-off-by: Ludovic Courtès <ludo@gnu.org> zimoun
2020-05-16etc: Add a systemd unit to bind-mount @storedir@ read-only....* etc/gnu-store.mount.in: New file. * nix/local.mk (nodist_systemdservice_DATA): Add it. (etc/%.mount): New rule for it. * etc/guix-install.sh (sys_enable_guix_daemon): Install it. * doc/guix.texi (Binary Installation): Document it. * .gitignore: Ignore changes to it. Tobias Geerinckx-Rice
2020-05-16gexp: Add 'let-system'....* guix/gexp.scm (<system-binding>): New record type. (let-system): New macro. (system-binding-compiler): New procedure. (default-expander): Add 'self-quoting?' case. (self-quoting?): New procedure. (lower-inputs): Add 'filterm'. Pass the result of 'mapm/accumulate-builds' through FILTERM. (gexp->sexp)[self-quoting?]: Remove. * tests/gexp.scm ("let-system", "let-system, target") ("let-system, ungexp-native, target") ("let-system, nested"): New tests. * doc/guix.texi (G-Expressions): Document it. Ludovic Courtès
2020-05-14pack: Add relocation via ld.so and fakechroot....* gnu/packages/aux-files/run-in-namespace.c (HAVE_EXEC_WITH_LOADER): New macro. (bind_mount): Rename to... (mirror_directory): ... this. Add 'firmlink' argument and use it instead of calling mkdir/open/close/mount directly. (bind_mount, make_symlink): New functions. (exec_in_user_namespace): Adjust accordingly. (exec_with_loader) [HAVE_EXEC_WITH_LOADER]: New function. (exec_performance): New function. (engines): Add them. * guix/scripts/pack.scm (wrapped-package)[fakechroot-library] [audit-module]: New procedures. [audit-source]: New variable. [build](elf-interpreter, elf-loader-compile-flags): New procedures. (build-wrapper): Use them. * tests/guix-pack-relocatable.sh: Test with 'GUIX_EXECUTION_ENGINE=fakechroot'. * doc/guix.texi (Invoking guix pack): Document the 'performance' and 'fakechroot' engines. * gnu/packages/aux-files/pack-audit.c: New file. * Makefile.am (AUX_FILES): Add it. Ludovic Courtès
2020-05-14pack: Wrapper honors 'GUIX_EXECUTION_ENGINE' environment variable....* gnu/packages/aux-files/run-in-namespace.c (struct engine): New type. (exec_default): New function. (engines): New variable. (execution_engine): New function. (main): Use it instead of calling 'exec_in_user_namespace' and 'exec_with_proot' directly. * tests/guix-pack-relocatable.sh: Add test with 'GUIX_EXECUTION_ENGINE'. * doc/guix.texi (Invoking guix pack): Document 'GUIX_EXECUTION_ENGINE'. Ludovic Courtès