Files
operating-system/buildroot-external/rootfs-overlay/usr/sbin/hassos-expand
Ryan Bray 11088580c5 odroid-c2: Initial Support
Working:
* Ethernet
* Resize of Data
* RAUC boot marking/fetching
* CMD Line into HASSOS and Linux

Partially working:
* USB (requires 1+ devices in at boot. Seems to be a kernel/dt issue.)

Untested:
* RAUC Update
* HDMI

Not working:
* Homeassistant
** We see:
hassio > ha info
The HTTP request failed with the error: Get http://hassio/homeassistant/info: dial tcp 172.30.32.2:80: getsockopt: connection refused
2018-08-16 22:24:11 -06:00

46 lines
1.3 KiB
Bash
Executable File

#!/bin/sh
set -e
DEVICE_CHILD="$(findfs LABEL="hassos-data")"
DEVICE_ROOT="/dev/$(lsblk -no pkname ${DEVICE_CHILD})"
PART_NUM="${DEVICE_CHILD: -1}"
# Disk is MBR
if sfdisk -dq ${DEVICE_ROOT} | grep -q 'label: dos'; then
# Need resize
UNUSED=$(sfdisk -Fq ${DEVICE_ROOT} | cut -d " " -f 3 | tail -1)
if [ -z "${UNUSED}" ]; then
echo "[INFO] No resize of data partition needed"
exit
fi
if [ ${UNUSED} -le 2048 ]; then
echo "[INFO] No resize of data partition needed"
exit
fi
echo ", +" | sfdisk -N ${PART_NUM} ${DEVICE_ROOT} --force
sfdisk -V ${DEVICE_ROOT}
else
# Need resize
if [ $(sgdisk -E ${DEVICE_ROOT}) -le 2048 ]; then
echo "[INFO] No resize of data partition needed"
exit
fi
# Resize & Reload partition
echo "[INFO] Update hassos-data partition ${PART_NUM}"
sgdisk -e ${DEVICE_ROOT}
sgdisk -d ${PART_NUM} -n ${PART_NUM}:0:0 -c ${PART_NUM}:"hassos-data" -t ${PART_NUM}:"0FC63DAF-8483-4772-8E79-3D69D8477DE4" -u ${PART_NUM}:"a52a4597-fa3a-4851-aefd-2fbe9f849079" ${DEVICE_ROOT}
sgdisk -v ${DEVICE_ROOT}
fi
partx -u ${DEVICE_ROOT}
# Resize filesystem
echo "[INFO] Resize hassos-data filesystem"
e2fsck -y ${DEVICE_CHILD}
resize2fs -f ${DEVICE_CHILD}
echo "[INFO] Finish hassos-data resizing"