projects/guix·blob javascript-team · refs

57 lines · 2.2 KiB

1;; -*- mode: scheme; -*-
2;; This is an operating system configuration template
3;; for a "bare bones" setup on BeagleBone Black board.
4
5(use-modules (gnu) (gnu bootloader u-boot))
6(use-service-modules networking)
7(use-package-modules bootloaders screen ssh)
8
9(operating-system
10 (host-name "komputilo")
11 (timezone "Europe/Berlin")
12 (locale "en_US.utf8")
13
14 ;; Assuming /dev/mmcblk1 is the eMMC, and "my-root" is
15 ;; the label of the target root file system.
16 (bootloader (bootloader-configuration
17 (bootloader u-boot-beaglebone-black-bootloader)
18 (targets '("/dev/mmcblk1"))))
19
20 ;; This module is required to mount the SD card.
21 (initrd-modules (cons "omap_hsmmc" %base-initrd-modules))
22
23 (file-systems (cons (file-system
24 (device (file-system-label "my-root"))
25 (mount-point "/")
26 (type "ext4"))
27 %base-file-systems))
28
29 ;; This is where user accounts are specified. The "root"
30 ;; account is implicit, and is initially created with the
31 ;; empty password.
32 (users (cons (user-account
33 (name "alice")
34 (comment "Bob's sister")
35 (group "users")
36
37 ;; Adding the account to the "wheel" group
38 ;; makes it a sudoer. Adding it to "audio"
39 ;; and "video" allows the user to play sound
40 ;; and access the webcam.
41 (supplementary-groups '("wheel"
42 "audio" "video")))
43 %base-user-accounts))
44
45 ;; Globally-installed packages.
46 (packages (append (list screen openssh) %base-packages))
47
48 (services (append (list (service dhcpcd-service-type)
49 ;; mingetty does not work on serial lines.
50 ;; Use agetty with board-specific serial parameters.
51 (service agetty-service-type
52 (agetty-configuration
53 (extra-options '("-L"))
54 (baud-rate "115200")
55 (term "vt100")
56 (tty "ttyO0"))))
57 %base-services)))