Skip to content

Instantly share code, notes, and snippets.

rusting away

Leonora Tindall NoraCodes

rusting away
View GitHub Profile
NoraCodes /
Created Feb 9, 2021
Apple Magic Touchpad 2 configuration script
#!/usr/bin/env bash
# XInput/Synclient settings for Apple Magic Touchpad 2
# AGPL v3.0 or greater at your option
# (C) Leonora Tindall 2021
# Based on a Reddit post by /u/fr3lld
# and a very helpful AskUbuntu response by Jamie Scott
# Place this somewhere, set it as executable, and place the filename
# in in ~/.xinitrc
set -e
## Sol DrumBud v0.1 ##
## Leonora Tindall <> ##
## Licensed GPLv.3 ##
A configurable drum trigger helper for Sol.
Use it to trigger 8 more drums from the Beatstep Pro, or trigger your complex
Boolean logic rhythms from 8 more directions.
Provides 8 percussion triggers on the Sol's outputs.
NoraCodes /
Last active Jan 22, 2021
A sequencer helper firmware for the Sol MIDI to CV converter module from Winterbloom
## Sol Seqpal v0.4.1 ##
## Leonora Tindall <> ##
## Licensed GPLv.3 ##
A configurable sequencer helper for the Sol.
Defaults to:
3 CV/Gate channels on a/1, b/2, and c/3,
plus two percussion channels on 4 and d (abused as a trigger)
NoraCodes /
Created Nov 23, 2018
Python script to listen for and dump info on Dropbox sync sessions
#! /usr/bin/env python3
import socketserver
import json
import datetime
import sys
import getopt
known_hosts = {}
QUIET = False
NoraCodes /
Created Jul 2, 2018
Script to upload things to Google Cloud Storage via OAuth bearer token
set -e
usage () {
echo "Usage:"
echo " [object] [bucket] [OAuth bearer token]"
[ -z "$1" ] && echo "ERROR: No local object name supplied." && usage && exit 1
NoraCodes /
Created Mar 26, 2018
Auto-update Cron job for
set -e
# Enter the correct directory
cd ~/
# Get the current hash
OLD_ID=$(git rev-parse HEAD)
# Update the Git repo
git pull origin master
# Get the new hash. These will be the same if no changes were pulled.
NoraCodes / gogs.log
Created Mar 17, 2018
Gogs bus error!
View gogs.log
2018/03/17 00:02:47 [TRACE] CSRF Token: wdQKEuNtsm5y3e9LVcX2dqHz9J86MTUyMTI0NDk2NzUwNDU5NzY1Ng==
2018/03/17 00:03:07 [TRACE] Detected encoding: UTF-8 (fast)
2018/03/17 00:04:00 [TRACE] Template: repo/home
2018/03/17 00:05:42 [TRACE] Doing: MirrorUpdate
2018/03/17 00:06:33 [TRACE] Session ID: bb8e5fa9c54b3597
2018/03/17 00:06:33 [TRACE] CSRF Token: weRrgVR3UOU7MLYD4m5w1MiWhTc6MTUyMTI0NTE5MzU5OTM0MTc4MA==
2018/03/17 00:06:44 [TRACE] Template: repo/commits
2018/03/17 00:08:04 [TRACE] Session ID: ec81973c58f48efe
2018/03/17 00:08:04 [TRACE] CSRF Token: ETWb5YGr3ZZeU9E9z5ZZ0iMn6_Q6MTUyMTI0NTI4NDAwNTI0MDEwMA==
2018/03/17 00:08:04 [TRACE] Template: user/profile
NoraCodes / esp8266_scan.ino
Last active Nov 14, 2019
Network scanner on ESP8266
View esp8266_scan.ino
* ESP8266 Scanner - Scans for networks on the 2.4GHz band and prints them out to the console.
* Program it onto your ESP8266, pull up miniterm, the Serial Monitor, etc, and view a list of
* wireless networks on your computer.
* Requres Arduino JSON (, downloadable from Library Manager or GitHub.
* Or, set OUTPUT_JSON and consume the serial output with your favorite JSON parser.
* Created by Leonora Tindall in 2017 for the ESP8266.
* This software is licensed under the GNU General Public License, Version 3.0.
NoraCodes /
Last active Apr 9, 2021
An example of a parallel work scheduling system using only the Rust standard library
// Here is an extremely simple version of work scheduling for multiple
// processors.
// The Problem:
// We have a lot of numbers that need to be math'ed. Doing this on one
// CPU core is slow. We have 4 CPU cores. We would thus like to use those
// cores to do math, because it will be a little less slow (ideally
// 4 times faster actually).
// The Solution:
NoraCodes /
Created Aug 25, 2017 Security Report

Security Status Report


At 11:32 AM Central time I noticed that my personal web presence, identified by DNS address, with IP addresses and 2600:3c01::f03c:91ff:fe3e:12c3, was not accessible via the Beloit College network. When that address was sent a HTTP GET request on port 80, the response was not the Hugo-generated static page I expected, but rather a minimal page informing me that the web page was blocked due to "malware".

I spoke to Tim Tyler, the Beloit College network engineer, at about 1:07 PM. He added a firewall rule bypassing the block, which allowed us to verify that the school's Palo Alto Networks firewall was, in fact, the reason for the block.

After several minutes of attempting to determine a cause for the block. I mentioned that he server runs a Tor exit node. Mr. Tyler told me that was probably the reason for the block. In order to ensure that there was no other cause, I am putting together this report in order to narrow the