[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
12/19: system: hurd: Add swap-services to hurd-default-essential-service
From: |
guix-commits |
Subject: |
12/19: system: hurd: Add swap-services to hurd-default-essential-services. |
Date: |
Sat, 2 Sep 2023 11:48:57 -0400 (EDT) |
janneke pushed a commit to branch hurd-team
in repository guix.
commit 893eaee031ae740d8806e08b63e6d9afc0042513
Author: Janneke Nieuwenhuizen <janneke@gnu.org>
AuthorDate: Thu Jun 15 07:27:34 2023 +0200
system: hurd: Add swap-services to hurd-default-essential-services.
* gnu/services/base.scm (swap-service-type): Do not include 'udev'
requirement
for the Hurd. Use system* with "swapon", "swapoff" for the Hurd.
* gnu/system.scm (hurd-default-essential-services): Add swap-services.
* gnu/services/base.scm (swap-service-type):
---
gnu/services/base.scm | 20 +++++++++++-------
gnu/system.scm | 57 ++++++++++++++++++++++++++-------------------------
2 files changed, 42 insertions(+), 35 deletions(-)
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index b3f2d2e8b8..0ad36658d8 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -43,6 +43,7 @@
#:autoload (guix diagnostics) (warning formatted-message &fix-hint)
#:autoload (guix i18n) (G_)
#:use-module (guix combinators)
+ #:use-module (guix utils)
#:use-module (gnu services)
#:use-module (gnu services admin)
#:use-module (gnu services shepherd)
@@ -2471,7 +2472,7 @@ instance."
(with-imported-modules (source-module-closure '((gnu build file-systems)))
(shepherd-service
(provision (list (swap->shepherd-service-name swap)))
- (requirement `(udev ,@requirements))
+ (requirement `(,@(if (target-hurd?) '() '(udev)) ,@requirements))
(documentation "Enable the given swap space.")
(modules `((gnu build file-systems)
,@%default-modules))
@@ -2479,16 +2480,21 @@ instance."
(let ((device #$device-lookup))
(and device
(begin
- (restart-on-EINTR (swapon device
- #$(if (swap-space? swap)
-
(swap-space->flags-bit-mask
- swap)
- 0)))
+ #$(if (target-hurd?)
+ #~(system* "swapon" device)
+ #~(restart-on-EINTR
+ (swapon device
+ #$(if (swap-space? swap)
+ (swap-space->flags-bit-mask
+ swap)
+ 0))))
#t)))))
(stop #~(lambda _
(let ((device #$device-lookup))
(when device
- (restart-on-EINTR (swapoff device)))
+ #$(if (target-hurd?)
+ #~(system* "swapoff" device)
+ #~(restart-on-EINTR (swapoff device))))
#f)))
(respawn? #f))))
(description "Turn on the virtual memory swap area.")))
diff --git a/gnu/system.scm b/gnu/system.scm
index 279b9df5c0..e88a2f3a2f 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -800,34 +800,35 @@ bookkeeping."
(let ((host-name (operating-system-host-name os))
(hosts-file (%operating-system-hosts-file os))
(entries (operating-system-directory-base-entries os)))
- (list (service system-service-type entries)
- %boot-service
- %hurd-startup-service
- %activation-service
- (service shepherd-root-service-type
- (shepherd-configuration
- (shepherd shepherd-0.8))) ;no Fibers
-
- (service user-processes-service-type)
- (account-service (append (operating-system-accounts os)
- (operating-system-groups os))
- (operating-system-skeletons os))
- (root-file-system-service)
- (service file-system-service-type '())
- (service fstab-service-type
- (filter file-system-needed-for-boot?
- (operating-system-file-systems os)))
- (pam-root-service (operating-system-pam-services os))
- (operating-system-etc-service os)
- ;; XXX: hosts-file is deprecated
- (if hosts-file
- (simple-service 'deprecated-hosts-file etc-service-type
- (list `("hosts" ,hosts-file)))
- (service hosts-service-type
- (local-host-entries host-name)))
- (service setuid-program-service-type
- (operating-system-setuid-programs os))
- (service profile-service-type (operating-system-packages os)))))
+ (cons* (service system-service-type entries)
+ %boot-service
+ %hurd-startup-service
+ %activation-service
+ (service shepherd-root-service-type
+ (shepherd-configuration
+ (shepherd shepherd-0.8))) ;no Fibers
+
+ (service user-processes-service-type)
+ (account-service (append (operating-system-accounts os)
+ (operating-system-groups os))
+ (operating-system-skeletons os))
+ (root-file-system-service)
+ (service file-system-service-type '())
+ (service fstab-service-type
+ (filter file-system-needed-for-boot?
+ (operating-system-file-systems os)))
+ (pam-root-service (operating-system-pam-services os))
+ (operating-system-etc-service os)
+ ;; XXX: hosts-file is deprecated
+ (if hosts-file
+ (simple-service 'deprecated-hosts-file etc-service-type
+ (list `("hosts" ,hosts-file)))
+ (service hosts-service-type
+ (local-host-entries host-name)))
+ (service setuid-program-service-type
+ (operating-system-setuid-programs os))
+ (service profile-service-type (operating-system-packages os))
+ (swap-services os))))
(define* (operating-system-services os)
"Return all the services of OS, including \"essential\" services."
- 10/19: hurd-boot: Support system init: Create essential device nodes., (continued)
- 10/19: hurd-boot: Support system init: Create essential device nodes., guix-commits, 2023/09/02
- 01/19: self: Build directories in chunks of max 25 files at a time., guix-commits, 2023/09/02
- 19/19: Revert "DRAFT daemon: Support chroot builds on GNU/Hurd.", guix-commits, 2023/09/02
- 05/19: squash! self: Build directories in chunks of max 25 files at a time. -- remove gc, guix-commits, 2023/09/02
- 02/19: gnu: guix: Update to 1.4.0-11.45de303d8b., guix-commits, 2023/09/02
- 14/19: DRAFT hurd-boot: Support second boot., guix-commits, 2023/09/02
- 16/19: gnu: Add libc-locales-for-target and glibc-locales/hurd., guix-commits, 2023/09/02
- 18/19: DRAFT daemon: Support chroot builds on GNU/Hurd., guix-commits, 2023/09/02
- 15/19: DRAFT system: examples: Add devel-hurd.tmpl., guix-commits, 2023/09/02
- 17/19: locale: Set %default-locale-definitions to glibc/hurd on the Hurd., guix-commits, 2023/09/02
- 12/19: system: hurd: Add swap-services to hurd-default-essential-services.,
guix-commits <=