diff --git a/bb-beagle-flasher/suite/bullseye/debian/bb-beagle-flasher.beagle-flasher-init-shutdown.service b/bb-beagle-flasher/suite/bullseye/debian/bb-beagle-flasher.beagle-flasher-init-shutdown.service
new file mode 100755
index 0000000000000000000000000000000000000000..9239339e983f965bab1ec1340fe320c923cd7b89
--- /dev/null
+++ b/bb-beagle-flasher/suite/bullseye/debian/bb-beagle-flasher.beagle-flasher-init-shutdown.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Beagle Flasher Shutdown
+After=network.target
+
+[Service]
+Type=oneshot
+ExecStart=/bin/sh /usr/sbin/init-shutdown-beagle-flasher
+
+[Install]
+WantedBy=multi-user.target
diff --git a/bb-beagle-flasher/suite/bullseye/debian/beagle-flasher b/bb-beagle-flasher/suite/bullseye/debian/beagle-flasher
index e7aea9cf5e98dcd9d95e54b7b7b93a829f044e8d..7afd04308cd9b8eb75beb81c473c2f094925036e 100755
--- a/bb-beagle-flasher/suite/bullseye/debian/beagle-flasher
+++ b/bb-beagle-flasher/suite/bullseye/debian/beagle-flasher
@@ -6,7 +6,7 @@ if ! id | grep -q root; then
 	exit
 fi
 
-version_message="1.20211119.0: add BBAI bits..."
+version_message="1.20220106: add bits..."
 
 #mke2fs -c
 #Check the device for bad blocks before creating the file system.
@@ -242,7 +242,7 @@ copy_boot () {
 			mkdir -p /tmp/boot/extlinux/ || true
 			cp -v ${extlinux} /tmp/boot/extlinux/extlinux.conf
 			message="INFO: [cat /tmp/boot/extlinux/extlinux.conf]"                                     ; broadcast
-			message="`cat //tmp/boot/extlinux/extlinux.conf`"                                          ; broadcast
+			message="`cat /tmp/boot/extlinux/extlinux.conf`"                                           ; broadcast
 			message="--------------------------------------------------------------------------------" ; broadcast
 		fi
 	fi
diff --git a/bb-beagle-flasher/suite/bullseye/debian/changelog b/bb-beagle-flasher/suite/bullseye/debian/changelog
index db376630a9f4fe06a8a0f0d079e85dc177f5ca8f..e76065584867969b5640931f581e95f981ff4111 100644
--- a/bb-beagle-flasher/suite/bullseye/debian/changelog
+++ b/bb-beagle-flasher/suite/bullseye/debian/changelog
@@ -1,6 +1,6 @@
-bb-beagle-flasher (1.20220105.2-0~bullseye+20220105) bullseye; urgency=low
+bb-beagle-flasher (1.20220106.0-0~bullseye+20220106) bullseye; urgency=low
 
   * Rebuild for repos.rcn-ee.com
 
- -- Robert Nelson <robertcnelson@gmail.com>  Wed, 05 Jan 2022 16:48:10 -0600
+ -- Robert Nelson <robertcnelson@gmail.com>  Thu, 06 Jan 2022 16:47:01 -0600
 
diff --git a/bb-beagle-flasher/suite/bullseye/debian/enable-beagle-flasher b/bb-beagle-flasher/suite/bullseye/debian/enable-beagle-flasher
new file mode 100755
index 0000000000000000000000000000000000000000..c5478a361fb7553dae7ae9130c63b64ee4a40a83
--- /dev/null
+++ b/bb-beagle-flasher/suite/bullseye/debian/enable-beagle-flasher
@@ -0,0 +1,15 @@
+#!/bin/sh -e
+
+if ! id | grep -q root; then
+	echo "enable-beagle-flasher must be run as root:"
+	echo "sudo enable-beagle-flasher"
+	exit
+fi
+
+if [ -f /etc/default/beagle-flasher ] ; then
+	sed -i -e 's:quiet:init=/usr/sbin/init-beagle-flasher:g' /boot/firmware/extlinux/extlinux.conf
+	systemctl enable beagle-flasher-init-shutdown.service || true
+else
+	echo "Please setup /etc/default/beagle-flasher, for the BBB or BBAI:"
+	echo "# sudo cp -v /etc/beagle-flasher/bbai64-microsd-to-emmc /etc/default/beagle-flasher"
+fi
diff --git a/bb-beagle-flasher/suite/bullseye/debian/init-beagle-flasher b/bb-beagle-flasher/suite/bullseye/debian/init-beagle-flasher
new file mode 100755
index 0000000000000000000000000000000000000000..5ddea0c22379d2d1ec5e598066c12e6e65c5baf2
--- /dev/null
+++ b/bb-beagle-flasher/suite/bullseye/debian/init-beagle-flasher
@@ -0,0 +1,448 @@
+#!/bin/bash -e
+
+if ! id | grep -q root; then
+	echo "must be run as root:"
+	exit
+fi
+
+version_message="1.20220106: add bits..."
+
+#mke2fs -c
+#Check the device for bad blocks before creating the file system.
+#If this option is specified twice, then a slower read-write test is
+#used instead of a fast read-only test.
+
+mkfs_options=""
+#mkfs_options="-c"
+#mkfs_options="-cc"
+
+cylon_leds() {
+	#ls /sys/class/leds/beaglebone\:green\:usr*
+	#cat /sys/class/leds/beaglebone\:green\:usr*/trigger
+	local leds_base=/sys/class/leds/beaglebone\:green\:usr
+	if [ -e ${leds_base}0/trigger ] ; then
+		echo none > ${leds_base}0/trigger
+		echo none > ${leds_base}1/trigger
+		echo none > ${leds_base}2/trigger
+		echo none > ${leds_base}3/trigger
+
+		STATE=1
+		while : ; do
+		case $STATE in
+			1)
+				echo 1 > ${leds_base}0/brightness
+				echo 0 > ${leds_base}1/brightness
+				STATE=2
+				;;
+			2)
+				echo 1 > ${leds_base}1/brightness
+				echo 0 > ${leds_base}0/brightness
+				STATE=3
+				;;
+			3)
+				echo 1 > ${leds_base}2/brightness
+				echo 0 > ${leds_base}1/brightness
+				STATE=4
+				;;
+			4)
+				echo 1 > ${leds_base}3/brightness
+				echo 0 > ${leds_base}2/brightness
+				STATE=5
+				;;
+			5)
+				echo 1 > ${leds_base}2/brightness
+				echo 0 > ${leds_base}3/brightness
+				STATE=6
+				;;
+			6)
+				echo 1 > ${leds_base}1/brightness
+				echo 0 > ${leds_base}2/brightness
+				STATE=1
+				;;
+			*)
+				echo 1 > ${leds_base}0/brightness
+				echo 0 > ${leds_base}1/brightness
+				STATE=2
+				;;
+		esac
+		sleep 0.1
+		done
+	fi
+}
+
+reset_leds() {
+	if [ "x${has_usr_leds}" = "xenable" ] ; then
+		if [ -e /proc/$CYLON_PID ]; then
+			kill $CYLON_PID > /dev/null 2>&1
+		fi
+
+		leds_pattern0=${leds_pattern0:-"heartbeat"}
+		leds_pattern1=${leds_pattern1:-"mmc0"}
+		leds_pattern2=${leds_pattern2:-"cpu0"}
+		leds_pattern3=${leds_pattern3:-"mmc1"}
+		leds_base=/sys/class/leds/beaglebone\:green\:usr
+
+		if [ -e ${leds_base}0/trigger ] ; then
+			echo ${leds_pattern0} > ${leds_base}0/trigger
+			echo ${leds_pattern1} > ${leds_base}1/trigger
+			echo ${leds_pattern2} > ${leds_base}2/trigger
+			echo ${leds_pattern3} > ${leds_base}3/trigger
+		fi
+	fi
+}
+
+flush_cache () {
+	sync
+	if [ "x${destination}" != "x" ] ; then
+		message="INFO: flush_cache: [blockdev --flushbufs ${destination}]"                         ; broadcast
+		blockdev --flushbufs ${destination} || true
+		message="--------------------------------------------------------------------------------" ; broadcast
+	fi
+}
+
+broadcast () {
+	if [ "x${message}" != "x" ] ; then
+		echo "${message}"
+		if [ "x${debug_over_display}" != "x" ] ; then
+			echo "${message}" > /dev/${debug_over_display} || true
+		fi
+	fi
+}
+
+broadcast_over_display () {
+	if [ "x${message}" != "x" ] ; then
+		if [ "x${debug_over_display}" != "x" ] ; then
+			echo "${message}" > /dev/${debug_over_display} || true
+		fi
+	fi
+}
+
+example_failure () {
+	message="Example: /etc/default/beagle-flasher"                                             ; broadcast
+	message="--------------------------------------------------------------------------------" ; broadcast
+	message="source=/dev/mmcblk0"                                                              ; broadcast
+	message="destination=/dev/mmcblk1"                                                         ; broadcast
+	message="rfs_partition=dual"                                                               ; broadcast
+	message="rfs_boot_startmb=1"                                                               ; broadcast
+	message="rfs_boot_size_mb=128"                                                             ; broadcast
+	message="--------------------------------------------------------------------------------" ; broadcast
+	exit 2
+}
+
+write_failure () {
+	message="ERROR: writing to [destination=${destination}] failed..."                         ; broadcast
+	message="--------------------------------------------------------------------------------" ; broadcast
+	flush_cache
+	if [ "x${destination}" != "x" ] ; then
+		umount ${destination}p1 > /dev/null 2>&1 || true
+	fi
+}
+
+check_running_system () {
+	message="INFO: Giving system time to stablize..."                                          ; broadcast
+	message="--------------------------------------------------------------------------------" ; broadcast
+	message="5"                                                                                ; broadcast
+	sleep 1
+	message="4"                                                                                ; broadcast
+	sleep 1
+	message="3"                                                                                ; broadcast
+	sleep 1
+	message="2"                                                                                ; broadcast
+	sleep 1
+	message="1"                                                                                ; broadcast
+	sleep 1
+	message="--------------------------------------------------------------------------------" ; broadcast
+
+	message="INFO: Preparing /tmp"                                                             ; broadcast
+	message="INFO: [mount -t tmpfs tmpfs /tmp]"                                                ; broadcast
+	mount -t tmpfs tmpfs /tmp
+	message="--------------------------------------------------------------------------------" ; broadcast
+
+	has_usr_leds="enable"
+	#machine=$(cat /proc/device-tree/model | sed "s/ /_/g" | tr -d '\000')
+
+	#case "${machine}" in
+	#	TI_AM5728_BeagleBoard*)
+	#		unset has_usr_leds
+	#		;;
+	#esac
+
+	if [ "x${has_usr_leds}" = "xenable" ] ; then
+		cylon_leds & CYLON_PID=$!
+	fi
+
+	if [ "x${source}" != "x" ] && [ "x${destination}" != "x" ] ; then
+		message="INFO: [lsblk -i]"                                                                 ; broadcast
+		message="`lsblk -i || true`"                                                               ; broadcast
+		message="--------------------------------------------------------------------------------" ; broadcast
+		message="INFO: copying [${source}] -> [${destination}]"                                    ; broadcast
+		message="--------------------------------------------------------------------------------" ; broadcast
+	else
+		message="INFO: [lsblk -i]"                                                                 ; broadcast
+		message="`lsblk -i || true`"                                                               ; broadcast
+		message="--------------------------------------------------------------------------------" ; broadcast
+		message="ERROR: Setup: [source] and [destination] in /etc/default/beagle-flasher"          ; broadcast
+		message="--------------------------------------------------------------------------------" ; broadcast
+		example_failure
+	fi
+
+	if [ ! -b "${source}" ] ; then
+		message="ERROR: [source=${source}] does not exist"                                         ; broadcast
+		message="--------------------------------------------------------------------------------" ; broadcast
+		example_failure
+	else
+		message="INFO: [source=${source}] is a valid block device"                                 ; broadcast
+	fi
+
+	if [ ! -b "${destination}" ] ; then
+		message="ERROR: [destination=${destination}] does not exist"                               ; broadcast
+		message="--------------------------------------------------------------------------------" ; broadcast
+		example_failure
+	else
+		message="INFO: [destination=${destination}] is a valid block device"                       ; broadcast
+	fi
+	flush_cache
+}
+
+format_boot () {
+	message="/sbin/mkfs.vfat -F 16 ${destination}p1 -n ${boot_label}"                          ; broadcast
+	LC_ALL=C /sbin/mkfs.vfat -F 16 ${destination}p1 -n ${boot_label}
+	message="--------------------------------------------------------------------------------" ; broadcast
+	flush_cache
+}
+
+format_root () {
+	message="/sbin/mkfs.ext4 ${ext4_options} ${destination}p2 -L ${rootfs_label}"              ; broadcast
+	LC_ALL=C /sbin/mkfs.ext4 ${ext4_options} ${destination}p2 -L ${rootfs_label}
+	message="--------------------------------------------------------------------------------" ; broadcast
+	flush_cache
+}
+
+format_single_root () {
+	message="/sbin/mkfs.ext4 ${mkfs_options} ${destination}p1 -L ${single_root_label}"         ; broadcast
+	LC_ALL=C /sbin/mkfs.ext4 ${mkfs_options} ${destination}p1 -L ${single_root_label}
+	message="--------------------------------------------------------------------------------" ; broadcast
+	flush_cache
+}
+
+copy_boot () {
+	message="Copying: ${source}p1 -> ${destination}p1" ; broadcast
+	mkdir -p /tmp/boot/ || true
+
+	mount ${destination}p1 /tmp/boot/ -o sync
+
+	message="rsync: /boot/firmware/ -> /tmp/boot/" ; broadcast
+	rsync -aAx /boot/firmware/ /tmp/boot/ || write_failure
+	flush_cache
+
+	if [ "x${extlinux}" != "x" ] ; then
+		if [ -f ${extlinux} ] ; then
+			message="INFO: [/boot/extlinux/extlinux.conf]"                                             ; broadcast
+			mkdir -p /tmp/boot/extlinux/ || true
+			cp -v ${extlinux} /tmp/boot/extlinux/extlinux.conf
+			message="INFO: [cat /tmp/boot/extlinux/extlinux.conf]"                                     ; broadcast
+			message="`cat /tmp/boot/extlinux/extlinux.conf`"                                           ; broadcast
+			message="--------------------------------------------------------------------------------" ; broadcast
+		fi
+	fi
+	flush_cache
+
+	umount /tmp/boot/ || umount -l /tmp/boot/ || write_failure
+	flush_cache
+	umount /boot/firmware || umount -l /boot/firmware || true
+}
+
+copy_rootfs () {
+	message="INFO: Copying: ${source}p${media_rootfs} -> ${destination}p${media_rootfs}"       ; broadcast
+	mkdir -p /tmp/rootfs/ || true
+
+	message="INFO: [mount ${destination}p${media_rootfs} /tmp/rootfs/ -o async,noatime]"       ; broadcast
+	mount ${destination}p${media_rootfs} /tmp/rootfs/ -o async,noatime
+
+	message="INFO: /usr/bin/rsync: [/ -> /tmp/rootfs/]"                                        ; broadcast
+	/usr/bin/rsync -aAx /* /tmp/rootfs/ --exclude={/dev/*,/proc/*,/sys/*,/tmp/*,/run/*,/mnt/*,/media/*,/lost+found,/lib/modules/*,/uEnv.txt} || write_failure
+	message="--------------------------------------------------------------------------------" ; broadcast
+	flush_cache
+
+	message="INFO: Copying: Kernel modules"                                                    ; broadcast
+	mkdir -p /tmp/rootfs/lib/modules/$(uname -r)/ || true
+	message="INFO: /usr/bin/rsync: /lib/modules/$(uname -r)/ -> /tmp/rootfs/lib/modules/$(uname -r)/" ; broadcast
+	/usr/bin/rsync -aAx /lib/modules/$(uname -r)/* /tmp/rootfs/lib/modules/$(uname -r)/ || write_failure
+	message="--------------------------------------------------------------------------------" ; broadcast
+	flush_cache
+
+	message="INFO: Generating: /etc/fstab"                                                     ;  broadcast
+	echo "# /etc/fstab: static file system information." > /tmp/rootfs/etc/fstab
+	echo "#" >> /tmp/rootfs/etc/fstab
+	echo "${destination}p${media_rootfs}  /  ext4  noatime,errors=remount-ro  0  1" >> /tmp/rootfs/etc/fstab
+	if [ "x${media_rootfs}" = "x2" ] ; then
+		echo "${destination}p1  /boot/firmware vfat defaults 0 0" >> /tmp/rootfs/etc/fstab
+	fi
+	echo "debugfs  /sys/kernel/debug  debugfs  mode=755,uid=root,gid=gpio,defaults  0  0" >> /tmp/rootfs/etc/fstab
+	message="INFO: [cat /tmp/rootfs/etc/fstab]"                                                ; broadcast
+	message="`cat /tmp/rootfs/etc/fstab`"                                                      ; broadcast
+	message="--------------------------------------------------------------------------------" ; broadcast
+
+	if [ "x${flash_back}" != "x" ] ; then
+		if [ -f /etc/beagle-flasher/${flash_back} ] ; then
+			message="INFO: [cp -v /etc/beagle-flasher/${flash_back} /tmp/rootfs/etc/default/beagle-flasher]" ; broadcast
+			cp -v /etc/beagle-flasher/${flash_back} /tmp/rootfs/etc/default/beagle-flasher
+			message="--------------------------------------------------------------------------------" ; broadcast
+		fi
+	fi
+
+	if [ -f /tmp/rootfs/etc/default/generic-sys-mods ] ; then
+		. /tmp/rootfs/etc/default/generic-sys-mods
+
+		echo "#This file is sourced by /usb/bin/bb-growpart" > /tmp/rootfs/etc/default/generic-sys-mods
+		echo "ROOT_DRIVE=${destination}" >> /tmp/rootfs/etc/default/generic-sys-mods
+		echo "ROOT_PARTITION=${ROOT_PARTITION}" >> /tmp/rootfs/etc/default/generic-sys-mods
+
+		message="INFO: [cat /tmp/rootfs/etc/default/generic-sys-mods]"                             ; broadcast
+		message="`cat /tmp/rootfs/etc/default/generic-sys-mods`"                                   ; broadcast
+		message="--------------------------------------------------------------------------------" ; broadcast
+	fi
+
+	message="Copying: ${source}p${media_rootfs} -> ${destination}p${media_rootfs} complete"    ; broadcast
+	message="--------------------------------------------------------------------------------" ; broadcast
+	flush_cache
+
+	message="INFO: [umount /tmp/rootfs/ || umount -l /tmp/rootfs/ || write_failure]"           ; broadcast
+	umount /tmp/rootfs/ || umount -l /tmp/rootfs/ || write_failure
+	message="--------------------------------------------------------------------------------" ; broadcast
+
+	message="INFO: [umount /tmp || true]"                                                      ; broadcast
+	umount /tmp || true
+	message="--------------------------------------------------------------------------------" ; broadcast
+	flush_cache
+
+	message="INFO: Force writeback of eMMC buffers by Syncing: ${destination}"                 ; broadcast
+	message="INFO: [dd if=${destination} of=/dev/null count=100000 status=progress]"           ; broadcast
+	dd if=${destination} of=/dev/null count=100000 status=progress
+	message="--------------------------------------------------------------------------------" ; broadcast
+	flush_cache
+
+	if [ "x${has_usr_leds}" = "xenable" ] ; then
+		reset_leds
+	fi
+
+	unset are_we_flasher
+	are_we_flasher=$(grep init-beagle-flasher /proc/cmdline || true)
+	if [ ! "x${are_we_flasher}" = "x" ] ; then
+		message="INFO: [We are init]"                                                      ; broadcast
+		#When run as init
+		exec /sbin/init
+		exit #We should not hit that
+	fi
+}
+
+partition_drive () {
+	message="INFO: Erasing: [${destination}]"                                                  ; broadcast
+	flush_cache
+	message="INFO: [dd if=/dev/zero of=${destination} bs=1M count=108 status=progress]"        ; broadcast
+	dd if=/dev/zero of=${destination} bs=1M count=108 status=progress
+	message="--------------------------------------------------------------------------------" ; broadcast
+	sync
+	message="INFO: [dd if=${destination} of=/dev/null bs=1M count=108 status=progress]"        ; broadcast
+	dd if=${destination} of=/dev/null bs=1M count=108 status=progress
+	message="--------------------------------------------------------------------------------" ; broadcast
+	sync
+	flush_cache
+	message="INFO: Erasing: [${destination}] complete"                                         ; broadcast
+	message="--------------------------------------------------------------------------------" ; broadcast
+
+	if [ "x${bootloader}" != "x" ] ; then
+		if [ -f ${bootloader} ] ; then
+			message="INFO: [/bin/bash ${bootloader}]"                                                  ; broadcast
+			/bin/bash ${bootloader}
+			message="--------------------------------------------------------------------------------" ; broadcast
+		fi
+	fi
+
+	if [ "x${rfs_partition}" = "xsingle" ] ; then
+		rfs_rootfs_startmb=${rfs_rootfs_startmb:-"4"}
+
+		if [ "x${rfs_rootfs_type}" = "xext4" ] ; then
+			sfdisk_fstype="L"
+		fi
+		single_root_label=${single_root_label:-"rootfs"}
+
+		sfdisk_options="--force"
+
+		message="INFO: Partitioning: ${destination}"                                               ; broadcast
+		message="INFO: /sbin/sfdisk: [$(LC_ALL=C /sbin/sfdisk --version)]"                         ; broadcast
+		message="INFO: /sbin/sfdisk: [/sbin/sfdisk ${sfdisk_options} ${destination}]"              ; broadcast
+		message="INFO: /sbin/sfdisk: [${rfs_rootfs_startmb}M,,${sfdisk_fstype},*]"                 ; broadcast
+		message="--------------------------------------------------------------------------------" ; broadcast
+
+		LC_ALL=C /sbin/sfdisk ${sfdisk_options} "${destination}" <<-__EOF__
+			${rfs_rootfs_startmb}M,,${sfdisk_fstype},*
+		__EOF__
+
+		flush_cache
+		message="INFO: Formatting: ${destination}"                                                 ; broadcast
+		format_single_root
+		message="INFO: Formatting: ${destination} complete"                                        ; broadcast
+		message="--------------------------------------------------------------------------------" ; broadcast
+
+		media_rootfs="1"
+		copy_rootfs
+	elif [ "x${rfs_partition}" = "xdual" ] ; then
+		rfs_boot_startmb=${rfs_boot_startmb:-"1"}
+		rfs_boot_size_mb=${rfs_boot_size_mb:-"128"}
+		rfs_sfdisk_fstype=${rfs_sfdisk_fstype:-"0xc"}
+
+		sfdisk_rootfs_startmb=$(($rfs_boot_startmb + $rfs_boot_size_mb))
+
+		boot_label=${boot_label:-"FIRMWARE"}
+		rootfs_label=${rootfs_label:-"rootfs"}
+
+		sfdisk_options="--force"
+
+		message="INFO: Partitioning: ${destination}"                                               ; broadcast
+		message="INFO: /sbin/sfdisk: [$(LC_ALL=C /sbin/sfdisk --version)]"                         ; broadcast
+		message="INFO: /sbin/sfdisk: [/sbin/sfdisk ${sfdisk_options} ${destination}]"              ; broadcast
+		message="INFO: /sbin/sfdisk: [${rfs_boot_startmb}M,${rfs_boot_size_mb}M,${rfs_sfdisk_fstype},*]" ; broadcast
+		message="INFO: /sbin/sfdisk: [${sfdisk_rootfs_startmb}M,,,-]" ; broadcast
+		message="--------------------------------------------------------------------------------" ; broadcast
+
+		LC_ALL=C /sbin/sfdisk ${sfdisk_options} "${destination}" <<-__EOF__
+			${rfs_boot_startmb}M,${rfs_boot_size_mb}M,${rfs_sfdisk_fstype},*
+			${sfdisk_rootfs_startmb}M,,,-
+		__EOF__
+
+		flush_cache
+		message="INFO: Formatting: ${destination}"                                                 ; broadcast
+		format_boot
+		format_root
+		message="INFO: Formatting: ${destination} complete"                                        ; broadcast
+		message="--------------------------------------------------------------------------------" ; broadcast
+
+		copy_boot
+		media_rootfs="2"
+		copy_rootfs
+	else
+		example_failure
+	fi
+}
+
+###FIXME
+if [ -f /etc/default/beagle-flasher ] ; then
+	clear
+	. /etc/default/beagle-flasher
+	message="--------------------------------------------------------------------------------" ; broadcast
+	message="Version: [${version_message}]" ; broadcast
+	message="--------------------------------------------------------------------------------" ; broadcast
+	message="cat /etc/default/beagle-flasher:"                                                 ; broadcast
+	message="--------------------------------------------------------------------------------" ; broadcast
+	message="`cat /etc/default/beagle-flasher`"                                                ; broadcast
+	message="--------------------------------------------------------------------------------" ; broadcast
+else
+	message="--------------------------------------------------------------------------------" ; broadcast
+	message="Version: [${version_message}]"                                                    ; broadcast
+	message="--------------------------------------------------------------------------------" ; broadcast
+	example_failure
+fi
+
+check_running_system
+partition_drive
diff --git a/bb-beagle-flasher/suite/bullseye/debian/init-shutdown-beagle-flasher b/bb-beagle-flasher/suite/bullseye/debian/init-shutdown-beagle-flasher
new file mode 100755
index 0000000000000000000000000000000000000000..f865344ddc9bfbf1478e2b87e5e9407f3c583b10
--- /dev/null
+++ b/bb-beagle-flasher/suite/bullseye/debian/init-shutdown-beagle-flasher
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+#eMMC flasher just exited single user mode via: [exec /sbin/init]
+#as we can't shudown properly in single user mode..
+unset are_we_flasher
+are_we_flasher=$(grep init-beagle-flasher /proc/cmdline || true)
+if [ ! "x${are_we_flasher}" = "x" ] ; then
+	systemctl poweroff || halt
+	exit
+fi
diff --git a/bb-beagle-flasher/suite/bullseye/debian/install b/bb-beagle-flasher/suite/bullseye/debian/install
index 50272f34ba9727e589520ec5d7154286480f0fff..7240bec5f3171ed8ee87dfe5932d40996021bc91 100644
--- a/bb-beagle-flasher/suite/bullseye/debian/install
+++ b/bb-beagle-flasher/suite/bullseye/debian/install
@@ -1,3 +1,6 @@
 debian/beagle-flasher /usr/sbin/
+debian/enable-beagle-flasher /usr/sbin/
+debian/init-beagle-flasher /usr/sbin/
+debian/init-shutdown-beagle-flasher /usr/sbin/
 debian/bbai64-microsd-to-emmc /etc/beagle-flasher/
 debian/bbai64-emmc-to-microsd /etc/beagle-flasher/
diff --git a/bb-beagle-flasher/version.sh b/bb-beagle-flasher/version.sh
index fb68e37933913a3e071c705549384673e1950beb..0bcac4172c8e7dff34ee222c329d848cc1dabaa8 100644
--- a/bb-beagle-flasher/version.sh
+++ b/bb-beagle-flasher/version.sh
@@ -2,7 +2,7 @@
 
 package_name="bb-beagle-flasher"
 debian_pkg_name="${package_name}"
-package_version="1.20220105.2"
+package_version="1.20220106.0"
 package_source=""
 src_dir=""
 
@@ -17,4 +17,4 @@ debian_patch=""
 
 clear_changelog="enable"
 
-bullseye_version="~bullseye+20220105"
+bullseye_version="~bullseye+20220106"