Commit graph

2643 commits

Author SHA1 Message Date
Andrew Tropin
3c604968a1
doc: Add a note about Guix Home status.
* doc/guix.texi: Add a note about Guix Home status.

Signed-off-by: Oleg Pykhalov <go.wigust@gmail.com>
2021-09-27 17:06:55 +03:00
Liliana Marie Prikler
719bbcc15e
Update copyright assignments for Liliana Marie Prikler.
* doc/guix.texi: Update copyright name for Liliana Marie Prikler.
* gnu/packages/build-tools.scm: Update copyright name and email for Liliana
Marie Prikler.
* gnu/packages/convmv.scm: Likewise.
* gnu/packages/emacs-xyz.scm: Likewise.
* gnu/packages/emacs.scm: Likewise.
* gnu/packages/esolangs.scm: Likewise.
* gnu/packages/game-development.scm: Likewise.
* gnu/packages/games.scm: Likewise.
* gnu/packages/gnome-xyz.scm: Likewise.
* gnu/packages/gnome.scm: Likewise.
* gnu/packages/gstreamer.scm: Likewise.
* gnu/packages/guile-xyz.scm: Likewise.
* gnu/packages/minetest.scm: Likewise.
* gnu/packages/music.scm: Likewise.
* gnu/packages/patches/minetest-add-MINETEST_MOD_PATH.patch: Likewise.
* gnu/packages/patches/ppsspp-disable-upgrade-and-gold.patch: Likewise.
* gnu/packages/patches/webkitgtk-bind-all-fonts.patch: Likewise.
* gnu/packages/python-xyz.scm: Likewise.
* gnu/packages/unicode.scm: Likewise.
* gnu/packages/xorg.scm: Likewise.
* gnu/services/sound.scm: Likewise.
* guix/build-system/renpy.scm: Likewise.
* guix/build/emacs-utils.scm: Likewise.
* guix/build/renpy-build-system.scm: Likewise.
2021-09-25 09:34:36 +02:00
Tobias Geerinckx-Rice
34c105f929
file-systems: Add support for XFS.
* gnu/build/file-systems.scm (%xfs-endianness): New syntax.
(xfs-superblock?, read-xfs-superblock, xfs-superblock-uuid)
(xfs-superblock-volume-name, check-xfs-file-system): New procedures.
(%partition-label-readers, %partition-uuid-readers, check-file-system):
Register them.
* doc/guix.texi (Keyboard Layout and Networking and Partitioning):
Note XFS support.
2021-09-23 18:17:17 +02:00
Tobias Geerinckx-Rice
a75a3d7132
linux-boot: Honour fsck.mode & fsck.repair.
* gnu/build/linux-boot.scm (boot-system): Honour ‘fsck.mode=’ and
‘fsck.repair=’ kernel command line options.
* doc/guix.texi (Initial RAM Disk): Document both.
2021-09-23 18:17:16 +02:00
Tobias Geerinckx-Rice
602994847b
file-systems: Support forced checks & repairs.
* gnu/build/file-systems.scm (check-ext2-file-system)
(check-bcachefs-file-system, check-btrfs-file-system)
(check-fat-file-system, check-jfs-file-system, check-f2fs-file-system)
(check-ntfs-file-system, check-file-system): Take and honour new FORCE?
and REPAIR arguments.  Update the docstring.  Adjust all callers.
* gnu/system/file-systems.scm <file-system>: Add new SKIP-CHECK-IF-CLEAN?
and REPAIR fields.
(file-system->spec, spec->file-system): Adjust accordingly.
* gnu/build/linux-boot.scm (mount-root-file-system): Take new
SKIP-CHECK-IF-CLEAN? and REPAIR keyword arguments.  Thread them through
to CHECK-FILE-SYSTEM.
* doc/guix.texi (File Systems): Document both new <file-system> options.
2021-09-23 18:17:15 +02:00
zimoun
d18b787d8a
doc: Add item to "Submitting Patches" section.
* doc/contributing.texi (Submitting Patches): Add item about 'git-format-patch
--base'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-09-22 16:14:39 +02:00
Ludovic Courtès
5b32ad4f6f
graph: Add '--max-depth'.
* guix/graph.scm (export-graph): Add #:max-depth and honor it, adding
'depths' argument to 'loop'.
* guix/scripts/graph.scm (%options, show-help): Add '--max-depth'.
(%default-options): Add 'max-depth'.
(guix-graph): Pass #:max-depth to 'export-graph'.
* tests/graph.scm ("package DAG, limited depth"): New test.
* doc/guix.texi (Invoking guix graph): Document it.
2021-09-21 15:15:52 +02:00
Thiago Jung Bauermann
5c4fd77097
etc: Add systemd files for running ‘guix gc’ periodically
* etc/guix-gc.service.in: New file.
* etc/guix-gc.timer: Likewise.
* .gitignore: Ignore generated ‘guix-gc.service’.
* nix/local.mk (nodist_systemdservice_DATA): Add ‘guix-gc.service’ and
‘guix-gc.timer’.
(EXTRA_DIST): Add ‘guix-gc.service.in’ and ‘guix-gc.timer’.
* doc/guix.texi (Binary Installation): Mention the new systemd files.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-09-20 14:18:21 +00:00
Xinglu Chen
59ee10754e
import: Add 'generic-git' updater.
* guix/git.scm (ls-remote-refs): New procedure.
* tests/git.scm ("remote-refs" "remote-refs: only tags"): New tests.
* guix/import/git.scm: New file.
* doc/guix.texi (Invoking guix refresh): Document it.
* tests/import-git.scm: New test file.
* Makefile.am (MODULES, SCM_TESTS): Register the new files.

Co-authored-by: Sarah Morgensen <iskarian@mgsn.dev>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-09-18 19:37:45 +02:00
Andrew Tropin
bac597cc96
home-services: Add Mcron.
* gnu/home-services/mcron.scm: New file.
* gnu/local.mk: Add this.
* doc/guix.texi: Add documentation about Mcron Home Service.

Signed-off-by: Oleg Pykhalov <go.wigust@gmail.com>
2021-09-13 22:41:25 +03:00
Efraim Flashner
de4f5df95d
build/go: Support cross compiling.
* guix/build-system/go.scm (go-target): New procedure.
(go-build): Add goarch, goos keywords. Adjust bag depending if doing a
native or cross compile.
(go-cross-build): New procedure.
* guix/build/go-build-system.scm (setup-go-environment): Accept goarch,
goos keywords. Set go environment variables based on target architecture.
* doc/guix.texi (Build Systems): Mention new go-build-system keywords.
2021-09-13 15:33:30 +03:00
Andrew Tropin
6b5ff71b99
home-services: Add Shepherd.
* gnu/home-services/shepherd.scm: New file.
* gnu/local.mk: Add this.
* doc/guix.texi: Add documentation about Shepherd Home Service.

Signed-off-by: Oleg Pykhalov <go.wigust@gmail.com>
2021-09-09 20:28:03 +03:00
Andrew Tropin
aaffa43c17
doc: Add Guix Home documentation.
* doc/guix.texi: Add Guix Home documentation.
* doc/he-config-bare-bones.scm: New file.

Signed-off-by: Oleg Pykhalov <go.wigust@gmail.com>
2021-09-09 20:26:51 +03:00
Grant Shangreaux
de15397006
doc: add clarifications to Linode cookbook recipe
* doc/guix-cookbook.texi: clarify Linode recipe

Reword paragraph about adding the Guix device disk to Debian config.
Improve example commands for sftp-ing files to the server.
Minor wording fixes

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-09-08 22:36:53 +02:00
Marius Bakke
16ef7b4938
transformations: Git tags and 'git describe' style IDs are used as version.
* guix/transformations.scm (commit->version-string): New procedure.  Use git
tags and 'git describe' style identifiers directly.
(transform-package-source-commit): Adjust accordingly.
* tests/transformations.scm
("options->transformation, with-commit, version transformation"): New test.
* doc/guix.texi (Package Transformation Options): Mention the 'git describe'
style.
2021-09-08 18:03:50 +02:00
Marius Bakke
1dc3825e99
git: 'resolve-reference' handles 'git describe'-style commit IDs.
* guix/git.scm (resolve-reference): Rewrite tag-or-commit case to recognize
'git describe' style identifiers and resolve them as commits.
* doc/guix.texi (origin Reference): Mention it.
2021-09-08 18:03:50 +02:00
pukkamustard
f8f94cc544
guix: dune-build-system: Put dune into a reproducible release mode.
* guix/build/dune-build-system.scm (build,check): Replace the profile parameter
with the appropriate release flags.
* guix/build-system/dune.scm: Remove the profile parameter.
* doc/guix.texi: Remove paragraph on profile parameter.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2021-09-08 13:39:27 +02:00
Xinglu Chen
af4fa7c00c
import: elpa: Support NonGNU ELPA.
* guix/import/elpa.scm (elpa-url): Add NonGNU ELPA URL.
* doc/guix.texi (Invoking guix import): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-09-07 15:59:34 +02:00
Julien Lepiller
c60daa8e9d
gnu: version-control: Add gitile service.
* gnu/services/version-control.scm (gitile-service-type): New variable.
* doc/guix.texi (Version Control Services): Document it.
* gnu/tests/version-control.scm (%test-gitile): New variable.
2021-09-02 22:56:55 +02:00
Julien Lepiller
cc16103861
gnu: gitolite: Add unsafe-pattern configuration option.
* gnu/services/version-control.scm (gitolite-rc-file): Add
unsafe-pattern field.
(gitolite-rc-file-compiler): Write it.
* doc/guix.texi (Version Control Services): Document it.
2021-09-02 22:56:44 +02:00
Maxime Devos
cefaa0e607
doc: Correct name of Minetest importer.
* doc/guix.texi (Invoking guix import): Let the item name be
  'minetest' instead of 'contentdb'.

Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
2021-08-31 23:25:12 +02:00
Maxim Cournoyer
da4e409483
Migrate to the new 'targets' field of bootloader-configuration.
The old 'target' field is deprecated; adjust the sources to use the new
'targets' one instead.

* doc/guix-cookbook.texi<target>: Replace by 'targets'.
* gnu/bootloader/grub.scm: Likewise.
* gnu/installer/parted.scm: Likewise.
* gnu/machine/digital-ocean.scm: Likewise.
* gnu/system/examples/asus-c201.tmpl: Likewise
* gnu/system/examples/bare-bones.tmpl: Likewise
* gnu/system/examples/bare-hurd.tmpl: Likewise
* gnu/system/examples/beaglebone-black.tmpl: Likewise
* gnu/system/examples/desktop.tmpl: Likewise
* gnu/system/examples/docker-image.tmpl: Likewise
* gnu/system/examples/lightweight-desktop.tmpl: Likewise
* gnu/system/examples/vm-image.tmpl: Likewise
* gnu/system/examples/yggdrasil.tmpl: Likewise
* gnu/system/hurd.scm: Likewise
* gnu/system/images/hurd.scm: Likewise
* gnu/system/images/novena.scm: Likewise
* gnu/system/images/pine64.scm: Likewise
* gnu/system/images/pinebook-pro.scm: Likewise
* gnu/system/images/rock64.scm: Likewise
* gnu/system/install.scm: Likewise
* gnu/system/vm.scm: Likewise
* gnu/tests.scm: Likewise
* gnu/tests/ganeti.scm: Likewise
* gnu/tests/install.scm: Likewise
* gnu/tests/nfs.scm: Likewise
* gnu/tests/telephony.scm: Likewise
* tests/boot-parameters.scm: Likewise
* tests/system.scm: Likewise
2021-08-29 01:05:26 -04:00
Maxim Cournoyer
2ca982ff41
gnu: bootloader: Support multiple targets.
Fixes <https://issues.guix.gnu.org/40997>.

* gnu/bootloader.scm (<bootloader-configuration>): New 'targets' field.
(%bootloader-configuration-target): New procedure.
(bootloader-configuration-target): Add deprecation warning.
(bootloader-configuration-targets): New procedure.
* guix/scripts/system.scm (install): Access targets via
bootloader-configuration-targets.
(perform-action)[bootloader-target]: Remove unused argument and update doc.
Access targets via bootloader-configuration-targets and fix indentation.
(process-action): Access targets via bootloader-configuration-targets.
Do not provide the unused BOOTLOADER-TARGET argument when applying
`perform-action'.
* guix/scripts/system/reconfigure.scm (install-bootloader-program): Rename
DEVICE argument to DEVICES.  Adjust doc and comment.  Apply `installer' and
`disk-installer' for every DEVICES.
(install-bootloader): Access targets via bootloader-configuration-targets and
rename variable from DEVICE to DEVICES.
* gnu/tests/install.scm: Adjust accordingly.
* tests/guix-system.sh: Likewise.
* gnu/tests/reconfigure.scm (run-install-bootloader-test): Adjust the DEVICES
argument so that it is a list.
* doc/guix.texi: Update doc.
2021-08-29 01:05:26 -04:00
Sergei Trofimovich
79c07db3d5
doc: Work around po4a doc generation hangup.
Multiple people are affected by 'guix pull' hangup.
The reproducer is:

    $ po4a-translate -d -M UTF-8 -L UTF-8 -k 0 -f texinfo \
      -m "doc/guix.texi" -p "po/doc/guix-manual.de.po" -l "doc/guix.de.texi.tmp"

The regression is bisected down to commit fc29c80b9
("guix: opam: More flexibility in the importer").

The workaround is to avoid multiline @code{...} directive.

* doc/guix.texi: Avoid multiline @code{...} directive.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2021-08-21 14:00:01 +02:00
Alice BRENON
fc29c80b96
guix: opam: More flexibility in the importer.
* guix/scripts/import/opam.scm: Pass all instances of --repo as a list
  to the importer.
* guix/import/opam.scm (opam-fetch): Stop expecting "expanded"
  repositories and call get-opam-repository instead to keep values
  "symbolic" as long as possible and factorize.
  (get-opam-repository): Use the same repository source as CLI opam does
  (i.e. HTTP-served index.tar.gz instead of git repositories).
  (find-latest-version): Be more flexible on the repositories structure
  instead of expecting packages/PACKAGE-NAME/PACKAGE-NAME.VERSION/.
* tests/opam.scm: Update the call to opam->guix-package since repo is
  now expected to be a list and remove the mocked get-opam-repository
  deprecated by the support for local folders by the actual
  implementation.
* doc/guix.texi: Document the new semantics and valid arguments for the
  --repo option.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2021-08-21 00:05:21 +02:00
pukkamustard
33a1ec29fa
guix: dune-build-system: Add a profile parameter.
* guix/build-system/dune.scm: Add a profile parameter.
* guix/build/dune-build-system.scm (build): Use it.
* doc/guix.texi: Document it.
* gnu/packages/ocaml.scm: Remove profile being set from build flags.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2021-08-20 23:51:11 +02:00
Maxime Devos
467e874a86
guix: Add ContentDB importer.
* guix/import/contentdb.scm: New file.
* guix/scripts/import/contentdb.scm: New file.
* tests/contentdb.scm: New file.
* Makefile.am (MODULES, SCM_TESTS): Register them.
* po/guix/POTFILES.in: Likewise.
* doc/guix.texi (Invoking guix import): Document it.

Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
2021-08-20 12:41:54 +02:00
Maxime Devos
3df485152c
build-system: Add 'minetest-mod-build-system'.
* guix/build-system/minetest.scm: New module.
* guix/build/minetest-build-system.scm: Likewise.
* Makefile.am (MODULES): Add them.
* doc/guix.texi (Build Systems): Document 'minetest-mod-build-system'.

Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
2021-08-20 12:41:54 +02:00
Oleg Pykhalov
b948ab8b56
services: slim: Add pam-gnupg support.
* gnu/system/pam.scm (unix-pam-service): Add account and session PAM entries
for pam-gnupg.  Don't pass "#f" to "allow-root?" argument, because "lambda*"
already does this by default.
* doc/guix.texi (X Window): Document this.
* gnu/services/xorg.scm (<slim-configuration>)[gnupg?]: New record field.
(slim-pam-service): Pass "#:gnupg?" argument to "unix-pam-service".
2021-08-17 01:10:25 +03:00
Christopher Lemmer Webber
9455143907
Update copyright/name notices for Christine Lemmer-Webber.
* doc/guix-cookbook.texi: Update copyright/name for Christine Lemmer-Webber.
* gnu/build/image.scm: Likewise.
* gnu/build/vm.scm: Likewise.
* gnu/packages/admin.scm: Likewise.
* gnu/packages/assembly.scm: Likewise.
* gnu/packages/audio.scm: Likewise.
* gnu/packages/backup.scm: Likewise.
* gnu/packages/check.scm: Likewise.
* gnu/packages/databases.scm: Likewise.
* gnu/packages/emacs-xyz.scm: Likewise.
* gnu/packages/finance.scm: Likewise.
* gnu/packages/gnupg.scm: Likewise.
* gnu/packages/guile-xyz.scm: Likewise.
* gnu/packages/guile.scm: Likewise.
* gnu/packages/haskell-xyz.scm: Likewise.
* gnu/packages/linux.scm: Likewise.
* gnu/packages/mail.scm: Likewise.
* gnu/packages/password-utils.scm: Likewise.
* gnu/packages/perl.scm: Likewise.
* gnu/packages/python-web.scm: Likewise.
* gnu/packages/python-xyz.scm: Likewise.
* gnu/packages/python.scm: Likewise.
* gnu/packages/sphinx.scm: Likewise.
* gnu/packages/ssh.scm: Likewise.
* gnu/packages/xdisorg.scm: Likewise.
* gnu/services/networking.scm: Likewise.
* gnu/system/vm.scm: Likewise.
2021-08-15 14:15:37 -04:00
Ricardo Wurmus
a0fd46304e
doc: Fix typo.
* doc/guix-cookbook.texi (GUIX_PACKAGE_PATH): Fix typo in file name.

Reported-by: breathein on IRC.
2021-08-15 11:36:38 +02:00
Mathieu Othacehe
cfd2442488
services: cuirass: Reverse the no-publish logic.
This is a follow-up of d128c6fd33.

* gnu/services/cuirass.scm (<cuirass-remote-server-configuration>)
[no-publish?]: Rename it to ...
[publish?]: ... this new field.
(cuirass-shepherd-service): Adapt it.
* doc/guix.texi (Cuirass remote building): Document it.
2021-08-13 13:46:21 +02:00
Mathieu Othacehe
23b5b168ae
services: cuirass: Add a substitute-urls argument.
* gnu/services/cuirass.scm (<cuirass-remote-worker-configuration>): Add a
substitute-urls field.
(cuirass-remote-worker-shepherd-service): Honor it.
* doc/guix.texi (Cuirass remote building): Document it.
2021-08-12 14:31:54 +02:00
Mathieu Othacehe
d128c6fd33
services: cuirass: Add a no-publish argument.
* gnu/services/cuirass.scm (<cuirass-remote-server-configuration>): Add a
no-publish? field.
(cuirass-shepherd-service): Honor it.
* doc/guix.texi (Cuirass remote building): Document it.
2021-08-12 12:59:55 +02:00
Maxim Cournoyer
392c7175ae
doc: Add a tip to better name mcron jobs.
* doc/guix.texi (Scheduled Job Execution): Specify the 'displayable' argument
for the 'updatedb-job' example.  Add a tip to better name jobs, referring to
the modified example.
2021-08-08 01:28:57 -04:00
Julien Lepiller
6c10c96fed
nls: Update translations.
* po/doc/guix-cookbook.ru.po: New file.
* po/doc/guix-cookbook.sk.po: New file.
* po/*/*.po: Update translations.
* doc/local.mk (COOKBOOK_LANGUAGES): Add ru and sk.
(info_TEXINFOS): Add Russian and Slovak cookbooks.
* po/doc/local.mk (DOC_COOKBOOK_PO_FILES): Add Russian and Slovak po
files.
2021-08-04 14:49:53 +02:00
Maxim Cournoyer
e1ddcf75bf
doc: Fix typo.
* doc/guix.texi (Telephony Services): Remove the extraneous 'jami' argument
when invoking 'list-actions'.
2021-08-03 11:26:59 -04:00
Maxim Cournoyer
10f554700c
Reinstate "services: Add a service for Jami."
This reverts commit 4673f81793, which reverted
commit 69dcc24c9f with the fix detailed below.

Thanks to Christopher Baines for reporting the failure and proposing a fix.

* guix/self.scm (compiled-guix) [*system-test-modules*]: Add the test data
files via the 'extra-files' argument.
* gnu/local.mk (dist_patch_DATA): Move the tests/data/jami-dummy-account.dat
file to...
* gnu/local.mk (MODULES_NOT_COMPILED): ... here.
2021-08-02 17:23:30 -04:00
Maxim Cournoyer
4673f81793
Revert "services: Add a service for Jami."
This reverts commit 69dcc24c9f.  It broke 'guix
pull'.
2021-08-02 15:48:59 -04:00
Maxim Cournoyer
69dcc24c9f
services: Add a service for Jami.
* gnu/services/telephony.scm (string-or-computed-file?)
(string-list?, account-fingerprint-list?): New procedures.
(maybe-string-list, maybe-account-fingerprint-list)
(maybe-boolean, maybe-string, jami-account-list): New configuration field
types.
(serialize-string-list, serialize-boolean, serialize-string)
(jami-account, jami-account->alist, jami-configuration)
(jami-account-list?, jami-account-list-maybe): New procedures.
(%jami-accounts): New variable.
(jami-configuration->command-line-arguments): New procedure.
(jami-dbus-session-activation, jami-shepherd-services): New procedures.
(jami-service-type): New variable.
* gnu/build/jami-service.scm: New file.
* gnu/tests/data/jami-dummy-account.dat: Likewise.
* gnu/tests/telephony.scm: Likewise.
* gnu/local.mk (GNU_SYSTEM_MODULES): Register them.
* Makefile.am (SCM_TESTS): Register the test file.
(dist_patch_DATA): Register the new data file.
* doc/guix.texi (Telephony Services): Document it.
2021-08-02 15:15:02 -04:00
Brice Waegeneire
a85ec0bf69
services: Migrate to <setuid-program>.
* gnu/services/dbus.scm (dbus-setuid-programs, polkit-setuid-programs):
  Return setuid-programs.
* gnu/services/desktop.scm (enlightenment-setuid-programs): Return
 setuid-programs.
 (%desktop-services)[mount-setuid-helpers]: Use setuid-programs.
* gnu/services/docker.scm (singularity-setuid-programs): Return
 setuid-programs.
* gnu/services/xorg.scm(screen-locker-setuid-programs): Return
 setuid-programs.
* gnu/system.scm (%setuid-programs): Return setuid-programs.
* doc/guix.texi (Setuid Programs, operating-system Reference): Replace
  'list of G-expressions' with 'list of <setuid-program>'.
2021-07-29 11:32:48 -04:00
Chris Lemmer-Webber
a7ac19851b
services: setuid: More configurable setuid support.
New record <setuid-program> with fields for setting the specific user
and group, as well as specifically selecting the setuid and setgid bits,
for a program within the setuid-program-service.

* gnu/services.scm (setuid-program-file-like-deprecated): New function.
  (setuid-program-service-type): Make use of
  setuid-program->activation-gexp.  Adjust the extend property to handle
  <setuid-program>.
* gnu/build/activation.scm (activate-setuid-programs): Update to expect a
  <setuid-record> list for each program entry.
* gnu/system.scm: (operating-system-setuid-programs): Renamed to
  %operating-system-setuid-programs and replace it with new procedure.
  (operating-system-default-essential-services,
  hurd-default-essential-services): Replace
  operating-system-setuid-programs with
  %operating-system-setuid-programs.
* gnu/system/setuid.scm: New file.
* doc/guix.texi (Setuid Programs): Document <setuid-program>.

Co-authored-by: Brice Waegeneire <brice@waegenei.re>
2021-07-29 11:32:08 -04:00
Maxim Cournoyer
aeded14b83
pack: Allow embedding custom control files in deb packs.
* guix/scripts/pack.scm (self-contained-tarball/builder)
[extra-options]: New argument.
(self-contained-tarball, squashfs-image, docker-image)
(debian-archive): Likewise.  Remove two TODO comments.  Document
EXTRA-OPTIONS.  Use the custom control files when provided.
(%deb-format-options): New variable.
(show-deb-format-options, show-deb-format-options/detailed): New procedures.
(%options): Register new options.
(show-help): Augment with new usage.
(guix-pack): Validate and propagate new argument values.
* doc/guix.texi (Invoking guix pack)[deb]: Document how to list advanced
options.  Add an example.
* tests/pack.scm (deb archive...): Provide extra-options to the debian-archive
procedure, and validate that the provided files are embedded in the pack.
2021-07-18 02:02:34 -04:00
Brice Waegeneire
2aa65869ba
doc: Fix docker-configuration field names.
* doc/guix.texi (Docker): Correct filed names "docker" and "docker-cli".
2021-07-17 22:49:20 +02:00
Maxim Cournoyer
01d7e8c278
doc: Use Awk in one of the examples.
The output of the listing of available packages now contains a mix of tab and
space characters, so that its output is more pleasing to read.  This preserves
most simple uses of 'cut', but the added extra space padding can cause a
change in behavior in some scenarios.

* doc/guix.texi (Invoking guix build): Replace 'cut' by 'awk' in one of the
examples.
2021-07-15 16:12:04 -04:00
Ludovic Courtès
580a031e7d
doc: Build manual translations with 'guile-3.0-latest'.
Fixes <https://bugs.gnu.org/47428>.
Reported by Leo Famulari <leo@famulari.name>.

* doc/build.scm (translated-texi-manuals): Explicitly use 'guile-3.0-latest'.
2021-07-09 17:33:46 +02:00
Mathieu Othacehe
74168d99bb
system: Provide mg instead of zile.
Since the update to the 2.6.2 release, the closure size of zile has
increased. Switch to mg which is lighter.

* gnu/system.scm (%base-packages-interactive): Replace zile by mg.
* doc/guix.texi (Proceeding with the Installation,
Using the Configuration System): Adapt those sections.
2021-07-09 12:08:12 +02:00
Efraim Flashner
49e2e75ced
gnu: %guile-3.0-static-stripped: Rename to %guile-static-stripped.
* gnu/packages/make-bootstrap.scm (%guile-3.0-static-stripped): Rename
to %guile-static-stripped.
(%guile-bootstrap-tarball): Adjust accordingly.
* gnu/system/linux-initrd.scm (expression->initrd): Use
%guile-static-stripped as default guile.
* doc/guix.texi (initial RAM disk)[expression->initrd]: Adjust
documentation accordingly.
2021-07-08 09:39:05 +03:00
Raghav Gururajan
02562e2f1e
services: Add bitmask-service-type.
* gnu/services/vpn.scm (bitmask-service-type): New variable.
* doc/guix.texi: Document it.

Co-authored-by: jgart <jgart@dismail.de>
2021-07-07 10:20:28 -04:00
Leo Prikler
f17a52540f
doc: Fix broken reference in guix.texi.
This is a follow-up to c2ff06e5e4, in which
a link to the cookbook was added using a different name than the actual
section.

* doc/guix.texi (Using the Configuration System): Fix broken link to cookbook.
2021-07-07 11:19:34 +02:00
Joshua Branson
c2ff06e5e4
doc: Add guide showing auto-login on a specific TTY to the cookbook.
This is a follow-up to the discussion in <https://bugs.gnu.org/48974>.

* doc/guix-cookbook.texi (System Configuration): Add a brief guide that
explains auto login a user to one TTY.

* doc/guix.texi (System Services): Add an texinfo anchor, so that the cookbook
entry "Auto Login a User to a Specific TTY" can refer back to the precise
point that the GNU Guix Reference manual.  Also add a reference to the
cookbook that shows how to auto login a specific user to one TTY.

Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
2021-07-07 11:13:38 +02:00
Chris Marusich
586136d127
doc: Change Debbugs usertags user to "guix".
* doc/contributing.texi (Debbugs Usertags): Change the user for usertags from
"guix-devel@gnu.org" to "guix".  This was discussed on the guix-devel email
list: <https://lists.gnu.org/archive/html/guix-devel/2021-06/msg00212.html>.
2021-07-05 21:11:13 -07:00
Ludovic Courtès
a2b22cae4f
doc: Fix typo.
* doc/guix.texi (Build Systems): Fix typo.
2021-07-04 23:00:36 +02:00
Hartmut Goebel
364db4fdf6
doc: Add a note and warning regarding the usage of deb packs.
* doc/guix.texi (Invoking guix pack): Move to the end of the table, and add a
note and warning regarding the usage of deb packs.
2021-06-30 14:43:36 -04:00
Maxime Devos
d9e0ae07db
guix: gexp: Define gexp->approximate-sexp.
It will be used in the 'optional-tests' linter.

* guix/gexp.scm (gexp->approximate-sexp): New procedure.
* tests/gexp.scm
  ("no references", "unquoted gexp", "unquoted gexp (native)")
  ("spliced gexp", "unspliced gexp, approximated")
  ("unquoted gexp, approximated"): Test it.
* doc/gexp.scm ("G-Expressions"): Document it.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-06-30 13:53:00 +02:00
Maxim Cournoyer
82daab4281
pack: Add support for the deb format.
* .dir-locals.el (scheme-mode)[gexp->derivation]: Define indentation rule.
* guix/scripts/pack.scm (debian-archive): New procedure.
(%formats): Register the new deb format.
(show-formats): Add it to the usage string.
* tests/pack.scm (%ar-bootstrap): New variable.
(deb archive with symlinks): New test.
* doc/guix.texi (Invoking guix pack): Document it.
* NEWS: Add news entry.
2021-06-29 14:53:21 -04:00
luhui
fda0959a14
services: kmscon: Add keyboard-layout fields.
* gnu/services/base.scm (<kmscon-configuration>): Add keyboard-layout fields.
* doc/guix.texi (Base Services): Document them.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-06-29 19:01:25 +02:00
Domagoj Stolfa
66be80fabb
gnu: Add strongswan service.
* gnu/services/vpn.scm (<strongswan-configuration>): New record type.
(charon-plugins, strongswan-configuration-file)
(strongswan-shepherd-service, strongswan-service-type): New variables.
* doc/guix.tex (VPN Services): Document them all.
2021-06-25 00:39:32 +02:00
Raghav Gururajan
1bf1226a4f
services: certbot: Add option to use CSR file.
* gnu/services/certbot.scm (<certificate-configuration>): Add csr field.
(certbot-command): Modify.
* doc/guix.texi (Certificate Services): Document it.
2021-06-24 18:19:39 -04:00
Chris Marusich
3c86372e36
doc: Document the use of Debbugs usertags.
* doc/contributing.texi (Contributing): Update the short description of the
"Tracking Bugs and Patches" chapter in the menu.
(Tracking Bugs and Patches): Split this section into three new subsections,
titled "The Issue Tracker", "Debbugs User Interfaces", and "Debbugs Usertags".
Of these, only the "Debbugs Usertags" is actually new.
2021-06-23 21:56:29 -07:00
Tobias Geerinckx-Rice
828ceee7db
services: cups: Remove obsolete KeepAliveTimeout directive.
461bd4e501

* gnu/services/cups.scm (<cups-configuration>): Remove keep-alive-timeout field.
* doc/guix.texi (Printing Services): Likewise.
2021-06-23 03:26:33 +02:00
Tobias Geerinckx-Rice
e254287b0c
services: cups: Fix ‘files-config’ typo/left-over.
* gnu/services/cups.scm (<policy-configuration>): Substitute
<files-configuration> for <files-config> in documentation.
* doc/guix.texi (Printing Services): Likewise.
2021-06-23 03:01:48 +02:00
Brice Waegeneire
ef3f38ea00
services: openssh: Replace 'without-password' by 'prohibit-password'.
For some time, OpenSSH's option 'PermitRootLogin' has deprecated the
ambiguous argument 'without-password' with 'prohibit-password'.

* doc/guix.texi (Network Services): Replace 'without-password by
'prohibit-password.
* gnu/machine/digital-ocean.scm (guix-infect): Change system
configuration to use 'prohibit-password.
* gnu/services/ssh.scm (openssh-configuration): Change comment to use
'prohibit-password.
(openssh-config-file): Add support for 'prohibit-password to
'permit-root-login'.  Warn about deprecated 'without-password usage.
* gnu/tests/ganeti.scm (%ganeti-os): Replace 'without-password by
'prohibit-password.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2021-06-20 16:44:08 +02:00
Nicolas Goaziou
ffe50737b2
doc: Fix a typo.
* doc/guix.texi (Substitute Server Authorization): Fix typo.
2021-06-19 23:51:25 +02:00
Ludovic Courtès
b5b9266e40
doc: Clarify Git commit signing; fix typo.
Suggested by Maxime Devos <maximedevos@telenet.be>
and Julien Lepiller <julien@lepiller.eu>.

* doc/contributing.texi (Commit Access): Clarify Git commit signing
setup and fix typo.
2021-06-18 14:18:07 +02:00
Ludovic Courtès
d3d6d1c6eb
doc: Explain more reasons for commit revocation.
* doc/contributing.texi (Commit Revocation): Expound.
2021-06-18 14:18:07 +02:00
Ludovic Courtès
d475134245
doc: Add "Addressing Issues" section.
* doc/contributing.texi (Addressing Issues): New section.

Co-authored-by: Christopher Baines <mail@cbaines.net>
2021-06-18 14:18:07 +02:00
Ludovic Courtès
aaf4a0090f
doc: Structure the "Commit Access" section.
* doc/contributing.texi (Commit Access): Add introduction and section
heading.  Separate OpenPGP setup from commit policy.
2021-06-18 14:18:07 +02:00
Christopher Baines
4985a42724
Start enabling substitutes from bordeaux.guix.gnu.org.
In addition to substitutes from ci.guix.gnu.org.  There are more changes that
can be made in the future, but these changes seem like a good start.

* config-daemon.ac (guix_substitute_urls): Add https://bordeaux.guix.gnu.org.
* guix/scripts/substitute.scm (%default-substitute-urls): Add
http://bordeaux.guix.gnu.org.
* guix/store.scm (%default-substitute-urls): Add bordeaux.guix.gnu.org.
* doc/guix.texi: Adjust accordingly.
* doc/contributing.texi: Adjust accordingly.
2021-06-18 11:25:41 +01:00
Tobias Geerinckx-Rice
571dc36a69
doc: Update QEMU command line.
* doc/guix.texi (Invoking guix system): Substitute ‘-nic’ for the
obsolete ‘-net’.
2021-06-17 11:19:19 +02:00
Luis Felipe
0b5120fb03
doc: Fix reference to the bind package variable name.
* doc/guix.texi (Globally-Visible Packages): Change "bind" variable
name to the actual variable name, "isc-bind".

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2021-06-13 22:23:24 -04:00
Paul A. Patience
483f537081
doc, gnu, guix: Fix typos.
* doc/guix.texi: Fix various typos and reword a sentence.
* gnu/packages/cpp.scm (cpplint)[description]: Fix typo.
* gnu/packages/dns.scm (ldns): Fix typo in comment.
* gnu/packages/games.scm (yamagi-quake2): Fix typo in comment.
* gnu/packages/qt.scm (python-pyqtwebengine): Fix typo in comment.
* gnu/packages/rails.scm (ruby-autoprefixer-rails): Fix typo in comment.
* gnu/packages/syndication.scm (quiterss)[description]: Fix typo.
* gnu/packages/terminals.scm (kmscon): Fix typo in comment.
* gnu/packages/xml.scm (perl-xml-sax-base)[description]: Fix typo.
  (python-elementpath)[description]: Fix typo.
* guix/build/asdf-build-system.scm (output-translation): Fix typo in docstring.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-13 23:57:45 +02:00
Ludovic Courtès
6b752bd29a
doc: Update minimum Guile-Git version.
* doc/guix.texi (Requirements): Update Guile-Git version.
2021-06-08 09:07:36 +02:00
Xinglu Chen
b8baebae6a
doc: Add reference for ‘git-version’ and ‘hg-version’.
* doc/contributing.texi (Version Numbers): Document ‘git-version’ and
  ‘hg-version’.
* doc/guix.texi (package Reference): Reference ‘Version Numbers’ section for
  version naming guidelines.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-06 23:12:17 +02:00
Matthew James Kraai
f7331f06db
doc: Pluralize "package."
* doc/contributing.texi (Submitting Patches): Pluralize "package."

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2021-06-06 15:10:57 +02:00
Solene Rapenne
a9afff4beb
doc: Mention virtualization module and add missing closing parenthesis.
* doc/contributing.texi (Submitting Patches): Mention virtualization module
and add missing closing parenthesis.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-06-04 13:28:40 +02:00
Eric Brown
ecbfa20609
doc: Fix example iptables configuration.
* doc/guix.texi (Networking Services): Allow established and related incoming
connections in example iptables configuration.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2021-06-04 00:11:47 +05:30
Xinglu Chen
bdc298ecee
import: Add CHICKEN egg importer.
* guix/import/egg.scm: New file.
* guix/scripts/import/egg.scm: New file.
* tests/egg.scm: New file.
* Makefile.am (MODULES, SCM_TESTS): Register them.
* po/guix/POTFILES.in: Likewise.
* guix/scripts/import.scm (importers): Add egg importer.
* doc/guix.texi (Invoking guix import, Invoking guix refresh): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-03 13:05:18 +02:00
Ludovic Courtès
82d8ab01f5
maint: Require Guile 3.0.
* configure.ac: Require Guile 3.0.
* doc/guix.texi (Requirements): Adjust accordingly.
* gnu/packages/package-management.scm (guile2.2-guix): Remove.
* guix/lint.scm (exception-with-kind-and-args?): Remove 'cond-expand'.
* guix/scripts/deploy.scm (deploy-machine*): Likewise.
* guix/store.scm (call-with-store): Likewise.
* guix/swh.scm (http-get*, http-post*): Likewise.
* guix/ui.scm (without-compiler-optimizations, guard*)
(call-with-error-handling): Likewise.
2021-06-01 23:26:07 +02:00
Brice Waegeneire
8a0dc5f1bf
tests: Fix loadable-kernel-modules-service tests.
* gnu/tests/linux-modules.scm
(run-loadable-kernel-modules-service-test): Actually load the modules
with kernel-module-loader-service-type.  Use a singleton service instead
of defining a custom one.
* doc/guix.texi (Service Reference): To give an example of
linux-loadable-module-service-type use a singleton instead of defining a
new service.
2021-05-31 21:57:26 +02:00
Maxim Cournoyer
b9ac7d9aaa
doc: Add a note about networking requirements for SSH access to VMs.
Fixes <https://issues.guix.gnu.org/48739>.  It may seem silly, but when not
realizing this firsthand, it can be quite surprising and thus not obvious to
troubleshoot.  Thanks to Eric Brown for their insightful comments on the
tracker.

* doc/guix.texi (Running Guix in a VM): Add a note that networking support
must be available in the Guix System operating system declaration used for the
VM.
2021-05-30 23:33:36 -04:00
Tobias Geerinckx-Rice
d127fdd0e7
doc: Fix typos.
* doc/contributing.texi (Translating Guix): Fix ‘runnig’ typo.  Replace
‘target’ with ‘command’ to match the verb.  Fix ‘refered’ and ‘formating’
too.
2021-05-30 15:13:40 +02:00
Brendan Tildesley
338f012d8b
doc: lxqt-desktop-service: Update lxqt homepage url.
* doc/guix.texi: Replace lxqt.github.io with lxqt-project.org.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-05-29 20:16:51 +02:00
Ludovic Courtès
22f95a09eb
doc: Spell out the implications of disabling substitutes.
Suggested by elb on #guix.

* doc/guix.texi (Binary Installation): Add note explaining the
implications of disabling substitutes.
2021-05-28 23:04:43 +02:00
Efraim Flashner
de393bd027
doc: Remove reference to mips64.
* doc/contributing.texi (Submitting Patches): Don't suggest building
packages for mips64.
2021-05-25 10:54:27 +03:00
Filip Lajszczak
4b08aad5e7
doc: Correct spelling
* doc/contributing.tex (Submitting Patches): Correct spelling of "acknowledgement"

Co-authored-by: Piotr Kaznowski <piotr@kazno.dev>
Signed-off-by: Marius Bakke <marius@gnu.org>
2021-05-23 17:49:57 +02:00
Filip Lajszczak
c8d6fa7747
doc: Add information about first patch.
* doc/contributing.texi (Submitting Patches): Add information about first patch acnowledgement delay.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-05-22 23:44:57 +02:00
Tobias Geerinckx-Rice
c0087d3370
The #guix channel is hosted by Libera Chat.
* README (Contact): Update network name.
* ROADMAP: Likewise.
* doc/contributing.texi (Contributing): Likewise.
* doc/guix.texi (After System Installation): Likewise.
2021-05-20 01:58:04 +02:00
Ludovic Courtès
1ac137a365
doc: Fix references to the "geiser" package.
Reported by munksgaard on #guix.

* doc/guix.texi (Invoking guix pack): Replace "geiser" with
"emacs-geiser" in examples.
(Invoking guix refresh): Likewise.
2021-05-19 23:18:12 +02:00
Maxim Cournoyer
fd449608eb
services: Add a service for opendht.
* gnu/services/networking.scm (maybe-number?, maybe-string?): New procedures.
(<opendht-configuration>): New configuration record.
(%opendht-accounts): New variable.
(opendht-configuration->command-line-arguments): New procedure.
(opendht-shepherd-service, opendht-service-type): New variables.
* doc/guix.texi (Networking Services): Document the new service.
2021-05-17 23:27:40 -04:00
Ludovic Courtès
938ffcbb05
publish: Add '--negative-ttl'.
* guix/scripts/publish.scm (show-help, %options): Add '--negative-ttl'.
(render-narinfo, render-narinfo/cached, make-request-handler): Add #:negative-ttl
and honor it.
(run-publish-server): Add #:narinfo-negative-ttl and honor it.
(guix-publish): Honor '--negative-ttl'.
* tests/publish.scm ("negative TTL", "no negative TTL"): New tests.
2021-05-16 23:28:11 +02:00
Jelle Licht
bcdb8e9885
doc: Show how to enable Guile support for Geiser.
* doc/contributing.texi (The Perfect Setup): Adjust "guix package -i"
command line.
2021-05-13 23:28:36 +02:00
Maxim Cournoyer
55aa50834f
doc: Do not instruct to decompress the VM image.
Also replace the obsolete 'guix system vm-image' command mention by the 'guix
system image'.

* doc/guix.texi (Running Guix in a VM): Remove VM image decompression
instruction.
<guix system vm-image>: Replace by 'guix system image'.
2021-05-12 10:22:38 -04:00
Maxim Cournoyer
b7cbca221f
Merge branch 'version-1.3.0' 2021-05-11 22:42:59 -04:00
raid5atemyhomework
a3df382525
gnu: Allow services to install kernel-loadable modules.
* gnu/system.scm (operating-system-directory-base-entries): Remove code
to handle generation of "kernel" for linux-libre kernels.
(operating-system-default-essential-services): Instantiate
linux-builder-service-type.
(package-for-kernel): Move ...
* gnu/services.scm: ... to here.
(linux-builder-service-type): New variable.
(linux-builder-configuration): New type.
(linux-loadable-module-service-type): New variable.
* gnu/tests/linux-modules.scm (run-loadable-kernel-modules-test): Move
code to ...
(run-loadable-kernel-modules-test-base): ... new procedure here.
(run-loadable-kernel-modules-service-test): New procedure.
(%test-loadable-kernel-modules-service-0): New variable.
(%test-loadable-kernel-modules-service-1): New variable.
(%test-loadable-kernel-modules-service-2): New variable.
* doc/guix.texi: Document linux-loadable-module-service-type.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2021-05-11 16:13:48 +02:00
Alexey Abramov
0d6eb69266
services: dovecot: Add ‘managesieve-sieve-capability’ option.
* gnu/services/mail.scm (protocol-configuration): Add a
‘managesieve-sieve-capability’ field.
* doc/guix.texi (Mail Services): Document it.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2021-05-06 11:31:48 +02:00
Alexey Abramov
6e05920cef
services: dovecot: Add ‘managesieve-notify-capability’ option.
* gnu/services/mail.scm (protocol-configuration): Add a
‘managesieve-notify-capability’ field.
* doc/guix.texi (Mail Services): Document it.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2021-05-06 11:27:00 +02:00
Alexey Abramov
0fd5bdcaf6
services: dovecot: Add ‘imap-metadata?’ protocol configuration option.
* gnu/services/mail.scm (protocol-configuration): Add an ‘imap-metadata?’
setting to enable IMAP METADATA support in the ‘imap’ protocol.
* doc/guix.texi (Mail Services): Document it.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2021-05-06 11:08:52 +02:00
Alexey Abramov
5b5c50961f
services: dovecot: Add ‘mail-attribute-dict’ configuration option.
* gnu/services/mail.scm (dovecot-configuration): Define a
‘mail-attribute-dict’ directive for IMAP METADATA storage.
* doc/guix.texi (Mail Services): Document it.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2021-05-06 11:08:52 +02:00
Ludovic Courtès
1ca0a9a307
gnu: rasdaemon: Fix Texinfo syntax of description.
Regression introduced in 58805da44d.

* gnu/packages/linux.scm (rasdaemon)[description]: Avoid @acronym since
Guile's Texinfo module doesn't currently support @comma{}.
* doc/guix.texi (Linux Services): Use @comma{} within @acronym.
2021-05-05 23:42:57 +02:00