From 6c561e75937960f8b569008be5970285972b4d9d Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 5 Jan 2024 10:11:33 +0100 Subject: services: openssh: Add dependency on ‘networking’. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/services/ssh.scm (openssh-shepherd-service): Add ‘networking’ to ‘requirement’. Change-Id: I14c48fe40cce86810a544de6bb7f925bc360653a --- gnu/services/ssh.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'gnu/services') diff --git a/gnu/services/ssh.scm b/gnu/services/ssh.scm index 0abecd6b42..f759c5cf6e 100644 --- a/gnu/services/ssh.scm +++ b/gnu/services/ssh.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014-2019, 2022, 2023 Ludovic Courtès +;;; Copyright © 2014-2019, 2022-2024 Ludovic Courtès ;;; Copyright © 2016 David Craven ;;; Copyright © 2016 Julien Lepiller ;;; Copyright © 2017 Clément Lassieur @@ -592,7 +592,10 @@ (define ipv6-support? (list (shepherd-service (documentation "OpenSSH server.") - (requirement '(pam syslogd loopback)) + + ;; On the Hurd, this can only be started after pfinet is up, hence + ;; the dependency on 'networking'. + (requirement '(pam syslogd loopback networking)) (provision '(ssh-daemon ssh sshd)) (start #~(if #$inetd-style? -- cgit v1.2.3 From 477d4f7d241165b5a5fd315c27efd7803fad4a04 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 5 Jan 2024 10:53:40 +0100 Subject: services: shepherd: Use the 0.10.x GOOPS-less interface. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/services/shepherd.scm (%default-modules): Remove (oop goops). (shepherd-service-file): Use (service …) instead of (make …). Use ‘actions’ instead of ‘make-actions’. (scm->go): Remove use of (oop goops). (shepherd-configuration-file): Pass ‘register-services’ a list. Use ‘start-in-the-background’ unconditionally. Change-Id: I0ad1ba32e339c56ee31e59f160b53d3581277d97 --- gnu/services/shepherd.scm | 30 ++++++++++-------------------- 1 file changed, 10 insertions(+), 20 deletions(-) (limited to 'gnu/services') diff --git a/gnu/services/shepherd.scm b/gnu/services/shepherd.scm index 8e122f1aab..5ebac129ce 100644 --- a/gnu/services/shepherd.scm +++ b/gnu/services/shepherd.scm @@ -183,7 +183,6 @@ (define %default-imported-modules (define %default-modules ;; Default set of modules visible in a service's file. `((shepherd service) - (oop goops) ((guix build utils) #:hide (delete)) (guix build syscalls))) @@ -300,10 +299,10 @@ (define (shepherd-service-file service) #~(begin (use-modules #$@(shepherd-service-modules service)) - (make - #:docstring '#$(shepherd-service-documentation service) - #:provides '#$(shepherd-service-provision service) - #:requires '#$(shepherd-service-requirement service) + (service + '#$(shepherd-service-provision service) + #:documentation '#$(shepherd-service-documentation service) + #:requirement '#$(shepherd-service-requirement service) ;; The 'one-shot?' slot is new in Shepherd 0.6.0. ;; Older versions ignore it. @@ -313,7 +312,7 @@ (define (shepherd-service-file service) #:start #$(shepherd-service-start service) #:stop #$(shepherd-service-stop service) #:actions - (make-actions + (actions #$@(map (match-lambda (($ name proc doc) #~(#$name #$doc #$proc))) @@ -338,7 +337,6 @@ (define shepherd&co ;; Do the same as the Shepherd's 'load-in-user-module'. (let ((env (make-fresh-user-module))) - (module-use! env (resolve-interface '(oop goops))) (module-use! env (resolve-interface '(shepherd service))) (with-target #$(or target #~%host-type) (lambda _ @@ -401,25 +399,17 @@ (define config ;; than a kernel panic. (call-with-error-handling (lambda () - (apply register-services - (parameterize ((current-warning-port - (%make-void-port "w"))) - (map load-compiled '#$(map scm->go files)))))) + (register-services + (parameterize ((current-warning-port + (%make-void-port "w"))) + (map load-compiled '#$(map scm->go files)))))) (format #t "starting services...~%") (let ((services-to-start '#$(append-map shepherd-service-provision (filter shepherd-service-auto-start? services)))) - (if (defined? 'start-in-the-background) - (start-in-the-background services-to-start) - (for-each (lambda (service) ;pre-0.9.0 compatibility - (guard (c ((service-error? c) - (format (current-error-port) - "failed to start service '~a'~%" - service))) - (start service))) - services-to-start)) + (start-in-the-background services-to-start) ;; Hang up stdin. At this point, we assume that 'start' methods ;; that required user interaction on the console (e.g., -- cgit v1.2.3 From 3eac1c82f7f1547aa6819db867b071a4ee7de8e3 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 5 Jan 2024 11:10:03 +0100 Subject: services: bitlbee: Use ‘make-inetd-constructor’ unconditionally. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This construct was introduced in Shepherd 0.9.0. * gnu/services/messaging.scm (bitlbee-shepherd-service): Use ‘make-inetd-constructor’ unconditionally. Change-Id: Id1b79077d60609c7f95439ee0d097dfe6e66dd2e --- gnu/services/messaging.scm | 53 +++++++++++++++++----------------------------- 1 file changed, 19 insertions(+), 34 deletions(-) (limited to 'gnu/services') diff --git a/gnu/services/messaging.scm b/gnu/services/messaging.scm index 7505810e7c..9702170b3e 100644 --- a/gnu/services/messaging.scm +++ b/gnu/services/messaging.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017, 2018 Clément Lassieur ;;; Copyright © 2017 Mathieu Othacehe -;;; Copyright © 2015, 2017-2020, 2022, 2023 Ludovic Courtès +;;; Copyright © 2015, 2017-2020, 2022-2024 Ludovic Courtès ;;; Copyright © 2018 Pierre-Antoine Rouby ;;; ;;; This file is part of GNU Guix. @@ -857,39 +857,24 @@ (define bitlbee-shepherd-service ;; 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. -- cgit v1.2.3 From 75a63e2a2e73e7287df00a64984b6359bcc2fc54 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Fri, 12 Jan 2024 11:27:13 +0000 Subject: gnu: guix-build-coordinator: Update to 0-94.c4c4f5a. This also switches to use guile-next, which includes important fixes to invalid unicode handling with suspendable ports, which is necessary for the agent. * gnu/packages/package-management.scm (guix-build-coordinator): Update to 0-94.c4c4f5a. * gnu/services/guix.scm: Use guile-next for the coordinator service. Change-Id: I853539a612fd0b41a6c63069c6291b3f42e5cdee --- gnu/packages/package-management.scm | 14 +++++++------- gnu/services/guix.scm | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-) (limited to 'gnu/services') diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 97ea41df66..84cb506be6 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -1510,8 +1510,8 @@ (define-public gwl/next "0k9zkdyyzir3fvlbcfcqy17k28b51i20rpbjwlx2i1mwd2pw9cxc"))))))) (define-public guix-build-coordinator - (let ((commit "e4af682452580298b34681d37818a16771a17c66") - (revision "93")) + (let ((commit "c4c4f5ae043562276b11c2bd1174d3e24bedcd6e") + (revision "94")) (package (name "guix-build-coordinator") (version (git-version "0" revision commit)) @@ -1522,7 +1522,7 @@ (define-public guix-build-coordinator (commit commit))) (sha256 (base32 - "1i8x9nfpvg832lxwbpjl1kadldpkcnjlxdxl4c5jqx2hz680ylf3")) + "1212iskqlxgpyib1p7p1204a0kxmpxqyjv6q0pkypx6jg7f4lmjx")) (file-name (string-append name "-" version "-checkout")))) (build-system gnu-build-system) (arguments @@ -1606,9 +1606,9 @@ (define-public guix-build-coordinator guile-prometheus guile-fibers guile-lib - (first (assoc-ref (package-native-inputs guix) "guile")))) + guile-next)) (inputs - (list (first (assoc-ref (package-native-inputs guix) "guile")) + (list guile-next sqlite bash-minimal (libc-utf8-locales-for-target) @@ -1648,9 +1648,9 @@ (define-public guix-build-coordinator/agent-only guix guile-prometheus guile-lib - (first (assoc-ref (package-native-inputs guix) "guile")))) + guile-next)) (inputs - (list (first (assoc-ref (package-native-inputs guix) "guile")) + (list guile-next bash-minimal (libc-utf8-locales-for-target))) (propagated-inputs diff --git a/gnu/services/guix.scm b/gnu/services/guix.scm index 17599193e3..c438da531c 100644 --- a/gnu/services/guix.scm +++ b/gnu/services/guix.scm @@ -171,7 +171,7 @@ (define-record-type* (parallel-hooks guix-build-coordinator-configuration-parallel-hooks (default '())) (guile guix-build-coordinator-configuration-guile - (default guile-3.0-latest)) + (default guile-next)) (extra-environment-variables guix-build-coordinator-configuration-extra-environment-variables (default '()))) @@ -246,7 +246,7 @@ (define* (make-guix-build-coordinator-start-script database-uri-string client-communication-uri-string (hooks '()) (parallel-hooks '()) - (guile guile-3.0)) + (guile guile-next)) (program-file "start-guix-build-coordinator" (with-extensions (cons guix-build-coordinator-package -- cgit v1.2.3