guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

04/06: services: gpm: Provide a default value and document 'gpm-service-


From: Ludovic Courtès
Subject: 04/06: services: gpm: Provide a default value and document 'gpm-service-type'.
Date: Mon, 30 Apr 2018 08:37:25 -0400 (EDT)

civodul pushed a commit to branch master
in repository guix.

commit 5986e94118b114319feadbd2431d6efbf870a5e5
Author: Ludovic Courtès <address@hidden>
Date:   Mon Apr 30 14:07:34 2018 +0200

    services: gpm: Provide a default value and document 'gpm-service-type'.
    
    * gnu/services/base.scm (%default-gpm-options): New variable.
    (<gpm-configuration>)[gpm, options]: Add default values.
    (gpm-service-type)[default-value]: New field.
    (gpm-service): Use %DEFAULT-GPM-OPTIONS and mark as deprecated.
    * doc/guix.texi (Base Services): Document 'gpm-service-type' and
    'gpm-configuration'.  Remove 'gpm-service'.
---
 doc/guix.texi         | 34 +++++++++++++++++++++++++---------
 gnu/services/base.scm | 15 +++++++++++----
 2 files changed, 36 insertions(+), 13 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 58c3688..87892fc 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -10383,15 +10383,31 @@ See @code{man loadkeys} for details.
 
 @cindex mouse
 @cindex gpm
address@hidden {Scheme Procedure} gpm-service [#:gpm @var{gpm}] @
-          [#:options]
-Run @var{gpm}, the general-purpose mouse daemon, with the given
-command-line @var{options}.  GPM allows users to use the mouse in the console,
-notably to select, copy, and paste text.  The default value of @var{options}
-uses the @code{ps2} protocol, which works for both USB and PS/2 mice.
-
-This service is not part of @var{%base-services}.
address@hidden deffn
address@hidden {Scheme Variable} gpm-service-type
+This is the type of the service that runs GPM, the @dfn{general-purpose
+mouse daemon}, which provides mouse support to the Linux console.  GPM
+allows users to use the mouse in the console, notably to select, copy,
+and paste text.
+
+The value for services of this type must be a @code{gpm-configuration}
+(see below).  This service is not part of @var{%base-services}.
address@hidden defvr
+
address@hidden {Data Type} gpm-configuration
+Data type representing the configuration of GPM.
+
address@hidden @asis
address@hidden @code{options} (default: @code{%default-gpm-options})
+Command-line options passed to @command{gpm}.  The default set of
+options instruct @command{gpm} to listen to mouse events on
address@hidden/dev/input/mice}.  @xref{Command Line,,, gpm, gpm manual}, for
+more information.
+
address@hidden @code{gpm} (default: @code{gpm})
+The GPM package to use.
+
address@hidden table
address@hidden deftp
 
 @anchor{guix-publish-service-type}
 @deffn {Scheme Variable} guix-publish-service-type
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index 694aab8..eb82b2d 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -1962,10 +1962,16 @@ extra rules from the packages listed in @var{rules}."
   "Return a service that uses @var{device} as a swap device."
   (service swap-service-type device))
 
+(define %default-gpm-options
+  ;; Default options for GPM.
+  '("-m" "/dev/input/mice" "-t" "ps2"))
+
 (define-record-type* <gpm-configuration>
   gpm-configuration make-gpm-configuration gpm-configuration?
-  (gpm      gpm-configuration-gpm)                ;package
-  (options  gpm-configuration-options))           ;list of strings
+  (gpm      gpm-configuration-gpm                 ;package
+            (default gpm))
+  (options  gpm-configuration-options             ;list of strings
+            (default %default-gpm-options)))
 
 (define gpm-shepherd-service
   (match-lambda
@@ -2000,14 +2006,15 @@ extra rules from the packages listed in @var{rules}."
                 (extensions
                  (list (service-extension shepherd-root-service-type
                                           gpm-shepherd-service)))
+                (default-value (gpm-configuration))
                 (description
                  "Run GPM, the general-purpose mouse daemon, with the given
 command-line options.  GPM allows users to use the mouse in the console,
 notably to select, copy, and paste text.  The default options use the
 @code{ps2} protocol, which works for both USB and PS/2 mice.")))
 
-(define* (gpm-service #:key (gpm gpm)
-                      (options '("-m" "/dev/input/mice" "-t" "ps2")))
+(define* (gpm-service #:key (gpm gpm)             ;deprecated
+                      (options %default-gpm-options))
   "Run @var{gpm}, the general-purpose mouse daemon, with the given
 command-line @var{options}.  GPM allows users to use the mouse in the console,
 notably to select, copy, and paste text.  The default value of @var{options}



reply via email to

[Prev in Thread] Current Thread [Next in Thread]