system: Support bare-bones serial console.
[jackhill/guix/guix.git] / gnu / system / examples / bare-bones.tmpl
CommitLineData
36ffaca2
LC
1;; This is an operating system configuration template
2;; for a "bare bones" setup, with no X11 display server.
1dac8566
LC
3
4(use-modules (gnu))
36ffaca2 5(use-service-modules networking ssh)
0dddaa7b 6(use-package-modules screen ssh)
1dac8566
LC
7
8(operating-system
36ffaca2
LC
9 (host-name "komputilo")
10 (timezone "Europe/Berlin")
d2986552 11 (locale "en_US.utf8")
1dac8566 12
fc0e663f
LC
13 ;; Boot in "legacy" BIOS mode, assuming /dev/sdX is the
14 ;; target hard disk, and "my-root" is the label of the target
15 ;; root file system.
2941b347
AW
16 (bootloader (bootloader-configuration
17 (bootloader grub-bootloader)
da4e4094 18 (targets '("/dev/sdX"))))
19f3dbcb
TGR
19 ;; It's fitting to support the equally bare bones ‘-nographic’
20 ;; QEMU option, which also nicely sidesteps forcing QWERTY.
21 (kernel-arguments (list "console=ttyS0,115200"))
1dac8566 22 (file-systems (cons (file-system
a5acc17a 23 (device (file-system-label "my-root"))
1dac8566
LC
24 (mount-point "/")
25 (type "ext4"))
26 %base-file-systems))
27
28 ;; This is where user accounts are specified. The "root"
29 ;; account is implicit, and is initially created with the
30 ;; empty password.
bf87f38a 31 (users (cons (user-account
1dac8566
LC
32 (name "alice")
33 (comment "Bob's sister")
34 (group "users")
35
36 ;; Adding the account to the "wheel" group
b756d3da
LC
37 ;; makes it a sudoer. Adding it to "audio"
38 ;; and "video" allows the user to play sound
39 ;; and access the webcam.
40 (supplementary-groups '("wheel"
cf848cc0 41 "audio" "video")))
bf87f38a 42 %base-user-accounts))
53a7a016 43
0c36a681 44 ;; Globally-installed packages.
0c17f720 45 (packages (cons screen %base-packages))
0c36a681 46
36ffaca2
LC
47 ;; Add services to the baseline: a DHCP client and
48 ;; an SSH server.
907dd327
PN
49 (services (append (list (service dhcp-client-service-type)
50 (service openssh-service-type
51 (openssh-configuration
0dddaa7b 52 (openssh openssh-sans-x)
907dd327
PN
53 (port-number 2222))))
54 %base-services)))