symlink > projects

Projects and hacks

Internet Relay Chat

I've spent large amounts of time on IRC. I try to contribute to the IRCv3 Working Group, which aims to extend the 30-year-old protocol with modern features.

At the same time, I collect information about the past and present of IRC. I have a dedicated IRC documentation repository where I collect documentation about the software & the protocol – including the extension list and the family tree of IRC servers.

My writings page has a few articles documenting various bits and pieces I've written myself.

The nullroute mirrors project has an archive of various old IRC software and dead FTP sites.

I've written a few miscellaneous scripts for Irssi.

Also, some scripts for the Eggdrop bot: g_cap.tcl for authenticating to SASL-enabled networks, and g_ts6.tcl implementing the TS6 server-server protocol because why the hell not?

useful tools

I write a lot of miscellaneous scripts. The kinda useful ones are below. The rest are scattered around between my their own repositories and my ~/code.git super-repo.

dbus-name – list and monitor DBus service names

dzenify – use dzen2 as a libnotify service

getpaste – view Zerobin posts on the command line

mpris – control MPRISv2-compatible music players

kc – juggle multiple Kerberos ccaches

pklist – dump a parsable list of Kerberos 5 tickets – useful in shell scripts

rwho – maintains a centralized list of user login sessions (kinda like who/finger)

testrad – test RADIUS authentication servers (a convenient wrapper around eapol_test)

tpm_futurepcr – reseal data against predicted TPM PCRs after system upgrades

ssh-publickeyd – an RFC 4819 subsystem for OpenSSH servers; used by SecureCRT's "Public Key Assistant" (requires authorized_keys.py)

treeify – format any path-like input as a tree

lib/authorized_keys.py – parse OpenSSH's authorized_keys files, with support for options and future key types

lib/sexp.py – parse S-expressions in Python (based on Rivest's original C code). This can parse the private keys stored by OTR.

xterm-color-chooser – select colors from the xterm 16-color and 256-color palette

All code released under the MIT Expat license, unless noted otherwise.