- FreeBSD (2012-2018)
- VLC for iOS (2014)
- Hermes (2014-2015)
- Gentoo packaging (2011, 2018-2020)
- Arch Linux packaging (2017)
- Textual (2013-2014)
- applescript-json (2014)
- pjson (2014-2015)
- glacier-cli (2014)
- Homebrew (2014)
- mcstatus (2015)
- xbanish (2015)
- cyberpunk-theme.el (2018-2019)
- yossarian-bot (2015-2019)
- racket-irc (2015-2018)
- Nimdok (2014-2015)
- pycodestyle (2014)
- mibot (2017)
- Qutebrowser (2018)
- slop (2018)
- cava (2018)
- emacs-dashboard (2018)
- cargo-ebuild (2018)
- org-static-blog (2019)
- typed-racket (2019)
- the racket website (2019)
- racket (2018-2019)
- Retroarch (2020)
- Alpine (2020)
- mdadm (2020)
Goal of this document: demonstrate a history of contributing to projects af various languages and technologies.
I make a lot of small contributions to various open source projects. My goal is to improve my own “quality of life in computing” with one fix at a time. As a rule of thumb, I try to use software that I can fix much like I would try to fix any electronic or furniture I possess.
I do not claim ownership or any recognition beyond making important fixes to various projects.
Note: This is an exceprted list. It also presently does not include most of my own projects or tickets that brought about improvements.
I used to be loosely involved with the FreeBSD project as a ports maintainer. Later on I used this experience at a student job to write ports for a scientific computing cluster.
FreeBSD Bugzilla Search for my tickets
(The one about lack order reversal is not posted by me.)
§VLC for iOS (2014)
Add option to embolden subtitles for easier reading on low contrast videos.
Hermes is a Pandora client for MacOS. I maintained it for a couple years, then gave up my hobby projects within the Apple Ecosystem. This project gave me new appreciation for the amount of hard work every software maintainer must put in to achieve even the most basic software quality standards.
§Projects related to Hermes
- HermesRemote - an experimental web UI for controlling Hermes.
- HermesSkypeControl - Play/pause Hermes when you receive a call in Skype.
§Gentoo packaging (2011, 2018-2020)
Many years ago I made an overlay with some interesting ebuilds.
Presently I maintain an overlay of ebuilds on GitHub. It is also on
the list of unofficial overlays that
I still use Gentoo for various reasons; if something breaks (which it doesn’t), it is my own fault.
§Arch Linux packaging (2017)
I moved on from Arch Linux because of various reasons amounting to a system that was hard to manage software across deployments, subpar package writing tools (e.g. not any meaningful QA checks), and a community that was not pleasant to participate in.
Never the less, I did maintain a few packages in AUR.
- libtcod-151 (work around Arch’s lack of slotting/parallel installation support)
- crimson (Classic open source game: Crimson Fields)
- slashem (nethack variant)
- marlowe (Shakespeare programming language transpiler)
Textual is the best IRC client for MacOS. I don’t use MacOS anymore, but I did enjoy improving it. Fixes include UX enhancements, adding extension AppleScripts, and reporting a bunch of issues that others fixed. Unfortunately the Textual issue tracker on GitHub was shut down some time ago. I recall finding a bug with a PING sent from the server would be replied by a double-PONG, causing certain IRC daemons to disconnect Textual clients, thereby rendering Textual not very usable with certain IRC networks.
I also wrote a little DeviantArt Thumbnail plugin in Swift for Textual.
Yes, a JSON encoder in AppleScript. It is madness.
Python based json pretty printer with color. Various fixes.
A simple CLI to access Amazon Web Services Glacier - a nearline storage service intended for storage that is not intended for online access.
A couple package bumps in the de-facto Mac OS X package manager.
That Python package written by dinnerbone (a minecraft dev) to ping minecraft servers. I fixed up the packaging to Pythonista expectations.
Tool to hide mouse. Resolved some packaging quirks.
Best theme for emacs. UX improvements.
IRC bot. Mostly adding plugins and dockerizing.
IRC client library for Racket. Added TLS support.
IRC bot. Tidy up and add some plugins.
Popular python code linter. Formerly called pep8.
IRC Bot. Minor fix.
Good keyboard-first web browser. Documentation tweaks.
Select rectangles, windows, or screens for screenshots and other tasks.
Document some things, fix a segfault.
Text based music visualizer.
Document some keyboard shortcuts.
Landing page for your emacs.
Document some things. Check back for some QoL fixes.
Tool to generate .ebuild files (for packaging software on gentoo) from Cargo crates (used for the Rust programming language).
Fix a link.
Static website generator.
Fix to RSS feed generation. Add way to force complete regeneration of the website.
Typed variant of Racket.
Add some more types to untyped racket bits.
§the racket website (2019)
Every site needs a favicon.
Documentation tweaks. Fix/report issue with GCC/GNU Make detection in 7.4.
Improve some documentation.
Contributing multiple improvements to the Alpine Ports project used to build the packages for Alpine Linux.
P.S. Alpine is pretty nice :)
Just a tiny patch to fix the documentation.