No description
  • Python 44%
  • HTML 24%
  • JavaScript 9.5%
  • Shell 9.3%
  • TypeScript 5.5%
  • Other 7.7%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-10-02 17:49:54 -07:00
.agents feat/pi-skills: add Matt Pocock's original skill as 2026-09-14 03:29:00 -07:00
.config chore/mise: add arduino-cli to mise 2026-09-28 12:40:11 -07:00
.git-filters opencode: API keys properly(?) redacted; add configs to repo 2026-05-21 01:22:21 -07:00
.local fix: make waybar suck less, change niri screenshot hotkey, fix external display stuff 2026-09-11 04:23:44 -07:00
.pi/agent chore/pi: version bump 2026-10-02 17:49:54 -07:00
.var/app/com.obsproject.Studio/config/obs-studio chore: ignore local machine state 2026-08-12 14:20:17 -07:00
obs obs: starting soon, brb, ending stream scenes 2026-03-18 06:03:51 -07:00
python_utils scripts: add clicky thing 2026-05-30 00:31:31 -07:00
.bash_profile first commit 2026-02-25 23:21:04 -08:00
.bashrc chore: some bug fixes 2026-06-29 13:52:29 -07:00
.env.example opencode: API keys properly(?) redacted; add configs to repo 2026-05-21 01:22:21 -07:00
.gitattributes opencode: move config inside .config 2026-05-17 19:56:23 -07:00
.gitconfig chore/git: change git email 2026-09-28 12:40:23 -07:00
.gitignore fix: properly ignore rofi emoji source 2026-09-11 04:24:42 -07:00
.python-version bgfx: initialize uv project 2026-03-03 15:00:16 -08:00
.stow-local-ignore chore/stow: make stow ignore ALL README files instead of just the root one 2026-09-14 03:29:59 -07:00
init.sh justfile: dont fail on install nothing 2026-05-26 22:15:08 -07:00
justfile chore: some bug fixes 2026-06-29 13:52:29 -07:00
LICENSE.md initial superfile, cliphist config 2026-02-26 18:08:13 -08:00
pyproject.toml utils: add ty and ruff to cli utils 2026-05-17 20:11:57 -07:00
README.md chore/readme: remove references to superfile 2026-09-11 07:00:11 -07:00
uv.lock scripts: add clicky thing 2026-05-30 00:31:31 -07:00

Dotfiles

Requires the following arch packages:

sudo pacman -S brightnessctl cliphist fd flatpak fzf ghostty grim mako nwg-look \
    rofi rofi-calc slurp swappy ttf-nerd-fonts ttf-nerd-fonts-common zoxide \
    ttf-nerd-fonts-mono waybar

Requires the following AUR packages:

paru -S catppuccin-cursors-mocha catppuccin-gtk-theme-mocha

The following mise utilities:

mise use -g node@latest uv@latest opencode@latest bun@latest hadolint@latest cargo:bat@latest cargo:fd-find@latest cargo:ripgrep@latest cargo:git-delta@latest cargo:difftastic@latest cargo:zellij@latest zoxide@latest fzf@latest

Requires the following flatpak packages:

flatpak install org.mozilla.firefox

Installation with GNU stow:

cd
git clone git@github.com:BlackHat-Magic/dotfiles
cd dotfiles
stow .

Window Manager (Niri)

This config uses Niri with the following utilities:

Terminal Utilities

This config uses ghostty with the following utilities:

The Rofi emoji picker uses the generated .config/rofi/emoji.txt list. Refresh it from the pinned Unicode Emoji 17.0 and CLDR 48.2 sources with:

python .config/rofi/generate-emoji-list.py --cache-dir .config/rofi/emoji-source

Python Utilities

This repo contains a bunch of small Python CLI utilities that perform simple tasks that I find useful.

Posterize

A simple Python utility that posterizes a given image and applies any one of a number of dithering algorithms.


# from the project root
uv run posterize [-o OUTPUT] image		# to run without installing
uv tool install python_utils/posterize	# install to current user's PATH
uv tool uninstall posterize				# to uninstall

# over the internet (without cloning repository)
uvx --from git+https://github.com/BlackHat-Magic/dotfiles posterize [-o OUTPUT] image		# run w/o install
uv tool install git+github.com/BlackHat-magic/dotfiles --directory python_utils/posterize	# install to user's PATH
uv tool uninstall posterize																	# uninstall

OBS Studio

This repo also contains my configurations for OBS Studio.

Plugins

It expects these plugins to be installed. com.obsproject.Studio.Plugin. is omitted from the start of the flatpak application IDs for brevity.

Plugin Name Flatpak Application ID Arch/AUR Package
Advanced Masks AdvancedMasks obs-advanced-masks (AUR)
Aitum Multistream AitumMultistream obs-aitum-multistream-bin (AUR)
Move Transition MoveTransition obs-move-transition (AUR) (Out of date)
Scale To Sound ScaleToSound obs-scale-to-sound (AUR)
Shaderfiler Shaderfilter obs-shaderfilter-git (AUR)
Source Record SourceRecord obs-source-record (AUR)
Stroke Glow Shadow StrokeGlowShadow obs-stroke-glow-shadow (AUR)
Transition Table TransitionTable obs-transition-table (AUR)
Wayland Hotkeys WaylandHotkeys obs-wayland-hotkeys-git (AUR)
3D Effect _3DEffect obs-3d-effect (AUR)
Waveform waveform N/A

TODO

  • Icons that don't suck

Acknowledgements

  • OBS "Starting Soon," "Be Right Back," and "Ending Stream" screens use a shader based on Base warp fBM cineshader by TrinketMage on ShaderToy.