Framework 16 - https://wiki.archlinux.org/title/Framework_Laptop_16

Install guide started here:

We’ll use the USB installation instructions to do this.

First, use ls to find out the disk id, ls /dev/disk/by-id/

 usb-SanDisk_Cruzer_Force_4C530001080907104245-0:0 is what we’re looking for.

so, we’ll see dd and write the image (in my PWD)

dd bs=4M if=archlinux-2025.01.01-x86_64.iso of=/dev/disk/by-id/usb-SanDisk_Cruzer_Force_4C530001080907104245-0\:0 conv=fsync oflag=direct status=progress

Failed to boot

So we need to wipe that disk fully,

sudo wipefs --all /dev/disk/by-id/usb-SanDisk_Cruzer_Force_4C530001080907104245-0\:0^C

Wifi

So, we’re booted and we’ll configure the regulatory domain, I did this by just nano /etc/conf.d/wireless-regdom and uncommented the line with “US” in it.

Connecting to your network is done with iwctl.

Start with iwctl device list so we can see what adapters we’re working with.

[iwd]# device list

# You should see something like this:
#
#                            Devices
# -------------------------------------------------------------
#   Name          Address          Powered    Adapter    Mode
# -------------------------------------------------------------
#   wlan0         ...              on         ...        ...

[iwd]# station YOURDEVICE connect YOURSSID

Power on the device iwctl wlan0 set-property Powered on Let’s scan the networks,
iwctl wlan0 get-networks And connect
station wlan0 connect $NETWORKNAME If you have a password it will ask for it here.

Next, just ping a known domain (google works.)

We’re online!

Update the system clock

Timedatectl works to ensure that that you’re sync’d

partition disks

fdisk -l to see your storage devices

After some checking, I verified that nvme0n1p2 is where we’ll install things. p1 is the efi slot

Formatting

makefs.ext4 /dev/nvmeOn1p2 will format our partition to ext4.

Install

pacstrap -K /mnt base linux linux-firmware

Then configure Fstab genfstab -U /mnt >> /mnt/etc/fstab

Change root # arch-chroot /mnt Then timezone ln -sf /usr/share/zoneinfo/America/Denver /etc/localtime

Adjust datetime stuff hwclock --systohc


Connecting to ethernet

turned on the interface ip link set eth0 up

Then we set an ip ip addr add 192.168.200/24 dev eth0

Added the gateway ip route add default via 192.168.1.1

Then set a nameserver echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf


Network Manager Installation

since we’re online I used pacman to install networe manager pacman -S networkmanager

other utilities

I installed nano, ghostty, hyprland

User setup

We need to setup a user for me, that way we’re not root and hyprland won’t yell at me. useradd lwoodard

https://wiki.archlinux.org/title/COSMIC