[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#73927] [PATCH v3 05/17] system: hurd: Add swap-services to hurd-def
From: |
Janneke Nieuwenhuizen |
Subject: |
[bug#73927] [PATCH v3 05/17] system: hurd: Add swap-services to hurd-default-essential-services. |
Date: |
Fri, 25 Oct 2024 11:39:57 +0200 |
* 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):
Change-Id: I1d4d445c614921752dc84aa0dd6ff42cdbf62aa8
---
gnu/services/base.scm | 20 +++++++++++++-------
gnu/system.scm | 13 +++++++------
2 files changed, 20 insertions(+), 13 deletions(-)
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index d0a57a8807..6201dea4b8 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -44,6 +44,7 @@ (define-module (gnu services base)
#: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)
@@ -2647,7 +2648,7 @@ (define device-lookup
(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))
@@ -2655,16 +2656,21 @@ (define device-lookup
(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 c19730b331..533a4154d6 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -845,11 +845,11 @@ (define (hurd-default-essential-services os)
(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)
+ (cons* (service system-service-type entries)
+ %boot-service
+ %hurd-startup-service
+ %activation-service
+ (service shepherd-root-service-type)
(service user-processes-service-type)
;; Make sure that privileged-programs activation script
@@ -873,7 +873,8 @@ (define (hurd-default-essential-services os)
(list `("hosts" ,hosts-file)))
(service hosts-service-type
(local-host-entries host-name)))
- (service profile-service-type (operating-system-packages 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."
--
2.46.0
- [bug#73927] [PATCH 16/16] DRAFT installer: Support dry-run from Guile via store., (continued)
[bug#73927] [PATCH v3 00/17] Installer support for (cross) installing the Hurd., Janneke Nieuwenhuizen, 2024/10/25
- [bug#73927] [PATCH v3 05/17] system: hurd: Add swap-services to hurd-default-essential-services.,
Janneke Nieuwenhuizen <=
- [bug#73927] [PATCH v3 04/17] system: hurd: Remove qemu networking from %base-services/hurd., Janneke Nieuwenhuizen, 2024/10/25
- [bug#73927] [PATCH v3 07/17] hurd-boot: Support second boot., Janneke Nieuwenhuizen, 2024/10/25
- [bug#73927] [PATCH v3 03/17] bootloader: grub: Remove hardcoded partition number for the Hurd., Janneke Nieuwenhuizen, 2024/10/25
- [bug#73927] [PATCH v3 02/17] guix system: When installing the Hurd, create essential devices., Janneke Nieuwenhuizen, 2024/10/25
- [bug#73927] [PATCH v3 01/17] gnu: guile-fibers: Fix cross-build for the Hurd., Janneke Nieuwenhuizen, 2024/10/25
- [bug#73927] [PATCH v3 08/17] maint: Add installer dependencies to the manifest., Janneke Nieuwenhuizen, 2024/10/25
- [bug#73927] [PATCH v3 11/17] installer: Use "partitioning-page" consistently., Janneke Nieuwenhuizen, 2024/10/25
- [bug#73927] [PATCH v3 14/17] installer: Add dry-run?, Janneke Nieuwenhuizen, 2024/10/25
- [bug#73927] [PATCH v3 13/17] installer: Use `%' for parameter %run-command-in-installer., Janneke Nieuwenhuizen, 2024/10/25
- [bug#73927] [PATCH v3 16/17] installer: Add static-networking template., Janneke Nieuwenhuizen, 2024/10/25