Compare commits

...

2 Commits

View File

@ -3,8 +3,6 @@
# (many parts liberally grabbed from pgreco: https://github.com/psgreco/sig-core-AltArch/tree/master/image_build ) # (many parts liberally grabbed from pgreco: https://github.com/psgreco/sig-core-AltArch/tree/master/image_build )
# #
# Here is how to build this kickstart Raspberry Pi image, inside a clean mock chroot environment with livemedia-creator: # Here is how to build this kickstart Raspberry Pi image, inside a clean mock chroot environment with livemedia-creator:
# (it is very similar to how the other kickstarts are built, but aarch64 must be used, and the livemedia appliance option) # (it is very similar to how the other kickstarts are built, but aarch64 must be used, and the livemedia appliance option)
# #
@ -25,16 +23,12 @@
# #
# livemedia-creator --ks rockyrpi.ks --image-only --image-name RockyRpi --make-disk --resultdir /rockyrpi_result --no-virt # livemedia-creator --ks rockyrpi.ks --image-only --image-name RockyRpi --make-disk --resultdir /rockyrpi_result --no-virt
# Disk setup # Disk setup
clearpart --initlabel --all clearpart --initlabel --all
part /boot --asprimary --fstype=vfat --size=300 --label=boot part /boot --asprimary --fstype=vfat --size=300 --label=boot
part swap --asprimary --fstype=swap --size=512 --label=swap part swap --asprimary --fstype=swap --size=512 --label=swap
part / --asprimary --fstype=ext4 --size=2800 --label=RPIROOT part / --asprimary --fstype=ext4 --size=2800 --label=RPIROOT
# Repos setup: # Repos setup:
url --url http://download.rockylinux.org/pub/rocky/8/BaseOS/aarch64/os/ url --url http://download.rockylinux.org/pub/rocky/8/BaseOS/aarch64/os/
repo --name="BaseOS" --baseurl=http://download.rockylinux.org/pub/rocky/8/BaseOS/aarch64/os/ --cost=100 repo --name="BaseOS" --baseurl=http://download.rockylinux.org/pub/rocky/8/BaseOS/aarch64/os/ --cost=100
@ -44,8 +38,6 @@ repo --name="PowerTools" --baseurl=http://download.rockylinux.org/pub/rocky/8/Ba
repo --name="rockyrpi" --baseurl=https://download.rockylinux.org/pub/sig/8/altarch/aarch64/altarch-rockyrpi/ --cost=20 repo --name="rockyrpi" --baseurl=https://download.rockylinux.org/pub/sig/8/altarch/aarch64/altarch-rockyrpi/ --cost=20
repo --name="rockyextras" --baseurl=https://download.rockylinux.org/pub/rocky/8/extras/aarch64/os/ --cost=20 repo --name="rockyextras" --baseurl=https://download.rockylinux.org/pub/rocky/8/extras/aarch64/os/ --cost=20
# Install proces: # Install proces:
install install
keyboard us --xlayouts=us --vckeymap=us keyboard us --xlayouts=us --vckeymap=us
@ -61,8 +53,6 @@ shutdown
bootloader --location=none bootloader --location=none
lang en_US.UTF-8 lang en_US.UTF-8
# Package selection: # Package selection:
%packages %packages
@core @core
@ -79,14 +69,11 @@ rocky-release-rpi
raspberrypi2-firmware raspberrypi2-firmware
raspberrypi2-kernel4 raspberrypi2-kernel4
%end %end
# Post install scripts: # Post install scripts:
%post %post
# Write initial boot line to cmdline.txt (we will update the root partuuid further down) # Write initial boot line to cmdline.txt (we will update the root partuuid further down)
cat > /boot/cmdline.txt << EOF cat > /boot/cmdline.txt << EOF
console=ttyAMA0,115200 console=tty1 root= rootfstype=ext4 elevator=deadline rootwait console=ttyAMA0,115200 console=tty1 root= rootfstype=ext4 elevator=deadline rootwait
@ -95,7 +82,6 @@ EOF
# Run this once to fix the wifi: # Run this once to fix the wifi:
sed -i 's/boardflags3=0x48200100/boardflags3=0x44200100/g' /lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.txt sed -i 's/boardflags3=0x48200100/boardflags3=0x44200100/g' /lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.txt
# Apparently kickstart user was not working, attempt to do it here? # Apparently kickstart user was not working, attempt to do it here?
/sbin/useradd -c "Rocky Linux default user" -G wheel -m -U rocky /sbin/useradd -c "Rocky Linux default user" -G wheel -m -U rocky
echo "rockylinux" | passwd --stdin rocky echo "rockylinux" | passwd --stdin rocky
@ -112,9 +98,6 @@ This image WILL NOT WORK on a Raspberry Pi 1 or 2 (1.1 or earlier), we are 64-bi
The newer Pi Zero devices should be supported, as well as the Raspberry Pi 2 v. 1.2 boards, which are 64-bit The newer Pi Zero devices should be supported, as well as the Raspberry Pi 2 v. 1.2 boards, which are 64-bit
IMAGE NOTES / DIFFERENCES FROM STOCK ROCKY 8: IMAGE NOTES / DIFFERENCES FROM STOCK ROCKY 8:
- Based on Rocky Linux 8, points to production Rocky 8 aarch64 repositories - Based on Rocky Linux 8, points to production Rocky 8 aarch64 repositories
@ -124,7 +107,6 @@ IMAGE NOTES / DIFFERENCES FROM STOCK ROCKY 8:
- Initial User "rocky" (default password: "rockylinux"). Root password disabled, rocky user is a sudoer - Initial User "rocky" (default password: "rockylinux"). Root password disabled, rocky user is a sudoer
- Partitions are 300 MB /boot , 512 MB swap, 2800 MB rootfs. Requires a 4 GB or larger storage device to serve as your disk - Partitions are 300 MB /boot , 512 MB swap, 2800 MB rootfs. Requires a 4 GB or larger storage device to serve as your disk
GROW YOUR PARTITION: GROW YOUR PARTITION:
If you want to automatically resize your root (/ ) partition, just type the following (as root user): If you want to automatically resize your root (/ ) partition, just type the following (as root user):
@ -132,15 +114,12 @@ sudo rootfs-expand
It should fill your main rootfs partition to the end of the disk. It should fill your main rootfs partition to the end of the disk.
Thanks for your interest on Rocky-on-Rpi, feel free to share your experience or contribute in our chat channel at: https://chat.rockylinux.org/rocky-linux/channels/altarch ! Thanks for your interest on Rocky-on-Rpi, feel free to share your experience or contribute in our chat channel at: https://chat.rockylinux.org/rocky-linux/channels/altarch !
-The Rocky Linux Team -The Rocky Linux Team
EOF EOF
# Next, script to fix the wifi firmware setting: # Next, script to fix the wifi firmware setting:
cat >/home/rocky/fix-wifi-rpi4.sh << 'EOF' cat >/home/rocky/fix-wifi-rpi4.sh << 'EOF'
#!/bin/bash #!/bin/bash
@ -154,10 +133,8 @@ echo "Patched /lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.txt .
EOF EOF
chmod 755 /home/rocky/fix-wifi-rpi4.sh chmod 755 /home/rocky/fix-wifi-rpi4.sh
chown -R rocky:rocky /home/rocky chown -R rocky:rocky /home/rocky
# Cleanup before shipping an image # Cleanup before shipping an image
# Remove ifcfg-link on pre generated images # Remove ifcfg-link on pre generated images
@ -170,14 +147,13 @@ touch /etc/machine-id
# Ensure no ssh keys are present # Ensure no ssh keys are present
rm -f "/etc/ssh/*_key*" rm -f "/etc/ssh/*_key*"
# Setting tuned profile to powersave by default -> sets the CPU governor to "ondemand". This prevents overheating issues # Setting tuned profile to powersave by default -> sets the CPU governor to "ondemand". This prevents overheating issues
echo "powersave" > /etc/tuned/active_profile echo "powersave" > /etc/tuned/active_profile
# Clean yum cache # Clean yum cache
yum clean all yum clean all
# rebuild rpm database
rpm --rebuilddb
%end %end
# Add the PARTUUID of the rootfs partition to the kernel command line # Add the PARTUUID of the rootfs partition to the kernel command line
@ -196,7 +172,6 @@ PART_UUID_ROOTFS="$(/sbin/blkid "$(/sbin/blkid --uuid $UUID_ROOTFS)" | \
echo "cmdline.txt looks like this, please review:" echo "cmdline.txt looks like this, please review:"
/bin/cat $INSTALL_ROOT/boot/cmdline.txt /bin/cat $INSTALL_ROOT/boot/cmdline.txt
# Extract UUID of swap partition: # Extract UUID of swap partition:
UUID_SWAP=$(/bin/grep 'swap' $INSTALL_ROOT/etc/fstab | awk '{print $1}' | awk -F '=' '{print $2}') UUID_SWAP=$(/bin/grep 'swap' $INSTALL_ROOT/etc/fstab | awk '{print $1}' | awk -F '=' '{print $2}')