[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
06/15: system: hurd: Add swap-services to hurd-default-essential-service
From: |
guix-commits |
Subject: |
06/15: system: hurd: Add swap-services to hurd-default-essential-services. |
Date: |
Thu, 20 Jul 2023 04:35:46 -0400 (EDT) |
janneke pushed a commit to branch hurd-team
in repository guix.
commit fe99526cd9e2184dde91b9283b2a4149b1aaeb12
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 492cf8a693..f4abfb92dd 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)
@@ -2474,7 +2475,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))
@@ -2482,16 +2483,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 23addf41e9..194de2cad5 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."
- branch hurd-team created (now f0a5ec7ac3), guix-commits, 2023/07/20
- 14/15: gnu: Add libc-locales-for-target and glibc-locales/hurd., guix-commits, 2023/07/20
- 03/15: hurd: Support system init in /libexec/runsystem., guix-commits, 2023/07/20
- 07/15: build: Build gnu/packages/*.go in five steps., guix-commits, 2023/07/20
- 06/15: system: hurd: Add swap-services to hurd-default-essential-services.,
guix-commits <=
- 05/15: system: hurd: Add procps to %base-packages/hurd., guix-commits, 2023/07/20
- 09/15: gnu: guix: Update to 1.4.0-8.fde86c4932., guix-commits, 2023/07/20
- 08/15: self: Build gnu/packages/*.go in 26 steps on the Hurd., guix-commits, 2023/07/20
- 01/15: gnu: guix: Disable some test on 32bit., guix-commits, 2023/07/20
- 02/15: gnu: guix: Disable some tests on the Hurd., guix-commits, 2023/07/20
- 13/15: DRAFT system: examples: Add devel-hurd.tmpl., guix-commits, 2023/07/20
- 04/15: hurd-boot: Support system init: Create essential device nodes., guix-commits, 2023/07/20
- 10/15: gnu: guix: Update to 1.4.0-9.0ac1cf36a8., guix-commits, 2023/07/20
- 15/15: locale: Set %default-locale-definitions to glibc/hurd on the Hurd., guix-commits, 2023/07/20
- 12/15: DRAFT hurd-boot: Support second boot., guix-commits, 2023/07/20