1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-05-28 12:01:49 +02:00

gnu: hurd: Fix second boot.

Don't create /dev/random with a passive translator, so that it won't try to
start while the/var/lib/random-seed is read-only.

* gnu/build/hurd-boot.scm (set-hurd-device-translators): Do not create
/var/lib/random-seed, /dev/random, /dev/urandom.
* gnu/packages/hurd.scm (hurd)[arguments]: Create /var/lib-random-seed,
/dev/random, /dev/urandom as active translators in runsystem.

Change-Id: Id31dda3bd007a78a487a9a3df8dfc25d749f6b7d
Co-authored-by: Janneke Nieuwenhuizen <janneke@gnu.org>
This commit is contained in:
brian cully
2026-05-12 11:17:01 -04:00
committed by Janneke Nieuwenhuizen
parent d6a9c314ce
commit a5a45d1822
2 changed files with 30 additions and 19 deletions
+19 -16
View File
@@ -193,19 +193,19 @@ set."
(define (mkdir* dir)
(let ((dir (scope dir)))
(unless (file-exists? dir)
(mkdir-p dir))))
(unless (file-exists? dir)
(mkdir-p dir))))
(define random-seed "/var/lib/random-seed")
;; (define random-seed "/var/lib/random-seed")
;; Create seed file to avoid
;; /gnu/store/...-hurd-x.y.z/hurd/random: Warning: Failed to read random seed file /var/lib/random-seed: No such file or directory
(let ((file (scope random-seed)))
(mkdir-p (dirname file))
(call-with-output-file file
(lambda (port)
(display (iota 1000) port)
(chmod port #o600))))
;; ;; Create seed file to avoid
;; ;; /gnu/store/...-hurd-x.y.z/hurd/random: Warning: Failed to read random seed file /var/lib/random-seed: No such file or directory
;; (let ((file (scope random-seed)))
;; (mkdir-p (dirname file))
;; (call-with-output-file file
;; (lambda (port)
;; (display (iota 1000) port)
;; (chmod port #o600))))
(define servers
'(("servers/bus/pci" ("/hurd/pci-arbiter"))
@@ -222,11 +222,14 @@ set."
(define devices
`(("dev/full" ("/hurd/null" "--full") #o666)
("dev/null" ("/hurd/null") #o666)
("dev/random" ("/hurd/random" "--seed-file" ,random-seed)
#o644)
("dev/urandom" ("/hurd/random" "--seed-file" ,random-seed
"--fast")
#o644)
;; The random translators, especially /dev/urandom, need to be non-passive
;; When they exist in the file-system and reference /var/lib/random-seed
;; while / is read-only. console-run will hang.
;; ("dev/random" ("/hurd/random" "--seed-file" ,random-seed)
;; #o644)
;; ("dev/urandom" ("/hurd/random" "--seed-file" ,random-seed
;; "--fast")
;; #o644)
("dev/zero" ("/hurd/storeio" "--store-type=zero") #o666)
("dev/console" ("/hurd/term" "/dev/console" "device" "console"))