The Minimal image contains only the most necessary software. You can install more with dnf once your device is set up and connected to the Internet.
Identify the device and write the uncompressed image to the raw device.
Please note this will destory ALL data on the device. Make sure you select the right device, there's no way back!
$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 465.8G 0 disk ├─sda1 8:1 0 3G 0 part └─sda2 8:2 0 462.8G 0 part / mmcblk0 179:0 0 3.7G 0 disk └─mmcblk0p1 179:1 0 3.7M 0 part /run/media/bgates/32B4-B666 $ su # umount /dev/mmcblk0p1 # xzcat pignus-minimal-23a.xz >/dev/mmcblk0 #
Now your card is ready for use with the Raspberry Pi. You may want to run gparted and reclaim the rest of the free space on your card.
The Raspberry Pi is now entirely unconfigured. The root password is blank, which makes it possible to login in using the serial console, but disallows SSH logins. The are two partitions on the card: a FAT /boot partition and the root partition.
If you have a UART adapter, you may want to enable the serial console by adding console=ttyAMA0 to extlinux.conf on the /boot partition.
Otherwise you may set up network log in. To allow root log in with your ssh key, mount the root partition and copy in your SSH key:
$ su # mount /dev/mmcblk0p2 /mnt # umask 077 # mkdir /mnt/root/.ssh # cat $HOME/.ssh/id_rsa.pub >/mnt/root/.ssh/authorized_keys # umount /mnt
You can now power your Raspberry Pi to the network. It might be a good idea to watch for it trying to get an IP address, so that you know what address it gets:
# tcpdump port dhcpc tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on wlp4s0, link-type EN10MB (Ethernet), capture size 262144 bytes 22:37:47.880544 IP 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from 28:b2:bd:5d:23:a7 (oui Unknown), length 302 22:37:47.884430 IP 172.31.50.1.bootps > 172.31.50.150.bootpc: BOOTP/DHCP, Reply, length 308 ^C
We got 172.31.50.150. Sweet.
$ ssh firstname.lastname@example.org ...