This allows using Unbound as a local DNSSEC-enabled resolver. This
commit also allows configuration of the Unbound DNS resolver via a
Scheme API. The API currently provides very common options and
includes an escape hatch to enable less common configurations.
* gnu/service/dns.scm (unbound-serialize-field): New procedure.
(unbound-serialize-alist, unbound-serialize-section)
(unbound-serialize-string, unbound-serialize-boolean)
(unbound-serialize-list-of-strings): New procedures.
(unbound-zone): New record type.
(unbound-serialize-unbound-zone)
(unbound-serialize-list-of-unbound-zone): New procedures.
(unbound-remote): New record type.
(unbound-serialize-unbound-remote): New procedure.
(unbound-server): New record type.
(unbound-serialize-unbound-server): New procedure.
(unbound-configuration): New record type.
(unbound-config-file, unbound-shepherd-service): New procedures.
(unbound-account-service): New variable.
(unbound-service-type): New services.
* gnu/tests/dns.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* doc/guix.texi (DNS Services): Document it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Change-Id: I4c9646c9e17d4882e596d33ff8f738e1877fa1ae
* gnu/packages/rust.scm (%mrustc-commit): Update to newest commit.
(%mrustc-source): Update to 0.11.0-1.5e01a76. Add a patch. Adjust the
snippet to not use vendored openssl.
(rust-bootstrap)[source]: Remove patch, remove patch-flags. Add to the
snippet a substitution for compatibility with llvm-13.
[inputs]: Remove input labels. Remove conditional use of clang.
[arguments]: Allow parallel building on all architectures. Update the
make-flags. Replace the 'unpack phase to unpack the mrustc sources.
Delete the custom 'set-mrustc-sources and 'patch-cargo-checksum phases.
Adjust the custom 'patch-makefiles phase. Adjust the 'configure and
'build phases to no longer use clang on some architectures.
* gnu/packages/patches/mrustc-patches.patch: New file.
* gnu/packages/patches/rustc-1.54.0-src.patch: Remove file.
* gnu/local.mk (dist_patch_DATA): Update it.
Change-Id: I7e444abe4b386b1bb77f05a278ddef45152ddb3c
* gnu/packages/python-xyz.scm (python-pyls-black): Delete variable and remove
associated patch.
Project is no longer maintained as of 4 years to this date and has been
succeeded and forked by python-lsp-black.
Change-Id: Ic209f23e6368744db74b93e2a9c01a9859b04f82
* gnu/packages/patches/zig-0.10.0-610-bootstrap-resolve-conflicts.patch: New
file.
* gnu/local.mk (dist_patch_DATA): Regisiter it.
* gnu/packages/zig.scm (zig-0.10.0-538-source,zig-0.10.0-539-patch)
(zig-0.10.0-542-patch,zig-0.10.0-610): New variables.
* gnu/packages/patches/zig-0.10-fix-runpath.patch: New file.
* gnu/packages/patches/zig-0.10-use-system-paths.patch: New file.
* gnu/local.mk (dist_patch_DATA): Regisiter them.
* gnu/packages/zig.scm (zig-0.10)[source]: Add patches.
Use zig-source.
[arguments]<#:validate-runpath?>: Unset.
<#:phases>: Adjust 'patch-more-shebangs to use a file in inputs instead.
Change-Id: Ic4fd22d8bba664e3d42f433875f9d099969b9df9
* gnu/packages/patches/modglue-fix-build.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add reference to it.
* gnu/packages/engineering.scm (modglue): New variable.
Change-Id: I3ffe9e8b258f49021a21b17f088bebb44245cbad
This includes a patch to add support for a <runpath> element to
mono's *.dll.config and *.exe.config files. See
mono-6.12.0-add-runpath.patch for details.
* gnu/packages/dotnet.scm (mono-6.12.0-external-repo-specs,
mono-6.12.0): New variable.
* gnu/packages/patches/mono-6.12.0-add-runpath.patch,
gnu/packages/patches/mono-6.12.0-fix-AssemblyResolver.patch,
gnu/packages/patches/mono-6.12.0-fix-ConditionParser.patch: New patches.
* gnu/local.mk (dist_patch_DATA): Register new patches.
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
Change-Id: I937715ad00df17b92137b8cd364652e7d445e22e
* gnu/packages/c2rust.scm (c2rust): New variable.
* gnu/packages/patches/c2rust-ast-exporter-local-search.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add reference to it.
Change-Id: I9a80c6071a48ab5baed0a83e1c2463f83a6c6b9b
* gnu/services/containers.scm: New file;
(rootless-podman-configuration): new variable;
(rootless-podman-service-subids): new variable;
(rootless-podman-service-accounts): new variable;
(rootless-podman-service-profile): new variable;
(rootless-podman-shepherd-services): new variable;
(rootless-podman-service-etc): new variable;
(rootless-podman-service-type): new variable.
* gnu/local.mk: Test it.
* gnu/local.mk: Add them.
* doc/guix.texi (Miscellaneous Services): Document it.
Change-Id: I041496474c1027da353bd6852f2554a065914d7a
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit adds a Guix System service to handle allocation of subuid
and subgid requests. Users that don't care can just add themselves as a
subid-range and don't need to specify anything but their user name.
Users that care about specific ranges, such as possibly LXD, can specify
a start and a count.
* doc/guix.texi (Miscellaneous Services): Document it.
* gnu/build/activation.scm (activate-subuids+subgids): New variable.
* gnu/local.mk: Add gnu/tests/shadow.scm.
* gnu/system/accounts.scm (sexp->subid-range): New variable.
* gnu/system/shadow.scm (%root-subid): New variable;
(subids-configuration): new record;
(subid-range->gexp): new variable;
(assert-valid-subids): new variable;
(delete-duplicate-ranges): new variable;
(subids-activation): new variable;
(subids-extension): new record;
(append-subid-ranges): new variable;
(subids-extension-merge): new variable;
(subids-service-type): new variable.
* gnu/tests/shadow.scm (subids): New system test.
Change-Id: I3755e1c75771220c74fe8ae5de1a7d90f2376635
Signed-off-by: Giacomo Leidi <goodoldpaul@autistici.org>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/patches/librewolf-use-system-wide-dir.patch: New file.
* gnu/local.mk (dist_patch_DATA): Regisiter it.
* gnu/packages/librewolf.scm (make-librewolf-source)[patches]: Add it along with
torbrowser-compare-paths.patch.
(librewolf)[native-search-paths]: Add ICECAT_SYSTEM_DIR.
Change-Id: I8609d25a7e2725ad94ab257d720326639eb06778
* gnu/packages/patches/libjami-libgit2-compatibility.patch: New file.
* gnu/packages/jami.scm (libjami)[source]: Use it.
* gnu/local.mk (dist_patch_DATA): Add it.
Change-Id: I6a87d47f9a0ec1663b7ad3459960e9aaaf4bf562