@@ -10,7 +10,7 @@ U_BOOT_IMG="sd-uboot.img"
1010NVME_ROOTFS_IMG=" ${OUT_DIR} /${ROOTFS_IMG} "
1111SD_UBOOT_IMG=" ${OUT_DIR} /${U_BOOT_IMG} "
1212SD_DD_OPTS=" bs=4k iflag=fullblock oflag=direct conv=fsync status=progress"
13- PACKAGES_LIST=" sudo openssh-server openntpd"
13+ PACKAGES_LIST=" linux-image-riscv64 u-boot-menu u-boot-sifive sudo openssh-server openntpd"
1414
1515source $( pwd) /after_mkrootfs.sh
1616
@@ -25,15 +25,20 @@ echo "Creating Blank nvme rootfs Image ${NVME_ROOTFS_IMG}"
2525dd if=/dev/zero of=" ${NVME_ROOTFS_IMG} " bs=1M count=3072
2626
2727sgdisk -g --clear --set-alignment=1 \
28- --new=1:34:-1 --change-name=1:' rootfs' --typecode=1:0x0700 --attributes=3:set:2 \
28+ --new=1:34:+1M: --change-name=1:' u-boot-spl' --typecode=1:5b193300-fc78-40cd-8002-e86c45580b47 \
29+ --new=2:2082:+4M: --change-name=2:' opensbi-uboot' --typecode=2:2e54b353-1271-4842-806f-e436d6af6985 \
30+ --new=3:16384:400M: --change-name=3:' boot' --typecode=3:0x0700 --attributes=3:set:2 \
31+ --new=4:835584:-0 --change-name=4:' rootfs' --typecode=4:0x8300 \
2932 ${NVME_ROOTFS_IMG}
3033
31- # LOOPDEV=$(kpartx -av "${NVME_ROOTFS_IMG}")
34+ KPARTX_INFO=$( kpartx -av " ${NVME_ROOTFS_IMG} " )
35+ echo " KPARTX_INFO"
36+ LOOPDEV=$( kpartx -av " ${NVME_ROOTFS_IMG} " | grep ' loop' | awk ' {print $3}' | awk ' {sub(/p[^p]*$/, ""); print}' | uniq)
3237# echo "print ${LOOPDEV}"
33- LOOPDEV=$( kpartx -av " ${NVME_ROOTFS_IMG} " | awk ' {print $3} ' )
38+ # LOOPDEV=$(losetup --partscan --find --show ${NVME_ROOTFS_IMG})
3439echo " Nvme ${LOOPDEV} "
3540
36- if [ -z ${LOOPDEV} ]; then
41+ if [[ -z ${LOOPDEV} ] ]; then
3742 echo " loopdev is empty"
3843 exit 1
3944fi
4247# LOOPDEV="${LOOP}"
4348echo " Partitioning loopback device ${LOOPDEV} "
4449
45- mkfs.ext4 -L rootfs -F " /dev/mapper/${LOOPDEV} "
50+ mkfs.ext4 -F -L boot " /dev/mapper/${LOOPDEV} p3"
51+ mkfs.ext4 -F -L rootfs " /dev/mapper/${LOOPDEV} p4"
4652
4753# Copy Files, first the rootfs partition
4854echo " Mounting partitions ${LOOPDEV} "
49- ROOTFS_POINT=/nvme_rootfs
55+ ROOTFS_POINT=/tmp/ nvme_rootfs
5056mkdir -p " ${ROOTFS_POINT} "
5157
52- mount " /dev/mapper/${LOOPDEV} " " ${ROOTFS_POINT} "
58+ mount " /dev/mapper/${LOOPDEV} p4 " " ${ROOTFS_POINT} "
5359
5460# rv64-port from mmdebstrap
5561cp -a /builder/rv64-port/* " ${ROOTFS_POINT} "
5662
63+ mount " /dev/mapper/${LOOPDEV} p3" " ${ROOTFS_POINT} /boot"
64+
5765mount -t proc /proc " ${ROOTFS_POINT} /proc"
5866mount -t sysfs /sys " ${ROOTFS_POINT} /sys"
5967mount -o bind /dev " ${ROOTFS_POINT} /dev"
@@ -69,14 +77,16 @@ cp ${ROOTFS_POINT}/usr/lib/u-boot/sifive_unmatched/u-boot.itb ./u-boot.itb
6977# need improve here also, we do not need another script
7078after_mkrootfs
7179
80+
7281# rv:rv
7382chroot " ${ROOTFS_POINT} " sh -c " useradd -m -s /bin/bash -G adm,cdrom,floppy,sudo,input,audio,dip,video,plugdev,netdev rv"
7483chroot " ${ROOTFS_POINT} " sh -c " echo 'rv:rv' | chpasswd"
7584
7685# root: unmatched
77- ROOT_PASSWORD_HASH=" $( echo ' unmatched' | openssl passwd -1 -stdin) "
78- chroot " ${ROOTFS_POINT} " sh -c " usermod --password '$ROOT_WORD_HASH ' root"
86+ # ROOT_PASSWORD_HASH="$(echo 'unmatched' | openssl passwd -1 -stdin)"
87+ # chroot "${ROOTFS_POINT}" sh -c "usermod --password '$ROOT_WORD_HASH' root"
7988# chroot "${ROOTFS_POINT}" sh -c "usermod --password "$(echo 'unmatched' | openssl passwd -1 -stdin)" root"
89+ chroot " ${ROOTFS_POINT} " sh -c " export DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true; apt clean"
8090
8191rm -v " ${ROOTFS_POINT} " /etc/ssh/ssh_host_*
8292chroot " ${ROOTFS_POINT} " sh -c " apt clean"
@@ -88,6 +98,7 @@ umount "${ROOTFS_POINT}/proc"
8898umount " ${ROOTFS_POINT} /sys"
8999umount " ${ROOTFS_POINT} /dev"
90100
101+ umount " ${ROOTFS_POINT} /boot"
91102
92103umount " ${ROOTFS_POINT} "
93104
@@ -122,6 +133,6 @@ echo "Compressing the image: ${NVME_ROOTFS_IMG}"
122133
123134echo " Compressing the image: ${SD_ROOTFS_IMG} "
124135
125- (cd " ${OUT_DIR} " && xz -T0 " ${SD_ROOTFS_IMG } " )
136+ (cd " ${OUT_DIR} " && xz -T0 " ${SD_UBOOT_IMG } " )
126137
127138echo " Finishing the image..."
0 commit comments