summaryrefslogtreecommitdiff
path: root/gnu/system
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/system')
-rw-r--r--gnu/system/examples/desktop.tmpl4
-rw-r--r--gnu/system/examples/lightweight-desktop.tmpl2
-rw-r--r--gnu/system/install.scm75
3 files changed, 62 insertions, 19 deletions
diff --git a/gnu/system/examples/desktop.tmpl b/gnu/system/examples/desktop.tmpl
index 2131d1f18f..e8740407d0 100644
--- a/gnu/system/examples/desktop.tmpl
+++ b/gnu/system/examples/desktop.tmpl
@@ -48,8 +48,8 @@
;; Add GNOME and/or Xfce---we can choose at the log-in
;; screen with F1. Use the "desktop" services, which
- ;; include the X11 log-in service, networking with Wicd,
- ;; and more.
+ ;; include the X11 log-in service, networking with
+ ;; NetworkManager, and more.
(services (cons* (gnome-desktop-service)
(xfce-desktop-service)
%desktop-services))
diff --git a/gnu/system/examples/lightweight-desktop.tmpl b/gnu/system/examples/lightweight-desktop.tmpl
index d13c04c76c..65a8ee1809 100644
--- a/gnu/system/examples/lightweight-desktop.tmpl
+++ b/gnu/system/examples/lightweight-desktop.tmpl
@@ -47,7 +47,7 @@
%base-packages))
;; Use the "desktop" services, which include the X11
- ;; log-in service, networking with Wicd, and more.
+ ;; log-in service, networking with NetworkManager, and more.
(services %desktop-services)
;; Allow resolution of '.local' host names with mDNS.
diff --git a/gnu/system/install.scm b/gnu/system/install.scm
index 1cc3db1160..e4b2e82378 100644
--- a/gnu/system/install.scm
+++ b/gnu/system/install.scm
@@ -44,7 +44,12 @@
#:use-module (ice-9 match)
#:use-module (srfi srfi-26)
#:export (installation-os
- beaglebone-black-installation-os))
+ a20-olinuxino-lime-installation-os
+ a20-olinuxino-lime2-emmc-installation-os
+ a20-olinuxino-micro-installation-os
+ banana-pi-m2-ultra-installation-os
+ beaglebone-black-installation-os
+ nintendo-nes-classic-edition-installation-os))
;;; Commentary:
;;;
@@ -376,28 +381,66 @@ You have been warned. Thanks for being so brave.\x1b[0m
nvi ;:wq!
%base-packages))))
-(define beaglebone-black-installation-os
+(define* (agetty-default-service #:optional (tty "ttyS0"))
+ "Return an agetty-service on the given TTY"
+ (agetty-service (agetty-configuration
+ (extra-options '("-L"))
+ (baud-rate "115200")
+ (term "vt100")
+ (tty tty))))
+
+(define* (embedded-installation-os bootloader bootloader-target tty
+ #:key (extra-modules '()))
+ "Return an installation os for embedded systems.
+The initrd gets the extra modules EXTRA-MODULES.
+A getty is provided on TTY.
+The bootloader BOOTLOADER is installed to BOOTLOADER-TARGET."
(operating-system
(inherit installation-os)
(bootloader (bootloader-configuration
- (bootloader u-boot-beaglebone-black-bootloader)
- (target "/dev/sda")))
+ (bootloader bootloader)
+ (target bootloader-target)))
(kernel linux-libre)
(initrd (lambda (fs . rest)
(apply base-initrd fs
- ;; This module is required to mount the sd card.
- #:extra-modules (list "omap_hsmmc")
+ #:extra-modules extra-modules
rest)))
- (services (append
- ;; mingetty does not work on serial lines.
- ;; Use agetty with board-specific serial parameters.
- (list (agetty-service
- (agetty-configuration
- (extra-options '("-L"))
- (baud-rate "115200")
- (term "vt100")
- (tty "ttyO0"))))
- (operating-system-user-services installation-os)))))
+ (services (cons* (agetty-default-service tty)
+ (operating-system-user-services installation-os)))))
+
+(define beaglebone-black-installation-os
+ (embedded-installation-os u-boot-beaglebone-black-bootloader
+ "/dev/sda"
+ "ttyO0"
+ #:extra-modules
+ ;; This module is required to mount the sd card.
+ '("omap_hsmmc")))
+
+
+(define a20-olinuxino-lime-installation-os
+ (embedded-installation-os u-boot-a20-olinuxino-lime-bootloader
+ "/dev/mmcblk0" ; SD card storage
+ "ttyS0"))
+
+(define a20-olinuxino-lime2-emmc-installation-os
+ (embedded-installation-os u-boot-a20-olinuxino-lime2-bootloader
+ "/dev/mmcblk1" ; eMMC storage
+ "ttyS0"))
+
+(define a20-olinuxino-micro-installation-os
+ (embedded-installation-os u-boot-a20-olinuxino-micro-bootloader
+ "/dev/mmcblk0" ; SD card storage
+ "ttyS0"))
+
+(define banana-pi-m2-ultra-installation-os
+ (embedded-installation-os u-boot-banana-pi-m2-ultra-bootloader
+ "/dev/mmcblk1" ; eMMC storage
+ "ttyS0"))
+
+(define nintendo-nes-classic-edition-installation-os
+ (embedded-installation-os u-boot-nintendo-nes-classic-edition-bootloader
+ "/dev/mmcblk0" ; SD card (solder it yourself)
+ "ttyS0"))
;; Return the default os here so 'guix system' can consume it directly.
installation-os