| Age | Commit message (Collapse) | Author |
|
This enhances flexibility by allowing users to specify custom service
dependencies for libvirt, rather than being limited to the default hardcoded
requirements. This is particularly useful for complex deployments or when
integrating with custom service configurations.
Note that default 'dbus-system' requirement may not be strictly necessary for
basic libvirt operation. For instance, libvirt can function without issues in
many cases even when dbus-system is not included in the requirements, allowing
for more minimal deployments.
* gnu/services/virtualization.scm (list-of-symbols?,
serialize-list-of-symbols): New procedures.
(libvirt-configuration): Add 'requirement' field to allow custom service
dependencies.
(libvirt-shepherd-service): Use the configured requirements instead of
hardcoded ones.
* doc/guix.texi (Virtualization Services): Document the new 'requirement'
option.
Change-Id: I05cfbb5227cff9b7d9b55ee37774c96e39c4c526
|
|
The libvirt daemon requires 'dmidecode' to provide Host SMBIOS information
to virtual machines. Without it in the PATH, it fails with the error:
"Host SMBIOS information is not available".
* gnu/services/virtualization.scm (libvirt-configuration): Add 'dmidecode'
field to specify the dmidecode package.
(libvirt-service-type): Add dmidecode to system profile to ensure it's
available in PATH.
* doc/guix.texi (Virtualization Services): Document the new 'dmidecode'
option.
Change-Id: I8e5e565e95149c5aeba2dc0c5c757046efa6de2d
|
|
* gnu/services/admin.scm (log-rotation-configuration): Change
validation method and accept gexp procedure.
Change-Id: I67cd5051a05d211349ecbc66ee3a55ab5b1a5971
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
* gnu/services/admin.scm (rottlog-service{,-type},
rottlog-configuration{,?,-rottlog,-rc-file,-rotations,-jobs}
log-rotation{,?,-frequency,-files,-options,-post-rotate},
%default-rotations, %rotated-files, %default-log-rotation-options):
Remove variables.
* doc/guix.texi (Rottlog): Remove subheading.
* .dir-locals.el: De-register rottlog-configuration.
References: a9f21036e43f ("services: rottlog: Deprecate.")
Change-Id: I9d62deb4dba31a07c3ef82cde0fca3a05ece064d
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
|
|
* gnu/packages/scanner.scm (sane-backends)[inputs]: Omit hplip.
[arguments]: Remove hplip phases.
* gnu/services/desktop.scm (lift-sane-configuration): Warn user that
hplip needs to be explicitly enabled in sane-configuration.
Change-Id: I05ffc3a2d04c5ee3da2739b68085557ff791814f
|
|
* gnu/services/desktop.scm (sane-configuration): New record.
(sane-service-type): Add native search paths to environment.
Change-Id: Ia7b66b62cf027200dd94533f32c1e4bc0ed373d3
|
|
When using a tor-transport-plugin, namely a webtunnel with lyrebird, it is
necessary to have access to ssl certs to establish a connection to the bridge
over https.
* gnu/services/networking.scm (tor-shepherd-service): add nss-certs
file-sytem-mapping
Change-Id: Ifb7488d406cc6300eb6ac95e7dc0dfef0ff571db
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Modified-by: Ludovic Courtès <ludo@gnu.org>
|
|
* doc/guix.texi: Document Miniflux service and configuration.
* gnu/services/web.scm: New service.
* gnu/services/web.scm: Define shepherd service and account roles.
* gnu/tests/web.scm: (%miniflux-create-admin-credentials,
miniflux-base-system, %test-miniflux-admin-string, %test-miniflux-admin-file,
%test-miniflux-socket): Add system tests for Miniflux service.
Change-Id: I4a336e677ec8b46aed632f0ded9cc11c2d38975f
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
Indexing all Debbugs issues from scratch can take more than an hour.
* gnu/services/web.scm (mumi-shepherd-services): Raise #:max-duration to 2
hours.
|
|
* gnu/services/web.scm (<mumi-configuration>)[data-directory, rsync-remote,
rsync-flags]: New fields.
(%mumi-worker-log): Delete variable.
(%mumi-rsync-and-index-log): New variable.
(mumi-rsync-and-index): New function.
(mumi-shepherd-services): Remove mumi-worker service. Add mumi-rsync-and-index
service.
(mumi-service-type): Remove default value.
* doc/guix.texi (Web Services)[mumi]: Document data-directory, rsync-remote
and rsync-flags fields.
Co-authored-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
|
* gnu/services/web.scm (<nginx-stream-configuration>): New record type.
(<nginx-configuration>)[stream]: New field.
(emit-nginx-server-config): Add context argument.
(default-nginx-config): Serialize stream.
* doc/guix.texi (Web Services): Document it.
|
|
* doc/guix.texi (Networking Setup)<dhcpcd-configuration>: Regenerate
the dhcpcd-configuration documentation.
* gnu/services/networking.scm (dhcpcd-configuration)
<shepherd-provision>: Add new field. Fix typo in client-id description.
(dhcpcd-shepherd-service): Use it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
* gnu/services/security.scm (fail2ban-service-type): Register
profile-service-type extension.
Change-Id: Ia7d908ba68c82fb7b5f016d4d246112679c49415
|
|
The nix-service-type will create the nix.conf file pointing to
`bin/sh' file in the bash-minimal package, however this is a symbolic
link to `bin/bash' in that same package, so when the sandbox gets
created there will be a symlink in the Nix sandbox like this:
drwxr-xr-x 2 nobody nogroup 4096 Sep 18 13:10 .
drwxr-x--- 10 nobody nixbld 4096 Sep 18 13:10 ..
lrwxrwxrwx 1 nobody nogroup 4 Jan 1 1970 sh -> bash
Making builds that depend on /bin/sh fail since /bin/bash does not
exist in the sandbox.
* gnu/services/nix.scm (nix-service-etc): Change ‘build-sandbox-paths’ to
point to ‘bin/bash’.
Change-Id: I9138e9b772b8468382cfde6d133f0758837d03ff
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
* gnu/services/virtualization.scm (secret-service-shepherd-services): In
‘modules’, add (shepherd system).
Change-Id: I23201f0ee3ce102f0d48d4f5ea24ddbfc06c247f
|
|
* gnu/services/desktop.scm (plasma-dbus-service): Add "packagekit".
Change-Id: I4c1a3509ee8d5fa512b715188f32652f70f67506
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
|
|
* gnu/services/desktop.scm (plasma-polkit-settings): Add "packagekit".
Change-Id: I8f201f6dbab587b8075e45e10725d8bebf05ca3b
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
|
|
* gnu/services/linux.scm (vfs-mapping): Fix vfs-mapping default name.
Fixes: #1953
Change-Id: I7e05cc19d9dbcd7a4ccb86ee009ee947349738da
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
|
|
* gnu/services/sddm.scm (sddm-pam-service): New pam entry
Change-Id: Ia5912258a8da974b60fd74b02d0779c31ea7edf3
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Modified-by: Ludovic Courtès <ludo@gnu.org>
|
|
This patch allows containers run with podman to run each with their own
specific user.
* doc/guix.texi: Fix wrong type for oci-container-configuration's
shepherd-dependencies field.
* gnu/services/containers.scm (oci-container-shepherd-service): In case
a specific container is not run through the user provisioned by the
oci-service-type, its environment is different from the globally
provisioned one and must be recomputed.
Change-Id: I5d636ad0616ced0af124002de4403da3067334de
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
This reverts commit a7db92d9b389cbe565395523882c34c6eff2c21a, this time with
the more careful command, to avoid a world rebuild:
grep -rl --exclude-dir=build --exclude-dir=patches --exclude=ld-wrapper.in \
--exclude=sitecustomize.py --exclude=guix-emacs.el maxim.cournoyer@gmail.com |
xargs sed -i 's/maxim.cournoyer@gmail.com/maxim@guixotic.coop/g'
Change-Id: I0871f5cf9ace79e34e78e24154d0da6ea95a3a91
|
|
This reverts commit d0d87a744d724b7e7d5ac013c586039652087bb3. Oops! This
caused a world rebuild.
Change-Id: I25fff644b2b61d0ee93d69b457b04c72b5b74d15
|
|
The change was automated via:
git grep -l maxim.cournoyer@gmail.com |
xargs sed -i 's/maxim.cournoyer@gmail.com/maxim@guixotic.coop/g'
* .mailmap: New entry.
Change-Id: Iaa88b1e51c94159c49138fb43910badb990eb169
|
|
The tailon package was removed in 63023deaf96bd0d90aba262b194bf1445ec5a0b6,
but the associated service and documentation weren’t, leading to `guix pull`
breaking.
Fixes guix/guix#2689.
* doc/guix.texi: Remove Tailon documentation.
* gnu/services/web.scm (tailon-service-type): Delete variable.
(tailon-configuration-file): Delete variable.
(tailon-configuration-file?): Delete variable.
(tailon-configuration-file-files): Delete variable.
(tailon-configuration-file-bind): Delete variable.
(tailon-configuration-file-relative-root): Delete variable.
(tailon-configuration-file-allow-transfers?): Delete variable.
(tailon-configuration-file-follow-names?): Delete variable.
(tailon-configuration-file-tail-lines): Delete variable.
(tailon-configuration-file-allowed-commands): Delete variable.
(tailon-configuration-file-debug?): Delete variable.
(tailon-configuration-file-http-auth): Delete variable.
(tailon-configuration-file-users): Delete variable
(tailon-configuration): Delete variable.
(tailon-configuration?): Delete variable.
(tailon-configuration-config-file): Delete variable.
(tailon-configuration-package): Delete variable.
* gnu/tests/web.scm (%test-tailon): Delete variable.
Change-Id: I3b507df8233b0440baa6a2bce4604b5813cb3bb0
|
|
Recently initial-session-user and initial-session-command has been
added, but they accept only strings, not gexps.
* gnu/services/base.scm (make-greetd-terminal-configuration-file):
Ungexp initial-session-user and initial-session-command.
Change-Id: I2b247464528b6147eab8acea08c6942ac7bfd0ab
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
* gnu/services/networking.scm (<keepalived-configuration>)[shepherd-requirement]:
New field.
(keepalived-shepherd-service): Honor it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
* gnu/services/networking.scm (network-manager-activation): Create the
/etc/ipsec.secrets directory.
Change-Id: Ib347cc00e7cbd314b2a465b5ee681285ba0d3115
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
Modified-by: Maxim Cournoyer <maxim@guixotic.coop>
|
|
* gnu/services/cuirass.scm (<cuirass-configuration>)[parallel-evaluations]
[evaluation-ttl, web-threads]: New fields.
(cuirass-shepherd-service): Honor them.
* doc/guix.texi (Continuous Integration): Document them.
Change-Id: I33485b978d2a37ee93230b1d425731e6cb3b80e4
|
|
Fixes guix/cuirass#16.
* gnu/services/cuirass.scm (cuirass-shepherd-service)[endpoint]: New
procedure.
Use ‘make-systemd-constructor’ for ‘cuirass register’. Set the ‘COLUMNS’
environment variable.
Change-Id: If58e4e8a889ab11e4b5b89a7abaf0af24600751b
|
|
Fixes guix/maintenance#17.
Fixes a bug whereby ‘nginx -s stop’ might return before the main nginx process
has actually stopped, which in turn would lead ‘herd restart nginx’ to hang.
* gnu/services/web.scm (nginx-shepherd-service): Change ‘stop’ to use
‘make-kill-destructor’.
Reported-by: Maxim Cournoyer <maxim@guixotic.coop>
Change-Id: I69e8626aab07f806ddc8b1d09d9f0e052a85cf47
|
|
* gnu/services/virtualization.scm (sanitize-hurd-vm-configuration-type): New procedure.
(hurd-vm-confiuration): Add type field.
(hurd-vm-disk-image): Use it.
* doc/guix.texi (hurd-vm-configuration): Document it.
* gnu/tests/virtualization.scm (%childhurd64-os): New variable.
(run-childhurd-test): Add the os a parameter.
(%test-childhurd): Adjust accordingly.
(%test-childhurd64): New system test.
Change-Id: Ie1c55a9414657ced4bf8b4324527037f1a1f78f4
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
* gnu/services/cuirass.scm (<cuirass-configuration>)[interval]: Change to 300.
* doc/guix.texi (Continuous Integration): Update accordingly and explain where
it is used.
Change-Id: I30e38ffe0d75cd1f5857b422b4fa5d05dd47a7e5
|
|
This is a followup to 4c130c980f5770e6974fc9c26e271945395e494f.
* gnu/services/dict.scm (gnu): Remove reference to (gnu packages dico).
Change-Id: Idf0d2c43d63d5ad040ecbc13629ffed5c603ddf3
|
|
This patch implements a generalization of the
oci-container-service-type, which consequently is made deprecated. The
oci-service-type, in addition to all the features from the
oci-container-service-type, can now provision OCI networks and volumes.
It only handles OCI objects creation, the user is supposed to handle
state once the objects are provsioned.
It currently supports two different OCI runtimes: Docker and rootless
Podman. Both runtimes are tested to make sure provisioned containers
can connect to each other through provisioned networks and can
read/write data with provisioned volumes.
At last the Scheme API is thought to facilitate the implementation of a
Guix Home service in the future.
* gnu/build/oci-containers.scm: New file containg OCI runtime business
logic used in OCI backed Shepherd services.
oci-read-lines
(oci-system*,oci-object-exists?,oci-object-service-available?
oci-image-load,oci-log-verbose,oci-container-execlp,oci-object-create):
New procedures.
* gnu/local.mk: Add it.
* gnu/services/containers.scm (list-of-oci-containers?,
list-of-oci-networks?,list-of-oci-volumes?,%oci-supported-runtimes,
oci-runtime?,oci-runtime-system-environment,oci-runtime-system-extra-arguments,
oci-runtime-system-requirement,oci-runtime-cli,oci-runtime-system-cli,
oci-runtime-home-cli,oci-runtime-name,oci-runtime-group,
oci-container-shepherd-name,oci-networks-shepherd-name,
oci-networks-home-shepherd-name,oci-volumes-shepherd-name,
oci-volumes-home-shepherd-name,oci-container-configuration->options,
oci-network-configuration->options,oci-volume-configuration->options,
oci-container-shepherd-service,oci-objects-merge-lst,oci-extension-merge,
oci-service-accounts,oci-service-profile,oci-service-subids,
oci-configuration->shepherd-services,oci-configuration-extend): New
procedures.
(image-reference): Implement unambiguous naming convention, that paired
with the new implementation for listing caches images with docker ls or
podman ls, allows for more efficient image caching.
(oci-container-configuration)[user,group]: Change default-type to
maybe-string, since by default containers will run under the user and
group declared in oci-configuration records. When unset the
oci-service-type will derive their value from the OCI runtime state.
[runtime,host-environment,environment,shepherd-actions,ports,extra-arguments]:
define a predicate and use it as a type in the configuration. This
way errors are reported with source location information.
(lower-manifest): Defer to caller the logic of setting up an image tag.
(lower-oci-image): Rename to load-oci-image-state.
(oci-runtime-state): Intermediate representation of the OCI runtime
details. It is supposed to be an internal API.
(oci-state): Intermediate representation of the OCI provisioning state,
such as containers and networks. It is supposed to be an internal API.
(oci-container-invocation): Intermediate representation of the OCI
runtime run command to start a container. It is supposed to be an
internal API.
(%oci-image-loader): Rename to oci-image-loader and use
oci-runtime-state and (gnu build oci-containers).
(oci-container-shepherd-service): Use oci-state and oci-runtime-state,
add command-line action.
(oci-network-configuration,oci-volume-configuration,oci-configuration,
oci-extension): New record types.
(oci-service-type): New service-type.
* doc/guix.texi: Document it.
* gnu/tests/containers.scm: Test it.
* gnu/services/docker.scm: Deprecate the oci-container-service-type.
Change-Id: I656b3db85832e42d53072fcbfb91d1226f39ef38
Modified-by: Maxim Cournoyer <maxim@guixotic.coop>
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
|
|
* gnu/services/web.scm (nginx-access-log-file, nginx-error-log-file,
nginx-log-files): New functions.
(nginx-service-type): Extend log-rotation-service-type.
|
|
* gnu/services/shepherd.scm (gexp-or-integer-or-false?): New procedure.
(system-log-configuration)[max-silent-time]: Change to
‘gexp-or-integer-or-false’.
* doc/guix.texi (Shepherd Services): Regenerate documentation with
‘configuration->documentation’.
Change-Id: I75228cd19ca892c26347a64cbb952668fc893669
|
|
This is made so that the source can be shared without introducing module
circular dependencies.
* gnu/packages/certs.scm (nss-certs)
(nss-certs-for-test): Move to...
* gnu/packages/nss.scm: ... here.
Adjust the module imports via:
git grep -l '(gnu packages certs)' |
xargs sed 's/(gnu packages certs)/(gnu packages nss)/' -i
Change-Id: I56d7bc52ddcdffbced8a162e8db8ea5071b0cb0f
|
|
* gnu/services/linux.scm (vfs-mapping-shepherd-services)
[modules]: New field.
Fixes: #1747
Change-Id: Ia462a2894d644343164ff9b8f84172a6aa286bad
|
|
This is made to avoid cyclic module dependencies, which is due to the use of
inheritance between tigervnc-server and xorg-server, which is not a delayed
field (info "(guix) Cyclic Module Dependencies").
* gnu/packages/vnc.scm (tigervnc-client, %tigervnc-client-source)
(tigervnc-server): Move to...
* gnu/packages/xorg.scm: ... here.
Change-Id: I4c13659874f74bccde897d9a6fc8152f60932b4a
|
|
* doc/guix.texi (Networking Services): Fix tor-onion-service-configuration
description which was broken in commit 9be1ee6a49 when documentation was
changed to indicated that port-location mappings should be provided as cons
cells when the code always expected lists
Change-Id: Ib12d273cbd37976f9507a60a6d088078f71d4e7a
Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
|
|
The package bluedevil no more provides a dbus service.
* gnu/packages/desktop.scm (plasma-dbus-service): Remove "bluedevil".
Change-Id: I8d6160a83fe5339ffa3ba12a24b0b4c4f06b6b67
|
|
* gnu/services/networking.scm (tor-configuration): Add `auto-start?' field.
Fix indent.
* doc/guix.texi (tor-configuration): Document this.
Change-Id: I9339291e3329d615550f97e9cc0f0d773f0d1c51
Reviewed-by: André Batista <nandre@riseup.net>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
|
|
* gnu/services/guix.scm (shared-cache-service-type)
(shared-cache-configuration, user-cache): New variables.
* doc/guix.texi (Shared Cache Service): New subsubsection under
"Guix Services".
Change-Id: I73a8db228d9a892c8bb93c6cdfef12d0d06e25a6
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
Modified-by: Maxim Cournoyer <maxim@guixotic.coop>
|
|
* gnu/services/linux.scm (vfs-mapping-service-type, vfs-mapping-configuration,
vfs-mapping-binding): New variables.
* doc/guix.texi: (Vfs Mapping Service): New subsubsection under "Linux Services".
Change-Id: I7ebd48afb809ded9fa6fe9eb80c618accb856716
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
|
|
* gnu/services/high-availability.scm (<rabbitmq-configuration>): New record.
(rabbitmq-shepherd-service): New procedure.
(rabbitmq-service-type): New variable.
* gnu/tests/high-availability.scm (run-rabbitmq-test): New procedure.
(%rabbitmq-os, %tests-rabbitmq): New variables.
* doc/gnu.texi (High Availability Services): Document it.
Change-Id: I53e9f2881b6340e1ed314785e4c5529b81381a3b
Co-authored-by: Christopher Baines <mail@cbaines.net>
Reviewed-by: Ludovic Courtès <ludo@gnu.org>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
|
|
* gnu/services/base.scm (<greetd-terminal-configuration>): Add
initial-session-user, initial-session-command.
* doc/guix.texi (Base Services): Document them.
Change-Id: Iaf7a8203f34794bc36b031166e1ff7005d7a7104
|
|
* gnu/services/certbot.scm (certificate-configuration): Add dry-run? field.
(certbot-command): Use it to pass --dry-run to certbot.
* doc/guix.texi (Certificate Services): Document dry-run? option.
Change-Id: I26b0dc06e2b7e5fb34305deee09e311d085f8a4b
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
Modified-by: Maxim Cournoyer <maxim@guixotic.coop>
|
|
The --manual-public-ip-logging-ok flag is now a no-op and was deprecated
https://github.com/certbot/certbot/pull/8381
* gnu/sevices/certbot.scm (certbot-command): Remove
--manual-public-ip-logging-ok when doing a manual challenge.
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
|
|
* gnu/services/ci.scm (<forgejo-runner-configuration>): New record type.
(create-forgejo-runner-account, forgejo-runner-activation)
(write-yaml, yaml-file, forgejo-runner-shepherd-service): New procedures.
(forgejo-runner-service-type): New variable.
* doc/guix.texi (Continuous Integration): Add “Forgejo Runner” heading.
Co-authored-by: David Thompson <davet@gnu.org>
Change-Id: Iba42d84da35812afa60e94773fbbadd68eca9813
|
|
Fixes <https://issues.guix.gnu.org/78355>.
* gnu/services/base.scm (guix-ownership-change-program)[claim-data-ownership]:
Replace hard-coded “/gnu/store” with #$(store-prefix). Change store
ownership last.
Reported-by: Rutherther <rutherther@ditigal.xyz>
Change-Id: I55189f8bb82bf0c9e030aa042aa928f6f552569e
|