~ruther/guix-local

84a2de36a10dc2ab80f86e16721cbd228c85279e — Ludovic Courtès 7 years ago babfd94
services: Deprecate a few more service procedures.

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.
M doc/guix.texi => doc/guix.texi +5 -20
@@ 11684,9 11684,11 @@ gexps to introduce job definitions that are passed to mcron

(operating-system
  ;; @dots{}
  (services (cons (mcron-service (list garbage-collector-job
                                       updatedb-job
                                       idutils-job))
  (services (cons (service mcron-service-type
                           (mcron-configuration
                            (jobs (list garbage-collector-job
                                        updatedb-job
                                        idutils-job))))
                  %base-services)))
@end lisp



@@ 11709,17 11711,6 @@ also specify the number of tasks to display:
# herd schedule mcron 10
@end example

@deffn {Scheme Procedure} mcron-service @var{jobs} [#:mcron @var{mcron}]
Return an mcron service running @var{mcron} that schedules @var{jobs}, a
list of gexps denoting mcron job specifications.

This is a shorthand for:
@example
(service mcron-service-type
         (mcron-configuration (mcron mcron) (jobs jobs)))
@end example
@end deffn

@defvr {Scheme Variable} mcron-service-type
This is the type of the @code{mcron} service, whose value is an
@code{mcron-configuration} object.


@@ 12313,12 12304,6 @@ Tor} anonymous networking daemon.  The service is configured using a

@end defvr

@deffn {Scheme Procedure} tor-service [@var{config-file}] [#:tor @var{tor}]
This procedure is deprecated and will be removed in a future release.  Return
a service of the @code{tor-service-type} type.  @var{config-file} and
@var{tor} have the same meaning as in @code{<tor-configuration>}.
@end deffn

@deftp {Data Type} tor-configuration
@table @asis
@item @code{tor} (default: @code{tor})

M gnu/services/base.scm => gnu/services/base.scm +6 -2
@@ 1688,7 1688,9 @@ failed to register public key '~a': ~a~%" key status)))))))
   (description
    "Run the build daemon of GNU@tie{}Guix, aka. @command{guix-daemon}.")))

(define* (guix-service #:optional (config %default-guix-configuration))
(define-deprecated (guix-service #:optional
                                 (config %default-guix-configuration))
  guix-service-type
  "Return a service that runs the Guix build daemon according to
@var{config}."
  (service guix-service-type config))


@@ 1789,7 1791,9 @@ failed to register public key '~a': ~a~%" key status)))))))
                 "Add a Shepherd service running @command{guix publish}, a
command that allows you to share pre-built binaries with others over HTTP.")))

(define* (guix-publish-service #:key (guix guix) (port 80) (host "localhost"))
(define-deprecated (guix-publish-service #:key (guix guix)
                                         (port 80) (host "localhost"))
  guix-publish-service-type
  "Return a service that runs @command{guix publish} listening on @var{host}
and @var{port} (@pxref{Invoking guix publish}).


M gnu/services/mcron.scm => gnu/services/mcron.scm +4 -2
@@ 1,5 1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;


@@ 21,6 21,7 @@
  #:use-module (gnu services base)
  #:use-module (gnu services shepherd)
  #:autoload   (gnu packages guile) (mcron)
  #:use-module (guix deprecation)
  #:use-module (guix records)
  #:use-module (guix gexp)
  #:use-module (srfi srfi-1)


@@ 142,7 143,8 @@ files."
                                         jobs)))))
                (default-value (mcron-configuration)))) ;empty job list

(define* (mcron-service jobs #:optional (mcron mcron))
(define-deprecated (mcron-service jobs #:optional (mcron mcron))
  mcron-service-type
  "Return an mcron service running @var{mcron} that schedules @var{jobs}, a
list of gexps denoting mcron job specifications.


M gnu/services/networking.scm => gnu/services/networking.scm +4 -3
@@ 755,9 755,10 @@ HiddenServicePort ~a ~a~%"
                 "Run the @uref{https://torproject.org, Tor} anonymous
networking daemon.")))

(define* (tor-service #:optional
                      (config-file (plain-file "empty" ""))
                      #:key (tor tor))
(define-deprecated (tor-service #:optional
                                (config-file (plain-file "empty" ""))
                                #:key (tor tor))
  tor-service-type
  "Return a service to run the @uref{https://torproject.org, Tor} anonymous
networking daemon.


M gnu/system/install.scm => gnu/system/install.scm +2 -1
@@ 253,7 253,8 @@ You have been warned.  Thanks for being so brave.\x1b[0m
          ;; The build daemon.  Register the official server keys as trusted.
          ;; This allows the installation process to use substitutes by
          ;; default.
          (guix-service (guix-configuration (authorize-key? #t)))
          (service guix-service-type
                   (guix-configuration (authorize-key? #t)))

          ;; Start udev so that useful device nodes are available.
          ;; Use device-mapper rules for cryptsetup & co; enable the CRDA for

M gnu/tests/base.scm => gnu/tests/base.scm +3 -2
@@ 1,5 1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
;;;
;;; This file is part of GNU Guix.


@@ 627,7 627,8 @@ non-ASCII names from /tmp.")
        (job3 #~(job next-second-from             ;to test $PATH
                     "touch witness-touch")))
    (simple-operating-system
     (mcron-service (list job1 job2 job3)))))
     (service mcron-service-type
              (mcron-configuration (jobs (list job1 job2 job3)))))))

(define (run-mcron-test name)
  (define os

M gnu/tests/networking.scm => gnu/tests/networking.scm +1 -1
@@ 351,7 351,7 @@ subnet 192.168.1.0 netmask 255.255.255.0 {

(define %tor-os
  (simple-operating-system
   (tor-service)))
   (service tor-service-type)))

(define %tor-os/unix-socks-socket
  (simple-operating-system

M tests/guix-system.sh => tests/guix-system.sh +4 -2
@@ 1,5 1,5 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
# Copyright © 2018 Chris Marusich <cmmarusich@gmail.com>
#


@@ 258,7 258,9 @@ cat > "$tmpdir/config.scm"<<EOF

(operating-system
  $OS_BASE
  (services (cons (tor-service (local-file "my-torrc"))
  (services (cons (service tor-service-type
                           (tor-configuration
                             (config-file (local-file "my-torrc"))))
                  %base-services)))
EOF