Commit Graph

3610 Commits

Author SHA1 Message Date
Andreas Enge
1c088531cf
services: guix-build-coordinator-agent: Add extra-options.
* gnu/services/guix.scm (<guix-build-coordinator-agent-configuration>):
Add field extra-options.
(guix-build-coordinator-agent-shepherd-services): Add and use EXTRA-OPTIONS
argument.
* doc/guix.texi (Guix Services): Adapt the documentation.

Change-Id: I9e7e258e03e2b6553aa1570f5fcfaf3b0ada3e15
Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail>
2024-09-18 11:21:06 +02:00
Andreas Enge
fb8c4916be
services: guix-build-coordinator-agent: Remove defaults.
* gnu/services/guix.scm (<guix-build-coordinator-agent-configuration>)
[max-parallel-builds, max-parallel-uploads]: Set default to #f.
(guix-build-coordinator-agent-shepherd-services): Check for
max-parallel-builds.
* doc/guix.texi (Guix Services): Adapt the documentation.

If set to #f, the default values are now taken as the defaults of the
guix-build-coordinator-agent command.

Change-Id: Ide6dde0e88aa0dc851b6295095f414ca2ddc72ac
Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail>
2024-09-18 11:20:35 +02:00
Richard Sent
85556e1dab
services: admin: Support rebooting after an unattended upgrade
* gnu/services/admin.scm (unattended-upgrade-configuration): Add reboot?
field. When truthy, unattended upgrade will stop the shepherd root service,
triggering a reboot.
* doc/guix.texi (Unattended Upgrades): Document it.

Change-Id: I0af659b3c318421b1a7baa94dde3dadacc1fa10d
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-09-16 00:16:21 +02:00
Tobias Geerinckx-Rice
b5fc642ae6
doc: Add more newline.
* doc/guix.texi (partition Reference): Enumerate one list per paragraph.

Change-Id: I939a73fa8a3e5063e2d9441d7a64cc4a41862abd
2024-09-01 02:00:00 +02:00
Tobias Geerinckx-Rice
fd863f0385
doc: Committers are people.
* doc/contributing.texi (Commit Access): Use ‘who’.

Change-Id: I88304640f8f184f7ec0caae5bb862c7f170c0d79
2024-09-01 02:00:00 +02:00
Tobias Geerinckx-Rice
3d6388aebf
doc: Add newlines.
* doc/contributing.texi (Commit Access): Split one trademark Guix
megagraph™ into three of your human paragraphs.  No other change.

Change-Id: Ifd2a9166b1dfe1a22dcd0811044a408325cc22cb
2024-09-01 02:00:00 +02:00
Roman Scherer
6517baf995
doc: cookbook: Fix typo in screen-locker-service-type
The screen locker service type is called screen-locker-service-type, and not
screen-locker-services-type.

* doc/guix-cookbook.texi (Xorg): Fix typo.

Change-Id: I191b0cb971f435f283ff8d0278e581372d16ae95
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-09-09 17:17:56 +02:00
Ludovic Courtès
0629af7c2a
guix build: ‘--log-file’ honors the configured substitute URLs.
* guix/scripts/build.scm (guix-build): When defining ‘urls’, add
‘substitute-urls’ call.
* doc/guix.texi (Additional Build Options): Adjust ‘--log-file’
documentation.

Change-Id: I40f0647efe64ba3a63a6379b8da80b0da8910f48
2024-09-06 11:46:23 +02:00
Ludovic Courtès
94656e2eb0
doc: Add index entries for ‘assume-file-name’ & co.
* doc/guix.texi (G-Expressions): Add index entries for
‘assume-file-name’ and ‘assume-source-relative-file-name’.

Change-Id: Iee51fb09f4cbd32dacf90f03cafca973e8c993f8
2024-09-04 19:17:00 +02:00
Richard Sent
f3ea876895
gexp: Add ‘assume-source-relative-file-name’.
* guix/gexp.scm (assume-source-relative-file-name): New macro.
(local-file): Use assume-source-relative-file-name to look up a non-literal
file relative to the current source directory.
* doc/guix.texi (G-expressions): Document it.
* tests/gexp.scm ("local-file, non-literal source relative file name"):
New test.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Change-Id: I18573c8c7a6c87e8351b34412f9d26bb23b068b4
2024-09-04 19:17:00 +02:00
Herman Rimm
c4ce313052
scripts: style: Add 'alphabetical-sort' option.
* guix/scripts/style.scm (show-help): Describe option.
(order-packages): Add procedure.
(format-whole-file): Add 'order?' argument.
(%options): Add 'alphabetical-sort' option.
(guix-style): Alphabetically order packages in files.
* tests/guix-style.sh: Test alphabetical ordering.
* doc/guix.texi (Invoking guix style): Document option.

Change-Id: I4aa7c0bd0b6d42529ae7d304587ffb10bf5f4006
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-09-03 13:59:33 +02:00
Florian Pelz
0ba20c7634
doc: build: Handle when guile source is packed with zstd.
* doc/build.scm (guile-manual): Also include zstd in PATH.

Change-Id: Iff49825fe84121bff777ed45c03fb14af0a0e719
2024-09-02 00:46:42 +02:00
Rodion Goritskov
61a7930cb0
services: agate: Change variable names and add system test.
* doc/guix.texi (Web Services): Update documentation for agate-service-type.
* gnu/services/web.scm (agate-configuration): Rename certs, addr, lang and
central-conf variables.
* gnu/tests/web.scm (%test-agate): Add system test for agate-service-type.

Change-Id: Ie14814fca1d5158acd67899da0c3fc2c5b586c72
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-08-31 19:06:39 +02:00
Romain GARBAGE
f5d75acd0d
doc: Document changes to `copy-recursively'.
* doc/guix.texi: Document new key `select?' in `copy-recursively'.

Change-Id: I4b14ae5a1b40e0939456604f75597b5596b76f83
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-08-31 10:44:42 +02:00
Bruno Victal
b3d5e2d252
build: copy-build-system: Allow specifying different output labels.
* guix/build/copy-build-system.scm: Introduce '#:output' parameter to specify
which output label to use for a given rule.
* doc/guix.texi (Build Systems): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-08-31 10:44:16 +02:00
Bruno Victal
e96fa0b695
search-paths: Add $XML_CATALOG_FILES and $SGML_CATALOG_FILES.
These variables are used by some packages for XML/SGML catalog lookups.

* guix/search-paths ($XML_CATALOG_FILES, $SGML_CATALOG_FILES): New variable,
extracted from …
* gnu/packages/xml.scm (libxml2, opensp)[native-search-paths]: … here. Refer
to the variables from (guix search-paths) respectively.
* gnu/packages/perl.scm
(perl-app-xml-docbook-builder)[native-search-paths]: Use $XML_CATALOG_FILES.
* doc/guix.texi (Search Paths): Update documentation to reflect changes.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-08-31 10:42:07 +02:00
Tobias Geerinckx-Rice
6c56608561
doc: Fix typos.
* doc/guix.texi (Desktop Services): Transpose 2 adjacent bytes.
(Complex Configurations): Add a missing one.

Change-Id: Ia03404b500e22ed0f8a414e6b63a8f3cc6270379
2024-08-18 02:00:00 +02:00
Fabio Natali
1fb4c399ea
home: services: Add home-beets-service-type.
* gnu/home/services/music.scm: New file.
* gnu/local.mk: Add this.
* doc/guix.texi: Document this.

Change-Id: Idc23a68276cb3fb07733bb38bc38b1c5a63c1d6a
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-08-28 16:37:31 +02:00
Florian Pelz
4aaa0ea06f
doc: Remove duplicate search paths instructions.
* doc/guix.texi (Invoking guix pull): Remove instructions
obsoleted by Binary Installation instructions.

Change-Id: I18274aa8bacd11de8ee72bd83c817f945468cc13
2024-08-26 18:40:30 +02:00
Tobias Geerinckx-Rice
ed4e0b48f1
Replace some more occurrences of ‘setuid-programs’.
* gnu/packages/containers.scm (podman, buildah)[arguments]:
Substitute /run/privileged/bin for /run/setuid-programs.
* gnu/packages/mail.scm (opensmtpd)[arguments]: Likewise.
* gnu/packages/spice.scm (spice-gtk)[arguments]: Likewise.
* gnu/packages/patches/enlightenment-fix-setuid-path.patch: Likewise.
* gnu/packages/xdisorg.scm (xsecurelock)[description]: Rewrite
example code to use the ‘privileged-program(s)’ terminology.
* doc/guix-cookbook.texi (Network bridge for QEMU): Likewise.
* gnu/packages/disk.scm (udevil)[arguments]: Update a comment.

Change-Id: I7f467e8743a3ef556cd89bac41509bf51d9edb30
2024-08-18 02:00:00 +02:00
Morgan Smith
0b65a43cf8
services: elogind-configuration: Add more sleep configurations
* gnu/services/desktop.scm (<elogind-configuration>): Allow actions to be set
to 'suspend-then-hibernate'.  Add configuration for 'hibernate-delay-seconds'
and 'suspend-estimation-seconds'.

* doc/guix.texi (Desktop Services): Add documentation for
'hibernate-delay-seconds' and 'suspend-estimation-seconds'.

Change-Id: Icf788fcc88451aa6174a608fbed309961b847430
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-08-21 18:58:35 +02:00
Tobias Geerinckx-Rice
71f0676a29
privilege: Add POSIX capabilities(7) support.
* gnu/system/privilege.scm (<privileged-program>): Add a field
representing the program's POSIX capabilities.
(privileged-program-capabilities): New public procedure.
* doc/guix.texi (Privileged Programs): Document it.
* gnu/build/activation.scm (activate-privileged-programs): Take a LIBCAP
package argument providing setcap(8) to apply said capabilities.
* gnu/services.scm (privileged-program->activation-gexp): Pass said
package argument where supported.  Include privileged-program-capabilities
in the compatibility hack.
2024-08-11 02:00:00 +02:00
Tobias Geerinckx-Rice
4e58dfee6c
system: Add privileged-programs to <operating-system>.
* gnu/system.scm (<operating-system>): Add new privileged-programs
field, that defaults to…
(%default-privileged-programs): …this new variable, renamed from…
(%setuid-programs): …this, which is now defined as the empty list.
* doc/guix.texi (Setuid Programs): Rename this…
(Privileged Programs): …to this.  Adjust all refs.  Update all mentions
of ‘setuid’ (whether in prose, variable names, or code samples) to use
the new ‘privilege[d]’ terminology instead.
(operating-system Reference, X Window, Invoking guix system)
(Service Reference): Adjust likewise.
2024-08-11 02:00:00 +02:00
Tobias Geerinckx-Rice
d6c9754c56
services: setuid-program: Populate /run/privileged/bin.
Create /run/setuid-programs compatibility symlinks so that we can
migrate all users (both package and human) piecemeal at our leisure.

Apart from being symlinks, this should be a user-invisible change.

* gnu/build/activation.scm (%privileged-program-directory): New variable.
[activate-setuid-programs]: Put privileged copies in
%PRIVILEGED-PROGRAM-DIRECTORY, with compatibility symlinks to each in
%SETUID-DIRECTORY.
* gnu/services.scm (setuid-program-service-type): Update docstring.
* doc/guix.texi (Setuid Programs): Update @file{} name accordingly.
2024-08-11 02:00:00 +02:00
Tobias Geerinckx-Rice
b39a39ff60
doc: Restructure the list of desktop services.
* doc/guix.texi (Desktop Services): Use a straight list for the list of
service types, rather than hiding them in one growing paragraph of prose.
Explain their purpose in general terms beneath it.

Change-Id: I2408ccf38dd62323138854cc5aa46051d2a076ac
2024-08-11 02:00:00 +02:00
Tobias Geerinckx-Rice
38f2c90133
doc: Rewrite obsolete list of limitations.
* doc/guix.texi (Limitations): Now that KDE Plasma is available,
rewrite the seemingly-exhaustive list to be more general.

Change-Id: I41450302837c963d5f811211e5a498a04f938e55
2024-08-11 02:00:00 +02:00
Florian Pelz
91cf240308
doc: Fix punctuation and style.
Follow-up to de714bcb46.

* doc/guix.texi (Setting Up the Daemon): Fix typos.

Reported-by: Ludovic Courtès <ludo@gnu.org>
Change-Id: Id3e49f3b401e8b9ce2aa4c2588ae33cf25e2ca2d
2024-08-16 22:54:30 +02:00
Tomas Volf
888fdfd1b1
doc: Improve example for guix-for-channels.
The example was missing the (gnu packages package-management) import, so it
did not work.  While the module was mentioned below, I overlooked the
sentence.  So add it also into the example to make it more obvious.

* doc/guix.texi (Customizing the System-Wide Guix): Add import to example.

Change-Id: Ibc5b0be87d40531397660a3b0747f83b851b004b
Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
2024-08-15 16:04:26 +02:00
Florian Pelz
de714bcb46
doc: Setting Up the Daemon: Give guidance to whom this section is useful.
* doc/guix.texi (Setting Up the Daemon): Specify intended audience.

Change-Id: I784c5f720aa87bddb6455e42181a1e9de5d7ec9a
2024-08-10 16:04:03 +02:00
Oleg Pykhalov
26638b8e81
services: containerd: Provision separately from docker service.
containerd can operate independently without relying on Docker for its
configuration.

* gnu/services/docker.scm (docker-configuration): Deprecate containerd field.
(containerd-configuration, containerd-service-type): New variables.
(docker-shepherd-service): Use containerd-configuration.  Delete duplicated
variable binding.  Allow to configure environment variables.
(docker-service-type): Delete extension with containerd-service-type.
* gnu/tests/docker.scm (%docker-os, %oci-os): Add containerd service.
(run-docker-test, run-docker-system-test, run-oci-container-test): Run
containerd service.
* doc/guix.texi (Miscellaneous Services): Document containerd-service-type.

Change-Id: Ife0924e50a3e0aa2302d6592dae51ed894600004
2024-08-04 11:54:50 +03:00
Rodion Goritskov
4bc49e2185
services: agate: Update options for compatibility with the current Agate version.
* gnu/services/web.scm (<agate-configuration>)[certs]: Add.
[cert]: Remove.
[key]: Remove.
[hostname]: Change from string to list.
[silent?]: Remove.
[only-tls13?]: Add.
[central-conf?]: Add.
[ed25519?]: Add.
[skip-port-check?]: Add.
(agate-shepherd-service): Change handling of addr and hostname, add new
options handling.
* doc/guix.texi (Web Services): Update.

Change-Id: Ifb4968d704627344913bb69f20636d710a4fe738
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-07-26 18:55:07 +02:00
Z572 via Guix-patches via
69b8a40365
doc: Add note about use sddm with qt5 theme.
* doc/guix.texi (X Window): Add note about use sddm with qt5 theme.

Change-Id: I57eebc696803894f154e09347283d3327db8a084
Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-07-20 01:36:17 +08:00
Liliana Marie Prikler
8546ca946e
doc: Update note on Emacs packages.
* doc/guix.texi ("Emacs packages"): Expand note to talk about differences
between native compilation upstream and as used in Guix.
2024-07-07 08:04:46 +02:00
Giacomo Leidi via Guix-patches via
5ee2799cab
services: oci-container: Allow setting Shepherd actions in oci-container-configuration.
* gnu/services/docker.scm (oci-container-configuration)
[shepherd-actions]: New field.
(sanitize-shepherd-actions): sanitize it.
(oci-container-shepherd-service): use it.

* doc/guix.texi: Document it.

Change-Id: I0ca9826542be7cb8ca280a07a9bff1a262c2a8a7
Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-07-05 15:12:34 +08:00
Giacomo Leidi via Guix-patches via
cb57a3fd9f
services: oci-container: Allow setting Shepherd respawn? in oci-container-configuration.
* gnu/services/docker.scm (oci-container-configuration)
[respawn?]: New field.
(oci-container-shepherd-service): use it.

* doc/guix.texi: Document it.

Change-Id: I0d6367607fd0fd41f90a54b33d80bf4d4f43dd8b
Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-07-05 15:12:34 +08:00
Giacomo Leidi via Guix-patches via
7d91bd4530
services: oci-container: Allow setting Shepherd auto-start? in oci-container-configuration.
* gnu/services/docker.scm (oci-container-configuration)
[auto-start?]: New field.
(oci-container-shepherd-service): use it.

* doc/guix.texi: Document it.

Change-Id: Id093d93effbbec3e1be757f8be83cf5f62eaeda7
Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-07-05 15:12:34 +08:00
Giacomo Leidi via Guix-patches via
30ba86cb71
services: oci-container: Allow setting Shepherd log-file in oci-container-configuration.
* gnu/services/docker.scm (oci-container-configuration)
[log-file]: New field.
(oci-container-shepherd-service): use it.

* doc/guix.texi: Document it.

Change-Id: Icad29ac6342b6f5bafc0d9be13a93cee99674185
2024-07-05 15:12:34 +08:00
Giacomo Leidi via Guix-patches via
f5d0c324b1
doc: Minor changes to the OCI-backed Services documentation.
* doc/guix.texi: Clarify the example and remove reduntant escapes.

Change-Id: I38f5517ae46b391ba21ae5a94c6dcc272e245036
2024-07-05 15:12:34 +08:00
Tomas Volf
76a2b9d707
services: guix: Default `channels' field to #f.
In the absence of the /etc/guix/channels.scm file, %default-channels is used
anyway.  If user manually (or by extra-special-file) created the file, we
should respect it.  This commit therefore changes the default to #f, hopefully
having zero impact on people not actively using the `channels' field.

* gnu/services/base.scm (<guix-configuration>)[channels]: Set default to #f.

Change-Id: I516c1735a037a153fabbebfc337051aaf0be2155
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-06-26 23:36:24 +02:00
Tomas Volf
398393187c
doc: Warn about extra-special-file usage in /etc.
* doc/guix.texi (Base Services)[extra-special-file]: Add warning regarding
files in /etc.

Change-Id: Ic45465c8712d61caeed42d7912777368e8763a1a
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-06-26 23:34:59 +02:00
Ludovic Courtès
0a220c1599
services: shepherd: Support “free-form” services.
* gnu/services/shepherd.scm (<shepherd-service>)[free-form]: New field.
[start]: Add default value.
(shepherd-service-file): Rename to…
(shepherd-service-file/regular): … this.
(shepherd-service-file/free-form): New procedure.
(shepherd-service-file): Dispatch to one of the two procedures above.
* doc/guix.texi (Shepherd Services): Document the ‘free-form’ field.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>

Change-Id: I206374e950ef6d1e4a996c0f507fb5fcd9cadde3
2024-06-26 22:51:25 +02:00
Ludovic Courtès
0fdac5f036
doc: Introduce mumi before referring to it.
* doc/contributing.texi (Debbugs User Interfaces): Introduce mumi in the
body of the text rather than a footnote since the “Command-Line
Interface” section assumes it has already been introduced.
(Command-Line Interface, Emacs Interface): Capitalize titles.

Change-Id: I0e87cd48b6158582016734afe71c716c548c1639
2024-06-26 22:49:36 +02:00
Richard Sent
da3e71f472
services: web: Improve nginx formatting for extra-content.
When extra-content is a list, add 4 space indentation and a newline to every
line. If it's a string, continue inserting it directly. This makes the list
serialization behavior more consistent with other services.

* gnu/services/web (default-nginx-config): Support lists.
* doc/guix.texi (Web Services)[nginx-configuration]: Document it.

Change-Id: Iec8614ba3cfc37292a566197e8d39b352b04846a
Signed-off-by: Christopher Baines <mail@cbaines.net>
2024-06-26 15:11:52 +01:00
Richard Sent
5f88f71c2d
doc: Add message for common error about make check-system.
* doc/contributing.texi (Running the Test Suite): Mention that make clean-go
may need to be run before running make check-system when previous builds were
run with different work trees.

Change-Id: I4b68d3a05f1425505816db969284487d725840d6
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Fixes: https://issues.guix.gnu.org/47573.
2024-06-24 08:51:45 -04:00
Tomas Volf
fc921acbef
doc: Improve description of nginx's configuration.
* doc/guix.texi (Web Services)[nginx-server-configuration]: Document semantics
of raw-content field.
[nginx-location-configuration]: Document semantics of body field.

Change-Id: I1e699d085a27f2615190de1e1973146da4ab193d
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-06-24 08:51:45 -04:00
Simon Tournier
d19d5447cd
doc: contributing: Mention 'guix git authenticate'.
Follow up of 73b3f941d7.

* doc/contributing.texi (Applying for Commit Access): Update accordingly with
the removal of 'make authenticate'.

Change-Id: Id945c484f6265c76d4eb803369a7fbd9f797434f
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-06-24 08:51:42 -04:00
Ludovic Courtès
e6facbe069
gnu: grub: Update to 2.12.
* gnu/packages/bootloaders.scm (grub): Update to 2.12.
[source](patches): Remove ‘grub-ignore-metadata-csum-seed.patch’.
(snippet): Create ‘grub-core/extra_deps.lst’.  Replace “exit 99”
by “exit 77”.
(grub-coreboot): Update value of ‘XFAIL_TESTS’.
* doc/guix.texi (Keyboard Layout and Networking and Partitioning): Update
accordingly (it should now be fine to use LUKS2).
* gnu/packages/patches/grub-ignore-metadata-csum-seed.patch: Remove.
* gnu/local.mk (dist_patch_DATA): Remove it.

Change-Id: Ia31b3b7e0a2e7de42d30229733e9c196fcd12fd9
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-06-24 08:51:41 -04:00
Richard Sent
ff9942dcc1
doc: Prepend ISC to DHCP client references.
This makes it clearer that this service uses the ISC's dhclient implementation
and does not support DHCP clients that have different command line interfaces.

* doc/guix.texi (Networking Setup): Prepend ISC to all DHCP client references.

Change-Id: I750ef2ffb4b23445c4a2b97aaa44eba56458f430
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-06-24 08:50:49 -04:00
Richard Sent
b539e5ae39
services: networking: Allow dhcp-client to use a config file.
* gnu/services/networking.scm (dhcp-client-configuration) [config-file]: New
field.
(dhcp-client-configuration-config-file): New accessor.
(dhcp-client-shepherd-service): Use the config file when invoking
dhclient if supplied.
* doc/guix.texi: Document it.

Change-Id: I286de4ddf59c5e606bf1fe0a7510570869e62b1a
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-06-24 08:50:45 -04:00
Tomas Volf
603d523fc3
doc: Fix Reviewed-by format.
The documentation does not have a space between `e' and `<', which is not how
people use it, as can be seen from git log.  So adjust the format to match the
reality.

* doc/contributing.texi (Reviewing the Work of Others): Fix format for
Reviewed-by.

Change-Id: Ib863536db72b885cf34927323cb4ebc52a8db2ed
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-06-24 08:34:44 -04:00