piframe/docs/finalize_setup.md

1.8 KiB

Setup Finalization

The following will walk through finalizing setup of the base environment.


# Wait for cloud initi to spew to LCD (this will take a minute, it's prepping the initial config and deploying it, including the default user account)

# Login as ubuntu / ubuntu and follow the prompts

sudo -sHu root /bin/bash

# Disable cloud-init as it's unnecessary for the purposes of this project
touch /etc/cloud/cloud-init.disabled
nano -w /boot/firmware/cmdline.txt
    remove console=tty1

# Setup screen resolution (UNCOMMENT THE RIGHT LINES!!!)
cat >> /boot/firmware/usercfg.txt <<EOF

# Further reading
# https://www.raspberrypi.org/documentation/configuration/config-txt/video.md
# https://www.raspberrypi.org/forums/viewtopic.php?t=5851
# https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=24679

# GeeekPi 5 Inch Capacitive Touch Screen 800x480 HDMI Monitor
#hdmi_group=2
#hdmi_mode=87
#hdmi_cvt=800 480 60 6 0 0 0

# CONFU 5.5" 2k (1440x2560) LCD
#dtoverlay=vc4-kms-v3d-pi4
#hdmi_cvt=1440 2560 50 3 0 0 1
#hdmi_group=2
#hdmi_mode=87
EOF

# Reboot to pickup changes
systemctl reboot

# Login

sudo -sHu root /bin/bash

# Cleanup timezone
dpkg-reconfigure tzdata

# Full system update
apt update && apt upgrade
systemctl reboot

# Login

sudo -sHu root /bin/bash

# Useful packages
apt install build-essential cmake nano tmux vim htop iotop nload git net-tools

# Raspberry Pi tools
apt install linux-tools-raspi
mkdir /opt/raspberry-pi
cd /opt/raspberry-pi
git clone https://github.com/raspberrypi/userland.git
cd userland
./buildme --aarch64
cat > /etc/profile.d/rpi-tools.sh <<EOF
#!/bin/bash
export PATH="$PATH:/opt/vc/bin"
EOF
cat > /etc/ld.so.conf.d/00-vmcs.conf <<EOF
/opt/vc/lib
EOF
ldconfig

# Finalize basic network config
hostnamectl set-hostname piframe

# Reboot system for all changes to take effect
systemctl reboot