unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Bruno Victal <mirai@makinata.eu>
To: 61693@debbugs.gnu.org
Cc: Bruno Victal <mirai@makinata.eu>
Subject: [bug#61693] [PATCH v2] services: etc-service: Deprecate etc-service procedure.
Date: Thu, 23 Feb 2023 16:10:54 +0000	[thread overview]
Message-ID: <17305168b7a65be0b9398951bf85abe3309f0494.1677168632.git.mirai@makinata.eu> (raw)
In-Reply-To: <e4e6aba4ca5eca193c90fe166ba672bd8810d982.1677024379.git.mirai@makinata.eu>

* gnu/services.scm (etc-service): Deprecate procedure.
* gnu/system.scm (operating-system-etc-service): Replace etc-service
with etc-service-type.
---
 gnu/services.scm |  6 +++--
 gnu/system.scm   | 68 ++++++++++++++++++++++++------------------------
 2 files changed, 38 insertions(+), 36 deletions(-)

diff --git a/gnu/services.scm b/gnu/services.scm
index 2abef557d4..d6c7ad0553 100644
--- a/gnu/services.scm
+++ b/gnu/services.scm
@@ -39,6 +39,7 @@ (define-module (gnu services)
   #:use-module (guix modules)
   #:use-module (guix packages)
   #:use-module (guix utils)
+  #:use-module (guix deprecation)
   #:use-module (gnu packages base)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages hurd)
@@ -122,7 +123,7 @@ (define-module (gnu services)
 
             %boot-service
             %activation-service
-            etc-service)
+            etc-service)  ; deprecated
   #:re-export (;; Note: Re-export 'delete' to allow for proper syntax matching
                ;; in 'modify-services' forms.  See
                ;; <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=26805#16>.
@@ -804,7 +805,8 @@ (define etc-service-type
                 (extend append)
                 (description "Populate the @file{/etc} directory.")))
 
-(define (etc-service files)
+(define-deprecated (etc-service files)
+  etc-service-type
   "Return a new service of ETC-SERVICE-TYPE that populates /etc with FILES.
 FILES must be a list of name/file-like object pairs."
   (service etc-service-type files))
diff --git a/gnu/system.scm b/gnu/system.scm
index 53f3c62bb0..ca661c4d86 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -1092,40 +1092,40 @@ (define* (operating-system-etc-service os)
   # as those in ~/.guix-profile and /run/current-system/profile.
   source /run/current-system/profile/etc/profile.d/bash_completion.sh
 fi\n")))
-    (etc-service
-     `(("os-release" ,#~#$(os-release))
-       ("services" ,(file-append net-base "/etc/services"))
-       ("protocols" ,(file-append net-base "/etc/protocols"))
-       ("rpc" ,(file-append net-base "/etc/rpc"))
-       ("login.defs" ,#~#$login.defs)
-       ("issue" ,#~#$issue)
-       ,@(if nsswitch `(("nsswitch.conf" ,#~#$nsswitch)) '())
-       ("profile" ,#~#$profile)
-       ("bashrc" ,#~#$bashrc)
-       ;; Write the operating-system-host-name to /etc/hostname to prevent
-       ;; NetworkManager from changing the system's hostname when connecting
-       ;; to certain networks.  Some discussion at
-       ;; https://lists.gnu.org/archive/html/help-guix/2017-09/msg00037.html
-       ("hostname" ,(plain-file "hostname" (operating-system-host-name os)))
-       ;; Some programs (e.g., GLib) look at /etc/timezone to find the
-       ;; name of the current timezone.  For details, see
-       ;; https://lists.gnu.org/archive/html/guix-devel/2019-07/msg00166.html
-       ;; Some programs expect a terminating newline.
-       ("timezone" ,(plain-file "timezone"
-                                (string-append
-                                 (string-trim-both
-                                  (operating-system-timezone os))
-                                 "\n")))
-       ("localtime" ,(file-append tzdata "/share/zoneinfo/"
-                                  (operating-system-timezone os)))
-       ,@(if sudoers
-             `(("sudoers" ,(validated-sudoers-file sudoers)))
-             '())
-       ,@(if hurd
-             `(("login" ,(file-append hurd "/etc/login"))
-               ("motd"  ,(file-append hurd "/etc/motd"))
-               ("ttys"  ,(file-append hurd "/etc/ttys")))
-             '())))))
+    (service etc-service-type
+             `(("os-release" ,#~#$(os-release))
+               ("services" ,(file-append net-base "/etc/services"))
+               ("protocols" ,(file-append net-base "/etc/protocols"))
+               ("rpc" ,(file-append net-base "/etc/rpc"))
+               ("login.defs" ,#~#$login.defs)
+               ("issue" ,#~#$issue)
+               ,@(if nsswitch `(("nsswitch.conf" ,#~#$nsswitch)) '())
+               ("profile" ,#~#$profile)
+               ("bashrc" ,#~#$bashrc)
+               ;; Write the operating-system-host-name to /etc/hostname to prevent
+               ;; NetworkManager from changing the system's hostname when connecting
+               ;; to certain networks.  Some discussion at
+               ;; https://lists.gnu.org/archive/html/help-guix/2017-09/msg00037.html
+               ("hostname" ,(plain-file "hostname" (operating-system-host-name os)))
+               ;; Some programs (e.g., GLib) look at /etc/timezone to find the
+               ;; name of the current timezone.  For details, see
+               ;; https://lists.gnu.org/archive/html/guix-devel/2019-07/msg00166.html
+               ;; Some programs expect a terminating newline.
+               ("timezone" ,(plain-file "timezone"
+                                        (string-append
+                                         (string-trim-both
+                                          (operating-system-timezone os))
+                                         "\n")))
+               ("localtime" ,(file-append tzdata "/share/zoneinfo/"
+                                          (operating-system-timezone os)))
+               ,@(if sudoers
+                     `(("sudoers" ,(validated-sudoers-file sudoers)))
+                     '())
+               ,@(if hurd
+                     `(("login" ,(file-append hurd "/etc/login"))
+                       ("motd"  ,(file-append hurd "/etc/motd"))
+                       ("ttys"  ,(file-append hurd "/etc/ttys")))
+                     '())))))
 
 (define %root-account
   ;; Default root account.
-- 
2.39.1





  reply	other threads:[~2023-02-23 16:12 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-22  0:09 [bug#61693] [PATCH] services: Remove etc-service procedure Bruno Victal
2023-02-23 16:10 ` Bruno Victal [this message]
2023-03-14 14:42   ` Ludovic Courtès
2023-03-14 15:46     ` Bruno Victal
2023-03-13 17:36 ` [bug#61693] [PATCH v3] services: etc-service: Deprecate " Bruno Victal
2023-03-16 10:52   ` bug#61693: [PATCH] services: Remove " Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=17305168b7a65be0b9398951bf85abe3309f0494.1677168632.git.mirai@makinata.eu \
    --to=mirai@makinata.eu \
    --cc=61693@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).