Merge branch 'master' into core-updates
[jackhill/guix/guix.git] / build-aux / hydra / demo-os.scm
CommitLineData
731b9962
LC
1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
3;;;
4;;; This file is part of GNU Guix.
5;;;
6;;; GNU Guix is free software; you can redistribute it and/or modify it
7;;; under the terms of the GNU General Public License as published by
8;;; the Free Software Foundation; either version 3 of the License, or (at
9;;; your option) any later version.
10;;;
11;;; GNU Guix is distributed in the hope that it will be useful, but
12;;; WITHOUT ANY WARRANTY; without even the implied warranty of
13;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;;; GNU General Public License for more details.
15;;;
16;;; You should have received a copy of the GNU General Public License
17;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
18
19
20;;;
21;;; This file defines an operating system configuration for the demo virtual
22;;; machine images that we build.
23;;;
24
c9384945
LC
25(use-modules (gnu)
26
731b9962 27 (gnu packages xorg)
a549ab4b 28 (gnu packages avahi)
a94546ec 29 (gnu packages linux)
927097ef 30 (gnu packages tor)
731b9962 31
731b9962 32 (gnu services networking)
a549ab4b
LC
33 (gnu services avahi)
34 (gnu services dbus)
731b9962
LC
35 (gnu services xorg))
36
37(operating-system
38 (host-name "gnu")
39 (timezone "Europe/Paris")
9cd0dfaa 40 (locale "en_US.utf8")
548d4c13 41
d5b429ab
LC
42 (bootloader (grub-configuration
43 (device "/dev/sda")))
2717a89a 44 (file-systems
d216323f 45 ;; We provide a dummy file system for /, but that's OK because the VM build
2717a89a 46 ;; code will automatically declare the / file system for us.
a69576ea
LC
47 (cons* (file-system
48 (mount-point "/")
49 (device "dummy")
50 (type "dummy"))
51 ;; %fuse-control-file-system ; needs fuse.ko
52 ;; %binary-format-file-system ; needs binfmt.ko
53 %base-file-systems))
548d4c13 54
731b9962
LC
55 (users (list (user-account
56 (name "guest")
72507e23
LC
57 (group "users")
58 (supplementary-groups '("wheel")) ; allow use of sudo
ab6a279a 59 (password "")
731b9962
LC
60 (comment "Guest of GNU")
61 (home-directory "/home/guest"))))
548d4c13
LC
62
63 (issue "
64This is an alpha preview of the GNU system. Welcome.
65
66This image features the GNU Guix package manager, which was used to
67build it (http://www.gnu.org/software/guix/). The init system is
68GNU dmd (http://www.gnu.org/software/dmd/).
69
70You can log in as 'guest' or 'root' with no password.
71")
72
e5c88dd7
LC
73 (services (cons* (slim-service #:auto-login? #t
74 #:default-user "guest")
731b9962
LC
75
76 ;; QEMU networking settings.
77 (static-networking-service "eth0" "10.0.2.10"
78 #:name-servers '("10.0.2.3")
79 #:gateway "10.0.2.2")
80
a549ab4b
LC
81 (avahi-service)
82 (dbus-service (list avahi))
927097ef 83 (tor-service)
a549ab4b 84
731b9962 85 %base-services))
09e028f4
LC
86 (pam-services
87 ;; Explicitly allow for empty passwords.
88 (base-pam-services #:allow-empty-passwords? #t))
6f436c54 89
927097ef
LC
90 (packages (cons* strace
91 tor torsocks
92 xterm avahi %base-packages)))