summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-05-31 22:01:05 +0200
committerLudovic Courtès <ludo@gnu.org>2014-05-31 22:01:05 +0200
commit548d4c139561b2da769561905f3f8134a11bb2d4 (patch)
tree7e8e5e600a98b1c6a4cb3aa5353bdff643189cf0
parent52322163ac4b730a62af67549583d89ee496aeff (diff)
downloadguix-patches-548d4c139561b2da769561905f3f8134a11bb2d4.tar
guix-patches-548d4c139561b2da769561905f3f8134a11bb2d4.tar.gz
system: Add 'issue' field.
* gnu/system.scm (<operating-system>)[issue]: New field. (%default-issue): New variable. (etc-directory): Add #:issue parameter and honor it. (operating-system-etc-directory): Adjust call accordingly. * build-aux/hydra/demo-os.scm: Add 'issue' field.
-rw-r--r--build-aux/hydra/demo-os.scm13
-rw-r--r--gnu/system.scm20
2 files changed, 24 insertions, 9 deletions
diff --git a/build-aux/hydra/demo-os.scm b/build-aux/hydra/demo-os.scm
index 863371291e..30601556ac 100644
--- a/build-aux/hydra/demo-os.scm
+++ b/build-aux/hydra/demo-os.scm
@@ -41,6 +41,7 @@
(host-name "gnu")
(timezone "Europe/Paris")
(locale "en_US.UTF-8")
+
(bootloader (grub-configuration
(device "/dev/sda")))
(file-systems
@@ -52,6 +53,7 @@
(type "dummy"))
;; %fuse-control-file-system ; needs fuse.ko
%binary-format-file-system))
+
(users (list (user-account
(name "guest")
(group "wheel")
@@ -67,6 +69,17 @@
(name "users")
(id 100)
(members '("guest")))))
+
+ (issue "
+This is an alpha preview of the GNU system. Welcome.
+
+This image features the GNU Guix package manager, which was used to
+build it (http://www.gnu.org/software/guix/). The init system is
+GNU dmd (http://www.gnu.org/software/dmd/).
+
+You can log in as 'guest' or 'root' with no password.
+")
+
(services (cons* (slim-service #:auto-login? #t
#:default-user "guest")
diff --git a/gnu/system.scm b/gnu/system.scm
index 48946af7d9..d05ec60b29 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -51,6 +51,7 @@
operating-system-initrd
operating-system-users
operating-system-groups
+ operating-system-issue
operating-system-packages
operating-system-timezone
operating-system-locale
@@ -92,6 +93,8 @@
(skeletons operating-system-skeletons ; list of name/monadic value
(default (default-skeletons)))
+ (issue operating-system-issue ; string
+ (default %default-issue))
(packages operating-system-packages ; list of (PACKAGE OUTPUT...)
(default (list coreutils ; or just PACKAGE
@@ -211,8 +214,14 @@ explicitly appear in OS."
;;; /etc.
;;;
+(define %default-issue
+ ;; Default contents for /etc/issue.
+ "
+This is the GNU system. Welcome.\n")
+
(define* (etc-directory #:key
(locale "C") (timezone "Europe/Paris")
+ (issue "Hello!\n")
(skeletons '())
(pam-services '())
(profile "/run/current-system/profile")
@@ -227,15 +236,7 @@ explicitly appear in OS."
/bin/sh
/run/current-system/profile/bin/sh
/run/current-system/profile/bin/bash\n"))
- (issue (text-file "issue" "
-This is an alpha preview of the GNU system. Welcome.
-
-This image features the GNU Guix package manager, which was used to
-build it (http://www.gnu.org/software/guix/). The init system is
-GNU dmd (http://www.gnu.org/software/dmd/).
-
-You can log in as 'guest' or 'root' with no password.
-"))
+ (issue (text-file "issue" issue))
;; TODO: Generate bashrc from packages' search-paths.
(bashrc (text-file* "bashrc" "
@@ -309,6 +310,7 @@ alias ll='ls -l'
(skeletons (operating-system-skeletons os)))
(etc-directory #:pam-services pam-services
#:skeletons skeletons
+ #:issue (operating-system-issue os)
#:locale (operating-system-locale os)
#:timezone (operating-system-timezone os)
#:sudoers (operating-system-sudoers os)