summaryrefslogtreecommitdiff
path: root/gnu/services/networking.scm
AgeCommit message (Collapse)Author
2021-06-14services: Remove deprecated service procedures.Ludovic Courtès
These service procedures were deprecated in January 2019, for instance in commit 65a67bf711b14bc7200f6730c0f173375ca12974. * gnu/services/avahi.scm (avahi-service): Remove. * gnu/services/base.scm (console-keymap, guix-service) (guix-publish-service, gpm-service, urandom-seed-service): Remove. * gnu/services/desktop.scm (upower-service, colord-service): Remove. * gnu/services/mcron.scm (mcron-service): Remove. * gnu/services/messaging.scm (bitlbee-service): Remove. * gnu/services/networking.scm (dhcp-client-service, ntp-service) (tor-service): Remove. * gnu/services/xorg.scm (slim-service, gdm-service): Remove.
2021-05-31services: hostapd: Use package from configuration.Brice Waegeneire
* gnu/services/networking.scm (hostapd-shepherd-services): Replace 'hostapd' by the package specified in the configuration.
2021-05-19services: opendht: Fix hang at boot.Maxim Cournoyer
Fixes <https://issues.guix.gnu.org/48521>. The problem was caused by the 'file-system-mapping' record not being in scope. * gnu/services/networking.scm (opendht-shepherd-service): Import the (gnu system file-systems) module. [requirement]: Depend on networking, to avoid spurious output. [modules]: New field. [start] <group>: New argument.
2021-05-17services: Add a service for opendht.Maxim Cournoyer
* gnu/services/networking.scm (maybe-number?, maybe-string?): New procedures. (<opendht-configuration>): New configuration record. (%opendht-accounts): New variable. (opendht-configuration->command-line-arguments): New procedure. (opendht-shepherd-service, opendht-service-type): New variables. * doc/guix.texi (Networking Services): Document the new service.
2021-04-12services: ipfs: Tweak description.Ludovic Courtès
* gnu/services/networking.scm (ipfs-service-type)[description]: Avoid abbreviation.
2021-04-12services: Add ipfs-service-typeMaxime Devos
* gnu/services/networking.scm (ipfs-service-type) (%ipfs-home-mapping, %ipfs-environment) (%ipfs-accounts, %ipfs-home): New variables. (ipfs-configuration, ipfs-configuration?) (ipfs-configuration-package, ipfs-configuration-gateway) (ipfs-configuration-api, ipfs-shepherd-service) (ipfs-binary, %ipfs-activation): New procedures. * doc/guix.texi (Networking Services): Document it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-02-22services: tor: Add control-socket? option.Christopher Lemmer Webber
* doc/guix.texi (Networking Services): Document new `control-socket?' option for `tor-configuration`. * gnu/services/networking.scm (<tor-configuration>): (tor-configuration->torrc):
2021-01-16services: openntpd: Remove support for deprecated "-s" option.Simon South
* gnu/services/networking.scm (openntpd-configuration): Remove "allow-large-adjustment?" field. (openntpd-shepherd-service): Remove use of "allow-large-adjustment?" configuration field and "-s" daemon option. * tests/networking.scm (%openntpd-conf-sample): Remove "allow-large-adjustment?" field. * doc/guix.texi (Networking Services)[openntpd-service-type]: Remove "allow-large-adjustment?" field from sample configuration. [openntpd-configuration]: Remove description of "allow-large-adjustment?" field. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-01-13services: shepherd: 'shepherd-service-type' requires documentation.Ludovic Courtès
* gnu/services/shepherd.scm (shepherd-service-type): Require a 'description' form. * gnu/services/base.scm (root-file-system-service-type) (rngd-service-type, host-name-service-type): (virtual-terminal-service-type, console-keymap-service-type) (syslog-service-type, swap-service-type) (kmscon-service-type): Add description. * gnu/services/networking.scm (dhcp-client-service-type): Likewise. * gnu/system/install.scm (cow-store-service-type): Likewise. * gnu/system/linux-container.scm (dummy-networking-service-type): Likewise. * gnu/system/mapped-devices.scm (device-mapping-service-type): Likewise. * tests/guix-system.sh: Likewise.
2021-01-12services: Add keepalived service.Oleg Pykhalov
* gnu/services/networking.scm (<keepalived-configuration>): New record. (keepalived-shepherd-service): New procedure. (keepalived-service-type): New variable. * doc/guix.texi (Networking Services): Document this.
2020-11-05services: Add yggdrasil-service-type.raingloom
* gnu/services/networking.scm (yggdrasil-configuration) (yggdrasil-configuration?, yggdrasil-configuration-package) (yggdrasil-configuration-auto-conf, yggdrasil-configuration-log-level) (yggdrasil-configuration-log-to): New procedures. (yggdrasil-service-type): New variable. * doc/guix.texi: Document it. * gnu/system/examples/yggdrasil.tmpl: Provide example. Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2020-09-24services: WPA Supplicant: Conditionally depend on D-Bus.Marius Bakke
Fixes <https://bugs.gnu.org/43567>. Reported by calcium <calcium@disroot.org>. * gnu/services/networking.scm (<wpa-supplicant-configuration>)[requirement]: Remove 'dbus-system. (wpa-supplicant-shepherd-service)[requirement]: Add 'dbus-system when DBUS? is true. * doc/guix.texi (Networking Services)[wpa-supplicant-service-type]: Adjust accordingly.
2020-08-16services: connman-shepherd-service: Don't use short flags.Efraim Flashner
* gnu/services/networking.scm (connman-shepherd-service): Use the long flag options for the start command.
2020-07-06services: simulated-wifi: Use 'kernel-module-loader'.Brice Waegeneire
* gnu/services/networking.scm (simulated-wifi-shepherd-services): Change 'mac-simulation-module' service to use 'kernel-module-loader'.
2020-07-02services: wpa-supplicant: Support specifying additional service dependencies.Marius Bakke
* gnu/services/networking.scm (<wpa-supplicant-configuration>)[requirement]: New parameter. (wpa-supplicant-shepherd-service): Use it instead of hard-coded list. * doc/guix.texi (Networking Services): Document accordingly.
2020-07-02services: wpa-supplicant: Do not export the <wpa-supplicant-configuration> ↵Marius Bakke
record. * gnu/services/networking.scm: Remove <wpa-supplicant-configuration> from exports.
2020-05-08services: Add descriptions.Ludovic Courtès
* gnu/services/dbus.scm (polkit-service-type)[description]: New field. * gnu/services/dict.scm (dicod-service-type)[description]: New field. * gnu/services/dns.scm (knot-service-type)[description]: New field. * gnu/services/networking.scm (dhcpd-service-type)[description]: New field. * gnu/services/shepherd.scm (shepherd-root-service-type)[description]: New field. * gnu/services/xorg.scm (slim-service-type)[description]: New field. (screen-locker-service-type)[description]: New field. * gnu/system/pam.scm (pam-root-service-type)[description]: New field. * gnu/system/shadow.scm (account-service-type)[description]: New field.
2020-04-19services: Add 'simulated-wifi-service-type'.Ludovic Courtès
* gnu/services/networking.scm (simulated-wifi-shepherd-services): New procedure. (simulated-wifi-service-type): New variable. * doc/guix.texi (Networking Services): Document it.
2020-04-19services: Add 'hostapd-service-type'.Ludovic Courtès
* gnu/services/networking.scm (<hostapd-configuration>): New record type. (hostapd-configuration-file, hostapd-shepherd-services): New procedures. (hostapd-service-type): New variable. * doc/guix.texi (Networking Services): Document it.
2020-03-16services: dhcpd: Use 'invoke/quiet' when validating the config file.Ludovic Courtès
This avoids the lengthy copyright/config message from dhcpd. * gnu/services/networking.scm (dhcpd-activation): Use 'invoke/quiet' instead of 'invoke'.
2019-12-29services: dhcp-client: Ignore interfaces that cannot be activated.Brice Waegeneire
Fixes <https://bugs.gnu.org/38524>. * gnu/services/networking.scm (dhcp-client-service-type): Filter interfaces that cannot be activated. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-11-11services: Add pagekite-service-type.Alex Griffin
* gnu/services/networking.scm (pagekite-service-type): New service type. (<pagekite-configuration>): New record type. (pagekite-shepherd-service): New procedure. * doc/guix.texi (Networking Services): Document it.
2019-10-31services: ntp: Fix a crash when using legacy configuration.Maxim Cournoyer
Fixes issue #37504 (see: https://bugs.gnu.org/37504). The bug was caused by the fact that destructuring an <ntp-configuration> record using match would bind the 'servers' field without using the compatibility accessor. * gnu/services/networking.scm (ntp-shepherd-service): Replace `match-lambda' by distinct `lambda' and `match' calls, so that the 'servers' field can be generated by applying the `ntp-configuration-servers' procedure to the configuration object.
2019-10-30services: ntp: Ensure no double quotes are output to config file.Maxim Cournoyer
* gnu/services/networking.scm (ntp-server->string): Use the textual representation of the values as printed by 'display' rather than 'write', to avoid inserting double quotes in the generated config. * tests/networking.scm (%ntp-server-sample): Add a comment and make one of the options a string, to exercise the fix. ("ntp-server->string"): Move the expected value to the first argument. ("ntp configuration servers deprecated form"): Likewise. ("openntpd generated config string ends with a newline"): Likewise.
2019-10-18services: network-manager: Create account for 'network-manager-openconnect'.Ludovic Courtès
Previously, on startup, we'd see: dbus: Unknown username nm-openconnect in message bus configuration file This fixes it. * gnu/services/networking.scm (network-manager-accounts): New procedure. (network-manager-service-type): Extend 'account-service-type'. * gnu/packages/gnome.scm (network-manager-openconnect)[properties]: Add 'user-accounts'.
2019-10-18services: network-manager: Export 'network-manager-configuration-vpn-plugins'.Ludovic Courtès
* gnu/services/networking.scm (<network-manager-configuration>): Export 'network-manager-configuration-vpn-plugins'.
2019-09-18services: Add nftables-service-type.宋文武
* gnu/services/networking.scm (%default-nftables-ruleset): New variable. (<nftables-configuration>): New record type. (nftables-shepherd-service): New procedure. (nftables-service-type): New service type. * doc/guix.texi (Networking Services): Document it.
2019-09-08services: openntpd: Fix the config generation code.Maxim Cournoyer
This fixes issue #37318 (see: http://bugs.gnu.org/37318). * gnu/services/networking.scm (openntpd-configuration->string): Rewrite in order to make the "openntpd configuration generation sanity check" test pass.
2019-09-08services: openntpd: Add test for issue #3731.Maxim Cournoyer
See http://debbugs.gnu.org/cgi/bugreport.cgi?bug=37318. * gnu/services/networking.scm (openntpd-configuration->string): New procedure, extracted from top of the `openntpd-shepherd-service' to make it testable. (openntpd-shepherd-service): Adapt following the move of the code to the above procedure. * tests/networking.scm: Add a test for the `openntpd-configuration->string' procedure.
2019-09-08services: openntpd: Remove useless let.Maxim Cournoyer
* gnu/services/networking.scm (openntpd-shepherd-service): Remove useless let.
2019-09-08services: ntp: Support different NTP server types and options.Maxim Cournoyer
* gnu/services/networking.scm (ntp-server-types): New enum. (<ntp-server>): New record type. (ntp-server->string): New procedure. (%ntp-servers): Define in terms of <htp-server> records. Use the first entrypoint server as a pool instead of a list of static servers. This is more resilient since a new server of the pool can be interrogated on every request. Add the 'iburst' options. (ntp-configuration-servers): Define a custom accessor that warns but honors the now deprecated server format. (<ntp-configuration>): Use it. (%openntpd-servers): New variable, (<openntpd-configuration>): Use it, as a pool ('servers' field) instead of a regular server. * tests/networking.scm: New file. * Makefile.am (SCM_TESTS): Register it. * doc/guix.texi: Update documentation.
2019-09-08services: ntp: Fix KOD warning.Maxim Cournoyer
Otherwise the following messages would be printed by ntpd: Sep 2 05:18:21 localhost ntpd[15849]: restrict default: KOD does nothing without LIMITE. Sep 2 05:18:21 localhost ntpd[15849]: restrict ::: KOD does nothing without LIMITED. Debian uses the same set of "restrict" keywords (see: https://sources.debian.org/src/ntp/1:4.2.8p13+dfsg-2/debian/ntp.conf). * gnu/services/networking.scm (ntp-shepherd-service): Add the 'limited' keyword to both the IPv4 and IPv6 'restrict' directives.
2019-09-08services: ntp: Allow large adjustment by default.Maxim Cournoyer
This is documented as best practice in `man ntpd', and is required to allow the date to be set correctly when traveling (without having to manually update the hardware clock in the BIOS/UEFI). * gnu/services/networking.scm (<ntp-server>)[allow-large-adjustment?]: Set the default value to #t. * doc/guix.texi (Networking Services): Update documentation.
2019-07-17services: network-manager: Clear default OpenVPN user.Jelle Licht
* gnu/services/networking.scm (network-manager-shepherd-service): Clear 'NM_OPENVPN_USER' and 'NM_OPENVPN_GROUP' in #:environment-variables.
2019-07-17services: network-manager: Properly load vpn pluginsJelle Licht
Extends the dbus service when vpn plugins are enabled. * gnu/services/networking.scm (network-manager-service-type): Load vpn plugins when extending dbus service.
2019-06-24services: network-manager: Create '/var/lib/misc' directory for dnsmasq.Florian Pelz
* gnu/services/networking.scm (%network-manager-activation): Rename to... (network-manager-activation): ... this and make it a procedure. Make it create '/var/lib/misc' when using dnsmasq. (network-manager-service-type): Use it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-06-15services: Add usb-modeswitch-service-type.Florian Pelz
* gnu/services/networking.scm (usb-modeswitch-service-type): New variable. (usb-modeswitch-configuration): New variable. (usb-modeswitch-sh): New procedure. (usb-modeswitch-configuration->udev-rules): New procedure. * doc/guix.texi (Networking Services): Document it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-05-09services: dhcp-client: Ignore interfaces that are not ARP capable.Marius Bakke
* gnu/services/networking.scm (dhcp-client-service-type): Filter interfaces that do not support the ARP protocol.
2019-04-23services: connman: Redirect output to a log file.Ludovic Courtès
* gnu/services/networking.scm (connman-shepherd-service): Pass #:log-file to 'make-forkexec-constructor'.
2019-04-05services: wpa-supplicant: Log to syslog.Ludovic Courtès
* gnu/services/networking.scm (wpa-supplicant-shepherd-service): Pass "-s" to 'wpa_supplicant'. Add 'syslogd' to 'requirement'.
2019-03-31services: Open vSwitch: Provide a default configuration.Marius Bakke
* gnu/services/networking.scm (openvswitch-service-type): Provide OPENVSWITCH-CONFIGURATION as a default value. * gnu/tests/networking.scm (%openvswitch-os): Don't configure the service.
2019-01-11services: Deprecate a few more service procedures.Ludovic Courtès
These procedures were already either undocumented (and de facto deprecated) or documented as deprecated or redundant. * gnu/services/base.scm (guix-service, guix-publish-service): Mark as deprecated. * gnu/services/mcron.scm (mcron-service): Likewise. * gnu/services/networking.scm (tor-service): Likewise. * doc/guix.texi (Scheduled Job Execution): Remove 'mcron-service' and adjust example. (Networking Services): Remove 'tor-service'. * gnu/tests/base.scm (%mcron-os): Use 'mcron-service-type' instead of 'mcron-service'. * gnu/tests/networking.scm (%tor-os): Use 'tor-service-type' instead of 'tor-service'. * tests/guix-system.sh: Likewise.
2019-01-10services: Use 'define-deprecated' for service procedures.Ludovic Courtès
* gnu/services/base.scm (urandom-seed-service, gpm-service): Define using 'define-deprecated'. * gnu/services/messaging.scm (bitlbee-service): Likewise. * gnu/services/networking.scm (dhcp-client-service): Likewise. (ntp-service): Likewise. * gnu/services/xorg.scm (slim-service): Likewise. (gdm-service): Likewise.
2018-10-19services: ntp: Document 'ntp-service-type' and 'ntp-configuration'.Ludovic Courtès
* gnu/services/networking.scm (<ntp-configuration>)[servers]: Add default value. (ntp-service-type)[default-value]: New field. (ntp-service): Mark as deprecated. * gnu/services/desktop.scm (%desktop-services): Use (service ntp-service-type) instead of calling 'ntp-service'. * doc/guix.texi (Networking Services): Document 'ntp-service-type' and 'ntp-configuration'.
2018-10-19services: WPA Supplicant: Fix syntax error.Marius Bakke
This is a followup to commit acce0a474c1493ab18912bc46285248e4ccb0314. No idea how these disappeared.. :-/ * gnu/services/networking.scm (wpa-supplicant-shepherd-service): Add missing parens.
2018-10-18services: dhcp-client: Deprecate 'dhcp-client-service' procedure.Ludovic Courtès
* gnu/services/networking.scm (dhcp-client-service-type): Add default value. * gnu/system/examples/bare-bones.tmpl: Use (service dhcp-client-service-type) instead of (dhcp-client-service). * gnu/system/examples/beaglebone-black.tmpl: Likewise. * gnu/tests/base.scm (%avahi-os): Likewise. * gnu/tests/databases.scm (%memcached-os): Likewise. (%mongodb-os): Likewise. * gnu/tests/dict.scm (%dicod-os): Likewise. * gnu/tests/mail.scm (%opensmtpd-os): Likewise. (%exim-os): Likewise. (%dovecot-os): Likewise. * gnu/tests/messaging.scm (run-xmpp-test): Likewise. (run-bitlbee-test): Likewise. * gnu/tests/monitoring.scm (%prometheus-node-exporter-os): Likewise. * gnu/tests/networking.scm (%inetd-os): Likewise. (run-iptables-test): Likewise. * gnu/tests/nfs.scm (%base-os): Likewise. * gnu/tests/rsync.scm (%rsync-os): Likewise. * gnu/tests/ssh.scm (run-ssh-test): Likewise. * gnu/tests/version-control.scm (%cgit-os): Likewise. (%git-http-os): Likewise. (%gitolite-os): Likewise. * gnu/tests/virtualization.scm (%libvirt-os): Likewise. * gnu/tests/web.scm (%httpd-os): Likewise. (%nginx-os): Likewise. (%varnish-os): Likewise. (%php-fpm-os): Likewise. (%hpcguix-web-os): Likewise. (%tailon-os): Likewise. * tests/guix-system.sh: Likewise. * doc/guix.texi (Networking Services): Document 'dhcp-client-service-type' and remove 'dhcp-client-service'.
2018-10-17services: wpa-supplicant: Extend to support configuration parameters.Marius Bakke
This allows using WPA Supplicant "standalone" without an additional network manager. The default configuration is unchanged. * gnu/services/networking.scm (<wpa-supplicant-configuration>): New record type. (wpa-supplicant-shepherd-service): Pass configuration records to the daemon. (wpa-supplicant-service-type): Adjust accordingly. * doc/guix.texi (Networking Services): Document the new service type.
2018-09-26services: dhcp-client: Use 'read-pid-file'.Ludovic Courtès
* gnu/services/networking.scm (dhcp-client-service-type)[start]: Use 'read-pid-file' instead of the custom and possibly infinite loop.
2018-09-20gnu: services: Add iptables service.Arun Isaac
* gnu/services/networking.scm (<iptables-configuration>): New record type. (iptables-service-type): New variable. * gnu/tests/networking.scm (run-iptables-test): New procedure. (%test-iptables): New variable. * doc/guix.texi (Networking Services): Document it.
2018-08-28services: tor: Make it easier to use UNIX sockets.Chris Marusich
* doc/guix.texi (Networking Services): Document it, and mention that tor-service is deprecated. * gnu/services/networking.scm (<tor-configuration>) <socks-socket-type>: New field. (tor-configuration->torrc): When socks-socket-type is 'unix, set SocksPort to UNIX domain socket /var/run/tor/socks-sock and set UnixSocksGroupWritable to 1. * gnu/tests/networking.scm (%tor-os/unix-socks-socket): Instead of using a custom config file, just set socks-socket-type to 'unix.