aboutsummaryrefslogtreecommitdiff
path: root/gnu/services
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/services')
-rw-r--r--gnu/services/authentication.scm41
-rw-r--r--gnu/services/cuirass.scm5
-rw-r--r--gnu/services/cups.scm5
-rw-r--r--gnu/services/sound.scm34
4 files changed, 73 insertions, 12 deletions
diff --git a/gnu/services/authentication.scm b/gnu/services/authentication.scm
new file mode 100644
index 0000000000..1a2629d475
--- /dev/null
+++ b/gnu/services/authentication.scm
@@ -0,0 +1,41 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu services authentication)
+ #:use-module (gnu services)
+ #:use-module (gnu services dbus)
+ #:use-module (gnu packages freedesktop)
+ #:use-module (guix gexp)
+ #:use-module (guix records)
+ #:export (fprintd-configuration
+ fprintd-configuration?
+ fprintd-service-type))
+
+(define-record-type* <fprintd-configuration>
+ fprintd-configuration make-fprintd-configuration
+ fprintd-configuration?
+ (ntp fprintd-configuration-fprintd
+ (default fprintd)))
+
+(define fprintd-service-type
+ (service-type (name 'fprintd)
+ (extensions
+ (list (service-extension dbus-root-service-type
+ list)))
+ (description
+ "Run fprintd, a fingerprint management daemon.")))
diff --git a/gnu/services/cuirass.scm b/gnu/services/cuirass.scm
index a9ef9881b3..4664a36dcf 100644
--- a/gnu/services/cuirass.scm
+++ b/gnu/services/cuirass.scm
@@ -3,6 +3,7 @@
;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -172,5 +173,7 @@
(service-extension rottlog-service-type cuirass-log-rotations)
(service-extension activation-service-type cuirass-activation)
(service-extension shepherd-root-service-type cuirass-shepherd-service)
- (service-extension account-service-type cuirass-account)))))
+ (service-extension account-service-type cuirass-account)))
+ (description
+ "Run the Cuirass continuous integration service.")))
diff --git a/gnu/services/cups.scm b/gnu/services/cups.scm
index 4c62e6a6f7..715d333a71 100644
--- a/gnu/services/cups.scm
+++ b/gnu/services/cups.scm
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Andy Wingo <wingo@pobox.com>
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
+;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1024,7 +1025,9 @@ extensions that it uses."
(append (opaque-cups-configuration-extensions config)
extensions)))))))
- (default-value (cups-configuration))))
+ (default-value (cups-configuration))
+ (description
+ "Run the CUPS print server.")))
;; A little helper to make it easier to document all those fields.
(define (generate-cups-documentation)
diff --git a/gnu/services/sound.scm b/gnu/services/sound.scm
index 5fe555e8b6..f2dd24402f 100644
--- a/gnu/services/sound.scm
+++ b/gnu/services/sound.scm
@@ -26,6 +26,7 @@
#:use-module (guix packages)
#:use-module (guix records)
#:use-module (guix store)
+ #:use-module (gnu packages linux)
#:use-module (gnu packages pulseaudio)
#:use-module (ice-9 match)
#:export (alsa-configuration
@@ -44,17 +45,31 @@
(define-record-type* <alsa-configuration>
alsa-configuration make-alsa-configuration alsa-configuration?
+ (alsa-plugins alsa-configuration-alsa-plugins ;<package>
+ (default alsa-plugins))
(pulseaudio? alsa-configuration-pulseaudio? ;boolean
(default #t))
(extra-options alsa-configuration-extra-options ;string
(default "")))
-(define (alsa-config-file config)
- "Return the ALSA configuration file corresponding to CONFIG."
- (plain-file "asound.conf"
- (string-append "# Generated by 'alsa-service'.\n\n"
- (if (alsa-configuration-pulseaudio? config)
- "# Use PulseAudio by default
+(define alsa-config-file
+ ;; Return the ALSA configuration file.
+ (match-lambda
+ (($ <alsa-configuration> alsa-plugins pulseaudio? extra-options)
+ (apply mixed-text-file "asound.conf"
+ `("# Generated by 'alsa-service'.\n\n"
+ ,@(if pulseaudio?
+ `("# Use PulseAudio by default
+pcm_type.pulse {
+ lib \"" ,#~(string-append #$alsa-plugins:pulseaudio
+ "/lib/alsa-lib/libasound_module_pcm_pulse.so") "\"
+}
+
+ctl_type.pulse {
+ lib \"" ,#~(string-append #$alsa-plugins:pulseaudio
+ "/lib/alsa-lib/libasound_module_ctl_pulse.so") "\"
+}
+
pcm.!default {
type pulse
fallback \"sysdefault\"
@@ -67,10 +82,9 @@ pcm.!default {
ctl.!default {
type pulse
fallback \"sysdefault\"
-}
-"
- "")
- (alsa-configuration-extra-options config))))
+}\n\n")
+ '())
+ ,extra-options)))))
(define (alsa-etc-service config)
(list `("asound.conf" ,(alsa-config-file config))))