Subject: [PATCH] Add brltty support to mkinitfs

From: Drew DeVault <[email-masked]>
Date: Fri, 24 Jan 2020 20:38:41 -0500

brltty is a daemon which drives braille TTY displays. If we start it
during early boot, it can be used to review the boot logs and diagnose
problems early on without the aid of a sighted friend.
---
 Makefile                |  1 +
 features.d/brltty.files |  8 ++++++++
 initramfs-init.in       | 16 +++++++++++-----
 3 files changed, 20 insertions(+), 5 deletions(-)
 create mode 100644 features.d/brltty.files

diff --git a/Makefile b/Makefile
index ad1fee9..744455b 100644
--- a/Makefile
+++ b/Makefile
@@ -14,6 +14,7 @@ CONF_FILES	:= mkinitfs.conf \
 		features.d/base.files \
 		features.d/base.modules \
 		features.d/bootchart.files \
+		features.d/brltty.files \
 		features.d/btrfs.files \
 		features.d/btrfs.modules \
 		features.d/cdrom.modules \
diff --git a/features.d/brltty.files b/features.d/brltty.files
new file mode 100644
index 0000000..d8a0f71
--- /dev/null
+++ b/features.d/brltty.files
@@ -0,0 +1,8 @@
+/etc/brltty.conf
+/usr/bin/brltty
+/usr/bin/brltty-*
+/usr/bin/vstp
+/usr/bin/eutp
+/usr/lib/libbrlapi.so.*
+/usr/lib/brltty
+/usr/share/brltty
diff --git a/initramfs-init.in b/initramfs-init.in
index 52e4e5e..d07f4f0 100755
--- a/initramfs-init.in
+++ b/initramfs-init.in
@@ -330,11 +330,11 @@ mount -t tmpfs -o nodev,nosuid,noexec shm /dev/shm
 #  acpi_osi="!Windows 2006" xen-pciback.hide=(01:00.0)
 set -- $(cat /proc/cmdline)
 
-myopts="alpine_dev autodetect autoraid chart cryptroot cryptdm cryptheader cryptoffset
-	cryptdiscards cryptkey debug_init dma init init_args keep_apk_new modules ovl_dev
-	pkgs quiet root_size root usbdelay ip alpine_repo apkovl alpine_start splash
-	blacklist overlaytmpfs rootfstype rootflags nbd resume s390x_net dasd ssh_key
-	BOOTIF"
+myopts="alpine_dev autodetect autoraid brltty chart cryptroot cryptdm
+	cryptheader cryptoffset cryptdiscards cryptkey debug_init dma init
+	init_args keep_apk_new modules ovl_dev pkgs quiet root_size root usbdelay
+	ip alpine_repo apkovl alpine_start splash blacklist overlaytmpfs rootfstype
+	rootflags nbd resume s390x_net dasd ssh_key BOOTIF"
 
 for opt; do
 	case "$opt" in
@@ -440,6 +440,12 @@ if [ -f /etc/modules ] ; then
 fi
 eend 0
 
+if [ -n "$KOPT_brltty" ]; then
+	ebegin "Starting braille tty driver"
+	brltty
+	eend $?
+fi
+
 if [ -n "$KOPT_cryptroot" ]; then
 	cryptopts="-c ${KOPT_cryptroot}"
 	if [ "$KOPT_cryptdiscards" = "yes" ]; then
-- 
2.25.0