services: connman: Deprecate 'iwd?' field.

* gnu/services/networking.scm (<connman-configuration>)
[iwd?]: Use helper to warn deprecated field.
(connman-shepherd-service): Make iwd? a local variable independent from
the deprecated field.
* doc/guix.texi (Networking Setup): Remove mention of iwd? field.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Bruno Victal 2023-03-07 12:44:02 +00:00 committed by Ludovic Courtès
parent 269871d18e
commit 17c80118fa
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
2 changed files with 27 additions and 23 deletions

View file

@ -19926,8 +19926,6 @@ networks.
@item @code{disable-vpn?} (default: @code{#f}) @item @code{disable-vpn?} (default: @code{#f})
When true, disable connman's vpn plugin. When true, disable connman's vpn plugin.
@item @code{iwd?} (default: @code{#f})
When true, ConnMan uses iwd to connect to wireless networks.
@end table @end table
@end deftp @end deftp

View file

@ -1294,7 +1294,8 @@ (define-record-type* <connman-configuration>
(disable-vpn? connman-configuration-disable-vpn? (disable-vpn? connman-configuration-disable-vpn?
(default #f)) (default #f))
(iwd? connman-configuration-iwd? (iwd? connman-configuration-iwd?
(default #f))) (default #f)
(sanitize warn-iwd?-field-deprecation)))
(define (connman-activation config) (define (connman-activation config)
(let ((disable-vpn? (connman-configuration-disable-vpn? config))) (let ((disable-vpn? (connman-configuration-disable-vpn? config)))
@ -1308,11 +1309,16 @@ (define (connman-activation config)
(define (connman-shepherd-service config) (define (connman-shepherd-service config)
(match-record config <connman-configuration> (connman shepherd-requirement (match-record config <connman-configuration> (connman shepherd-requirement
disable-vpn? iwd?) disable-vpn? iwd?)
(let ((iwd? (or iwd? ; TODO: deprecated field, remove later.
(and shepherd-requirement
(memq 'iwd shepherd-requirement)))))
(list (shepherd-service (list (shepherd-service
(documentation "Run Connman") (documentation "Run Connman")
(provision '(networking)) (provision '(networking))
(requirement `(user-processes dbus-system loopback (requirement `(user-processes dbus-system loopback
,@shepherd-requirement ,@shepherd-requirement
;; TODO: iwd? is deprecated and should be passed
;; with shepherd-requirement, remove later.
,@(if iwd? '(iwd) '()))) ,@(if iwd? '(iwd) '())))
(start #~(make-forkexec-constructor (start #~(make-forkexec-constructor
(list (string-append #$connman (list (string-append #$connman
@ -1328,7 +1334,7 @@ (define (connman-shepherd-service config)
;; to avoid spamming the console (XXX: for some reason ;; to avoid spamming the console (XXX: for some reason
;; redirecting to /dev/null doesn't work.) ;; redirecting to /dev/null doesn't work.)
#:log-file "/var/log/connman.log")) #:log-file "/var/log/connman.log"))
(stop #~(make-kill-destructor)))))) (stop #~(make-kill-destructor)))))))
(define %connman-log-rotation (define %connman-log-rotation
(list (log-rotation (list (log-rotation