linux-boot: Add 'make-hurd-device-nodes'.
* gnu/build/linux-boot.scm (make-hurd-device-nodes): New procedure.master
parent
683cba75ea
commit
ac61e876a4
|
@ -40,6 +40,7 @@
|
|||
find-long-option
|
||||
find-long-options
|
||||
make-essential-device-nodes
|
||||
make-hurd-device-nodes
|
||||
make-static-device-nodes
|
||||
configure-qemu-networking
|
||||
|
||||
|
@ -323,6 +324,36 @@ one specific hardware device. These we have to create."
|
|||
;; File systems in user space (FUSE).
|
||||
(mknod (scope "dev/fuse") 'char-special #o666 (device-number 10 229)))
|
||||
|
||||
(define* (make-hurd-device-nodes #:optional (root "/"))
|
||||
"Make some of the nodes needed on GNU/Hurd."
|
||||
(define (scope dir)
|
||||
(string-append root
|
||||
(if (string-suffix? "/" root)
|
||||
""
|
||||
"/")
|
||||
dir))
|
||||
|
||||
(mkdir (scope "dev"))
|
||||
(for-each (lambda (file)
|
||||
(call-with-output-file (scope file)
|
||||
(lambda (port)
|
||||
(chmod port #o666))))
|
||||
'("dev/null"
|
||||
"dev/zero"
|
||||
"dev/full"
|
||||
"dev/random"
|
||||
"dev/urandom"))
|
||||
;; Don't create /dev/console, /dev/vcs, etc.: they are created by
|
||||
;; console-run on first boot.
|
||||
|
||||
(mkdir (scope "servers"))
|
||||
(mkdir (scope "servers/socket"))
|
||||
;; Don't create /servers/socket/1 & co: runsystem does that on first boot.
|
||||
|
||||
;; TODO: Set the 'gnu.translator' extended attribute for passive translator
|
||||
;; settings?
|
||||
)
|
||||
|
||||
(define %host-qemu-ipv4-address
|
||||
(inet-pton AF_INET "10.0.2.10"))
|
||||
|
||||
|
|
Reference in New Issue