mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-24 21:38:07 -05:00
gnu: vm: Add 'host-name' service.
* gnu/system/dmd.scm (host-name-service): New procedure. (mingetty-service): Require the 'host-name' service. * gnu/system/vm.scm (system-qemu-image): Add the 'host-name' service. Set PS1 in /etc/bashrc to something sensible.
This commit is contained in:
parent
43a2779876
commit
ba47851fac
2 changed files with 17 additions and 1 deletions
|
@ -36,6 +36,7 @@ (define-module (gnu system dmd)
|
||||||
service-stop
|
service-stop
|
||||||
service-inputs
|
service-inputs
|
||||||
|
|
||||||
|
host-name-service
|
||||||
syslog-service
|
syslog-service
|
||||||
mingetty-service
|
mingetty-service
|
||||||
guix-service
|
guix-service
|
||||||
|
@ -61,6 +62,14 @@ (define-record-type* <service>
|
||||||
(inputs service-inputs ; list of inputs
|
(inputs service-inputs ; list of inputs
|
||||||
(default '())))
|
(default '())))
|
||||||
|
|
||||||
|
(define (host-name-service store name)
|
||||||
|
"Return a service that sets the host name to NAME."
|
||||||
|
(service
|
||||||
|
(provision '(host-name))
|
||||||
|
(start `(lambda _
|
||||||
|
(sethostname ,name)))
|
||||||
|
(respawn? #f)))
|
||||||
|
|
||||||
(define (mingetty-service store tty)
|
(define (mingetty-service store tty)
|
||||||
"Return a service to run mingetty on TTY."
|
"Return a service to run mingetty on TTY."
|
||||||
(let* ((mingetty-drv (package-derivation store mingetty))
|
(let* ((mingetty-drv (package-derivation store mingetty))
|
||||||
|
@ -68,6 +77,11 @@ (define (mingetty-service store tty)
|
||||||
"/sbin/mingetty")))
|
"/sbin/mingetty")))
|
||||||
(service
|
(service
|
||||||
(provision (list (symbol-append 'term- (string->symbol tty))))
|
(provision (list (symbol-append 'term- (string->symbol tty))))
|
||||||
|
|
||||||
|
;; Since the login prompt shows the host name, wait for the 'host-name'
|
||||||
|
;; service to be done.
|
||||||
|
(requirement '(host-name))
|
||||||
|
|
||||||
(start `(make-forkexec-constructor ,mingetty-bin "--noclear" ,tty))
|
(start `(make-forkexec-constructor ,mingetty-bin "--noclear" ,tty))
|
||||||
(inputs `(("mingetty" ,mingetty))))))
|
(inputs `(("mingetty" ,mingetty))))))
|
||||||
|
|
||||||
|
|
|
@ -447,7 +447,8 @@ (define %pam-services
|
||||||
|
|
||||||
(define %dmd-services
|
(define %dmd-services
|
||||||
;; Services run by dmd.
|
;; Services run by dmd.
|
||||||
(list (mingetty-service store "tty1")
|
(list (host-name-service store "gnu")
|
||||||
|
(mingetty-service store "tty1")
|
||||||
(mingetty-service store "tty2")
|
(mingetty-service store "tty2")
|
||||||
(mingetty-service store "tty3")
|
(mingetty-service store "tty3")
|
||||||
(mingetty-service store "tty4")
|
(mingetty-service store "tty4")
|
||||||
|
@ -488,6 +489,7 @@ (define %dmd-services
|
||||||
(profile (derivation->output-path profile-drv))
|
(profile (derivation->output-path profile-drv))
|
||||||
(bashrc (add-text-to-store store "bashrc"
|
(bashrc (add-text-to-store store "bashrc"
|
||||||
(string-append "
|
(string-append "
|
||||||
|
export PS1='\\u@\\h\\$ '
|
||||||
export PATH=$HOME/.guix-profile/bin:" profile "/bin:" profile "/sbin
|
export PATH=$HOME/.guix-profile/bin:" profile "/bin:" profile "/sbin
|
||||||
export CPATH=$HOME/.guix-profile/include:" profile "/include
|
export CPATH=$HOME/.guix-profile/include:" profile "/include
|
||||||
export LIBRARY_PATH=$HOME/.guix-profile/lib:" profile "/lib
|
export LIBRARY_PATH=$HOME/.guix-profile/lib:" profile "/lib
|
||||||
|
|
Loading…
Reference in a new issue