Age | Commit message (Expand) | Author |
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 |
2022-01-29 | tests: postgresql: Test the default PostgreSQL....* gnu/tests/databases.scm (%postgresql-os): Change from POSTGRESQL-10 to
POSTGRESQL.
| Marius Bakke |
2022-01-13 | services: Adjust the jami service for the upgraded jami....* gnu/services/telephony.scm (jami-configuration)[jamid]: Rename libring to
libjami.
* gnu/services/telephony.scm
(jami-configuration->command-line-arguments): Adjust daemon file name.
* gnu/services/telephony.scm (jami-service-type): Adjust doc.
* gnu/tests/telephony.scm (run-jami-test): Check for 'jamid' process, not
'dring'.
* doc/guix.texi (Telephony Services): Adjust doc for the jami-qt to jami and
libring to libjami packages renaming.
| Maxim Cournoyer |
2021-12-28 | installer: Recommend 'ntp-service-type' for non-graphical systems....We had several bug reports with a root cause of "the clock was
incorrect" from users who used the installer to install a non-graphical
Guix System.
* gnu/installer/services.scm (%system-services): Add the ntp-service-type.
* gnu/installer/newt/services.scm (run-system-administration-cbt-page): New
variable.
(run-services-page): Use run-system-administration-cbt-page when not
installing a desktop.
* gnu/installer/tests.scm (choose-services): Add and use a
choose-misc-service? procedure.
* gnu/tests/install.scm (installation-target-os-for-gui-tests)<services>: Add
ntp-service-type.
| Leo Famulari |
2021-12-23 | tests: rsync: Fix it....* gnu/tests/rsync.scm ("Test file not copied to read-only share"): This
returns the error code 1 and not 10.
| Mathieu Othacehe |
2021-12-23 | tests: reconfigure: Fix it....* gnu/tests/reconfigure.scm (run-install-bootloader-test): Use a non volatile
VM so that a bootloader configuration file is installed.
| Mathieu Othacehe |
2021-12-23 | tests: nfs: Fix nfs-root-fs test....This test has probably never been working. Rename it nfs-full, and test that
an NFS server can be started in a VM and mounted in another VM.
* gnu/tests/nfs.scm (run-nfs-root-fs-test): Rename it ...
(run-nfs-full-test): ... this way.
(%test-nfs-root-fs): Rename it ...
(%test-nfs-full): ... this way.
| Mathieu Othacehe |
2021-12-23 | tests: docker: Fix it....The docker tests are broken because the docker overlay doesn't support running
on our own storage overlay. Use the new <virtual-machine> volatile? field to
spawn a VM with a persistent storage and no overlay.
* gnu/tests/docker.scm (run-docker-test): Add the docker-tarball to the gc
roots as the host store is not shared anymore. Spawn a VM without volatile
storage.
(run-docker-system-test): Ditto.
(%test-docker-system): Adapt it to use the image API.
| Mathieu Othacehe |
2021-12-23 | Remove VM generation dead-code....This code duplicates the (gnu system image) and (gnu build image) code. Using
VM for image generation is not needed, not portable and really slow. Remove
all the VM image generation code to make sure that only the image API is used.
* gnu/build/vm.scm: Remove it. Move the qemu-command procedure to ...
* gnu/build/marionette.scm: ... here.
* gnu/local.mk (GNU_SYSTEM_MODULES): Adapt it.
* tests/modules.scm: Ditto.
* gnu/tests/install.scm: Ditto.
* gnu/system/vm.scm: Adapt it and remove expression->derivation-in-linux-vm,
qemu-img, system-qemu-image/shared-store and system-docker-image procedures.
* doc/guix.texi (G-Expressions): Adapt it.
| Mathieu Othacehe |