Published multiple files
All checks were successful
Build and Deploy Quartz / build (push) Successful in 27s

This commit is contained in:
Quartz Syncer
2026-02-05 12:24:25 -07:00
parent 125a9b1752
commit fe0581e423
62 changed files with 1209 additions and 115 deletions

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.11 APPS/VeraCrypt.md
permalink: /apps/veracrypt
title: VeraCrypt
created: 2026-01-29T14:04:18.863-07:00
modified: 2026-02-05T09:11:56.232-07:00
modified: 2026-02-05T12:16:30.767-07:00
tags:
- encryption
- security

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.11 APPS/aerc.md
permalink: /apps/aerc
title: aerc
created: 2026-01-30T08:09:11.034-07:00
modified: 2026-02-05T09:11:56.234-07:00
modified: 2026-02-05T12:16:17.106-07:00
tags:
- email
- terminal

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.11 APPS/atuin.md
permalink: /apps/atuin
title: atuin
created: 2026-01-30T08:29:14.283-07:00
modified: 2026-02-05T09:11:56.236-07:00
modified: 2026-02-05T12:16:17.109-07:00
tags:
- shell
- history

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.11 APPS/impala.md
permalink: /apps/impala
title: impala
created: 2026-02-05T09:36:55.334-07:00
modified: 2026-02-05T09:41:11.146-07:00
modified: 2026-02-05T12:16:17.110-07:00
tags:
- wifi
- network

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.11 APPS/isync.md
permalink: /apps/isync
title: isync (mbsync)
created: 2026-01-30T08:09:43.461-07:00
modified: 2026-02-05T09:12:58.913-07:00
modified: 2026-02-05T12:16:17.112-07:00
tags:
- email
- sync

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.11 APPS/nvim.md
permalink: /apps/nvim
title: nvim (Neovim)
created: 2026-01-30T08:08:10.433-07:00
modified: 2026-02-05T09:12:58.916-07:00
modified: 2026-02-05T12:16:17.114-07:00
tags:
- editor
- terminal

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.11 APPS/qutebrowser.md
permalink: /apps/qutebrowser
title: qutebrowser
created: 2026-01-31T15:46:19.286-07:00
modified: 2026-02-05T09:12:58.917-07:00
modified: 2026-02-05T12:16:30.762-07:00
tags:
- browser
- web

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.11 APPS/urlref.md
permalink: /apps/urlref
title: urlref
created: 2026-01-29T14:04:18.714-07:00
modified: 2026-01-19T18:40:10.504-07:00
modified: 2026-02-05T12:16:30.765-07:00
tags:
- web
- note_taking

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.11 APPS/whosthere.md
permalink: /apps/whosthere
title: whosthere
created: 2026-02-05T08:46:27.958-07:00
modified: 2026-02-05T09:12:58.918-07:00
modified: 2026-02-05T12:16:30.769-07:00
tags:
- network
- lan

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.11 APPS/zathura.md
permalink: /apps/zathura
title: zathura
created: 2026-02-05T09:08:26.899-07:00
modified: 2026-02-05T09:12:58.920-07:00
modified: 2026-02-05T12:16:30.770-07:00
tags:
- pdf
- documents

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.12 PROCESSES/Backups.md
permalink: /processes/backups
title: Backups
created: 2026-01-29T14:04:18.777-07:00
modified: 2026-01-21T22:48:12.310-07:00
modified: 2026-02-05T12:16:56.630-07:00
cssclasses: ""
---

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/00 - Start Here.md
title: 00 - Start Here
permalink: /os
title: Arch Linux Setup Guide
created: 2026-02-05T09:20:32.962-07:00
modified: 2026-02-05T09:32:01.211-07:00
modified: 2026-02-05T12:17:52.896-07:00
tags:
- guide
- arch

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/AppImage Management.md
permalink: /os/appimage
title: AppImage Management
created: 2026-01-29T15:05:11.266-07:00
modified: 2026-02-05T09:21:56.851-07:00
modified: 2026-02-05T12:17:52.899-07:00
tags:
- appimage
- apps

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Ashell.md
permalink: /os/ashell
title: Ashell
created: 2026-01-29T15:16:18.996-07:00
modified: 2026-02-05T09:23:59.109-07:00
modified: 2026-02-05T12:17:52.901-07:00
tags:
- hyprland
- statusbar

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Audio.md
permalink: /os/audio
title: Audio
created: 2026-01-29T15:21:02.328-07:00
modified: 2026-02-05T09:20:32.969-07:00
modified: 2026-02-05T12:17:52.903-07:00
tags:
- audio
- pipewire

View File

@@ -0,0 +1,465 @@
---
publish: true
permalink: /os/base-install
title: Base Install
created: 2026-01-29T14:10:28.844-07:00
modified: 2026-02-05T12:17:52.905-07:00
tags:
- arch
- installation
- luks
- btrfs
cssclasses: ""
---
My Arch Linux installation guide for Framework Laptop 13 (AMD Ryzen 7040). LUKS2 encrypted BTRFS with Limine bootloader.
> Based on guides by [yovko](https://gist.github.com/yovko/512326b904d120f3280c163abfbcb787) and [mgajewskik](https://gist.github.com/mgajewskik/a9331171c31b6e8839c427210ba76730), adapted for Framework AMD hardware.
---
## Overview
- **Encryption:** LUKS2 on system partition
- **Filesystem:** BTRFS with subvolumes (snapshots, compression)
- **Bootloader:** Limine (lightweight, Snapper-friendly)
- **Hardware:** Framework Laptop 13 AMD (Ryzen 7040 series)
---
## Preparation
Boot from the [official Arch ISO](https://archlinux.org/download/).
### Connect to WiFi
```bash
iwctl station wlan0 connect <SSID>
```
### Set keymap and font
```bash
loadkeys us
setfont ter-132b
```
### Verify UEFI mode
```bash
cat /sys/firmware/efi/fw_platform_size
# Should return 64
```
### (Optional) SSH in from another machine
```bash
passwd # set root password
ip addr show # get IP
# From other machine: ssh root@<ip>
```
---
## Disk Partitioning
Assuming single-boot Arch on `/dev/nvme0n1`.
### Wipe existing partitions
```bash
sgdisk --zap-all /dev/nvme0n1
```
### Create partitions
- **ESP:** 2GB FAT32 for `/boot`
- **System:** Rest of disk, LUKS2 encrypted BTRFS
```bash
parted --script /dev/nvme0n1 \
mklabel gpt \
mkpart ESP fat32 1MiB 2049MiB \
set 1 esp on \
mkpart Linux btrfs 2050MiB 100%
```
### Format ESP
```bash
mkfs.fat -F 32 /dev/nvme0n1p1
```
---
## Encryption Setup
### Create LUKS container
```bash
cryptsetup luksFormat /dev/nvme0n1p2
```
**Save the UUID** — you'll need it for the bootloader:
```bash
cryptsetup luksUUID /dev/nvme0n1p2
```
### Open the container
```bash
cryptsetup open /dev/nvme0n1p2 root
```
---
## BTRFS Setup
### Format and mount
```bash
mkfs.btrfs /dev/mapper/root
mount /dev/mapper/root /mnt
```
### Create subvolumes
```bash
btrfs subvolume create /mnt/@
btrfs subvolume create /mnt/@home
btrfs subvolume create /mnt/@var_log
btrfs subvolume create /mnt/@var_cache
btrfs subvolume create /mnt/@snapshots
```
### Remount with subvolumes
```bash
umount /mnt
mount -o compress=zstd:1,noatime,subvol=@ /dev/mapper/root /mnt
mount --mkdir -o compress=zstd:1,noatime,subvol=@home /dev/mapper/root /mnt/home
mount --mkdir -o compress=zstd:1,noatime,subvol=@var_log /dev/mapper/root /mnt/var/log
mount --mkdir -o compress=zstd:1,noatime,subvol=@var_cache /dev/mapper/root /mnt/var/cache
mount --mkdir -o compress=zstd:1,noatime,subvol=@snapshots /dev/mapper/root /mnt/.snapshots
mount --mkdir /dev/nvme0n1p1 /mnt/boot
```
---
## Install Base System
```bash
pacman -Syy
pacstrap -K /mnt \
base base-devel linux linux-firmware linux-headers \
git vim neovim \
btrfs-progs efibootmgr limine cryptsetup \
networkmanager iwd wireless-regdb \
reflector bash-completion zsh \
pipewire pipewire-alsa pipewire-pulse pipewire-jack wireplumber sof-firmware \
bluez bluez-utils \
acpi acpid power-profiles-daemon \
firewalld cups avahi nss-mdns \
util-linux terminus-font openssh man sudo rsync \
amd-ucode mesa vulkan-radeon libva-mesa-driver
```
### Generate fstab
```bash
genfstab -U /mnt >> /mnt/etc/fstab
```
---
## System Configuration
### Chroot in
```bash
arch-chroot /mnt
```
### Timezone and locale
```bash
ln -sf /usr/share/zoneinfo/America/Denver /etc/localtime
hwclock --systohc
# Edit /etc/locale.gen, uncomment en_US.UTF-8 UTF-8
vim /etc/locale.gen
locale-gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf
```
### Console font and keymap
```bash
cat > /etc/vconsole.conf << EOF
KEYMAP=us
FONT=ter-132b
EOF
```
### Hostname
```bash
echo "framework" > /etc/hostname
```
### Root password
```bash
passwd
```
### Create user
```bash
useradd -mG wheel phil
passwd phil
EDITOR=vim visudo # uncomment %wheel ALL=(ALL:ALL) ALL
```
### Configure mkinitcpio
Edit `/etc/mkinitcpio.conf`:
```bash
MODULES=(btrfs)
BINARIES=(/usr/bin/btrfs)
HOOKS=(base udev autodetect microcode modconf kms keyboard keymap consolefont block encrypt filesystems fsck)
```
> **Note:** Add `resume` after `filesystems` if you want hibernation support.
Regenerate:
```bash
mkinitcpio -P
```
---
## Limine Bootloader
### Install Limine
```bash
mkdir -p /boot/EFI/limine
cp /usr/share/limine/BOOTX64.EFI /boot/EFI/limine/
```
### Create NVRAM entry
```bash
efibootmgr --create --disk /dev/nvme0n1 --part 1 \
--label "Arch Linux" \
--loader '\EFI\limine\BOOTX64.EFI' \
--unicode
```
### Configure Limine
Create `/boot/EFI/limine/limine.conf`:
```
timeout: 3
/Arch Linux
protocol: linux
path: boot():/vmlinuz-linux
cmdline: quiet cryptdevice=UUID=<YOUR-LUKS-UUID>:root root=/dev/mapper/root rw rootflags=subvol=@ rootfstype=btrfs cfg80211.ieee80211_regdom=US
module_path: boot():/initramfs-linux.img
/Arch Linux (fallback)
protocol: linux
path: boot():/vmlinuz-linux
cmdline: quiet cryptdevice=UUID=<YOUR-LUKS-UUID>:root root=/dev/mapper/root rw rootflags=subvol=@ rootfstype=btrfs cfg80211.ieee80211_regdom=US
module_path: boot():/initramfs-linux-fallback.img
```
Replace `<YOUR-LUKS-UUID>` with the UUID from earlier.
---
## Enable Services
```bash
systemctl enable NetworkManager
systemctl enable iwd
systemctl enable bluetooth
systemctl enable cups
systemctl enable avahi-daemon
systemctl enable firewalld
systemctl enable acpid
systemctl enable power-profiles-daemon
systemctl enable reflector.timer
systemctl enable fstrim.timer
```
---
## Framework AMD Tweaks
### Disable PC speaker
Create `/etc/modprobe.d/nobeep.conf`:
```
blacklist pcspkr
blacklist snd_pcsp
```
### Lid behavior
Edit `/etc/systemd/logind.conf`:
```ini
HandlePowerKey=ignore
HandlePowerKeyLongPress=poweroff
HandleLidSwitch=suspend
HandleLidSwitchExternalPower=suspend
HandleLidSwitchDocked=ignore
```
### WiFi performance (MediaTek RZ616)
The AMD Framework uses MediaTek WiFi which needs some tuning.
**Set regulatory domain** — without this you're stuck on 2.4GHz:
```bash
# Add to Limine cmdline:
cfg80211.ieee80211_regdom=US
```
**Use iwd as NetworkManager backend** for better stability:
Create `/etc/NetworkManager/conf.d/wifi-backend.conf`:
```ini
[device]
wifi.backend=iwd
```
**Disable WiFi power saving** to prevent disconnects:
Create `/etc/modprobe.d/mt7921.conf`:
```
options mt7921e power_save=0
```
### Headphone jack buzz fix
The AMD board has a slight buzz when audio is idle. Disable power saving:
Create `/etc/modprobe.d/audio-powersave.conf`:
```
options snd_hda_intel power_save=0
```
### USB-A expansion card power drain
Avoid placing USB-A cards in the **two rear slots** — they cause higher idle power drain. Front slots are fine.
### HDMI/DisplayPort expansion cards
Don't use the **front-left slot** for HDMI/DP cards — may not work on AMD.
---
## Reboot
```bash
exit
umount -R /mnt
cryptsetup close root
reboot
```
Remove the USB drive.
---
## Post-Install
### Connect to WiFi
```bash
nmcli device wifi connect <SSID> password <password>
```
### Install paru (AUR helper)
```bash
sudo pacman -S --needed git base-devel
git clone https://aur.archlinux.org/paru.git
cd paru && makepkg -si
cd .. && rm -rf paru
```
### Enable pacman colors
Uncomment `Color` in `/etc/pacman.conf`.
### Time sync
```bash
timedatectl set-ntp true
```
### Pacman hook for Limine updates
Create `/etc/pacman.d/hooks/99-limine.hook`:
```ini
[Trigger]
Operation = Install
Operation = Upgrade
Type = Package
Target = limine
[Action]
Description = Deploying Limine after upgrade...
When = PostTransaction
Exec = /usr/bin/cp /usr/share/limine/BOOTX64.EFI /boot/EFI/limine/
```
### BIOS updates
Framework AMD is well supported on LVFS. Check for updates:
```bash
sudo pacman -S fwupd
fwupdmgr refresh
fwupdmgr get-updates
fwupdmgr update
```
> **Note:** If you have a batch 1 or 2 device, make sure BIOS is at least 3.03 before updating further.
---
## Next Steps
- [[10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Hyprland Setup]] — graphical environment
- [[10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Network]] — advanced networking
- Snapper for BTRFS snapshots
- Swap/hibernation setup
---
## References
- [Arch Wiki: Framework Laptop 13](https://wiki.archlinux.org/title/Framework_Laptop_13)
- [Arch Wiki: Installation Guide](https://wiki.archlinux.org/title/Installation_guide)
- [Arch Wiki: Limine](https://wiki.archlinux.org/title/Limine)
- [Arch Wiki: BTRFS](https://wiki.archlinux.org/title/Btrfs)
- [Arch Wiki: dm-crypt](https://wiki.archlinux.org/title/Dm-crypt)

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Disks.md
permalink: /os/disks
title: Disks
created: 2026-01-29T21:46:53.106-07:00
modified: 2026-02-05T09:21:21.430-07:00
modified: 2026-02-05T12:18:02.151-07:00
tags:
- disks
- automount

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Fonts.md
permalink: /os/fonts
title: Fonts
created: 2026-01-29T15:24:42.068-07:00
modified: 2026-02-05T09:21:21.425-07:00
modified: 2026-02-05T12:18:02.154-07:00
tags:
- fonts
- rendering

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Hyprland Setup.md
permalink: /os/hyprland
title: Hyprland Setup
created: 2026-01-29T15:09:13.502-07:00
modified: 2026-02-05T09:31:46.733-07:00
modified: 2026-02-05T12:18:02.155-07:00
tags:
- hyprland
- wayland

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Keychain.md
permalink: /os/keychain
title: Keychain
created: 2026-01-29T21:15:48.335-07:00
modified: 2026-02-05T09:21:56.854-07:00
modified: 2026-02-05T12:18:02.157-07:00
tags:
- security
- secrets

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Mako.md
permalink: /os/mako
title: Mako
created: 2026-01-29T15:18:16.265-07:00
modified: 2026-02-05T09:20:32.970-07:00
modified: 2026-02-05T12:18:02.159-07:00
tags:
- notifications
- wayland

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Network.md
permalink: /os/network
title: Network
created: 2026-01-29T14:15:15.157-07:00
modified: 2026-02-05T09:41:11.148-07:00
modified: 2026-02-05T12:18:10.583-07:00
tags:
- network
- wifi

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Plymouth.md
permalink: /os/plymouth
title: Plymouth
created: 2026-02-05T09:31:46.739-07:00
modified: 2026-02-05T09:43:32.507-07:00
modified: 2026-02-05T12:18:10.585-07:00
tags:
- boot
- splash

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Printing.md
permalink: /os/printing
title: Printing
created: 2026-02-05T08:52:25.911-07:00
modified: 2026-02-05T09:21:21.426-07:00
modified: 2026-02-05T12:18:10.587-07:00
tags:
- printing
- cups

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Shell.md
permalink: /os/shell
title: Shell
created: 2026-01-29T16:18:01.019-07:00
modified: 2026-02-05T09:44:18.943-07:00
modified: 2026-02-05T12:18:10.588-07:00
tags:
- shell
- terminal

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Yubikey.md
permalink: /os/yubikey
title: Yubikey
created: 2026-01-29T21:27:17.327-07:00
modified: 2026-02-05T09:21:56.856-07:00
modified: 2026-02-05T12:18:10.589-07:00
tags:
- security
- yubikey

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/fprintd.md
permalink: /os/fprintd
title: fprintd
created: 2026-02-05T09:31:46.737-07:00
modified: 2026-02-05T09:32:30.884-07:00
modified: 2026-02-05T12:18:16.843-07:00
tags:
- security
- fingerprint

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/hyprlock.md
permalink: /os/hyprlock
title: hyprlock
created: 2026-02-05T09:31:46.736-07:00
modified: 2026-02-05T09:35:55.743-07:00
modified: 2026-02-05T12:18:16.846-07:00
tags:
- hyprland
- lockscreen

View File

@@ -1,9 +1,9 @@
---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/hyprshutdown.md
permalink: /os/hyprshutdown
title: hyprshutdown
created: 2026-02-05T09:31:46.735-07:00
modified: 2026-02-05T09:31:46.735-07:00
modified: 2026-02-05T12:18:16.847-07:00
tags:
- hyprland
- shutdown

View File

@@ -0,0 +1,15 @@
---
publish: true
permalink: /ai/blogwatcher
title: blogwatcher
created: 2026-01-31T20:42:32.556-07:00
modified: 2026-02-05T12:18:45.700-07:00
tags:
- ai
- rss
- monitoring
cssclasses: ""
---
`go install github.com/Hyaxia/blogwatcher/cmd/blogwatcher@latest`