Skip to content

Instantly share code, notes, and snippets.

Avatar

Nathan Henrie n8henrie

View GitHub Profile
View search_bad_logins.py
#!/usr/bin/env python3
"""
search_bad_logins.py :: Compares a LastPass export to your Bitwarden vault.
Python >=3.10, no third party Python libraries / dependencies.
Outputs BW logins that may have been compromised in the recent LastPass hack
based on matching domain and password.
It would probably make sense to cast an even wider net by using something like
@n8henrie
n8henrie / OpenTerminalToFinderWindow.js
Last active Dec 29, 2022
JXA to open a Terminal window to the frontmost Finder window
View OpenTerminalToFinderWindow.js
#!/usr/bin/osascript -l JavaScript
'use strict';
const DEBUG = false;
(function () {
const terminal = Application("Terminal")
// A few seconds to focus the appropriate Finder window
View devdocs.json
{"analyticsConsentAsked":"1","autoInstall":"1","docs":"css/html/http/javascript/dom/bash/docker/flask~2.2/git/gnu_make/gnuplot/go/homebrew/i3/jinja~3.0/jq/liquid/lua~5.4/markdown/matplotlib~3.6/nix/numpy~1.23/pandas~1/pygame/python~3.10/pytorch/rust/scikit_image/scikit_learn/sqlite/statsmodels/svelte/tailwindcss/tensorflow~2.9/vue~3/xslt_xpath"}
View treecount.sh
Well, this ended up being easier than I'd expected to implement with coreutils.
Wrapped it up into a little script that sorts by count and removes anything with only 1 result (like files).
Should be pretty easy to also add in a `du -sh` to get sizes if one wanted. Currently it runs in <2s on that 500,000 line file on my M1 Mac. Sharing in case useful for anyone else.
```bash
#!/usr/bin/env bash
# treecount.sh https://gist.github.com/a7c3b48eb971f662c03e9da17ecb9ea4
#
@n8henrie
n8henrie / text_scratchpad.sh
Last active Sep 2, 2022
Make alacritty into a pop-up scratchpad
View text_scratchpad.sh
#!/usr/bin/env bash
set -Eeuf -o pipefail
shopt -s inherit_errexit
log() {
echo "$*" > /dev/stderr
}
err() {
@n8henrie
n8henrie / build-plugin.sh
Created Mar 8, 2022
Convenience script to build a Quicksilver plugin from CLI
View build-plugin.sh
#!/bin/bash
#####
# build-plugin.sh
# bash 3.2-compatible convenience script to:
# - search by partial name for a plugin in the `QSPLUGINS` subdirectory
# (default `./QSPlugins`)
# - clean plugin directory
# - clean QS directory
# - `rm -rf /tmp/QS`
View rssi.py
#!/usr/bin/env python3
"""
Use the MacOS `airport` utility to get a running average of the WiFi signal
strength (RSSI).
Python 3.8+, so works with `/usr/bin/python3` on Monterey.
"""
import os
import statistics
@n8henrie
n8henrie / modify_nix_image.sh
Last active Oct 6, 2021
Modify a nixos image to use a BTRFS root
View modify_nix_image.sh
#!/bin/bash
# NB: I am no bash pro, so this could be dangerous.
# Please read through it and make sure you double check my work.
# Assuming nixos image nixos-sd-image-21.05pre-git-aarch64-linux.img and sdcard at /dev/sdx
# Example usage: `sudo ./modify_image.sh nixos-sd-image-21.05pre-git-aarch64-linux.img /dev/sdx`
# NB: This will overwrite /dev/sdx!
set -Eeuf -o pipefail
@n8henrie
n8henrie / quick replace.applescript
Created Aug 13, 2021
Quicksilver action to run a regex on input text
View quick replace.applescript
using terms from application "Quicksilver"
on get direct types
return {"NSStringPboardType"}
end get direct types
on get indirect types
return {"NSStringPboardType"}
end get indirect types