guix/gnu/services
Maxim Cournoyer 8d785c43ba
services: wireguard: Implement a dynamic IP monitoring feature.
* gnu/services/vpn.scm (<wireguard-configuration>)
[monitor-ips?, monitor-ips-internal]: New fields.
* gnu/services/vpn.scm (define-with-source): New syntax.
(wireguard-service-name, strip-port/maybe)
(ipv4-address?, ipv6-address?, host-name?)
(endpoint-host-names): New procedure.
(wireguard-monitoring-jobs): Likewise.
(wireguard-service-type): Register it.
* tests/services/vpn.scm: New file.
* Makefile.am (SCM_TESTS): Register it.
* doc/guix.texi (VPN Services): Update doc.

Reviewed-by: Bruno Victal <mirai@makinata.eu>
2023-07-21 11:58:44 -04:00
..
admin.scm
audio.scm services: mpd: Use proper records for user and group fields. 2023-04-14 15:12:11 -04:00
auditd.scm
authentication.scm system: pam: Let PAM extensions add shepherd requirements. 2023-05-11 13:21:45 +02:00
avahi.scm
base.scm services: static-networking: Support netdde for the Hurd. 2023-07-13 19:00:05 +02:00
certbot.scm services: certbot: Fix nginx crash when certbot is used without domains. 2023-06-18 23:12:10 +02:00
cgit.scm services: cgit: Remove ‘cgit-repo’ left-overs. 2023-07-02 02:00:09 +02:00
ci.scm
configuration.scm services: configuration: Add user-defined sanitizer support. 2023-04-02 12:31:51 +02:00
cuirass.scm
cups.scm services: cups: Add cups PAM service. 2023-05-23 20:26:19 -04:00
databases.scm services: postgresql: Add default package. 2023-04-21 16:16:37 +02:00
dbus.scm
desktop.scm gnu: gnome: Remove gnome-boxes from default GNOME apps. 2023-07-07 21:14:09 +02:00
dict.scm services: dicod: Use one inetd endpoint per interface. 2023-06-24 16:11:07 +02:00
dns.scm services: knot: Add 'configuration' action. 2023-04-21 16:16:37 +02:00
docker.scm
file-sharing.scm
games.scm
ganeti.scm
getmail.scm
guix.scm services: nar-herder: Support extra environment vars. 2023-05-13 11:26:37 +01:00
herd.scm services: herd: Add a new 'current-service' procedure. 2023-07-21 11:58:44 -04:00
hurd.scm
kerberos.scm system: pam: Let PAM extensions add shepherd requirements. 2023-05-11 13:21:45 +02:00
ldap.scm
lightdm.scm system: pam: Let PAM extensions add shepherd requirements. 2023-05-11 13:21:45 +02:00
linux.scm services: earlyoom: Rotate log files. 2023-05-04 21:32:32 +03:00
lirc.scm
mail.scm system: pam: Let PAM extensions add shepherd requirements. 2023-05-11 13:21:45 +02:00
mcron.scm
messaging.scm services: Transient inetd services inherit requirements. 2023-05-21 01:04:39 +02:00
monitoring.scm services: Add vnstat-service-type. 2023-05-11 16:38:29 +02:00
networking.scm services: inetd: Export accessors. 2023-05-11 16:38:29 +02:00
nfs.scm
nix.scm
pam-mount.scm system: pam: Let PAM extensions add shepherd requirements. 2023-05-11 13:21:45 +02:00
pm.scm
rsync.scm services: rsync: Use least authority wrapper. 2023-05-18 23:11:19 -04:00
samba.scm
science.scm
sddm.scm system: pam: Let PAM extensions add shepherd requirements. 2023-05-11 13:21:45 +02:00
security-token.scm
security.scm services: replace bare serializers with (serializer ...) 2023-04-02 12:35:30 +02:00
shepherd.scm services: Validate 'provision' field of <shepherd-service>. 2023-06-25 23:46:03 +02:00
sound.scm
spice.scm
ssh.scm services: Transient inetd services inherit requirements. 2023-05-21 01:04:39 +02:00
syncthing.scm
sysctl.scm
telephony.scm
version-control.scm
virtualization.scm services: childhurd: Bump default qemu memory to 2048MB. 2023-07-13 18:59:02 +02:00
vnc.scm services: Transient inetd services inherit requirements. 2023-05-21 01:04:39 +02:00
vpn.scm services: wireguard: Implement a dynamic IP monitoring feature. 2023-07-21 11:58:44 -04:00
web.scm services: nginx: Harden php-location settings. 2023-07-02 02:00:01 +02:00
xorg.scm services: screen-locker-service-type: Configurable PAM and setuid. 2023-06-04 10:33:55 +02:00