mirror of
https://codeberg.org/guix/guix.git
synced 2026-01-25 12:05:19 -06:00
services: network-manager: Handle existing configuration directory.
* gnu/services/networking.scm (network-manager-activation): Handle the case where /etc/NetworkManager/conf.d already exists. Change-Id: I7af4f4ad226eef28bd8667f0708525e77a6a50c8 Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
This commit is contained in:
parent
490b4e190a
commit
a1e87abaa3
1 changed files with 12 additions and 1 deletions
|
|
@ -1432,7 +1432,18 @@ project's documentation} for more information."
|
|||
'((mkdir-p "/var/lib/misc"))
|
||||
'())
|
||||
#$@(if (pair? extra-configuration-files) ;if non-empty
|
||||
`((symlink
|
||||
;; If /etc/NetworkManager/conf.d is a symlink to a store file,
|
||||
;; delete it.
|
||||
`((if (and (file-exists? "/etc/NetworkManager/conf.d")
|
||||
(store-file-name?
|
||||
(canonicalize-path "/etc/NetworkManager/conf.d")))
|
||||
(delete-file-recursively
|
||||
"/etc/NetworkManager/conf.d"))
|
||||
;; If it exists but is not a symlink to a store file, then
|
||||
;; this will fail with EEXIST; we leave this for the user to
|
||||
;; handle, since they probably created the directory
|
||||
;; themselves.
|
||||
(symlink
|
||||
,(file-union "network-manager-configuration-directory"
|
||||
extra-configuration-files)
|
||||
"/etc/NetworkManager/conf.d"))
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue