~ruther/guix-local

3eac1c82f7f1547aa6819db867b071a4ee7de8e3 — Ludovic Courtès 2 years ago 1964531
services: bitlbee: Use ‘make-inetd-constructor’ unconditionally.

This construct was introduced in Shepherd 0.9.0.

* gnu/services/messaging.scm (bitlbee-shepherd-service): Use
‘make-inetd-constructor’ unconditionally.

Change-Id: Id1b79077d60609c7f95439ee0d097dfe6e66dd2e
1 files changed, 19 insertions(+), 34 deletions(-)

M gnu/services/messaging.scm
M gnu/services/messaging.scm => gnu/services/messaging.scm +19 -34
@@ 1,7 1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2015, 2017-2020, 2022, 2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2017-2020, 2022-2024 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr>
;;;
;;; This file is part of GNU Guix.


@@ 857,39 857,24 @@ string, you could instantiate a prosody service like this:
              ;; on 'networking'.
              (requirement '(user-processes networking))

              (start #~(if (defined? 'make-inetd-constructor)

                           (make-inetd-constructor
                            (list #$bitlbee* "-I" "-c" #$conf)
                            (list (endpoint
                                   (addrinfo:addr
                                    (car (getaddrinfo #$interface
                                                      #$(number->string port)
                                                      (logior AI_NUMERICHOST
                                                              AI_NUMERICSERV))))))
                            #:requirements '#$requirement
                            #:service-name-stem "bitlbee"
                            #:user "bitlbee" #:group "bitlbee"

                            ;; Allow 'bitlbee-purple' to use libpurple plugins.
                            #:environment-variables
                            (list (string-append "PURPLE_PLUGIN_PATH="
                                                 #$plugins "/lib/purple-2")
                                  "GUIX_LOCPATH=/run/current-system/locale"))

                           (make-forkexec-constructor
                            (list #$(file-append bitlbee "/sbin/bitlbee")
                                  "-n" "-F" "-u" "bitlbee" "-c" #$conf)

                            ;; Allow 'bitlbee-purple' to use libpurple plugins.
                            #:environment-variables
                            (list (string-append "PURPLE_PLUGIN_PATH="
                                                 #$plugins "/lib/purple-2"))

                            #:pid-file "/var/run/bitlbee.pid")))
              (stop  #~(if (defined? 'make-inetd-destructor)
                           (make-inetd-destructor)
                           (make-kill-destructor)))))))))
              (start #~(make-inetd-constructor
                        (list #$bitlbee* "-I" "-c" #$conf)
                        (list (endpoint
                               (addrinfo:addr
                                (car (getaddrinfo #$interface
                                                  #$(number->string port)
                                                  (logior AI_NUMERICHOST
                                                          AI_NUMERICSERV))))))
                        #:requirements '#$requirement
                        #:service-name-stem "bitlbee"
                        #:user "bitlbee" #:group "bitlbee"

                        ;; Allow 'bitlbee-purple' to use libpurple plugins.
                        #:environment-variables
                        (list (string-append "PURPLE_PLUGIN_PATH="
                                             #$plugins "/lib/purple-2")
                              "GUIX_LOCPATH=/run/current-system/locale")))
              (stop  #~(make-inetd-destructor))))))))

(define %bitlbee-accounts
  ;; User group and account to run BitlBee.