Skip to content

Instantly share code, notes, and snippets.

View chapmanjacobd's full-sized avatar
🥅
goal_net

Jacob Chapman chapmanjacobd

🥅
goal_net
View GitHub Profile
/bin/qemu-system-arm64 \
-name raspios-lite,process=raspios-lite \
-machine virt,accel=kvm \
# -cpu cortex-a72 \
-cpu max \
-smp cores=3 \
-m 4G \
-device virtio-balloon \
-pidfile raspios-lite.pid \
-rtc base=utc,clock=host \
@chapmanjacobd
chapmanjacobd / alpine_on_pi.qemu
Created October 23, 2025 18:59
alpine arm64 qemu/kvm
/bin/qemu-system-arm64 \
-name alpine-v3.22,process=alpine-v3.22 \
-machine virt,accel=kvm \
-cpu max \
-smp cores=3 \
-m 4G \
# -boot d
-device virtio-balloon \
-pidfile alpine-v3.22.pid \
-rtc base=utc,clock=host \
https://cwa.omg.lol
https://adriannasvitak.com
https://albertocinco.com
http://iamnotana.com
http://experiment-now.de/corporate-life
https://aleesteele.com
https://april.wiki
https://aram.sh
https://asandei.com
https://carolwightman.com
@chapmanjacobd
chapmanjacobd / ArgparseDBsOrPaths.py
Created September 13, 2025 21:30
kinda sad I can't use this... too many complications: post-actions, printer can mark rows deleted, etc
class ArgparseDBsOrPaths(argparse.Action):
def __call__(self, parser, namespace, values, option_string=None):
if values is None:
return None
databases = []
if values == [STDIN_DASH]:
print(f"{parser.prog}: Reading from stdin...", file=sys.stderr)
stdin_paths = sys.stdin.readlines()
paths = None
@chapmanjacobd
chapmanjacobd / The Mojave Desert through the Eyes of the Minarchist.txt
Created September 12, 2025 22:33
I don't remember if I wrote this but I want it OUT of my text editor
> The Mojave Desert through the Eyes of the Minarchist
> The game starts off in almost perfect balance
> Each faction tolerates each other
> fighting
> but never killing off each other
> Then you start the game and you throw it all out of balance
> The Mojave is pretty unforgiving
> but if it's one thing
> it is fair
> It doesn't choose sides
@chapmanjacobd
chapmanjacobd / mangaplus.js
Created September 4, 2025 14:19
MangaPlus Spacebar Navigation
// ==UserScript==
// @name MangaPlus Spacebar Navigation
// @namespace http://tampermonkey.net/
// @version 1.4
// @description Use space/shift+space to simulate clicks for MangaPlus navigation.
// @author You
// @match https://mangaplus.shueisha.co.jp/viewer/*
// @grant none
// ==/UserScript==
@chapmanjacobd
chapmanjacobd / files_by_git_status.fish
Last active August 28, 2025 01:14
Select only specific files by their git status
function untracked -w 'git status'
git status --porcelain --short $argv | awk 'substr($0, 1, 2) == "??" {print substr($0, 4)}' | string unescape --style=script
end
function added -w 'git status'
git status --porcelain --short $argv | awk 'substr($0, 1, 1) == "A" && substr($0, 2, 1) == " " {print substr($0, 4)}' | string unescape --style=script
end
function deleted -w 'git status'
git status --porcelain --short $argv | awk 'substr($0, 1, 1) == " " && substr($0, 2, 1) == "D" {print substr($0, 4)}' | string unescape --style=script
@chapmanjacobd
chapmanjacobd / plocate_permiss_but.why
Created August 17, 2025 22:35
plocate Permission denied on rpm-ostree
/var/lib/plocate/plocate.db: Permission denied
ls -lahg /var/lib/plocate/
Permissions Size User Group Date Modified Name
.rw-r-----@ 337M root colord 1 Aug 01:02 plocate.db
Solution:
sudo chown :plocate /var/lib/plocate/plocate.db
but why does this happen?
sudo ostree remote add fedora https://ostree.fedoraproject.org --set=contenturl=mirrorlist=https://ostree.fedoraproject.org/mirrorlist --set=gpgkeypath=/etc/pki/rpm-gpg/
sudo rpm-ostree cleanup -m
sudo rpm-ostree rebase fedora:fedora/42/x86_64/kinoite
---
sudo ostree remote add fedora-iot https://ostree.fedoraproject.org/iot --contenturl=mirrorlist=https://ostree.fedoraproject.org/iot/mirrorlist --set=gpgkeypath=/etc/pki/rpm-gpg/
sudo rpm-ostree cleanup -m
sudo rpm-ostree rebase fedora-iot:fedora/stable/x86_64/iot
// ==UserScript==
// @name Table Click Filter
// @namespace http://tampermonkey.net/
// @version 0.1
// @description Click a table cell, filter the column based on input.
// @author You
// @match *://*/*
// ==/UserScript==
(function() {