[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#73927] [PATCH 04/16] system: hurd: Add swap-services to hurd-defaul
From: |
Janneke Nieuwenhuizen |
Subject: |
[bug#73927] [PATCH 04/16] system: hurd: Add swap-services to hurd-default-essential-services. |
Date: |
Mon, 21 Oct 2024 10:17:00 +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):
---
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 819d063673..7c50bc45b1 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -43,6 +43,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)
@@ -2644,7 +2645,7 @@ (define swap-service-type
(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))
@@ -2652,16 +2653,21 @@ (define swap-service-type
(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 44f93f91d1..187a72cbf5 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -843,11 +843,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)
(account-service (append (operating-system-accounts os)
@@ -869,7 +869,8 @@ (define (hurd-default-essential-services os)
(service privileged-program-service-type
(append (operating-system-privileged-programs os)
(operating-system-setuid-programs os)))
- (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 00/16] Installer support for (cross) installing the Hurd., Janneke Nieuwenhuizen, 2024/10/21
- [bug#73927] [PATCH 01/16] system: hurd: Remove qemu networking from %base-services/hurd., Janneke Nieuwenhuizen, 2024/10/21
- [bug#73927] [PATCH 02/16] gnu: hurd: Support system init in /libexec/runsystem., Janneke Nieuwenhuizen, 2024/10/21
- [bug#73927] [PATCH 05/16] gnu: hurd: Support second boot., Janneke Nieuwenhuizen, 2024/10/21
- [bug#73927] [PATCH 07/16] maint: Add installer dependencies to the manifest., Janneke Nieuwenhuizen, 2024/10/21
- [bug#73927] [PATCH 03/16] hurd-boot: Support system init: Create essential device nodes., Janneke Nieuwenhuizen, 2024/10/21
- [bug#73927] [PATCH 06/16] hurd-boot: Support second boot., Janneke Nieuwenhuizen, 2024/10/21
- [bug#73927] [PATCH 04/16] system: hurd: Add swap-services to hurd-default-essential-services.,
Janneke Nieuwenhuizen <=
- [bug#73927] [PATCH 11/16] installer: Fix file-name typos., Janneke Nieuwenhuizen, 2024/10/21
- [bug#73927] [PATCH 09/16] installer: Align comments., Janneke Nieuwenhuizen, 2024/10/21
- [bug#73927] [PATCH 10/16] installer: Use "partitioning-page" consistently., Janneke Nieuwenhuizen, 2024/10/21
- [bug#73927] [PATCH 12/16] installer: Use `%' for parameter %run-command-in-installer., Janneke Nieuwenhuizen, 2024/10/21
- [bug#73927] [PATCH 13/16] installer: Add dry-run?, Janneke Nieuwenhuizen, 2024/10/21
- [bug#73927] [PATCH 08/16] installer: Remove unused (newt) imports., Janneke Nieuwenhuizen, 2024/10/21
- [bug#73927] [PATCH 16/16] DRAFT installer: Support dry-run from Guile via store., Janneke Nieuwenhuizen, 2024/10/21
- [bug#73927] [PATCH 15/16] installer: Add static-networking template., Janneke Nieuwenhuizen, 2024/10/21