mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-07 07:26:13 -05:00
hurd-boot: Setup pci-arbiter and rumpdisk translators.
* gnu/build/hurd-boot.scm (make-hurd-device-nodes): Create "servers/bus/pci. (set-hurd-device-translators): Create transators for pci-arbiter, rumpdisk, and /dev/wd0..3s1..4. Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
This commit is contained in:
parent
5981e99f0a
commit
fe873fb417
1 changed files with 23 additions and 4 deletions
|
@ -1,6 +1,6 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2020-2022 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -105,7 +105,7 @@ (define (scope dir)
|
|||
|
||||
;; TODO: Set the 'gnu.translator' extended attribute for passive translator
|
||||
;; settings?
|
||||
)
|
||||
(mkdir-p (scope "servers/bus/pci")))
|
||||
|
||||
(define (passive-translator-xattr? file-name)
|
||||
"Return true if FILE-NAME has an extended @code{gnu.translator} attribute
|
||||
|
@ -183,7 +183,8 @@ (define (mkdir* dir)
|
|||
(mkdir-p dir))))
|
||||
|
||||
(define servers
|
||||
'(("servers/crash-dump-core" ("/hurd/crash" "--dump-core"))
|
||||
'(("servers/bus/pci" ("/hurd/pci-arbiter"))
|
||||
("servers/crash-dump-core" ("/hurd/crash" "--dump-core"))
|
||||
("servers/crash-kill" ("/hurd/crash" "--kill"))
|
||||
("servers/crash-suspend" ("/hurd/crash" "--suspend"))
|
||||
("servers/password" ("/hurd/password"))
|
||||
|
@ -213,6 +214,8 @@ (define devices
|
|||
;; 'fd_to_filename' in libc expects it.
|
||||
("dev/fd" ("/hurd/magic" "--directory" "fd") #o555)
|
||||
|
||||
("dev/rumpdisk" ("/hurd/rumpdisk") #o660)
|
||||
|
||||
;; Create a number of ttys; syslogd writes to tty12 by default.
|
||||
;; FIXME: Creating /dev/tty12 leads the console client to switch to
|
||||
;; tty12 when syslogd starts, which is confusing for users. Thus, do
|
||||
|
@ -236,7 +239,22 @@ (define devices
|
|||
("/hurd/term" ,(string-append "/dev/ttyp" n)
|
||||
"pty-slave" ,(string-append "/dev/ptyp" n))
|
||||
#o666))))
|
||||
(iota 10 0))))
|
||||
(iota 10 0))
|
||||
,@(append-map (lambda (n)
|
||||
(let* ((n (number->string n))
|
||||
(drive (string-append "dev/wd" n))
|
||||
(disk (string-append "@/dev/disk:wd" n)))
|
||||
`((,drive ("/hurd/storeio" ,disk) #o600)
|
||||
,@(map (lambda (p)
|
||||
(let ((p (number->string p)))
|
||||
`(,(string-append drive "s" p)
|
||||
("/hurd/storeio"
|
||||
"--store-type=typed"
|
||||
,(string-append
|
||||
"part:" p ":device:" disk))
|
||||
#o660)))
|
||||
(iota 4 1)))))
|
||||
(iota 4 0))))
|
||||
|
||||
(for-each scope-set-translator servers)
|
||||
(mkdir* "dev/vcs/1")
|
||||
|
@ -249,6 +267,7 @@ (define devices
|
|||
(false-if-EEXIST (symlink "/dev/fd/1" (scope "dev/stdout")))
|
||||
(false-if-EEXIST (symlink "/dev/fd/2" (scope "dev/stderr")))
|
||||
(false-if-EEXIST (symlink "crash-dump-core" (scope "servers/crash")))
|
||||
(false-if-EEXIST (symlink "/dev/rumpdisk" (scope "dev/disk")))
|
||||
|
||||
;; Make sure /etc/mtab is a symlink to /proc/mounts.
|
||||
(false-if-exception (delete-file (scope "etc/mtab")))
|
||||
|
|
Loading…
Reference in a new issue