system: Introduce the os-release file.

* gnu/system.scm (os-release): New procedure.
(operating-system-etc-service): Use it.
This commit is contained in:
Mathieu Othacehe 2021-09-28 10:19:26 +00:00
parent 53a1cebc9b
commit 2456026044
No known key found for this signature in database
GPG key ID: 8354763531769CA6

View file

@ -852,6 +852,19 @@ (define (validated-sudoers-file file)
"--check" "--file" #$file)
(copy-file #$file #$output)))))
(define (os-release)
(plain-file "os-release"
"\
NAME=\"Guix System\"
ID=guix
PRETTY_NAME=\"Guix System\"
LOGO=guix-icon
HOME_URL=\"https://guix.gnu.org\"
DOCUMENTATION_URL=\"https://guix.gnu.org/en/manual\"
SUPPORT_URL=\"https://guix.gnu.org/en/help\"
BUG_REPORT_URL=\"https://lists.gnu.org/mailman/listinfo/bug-guix\"
"))
(define* (operating-system-etc-service os)
"Return a <service> that builds a directory containing the static part of
the /etc directory."
@ -957,7 +970,8 @@ (define* (operating-system-etc-service os)
source /run/current-system/profile/etc/profile.d/bash_completion.sh
fi\n")))
(etc-service
`(("services" ,(file-append net-base "/etc/services"))
`(("os-release" ,#~#$(os-release))
("services" ,(file-append net-base "/etc/services"))
("protocols" ,(file-append net-base "/etc/protocols"))
("rpc" ,(file-append net-base "/etc/rpc"))
("login.defs" ,#~#$login.defs)