Skip to content

Instantly share code, notes, and snippets.

View purp's full-sized avatar
🖤
https://xrl.us/mlkbirmletterpdf

Jim Meyer purp

🖤
https://xrl.us/mlkbirmletterpdf
View GitHub Profile
@purp
purp / 00 Basics.md
Last active October 5, 2024 16:29
A beginner's notes on using Typescript and Node.js

Overview

Quick notes on how to bootstrap a project where you intend to use Typescript and Node.js

Bootstrapping

Commands and Code

mkdir foo && cd foo
npx gitignore node
npm init
@purp
purp / notes.md
Last active July 28, 2024 19:35
Overcoming `ssl module in Python is not available` error when using MacOS Homebrew's `pyenv` and `openssl`

Overcoming ssl module in Python is not available error when using MacOS Homebrew's pyenv and openssl

I use MacOS Homebrew and it's versions of pyenv and openssl. When I wanted to install a new Python package, I ran into an unexpected error:

❯ pip install llama-cpp-python
WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/llama-cpp-python/
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/llama-cpp-python/
^CERROR: Operation cancelled by user
@purp
purp / 00 Setting up an M1 Mac Mini for Home Automation.md
Last active March 25, 2023 19:17
Setting up an M1 Mac Mini for Home Automation using Home Assistant

How To Set Up An M1 Mac Mini As Your Home Automation Server Using Home Assistant

Intro

This is mostly just me scratching out notes on a work in (slow) progress, and preserving knowledge for future me.

If I get to a successful end, I may polish things up into a useful guide. There are no doubt better places to find this and easier ways to do it ... but I couldn't find them, and if you've ended up here, you couldn't either. Sorry for that.

Goals

@purp
purp / EdgeOS_SSH_Tricks.md
Last active August 29, 2024 07:39
Adding SSH keys to Ubiquiti EdgeRouter X / EdgeOS

Adding SSH keys to EdgeOS-based devices like Ubiquiti Edge Router X

Maybe, like me, you're tired of typing a password and prefer to disable password auth for ssh anyway. Maybe, like me, you want to point VS Code at your Edge Router and be able to read configs and things. Maybe, like me, you'll discover that VS Code's Remote-SSH extension doesn't support the ERX architecture and be mildy bummed, but still happy to have passwordless SSH (via ssh-agent) and know that no password will get some rando into your ERX.

Here's how.

Cribbed from the VyOS Login/User Management docs

Configuring SSH for less typing

@purp
purp / kohler-mazz-notes.md
Created January 29, 2023 20:08
Adventures In DIY Home Repair

Notes on fixing a leaky Kohler Mazz® kitchen faucet in 2023

We've got a Kohler Mazz® kitchen faucet, model K-R72511-SD-VS, that we love the look and feel of. We've had it long enough for a number of things to go wrong, including a broken sprayer head switch and a leaky quick connect connector. We've replaced parts and fixed things and it's reached the point that notes on the internet would be helpful (at least to future me, maybe others), so here we are.

There's a faucet service parts diagram under the "Installation & Service Parts" heading; someday I'll go save the SVG for posterity and add it here.

Sprayer Head Replacement

The replacement head part number is 1235124 and cost $50 in Jan 2023. It's a

@purp
purp / notes.md
Created September 23, 2022 16:43
Docker Dev Environments Notes

Troubleshooting

If Docker complains that you don't have git installed:

  • which git for the path (and if you realize now that it's not installed, now you can fix it)
  • If it's a non-standard path (I use /opt/homebrew), that's why Docker can't find it
  • cd /usr/local/bin && ln -s $(which git) .
require 'irb/completion'
require 'rubygems'
# Autoload all gems in the Gemfile default set
require 'bundler/setup'
Bundler.require(:default)
# TODO: find a valid editor if it's not set and config it's 'edit at line' and terminal req'ts
# Make sure $EDITOR is set
ENV['EDITOR'] = 'code' unless ENV['EDITOR']
@purp
purp / !Notes on Mac + Adafruit Feathers.md
Last active May 18, 2020 16:02
Playing with an AdaFruit Feathers on Mac OS

Being a collection of digital scribbles on my adventures with Adafruit and Mac OS, with many diversions into the nature of serial ports, &c., which may be useful to the less patient practitioner

Because gist file order is ASCIIbetical:

  • notes on individual Feathers are in files with no prefix
  • notes on FeatherWings and other boards are prefixed with ~ to push them below the Feather notes
  • general notes are prefixed with ! to keep them near the top
@purp
purp / README.md
Created December 15, 2018 21:46
Convert exported Apple contacts .vcf to CSV

I have a bunch of folks I want to export from Apple Contacts on MacOS and turn into a spreadsheet for a holiday card mail merge.

This is my clumsy way of doing it.

@purp
purp / light_and_cat5_times.md
Last active November 27, 2017 17:48
Some data about ping time from Sunnyvale through various VPN endpoints to commonly used servers/services.

Minimum latency for fiber and Cat 5 copper

This is a calculation of the minimum possible latency you could possibly expect between two points, if the theoretical connection between them was completely straight and of perfect quality. This is not attainable in a modern switched network, but it's useful both to understand the amount of delay injected by network implementation and complexity, and to compare relative latencies between routes.

Distances and optimum latency between cities

Nuremberg/Prague

  • 156.098 mi
  • 0.8379643083349 light-milliseconds
  • 1.309319231773281 cat5-milliseconds