Age | Commit message (Expand) | Author |
2022-11-18 | services: Add Shepherd 'configuration' action to various services....* gnu/services/avahi.scm (avahi-shepherd-service): Add 'actions' field.
* gnu/services/base.scm (nscd-actions): Add call to
'shepherd-configuration-action'.
* gnu/services/desktop.scm (upower-shepherd-service): Add 'actions'
field.
(elogind-shepherd-service): Likewise.
* gnu/services/dict.scm (dicod-shepherd-service): Likewise.
* gnu/services/networking.scm (openntpd-shepherd-service): Likewise.
(tor-shepherd-service): Likewise.
* gnu/services/ssh.scm (openssh-shepherd-service): Likewise.
* gnu/services/web.scm (nginx-shepherd-service): Likewise.
* gnu/services/xorg.scm (gdm-shepherd-service): Likewise.
* gnu/tests/base.scm (run-basic-test)["nscd configuration action"]: New
test.
* doc/guix.texi (Services): Document it.
| Ludovic Courtès |
2022-11-17 | tests: lightdm: Use set-xorg-configuration to set keyboard layout....This is to validate that it works, when the login manager service type is
properly specified.
* gnu/tests/lightdm.scm (%lightdm-os): Use set-xorg-configuration.
| Maxim Cournoyer |
2022-11-17 | tests: root-unmount: Wait for the first QEMU process to finish....There was a tiny possibility that the first QEMU process would still be
running by the time we launch the second one.
* gnu/build/marionette.scm (marionette-pid): Export.
* gnu/tests/base.scm (run-root-unmount-test)[test]: Add 'waitpid' call.
| Ludovic Courtès |
2022-10-07 | tests: xvnc: Do not use specification->package in OS definition....Doing so would cause the extra package dependencies to not be
correctly registered as dependencies, which would lead to a silent
failure when attempting to load or byte compile the module at the time
guix build itself (e.g., when running 'guix pull').
* gnu/tests/vnc.scm (%xvnc-os) [packages]: Turn the the
specification->package declaration into a list of package objects.
| Maxim Cournoyer |
2022-10-07 | Revert "Revert "services: Add xvnc-service-type.""...This reverts commit 0c4966160054bc50e6ab3a4ac9c9a6a1826ab5a0. The fix appears
in the subsequent commit, for clarity.
| Maxim Cournoyer |
2022-10-07 | Revert "services: Add xvnc-service-type."...This reverts commit 1c528a95cb92b7808e6603d7956185005583629f. This broke
'guix pull', for (yet) unknown reasons.
| Maxim Cournoyer |
2022-10-07 | services: Add xvnc-service-type....* gnu/services/vnc.scm: New file.
* gnu/tests/vnc.scm: Likewise.
* gnu/local.mk: Register them.
| Maxim Cournoyer |
2022-10-07 | marionette: Make marionette-screen-text private....It has only one user, which is better suited for wait-for-screen-text anyway.
* gnu/tests/base.scm (run-basic-test): Refactor to use wait-for-screen-text
instead of marionette-screen-text.
| Maxim Cournoyer |
2022-09-30 | tests: install: Fix iso-image-installer test....This is a follow-up of: 45eac6cdf5c8d9d7b0c564b105c790d2d2007799.
It fixes the following error:
+ mkfs.ext4 -L my-root /dev/vda2
sh: line 12: mkfs.ext4: command not found
* gnu/tests/install.scm (%test-iso-image-installer): Add e2fsprogs to the
appended packages.
| Mathieu Othacehe |
2022-09-26 | tests: telephony: Add missing import to fix jami tests....* gnu/tests/telephony.scm (run-jami-test): Add a missing (ice-9 match) import
directive.
Co-authored-by: Olivier Dion <olivier.dion@polymtl.ca>
| Maxim Cournoyer |
2022-09-24 | services: Add wsdd service....* doc/guix.texi: Add documentation for wsdd service.
* gnu/services/samba.scm (<wsdd-configuration>): New record.
(wsdd-service-type): New variable.
(wsdd-shepherd-services): New procedure.
* gnu/tests/samba.scm (%wsdd-os): Add variable.
(run-wsdd-test): New procedure.
(%test-wsdd): New variable.
Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
| Simon Streit |
2022-09-24 | services: Add samba service....* gnu/services/samba.scm: New file.
* gnu/tests/samba.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add them.
* po/guix/POTFILES.in Add 'gnu/services/samba.scm'.
* doc/guix.texi: Document it.
Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
| Simon Streit |
2022-09-24 | Revert "tests: telephony: Add extra packages to %jami-os for debugging."...This reverts commit 829c19142e62efa7ba9715fc682b4be959830b2e, as it broke
'guix pull'.
| Maxim Cournoyer |
2022-09-23 | tests: jami-provisioning: Fix test derivation name....* gnu/tests/telephony.scm (run-jami-test): Fix test derivation name.
| Maxim Cournoyer |
2022-09-23 | tests: telephony: Add extra packages to %jami-os for debugging....* gnu/tests/telephony.scm (make-jami-os): Add libjami:debug, gdb, guile,
guile-ac-d-bus, guile-readline, guile-fibers, screen and strace.
(run-jami-test)<jami service actions, ban/unban contacts>: Add (ice-9 match),
for lambda-match (worked without it but needed when manually testing).
| Maxim Cournoyer |
2022-09-08 | tests: dict: Increase VM memory-size....* gnu/tests/dict.scm (run-dicod-test): Increase it to 1024 MiB.
| Mathieu Othacehe |
2022-08-30 | tests: image: New test....Add a new image test module to validate the image creation itself. The images
structures are validated using guile-parted. Checking the content of those
images is out of scope and should be performed in other modules (installation
for instance).
* gnu/tests/image.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
| Mathieu Othacehe |
2022-08-29 | gnu: Add missing copyright line....This is a follow-up to commit 3e0abde17be944153be57ab5faeefc645266d39d.
* gnu/tests/virtualization.scm: Add copyright header for myself.
| Marius Bakke |
2022-08-29 | tests: libvirt: Ensure the default network can be started....* gnu/tests/virtualization.scm (run-libvirt-test): Run commands to create and
start the default network.
| Marius Bakke |
2022-08-28 | services: Add lightdm-service-type....* gnu/services/lightdm.scm: New service.
* tests/services/lightdm.scm: Test it.
* doc/guix.texi (X Window): Document it.
* gnu/local.mk (GNU_SYSTEM_MODULES): Register it.
Co-authored-by: L p R n d n <guix@lprndn.info>
Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
| Maxim Cournoyer |
2022-08-28 | build: marionette: Add support for Tesseract OCR....* gnu/build/marionette.scm (invoke-ocrad-ocr): New procedure.
(invoke-tesseract-ocr): Likewise.
(marionette-screen-text): Rename the #:ocrad argument to #:ocr. Dispatch the
matching OCR invocation procedure.
(wait-for-screen-text): Rename the #:ocrad argument to #:ocr.
* gnu/tests/base.scm (run-basic-test): Adjust accordingly.
* gnu/tests/install.scm (enter-luks-passphrase): Likewise.
(enter-luks-passphrase-for-home): Likewise.
| Maxim Cournoyer |
2022-08-28 | gnu: security: Add fail2ban-service-type....* gnu/services/security.scm: New module.
* gnu/tests/security.scm: New module.
* gnu/local.mk: Add new security module and tests.
* doc/guix.text: Add fail2ban-service-type documentation.
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
| muradm |
2022-08-26 | gnu: greetd-service-type: Add supplementary groups to greeter....* gnu/services/base.scm (<greetd-configuration>)
[greeter-supplementary-groups]: New field.
(%greetd-accounts): Rename to...
(greetd-accounts): ... this. Convert to a function that takes a config
argument. Use greeter-supplementary-groups.
(greetd-service-type): Adjust accordingly.
* gnu/tests/desktop.scm (%minimal-services): Add test for
greeter-supplementary-groups.
* doc/guix.texi ("Base Services")[greetd-service-type]: Document
greeter-supplementary-groups.
| muradm |
2022-08-26 | gnu: seatd-service-type: Use seat group....* gnu/services/desktop.scm (seatd-group-sanitizer): New variable.
(<seatd-configuration>)[user]: Removed field.
[group]: Changed to "seat". Sanitize via seatd-group-sanitizer.
(seatd-accounts): New variable.
(seatd-environment): Adjust to <seatd-configuration> ABI.
(seatd-service-type)[extensions]: Add account-service-type with seatd-accounts.
* gnu/tests/desktop.scm (run-minimal-desktop-test): Check for correct
ownership of $SEATD_SOCK.
* doc/guix.texi ("Desktop Services")[seatd-service-type]: Mention that users
may need to become members of the "seat" group.
Update default value for group field.
Add explanation on seatd.sock file.
Remove dropped user field.
| muradm |
2022-08-09 | tests: Add qemu-guest-agent system test....Enable the QEMU guest agent interface in marionette VMs, run the
qemu-guest-agent service in one and try talking to it.
* gnu/build/marionette.scm (make-marionette): Enable the guest agent device.
* gnu/tests/virtualization.scm (run-qemu-guest-agent-test): New procedure.
(%test-qemu-guest-agent): New variable.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Timotej Lazar |
2022-08-09 | system: install: Always use 'current-guix'....Fixes <https://issues.guix.gnu.org/53210>.
Reported by Mathieu Othacehe <othacehe@gnu.org>.
* gnu/system/install.scm (%installation-services): Set 'guix' to
use (current-guix) in 'guix-configuration'.
* gnu/system/examples/vm-image.tmpl: Likewise.
* gnu/tests/install.scm (operating-system-with-current-guix): Remove.
(run-install, installation-os-for-gui-tests): Remove its uses.
* Makefile.am (release): Remove intermediate use of
'update-guix-package.scm' and subsequent 'git commit' invocation.
| Ludovic Courtès |
2022-08-01 | gnu: telephony: Add a Jami test for a partially defined jami-account....* gnu/tests/telephony.scm (%dummy-jami-account-partial): New variable.
(make-jami-os): Add a PARTIAL? argument and use it to select the jami-account
variant to use.
(%jami-os-provisioning-partial): New variable.
(run-jami-test): Add a PARTIAL? argument, and use it to select operating
system variant. Skip allowed-contacts and moderators test when PARTIAL? is
true.
(%test-jami-provisioning-partial): New test.
| Maxim Cournoyer |
2022-07-15 | gnu: tests: Fix guix-data-service test....Since revision 32, guix-data-service starts immediately but returns an HTTP
error code until initialization is complete. Adjust the test accordingly, and
remove the increased startup time limit.
* gnu/services/guix.scm (guix-data-service): Use default #:pid-file-timeout.
* gnu/tests/guix.scm (guix-data-service): Retry the http-get test several
times to give the service time to initialize.
Signed-off-by: Christopher Baines <mail@cbaines.net>
| Timotej Lazar |
2022-07-01 | image: Add default value for partition initializer....Previously, the default value would lead to a wrong-type-to-apply crash.
* gnu/system/image.scm (system-disk-image)[image-builder]: When
'partition-initializer' returns #f, fall back to
INITIALIZE-ROOT-PARTITION.
* gnu/tests/base.scm (run-root-unmount-test)[test-image]: Remove
'initializer' field of partition.
* gnu/image.scm (<partition>)[initializer]: Add comment.
| Ludovic Courtès |
2022-07-01 | services: root-file-system: Cleanly unmount upon shutdown....Fixes <https://issues.guix.gnu.org/56209>.
Reported by angry rectangle <angryrectangle@cock.li>.
* gnu/packages/admin.scm (shepherd-0.9)[modules, snippet]: New fields.
* gnu/services/base.scm (%root-file-system-shepherd-service): In 'stop'
method, remove 'call-with-blocked-asyncs'. When 'mount' throws to
'system-error, call (@ (fibers) sleep) and try again.
* gnu/tests/base.scm (run-root-unmount-test): New procedure.
(%test-root-unmount): New variable.
| Ludovic Courtès |
2022-06-24 | tests: ldap: Increase VM memory size....With the default limit of 512 MB the test sometimes fails, in different
ways. Fixes https://issues.guix.gnu.org/55206.
* gnu/tests/ldap.scm (run-ldap-test): Increase memory size to 1024 MiB.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
| Timotej Lazar |
2022-06-24 | tests: docker: Relax marionette timeout....The tests would otherwise fail on an old desktop.
* gnu/tests/docker.scm (run-docker-test)
<make-marionette>: Specify a timeout of 60 s.
(run-docker-system-test) <make-marionette>: Likewise.
| Maxim Cournoyer |
2022-06-17 | gnu: tests: Add seatd/greetd based minimal desktop system tests....* gnu/tests/desktop.scm (minimal-desktop): seatd/greetd based
minimal desktop test
Signed-off-by: Lars-Dominik Braun <ldb@leibniz-psychology.org>
| muradm |
2022-06-10 | services: jami: Modernize to adjust to Shepherd 0.9+ changes....This partially fixes <https://issues.guix.gnu.org/54786>, allowing the 'jami'
and 'jami-provisioning' system tests to pass again.
In version 0.9.0, Shepherd constructors are now run concurrently, via
cooperative scheduling (Guile Fibers). The Jami service previously relied on
blocking sleeps while polling for D-Bus services to become ready after forking
a process; this wouldn't work anymore since while blocking the service process
wouldn't be given the chance to finish starting. The new reliance on Fibers
in Shepherd's fork+exec-command in the helper 'send-dbus' procedure also meant
that it wouldn't work outside of Shepherd anymore. Finally, the
'start-service' Shepherd procedure used in the test suite would cause the Jami
daemon to be spawned multiple times (a bug introduced in Shepherd 0.9.0).
To fix/simplify these problems, this change does the following:
1. Use the Guile AC/D-Bus library for D-Bus communication, which simplify
things, such as avoiding the need to fork 'dbus-send' processes.
2. The non-blocking 'sleep' version of Fiber is used for the 'with-retries'
waiting syntax.
3. A 'dbus' package variant is used to adjust the session bus configuration,
tailoring it for the use case at hand.
4. Avoid start-service in the tests, preferring 'jami-service-available?' for
now.
* gnu/build/jami-service.scm (parse-dbus-reply, strip-quotes)
(deserialize-item, serialize-boolean, dbus-dict->alist)
(dbus-array->list, parse-account-ids, parse-account-details)
(parse-contacts): Delete procedures.
(%send-dbus-binary, %send-dbus-bus, %send-dbus-user, %send-dbus-group)
(%send-dbus-debug): Delete parameters.
(jami-service-running?): New procedure.
(send-dbus/configuration-manager): Rename to...
(call-configuration-manager-method): ... this. Turn METHOD into a positional
argument. Turn ARGUMENTS into an optional argument. Invoke
`call-dbus-method' instead of `send-dbus', adjusting callers accordingly.
(get-account-ids, id->account-details, id->account-details)
(id->volatile-account-details, username->id, add-account remove-account)
(username->contacts, remove-contact, add-contact, set-account-details)
(set-all-moderators, username->all-moderators?, username->moderators)
(set-moderator): Adjust accordingly.
(with-retries, send-dbus, dbus-available-services)
(dbus-service-available?): Move to ...
* gnu/build/dbus-service.scm: ... this new module.
(send-dbus): Rewrite to use the Guile AC/D-Bus library.
(%dbus-query-timeout, sleep*): New variables.
(%current-dbus-connection): New parameter.
(initialize-dbus-connection!, argument->signature-type)
(call-dbus-method): New procedures.
(dbus-available-services): Adjust accordingly.
* gnu/local.mk (GNU_SYSTEM_MODULES): Register new module.
* gnu/packages/glib.scm (dbus-for-jami): New variable.
* gnu/services/telephony.scm: (jami-configuration)[dbus]: Default to
dbus-for-jami.
(jami-dbus-session-activation): Write a D-Bus daemon configuration file at
'/var/run/jami/session-local.conf'.
(jami-shepherd-services): Add the closure of guile-ac-d-bus and guile-fibers
as extensions. Adjust imported modules. Remove no longer used parameters.
<jami-dbus-session>: Use a PID file, avoiding the need for the manual
synchronization.
<jami>: Set DBUS_SESSION_BUS_ADDRESS environment variable. Poll using
'jami-service-available?' instead of 'dbus-service-available?'.
* gnu/tests/telephony.scm (run-jami-test): Add needed Guile extensions. Set
DBUS_SESSION_BUS_ADDRESS environment variable. Adjust all tests to use
'jami-service-available?' to determine if the service is started rather than
the now problematic Shepherd's 'start-service'.
| Maxim Cournoyer |
2022-06-05 | tests: childhurd: Make sure "guix build -d" works....* gnu/tests/virtualization.scm (run-childhurd-test)
["guix-daemon up and running"]: New test.
| Ludovic Courtès |
2022-06-05 | tests: childhurd: Generalize command execution over SSH....* gnu/tests/virtualization.scm (run-childhurd-test)[run-uname-over-ssh]:
Rename to...
[run-command-over-ssh]: ... this. Add 'command' parameter and honor it.
["SSH up and running"]: Adjust accordingly.
| Ludovic Courtès |
2022-05-22 | services: openssh: Listen on both IPv4 and IPv6....Fixes <https://issues.guix.gnu.org/55335>.
Reported by Christopher Baines <mail@cbaines.net>.
* gnu/services/ssh.scm (openssh-shepherd-service)[inetd-style?]: New variable.
<start>: Use it. When using 'make-inetd-constructor', pass a list of
endpoints as is possible with the Shepherd 0.9.1.
<stop>: Adjust accordingly.
* gnu/tests/ssh.scm (run-ssh-test)["wait for port 22"]: Rename to...
["wait for port 22, IPv4"]: ... this.
["wait for port 22, IPv6"]: New test.
| Ludovic Courtès |
2022-05-01 | services: bitlbee: Use 'make-inetd-constructor'....* gnu/services/messaging.scm (bitlbee-shepherd-service): Add call to
'least-authority-wrapper'. In 'start' method, use
'make-inetd-constructor' when available.
* gnu/tests/messaging.scm (run-bitlbee-test)["valid PID"]: Remove test.
| Ludovic Courtès |
2022-05-01 | tests: Fix tailon test....This is a follow-up of 73eeeeafbb0765f76834b53c9fe6cf3c8f740840.
* gnu/tests/web.scm (run-tailon-test): Wait for the TCP port 8080 instead of
relying on start-service.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
| Mathieu Othacehe |
2022-04-29 | tests: Avoid starting services to check whether they're running....Fixes a regression introduced in the Shepherd 0.9.0 whereby clients can
start a service that is already being started, leading to two instances
of the process (and usually failure of the second attempt to start it).
Partly fixes <https://issues.guix.gnu.org/54786>.
Reported by Mathieu Othacehe.
* gnu/tests/version-control.scm (run-cgit-test)
["nginx running", "fcgiwrap running"]: Wail for a file/TCP port instead
of starting the service.
(run-git-http-test)["nginx running"]: Likewise.
(run-gitile-test)["nginx running"]: Likewise.
| Ludovic Courtès |
2022-04-08 | tests: Add "encrypted-home-os" installation test....* gnu/tests/install.scm (%encrypted-home-os)
(%encrypted-home-installation-script)
(enter-luks-passphrase-for-home)
(%test-encrypted-home-os): New variables.
| Ludovic Courtès |
2022-04-07 | services: openssh: Start as an inetd service....* gnu/services/ssh.scm (openssh-shepherd-service): Use
'make-inetd-constructor' when it is defined.
(<openssh-configuration>)[max-connections]: New field.
* gnu/tests/ssh.scm (run-ssh-test)["sshd PID"]: Adjust to cope with
PID-FILE being #f.
* gnu/tests/ssh.scm (%test-openssh): Pass #f as the 'pid-file'
argument.
* doc/guix.texi (Networking Services): Document 'max-connections'.
| Ludovic Courtès |
2022-03-19 | tests: install: Add two new Btrfs RAID10 install test....* gnu/tests/install.scm (%btrfs-raid10-root-os)
(%btrfs-raid10-root-os): New variables.
(%btrfs-raid10-root-installation-script): Likewise.
(%test-btrfs-raid10-root-images): Likewise.
(%test-btrfs-raid10-root-os, %test-btrfs-raid10-root-os-degraded): New tests.
| Maxim Cournoyer |
2022-03-19 | tests: install: Enable the use of multiple disk devices for tests....* gnu/tests/install.scm (run-install)[packages]: Unconditionally add to OS.
[NUMBER-OF-DISKS]: Add argument, update doc and adjust. The returned gexp
output is now a list of images rather than the image itself.
* gnu/tests/install.scm (qemu-command*): Rename IMAGE argument to IMAGES, to
account for the above change. Adjust doc. Generate a QEMU '-drive' argument
for each disk image.
(%test-installed-os): Rename the IMAGE variable to IMAGES.
(%test-installed-extlinux-os): Likewise.
(%test-iso-image-installer): Likewise.
(%test-separate-home-os): Likewise.
(%test-separate-store-os): Likewise.
(%test-raid-root-os): Likewise.
(%test-encrypted-root-os): Likewise.
(%test-lvm-separate-home-os): Likewise.
(%test-encrypted-root-not-boot-os): Likewise.
(%test-btrfs-root-os): Likewise.
(%test-btrfs-raid-root-os): Likewise.
(%test-btrfs-root-on-subvolume-os): Likewise.
(%test-jfs-root-os): Likewise.
(%test-f2fs-root-os): Likewise.
(%test-xfs-root-os): Likewise.
(guided-installation-test): Likewise.
| Maxim Cournoyer |
2022-03-19 | tests: install: Streamline 'qemu-command/writable-image'....* gnu/tests/install.scm (qemu-command/writable-image): Replace the use of a
writable backing file by the use of the '-snapshot' option, and rename to...
(qemu-command*): ... this, adjusting all calls.
| Maxim Cournoyer |
2022-03-19 | tests: install: Adjust the timeouts on two failing tests....The 'login on tty1' and 'getlogin on tty1' tests were failing on a machine
equipped with slower hard drives.
* gnu/tests/base.scm (run-basic-test)
["login on tty1", "getlogin on tty1"]: Bump timeout from 10 to 30 s.
| Maxim Cournoyer |
2022-02-21 | tests: nix: Remove tab characters....* gnu/tests/package-management.scm: Remove them.
| Mathieu Othacehe |
2022-02-21 | tests: nix: Fix it....The <nix/config.nix> support has been removed in Nix 2.4:
https://github.com/NixOS/nix/pull/4025. Rely on the store ping command instead
to check that we can communicate with the daemon.
* gnu/tests/package-management.scm (run-nix-test): Use the store ping command
instead of building a dummy derivation.
| Mathieu Othacehe |
2022-01-31 | services: guix: Add nar-herder-service-type....* gnu/services/guix.scm (<nar-herder-configuration>): New record type.
(nar-herder-configuration, nar-herder-configuration?,
nar-herder-configuration-package,
nar-herder-configuration-user,
nar-herder-configuration-group,
nar-herder-configuration-mirror
nar-herder-configuration-database
nar-herder-configuration-database-dump
nar-herder-configuration-host
nar-herder-configuration-port
nar-herder-configuration-storage
nar-herder-configuration-storage-limit
nar-herder-configuration-storage-nar-removal-criteria
nar-herder-shepherd-services, nar-herder-activation,
nar-herder-account): New procedures.
(nar-herder-service-type): New variable.
* gnu/tests/guix.scm (%test-nar-herder): New variable.
* doc/guix.texi (Guix Services): Document the new service.
| Christopher Baines |
2022-01-29 | tests: Add system test for TimescaleDB....* gnu/tests/databases.scm (%timescaledb-os, run-timescaledb-test,
%test-timescaledb): New variables.
| Marius Bakke |