[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
01/01: system: examples: Add a template for BeagleBone Black.
From: |
Mathieu Othacehe |
Subject: |
01/01: system: examples: Add a template for BeagleBone Black. |
Date: |
Mon, 18 Dec 2017 09:28:44 -0500 (EST) |
mothacehe pushed a commit to branch master
in repository guix.
commit 9f1e39d1fcca0525bc51dc0eedd11a902089bba4
Author: Mathieu Othacehe <address@hidden>
Date: Mon Dec 18 14:47:44 2017 +0100
system: examples: Add a template for BeagleBone Black.
* gnu/system/examples/beaglebone-black.tmpl: New file.
* Makefile.am (EXAMPLES): Add it.
* gnu/system/install.scm (/etc/configuration-files): Add it.
---
Makefile.am | 1 +
gnu/system/examples/beaglebone-black.tmpl | 54 +++++++++++++++++++++++++++++++
gnu/system/install.scm | 2 ++
3 files changed, 57 insertions(+)
diff --git a/Makefile.am b/Makefile.am
index fe1e685..a0e5ff1 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -254,6 +254,7 @@ AUX_FILES = \
# Templates, examples.
EXAMPLES = \
gnu/system/examples/bare-bones.tmpl \
+ gnu/system/examples/beaglebone-black.tmpl \
gnu/system/examples/desktop.tmpl \
gnu/system/examples/lightweight-desktop.tmpl \
gnu/system/examples/vm-image.tmpl
diff --git a/gnu/system/examples/beaglebone-black.tmpl
b/gnu/system/examples/beaglebone-black.tmpl
new file mode 100644
index 0000000..609b801
--- /dev/null
+++ b/gnu/system/examples/beaglebone-black.tmpl
@@ -0,0 +1,54 @@
+;; This is an operating system configuration template
+;; for a "bare bones" setup on BeagleBone Black board.
+
+(use-modules (gnu) (gnu bootloader u-boot))
+(use-service-modules networking)
+(use-package-modules bootloaders screen ssh)
+
+(operating-system
+ (host-name "komputilo")
+ (timezone "Europe/Berlin")
+ (locale "en_US.utf8")
+
+ ;; Assuming /dev/mmcblk1 is the eMMC, and "my-root" is
+ ;; the label of the target root file system.
+ (bootloader (bootloader-configuration
+ (bootloader u-boot-beaglebone-black-bootloader)
+ (target "/dev/mmcblk1")))
+ (file-systems (cons (file-system
+ (device "my-root")
+ (title 'label)
+ (mount-point "/")
+ (type "ext4"))
+ %base-file-systems))
+
+ ;; This is where user accounts are specified. The "root"
+ ;; account is implicit, and is initially created with the
+ ;; empty password.
+ (users (cons (user-account
+ (name "alice")
+ (comment "Bob's sister")
+ (group "users")
+
+ ;; Adding the account to the "wheel" group
+ ;; makes it a sudoer. Adding it to "audio"
+ ;; and "video" allows the user to play sound
+ ;; and access the webcam.
+ (supplementary-groups '("wheel"
+ "audio" "video"))
+ (home-directory "/home/alice"))
+ %base-user-accounts))
+
+ ;; Globally-installed packages.
+ (packages (cons* screen openssh %base-packages))
+
+ (services (cons* (dhcp-client-service)
+ ;; mingetty does not work on serial lines.
+ ;; Use agetty with board-specific serial parameters.
+ (agetty-service
+ (agetty-configuration
+ (extra-options '("-L"))
+ (baud-rate "115200")
+ (term "vt100")
+ (tty "ttyO0")))
+ %base-services)))
diff --git a/gnu/system/install.scm b/gnu/system/install.scm
index 8864415..1cc3db1 100644
--- a/gnu/system/install.scm
+++ b/gnu/system/install.scm
@@ -156,9 +156,11 @@ the user's target storage device rather than on the RAM
disk."
(string-append #$output "/"
target)))
'(#$(file "bare-bones.tmpl")
+ #$(file "beaglebone-black.tmpl")
#$(file "desktop.tmpl")
#$(file "lightweight-desktop.tmpl"))
'("bare-bones.scm"
+ "beaglebone-black.scm"
"desktop.scm"
"lightweight-desktop.scm"))
#t))))