毎日

Projects

  1. Current projects

  2. On my radar

  3. Tried it!

Around the time I both left twitter and made this site, two things happened.

  1. I joined Mastodon.
  2. I had a lot of time and emotional energy and resources on hand that I did not have before because twitter was using them.

Things that I was sort of interested in were able to get more attention because of #2. And because of #1, I started stumbling across all kinds of projects (Pleroma, running servers on Rasberry Pi, Matrix, federation in general, etc.). With those two combined, I just started... building stuff. A lot of stuff.

Current Projects

This website!

  • I wanted a home on the internet to keep track of everything I'm doing and to build out a little corner for myself on something other than a corporate platform.
  • Things I'd like to try

    • This is more like a todo list than the others, since I've done pieces of it before. The first is making the site a progressive web app.
    • Add a proper little blog with an RSS feed.
    • Add links to other sites I like and, because I was lazy, links in general to all the things I mention but don't link to here!
  • Updates

    • This site is a PWA! Add it to your homescreen, read it offline after a visit, etc. etc.
    • This site has a blog, powered by Pleroma!

Pleroma

  • Pleroma is, like Mastodon, a sort-of twitter-ish implementation of the ActivityPub standard, the differences being 1. It uses Elixir and Vue 2. It runs on way less RAM 3. It implements a more traditional twitter front-end and 4. It is, generally, less (or more, depending on how you look at it) opinionated about various user-facing features.
  • I ran up to Fry's Electronics like a little kid and bought my first Raspberry Pi when I heard you could run Pleroma on it. As of writing this, my Pleroma instance is still going strong, running off of the aforementioned Raspberry Pi sitting on the back of my couch. I corrupted the hell out of the SD card this is installed on, however, and need to do a neater reinstall.
  • Things I'd like to try

    • Messing with Pleroma in general. I don't know Elixir, let alone Erlang, but it looks quite a bit like Ruby (just... functional) and I'd like to just tinker to get to know it.
    • An avatar bot. I made my profile picture on Pleroma a Rothko painting (Rothko is my favorite painter), and I'd like to make an avatar bot that rotates my avatar through a different Rothko painting each day.
  • Updates

    • I finally did that reinstall and it went great. On top of that, the pleroma instance at boshi.press now powers the blog page on this very website, which is itself powered by my very first NPM plugin.

gatsby-source-pleroma

  • My first NPM package! gatsby-source-pleroma is a Gatsby "source" plugin. These allow users to add just a few lines to a config file in order to pull data from an external source into Gatsby's internal query structure used for the static site build.
  • Because of my excitement with advancements in static site generators, but my absolute boredom with typing in markdown (he said, as he excitedly typed in a large markdown doc), I had a wild idea to use the Pleroma instance running on my raspberry pi as a de facto headless CMS for this site's blog. Et voila!
  • Things i'd like to try

    • Right now, the plugin only pulls in the latest 20 posts. I'd like to explore both expanding that number (the available 'count' param doesn't actually work), and paginating via other means within the source itself.
    • Attachments pulled in from the API are just external url's with mimetypes and maybe an id. For ideal static site generation, I'd like to download the actual image file and let Gatsby's excellent image transforming ecosystem go to work generating thumbnails and allowing for easy blur-ups.

Mastodon

  • I am using Digital Ocean to host an Ubuntu instance (I prefer straight Debian these days but this instance pre-dates that preference!), on which I've installed the main Mastodon release.
  • Things I'd like to try

    • A fork of Mastodon, glitch, that has applied a bunch of neat little features.
    • Maintaining my own fork, because for once I actually am really familiar with the tech stack and would love to tinker with the Rails code on my own instance.

Miniflux

  • [From when this was 'on my radar'] I'm off social media that I don't control, so I'm also back in control of what I read on the internet. RSS is a big part of that, and miniflux looks like a neat, lightweight RSS reader that I could get in and modify if I needed to. The yearly hosting ($15) is a pretty good deal considering I'd probably have to shell out 5 bucks a month myself to host it.
  • I took the leap on miniflux and it's not costing 5 bucks a month: I popped it into my Raspberry Pi after I reformated it due to a corrupt /bin folder. It runs on so little RAM than I ended up just reinstalling Pleroma next to it!
  • The scraping capabilities and automatic feed detection given a URL are very clever and come in handy on any website that wasn't designed by a troll.

Mail server

  • As with everything else, I woke up one Sunday, saw a post on Mastodon about crappy mail providers, and ended up down a rabbit hole about hosting my own mail server. Over the course of a day, it was up and running (austin @ the domain you're on right now).
  • This was probably the most substantial deep-dive into a system configuration I've had to do. Postfix was "easy" to install and such (Ubuntu makes the postfix-dovecot combo really easy to install), but implementing the configuration and understanding the configuration all before having a working mail server was really intimidating.
  • I used an old (4 years old) arstechnica guide for the beginning of my setup and then as things starting crashing and burning around me I had to pick it up piecemeal from that. I'm still surprised I got DKIM working with all of the hiccups I had.
  • I went with Rainloop for my webmail client. It was alarmingly easy to install once a few nginx things got sorted (it'd be nice if the people who made it had a modicum of documentation).
  • Things I'd like to try

    • Getting my damn reverse DNS working. Digital Ocean is giving me the run-around and it's completely out of my hands. Until that's sorted out I'm spam to a lot of mail servers.

On my radar

LineageOS

  • I didn't have a smartphone until 2016, and when I got a job developing mobile apps, I upgraded to a fancy Google Pixel. I'm... not so hot on Google anymore, but would rather just ride out my current phone, so popping an open source OS on there feels like a huge improvement.

Tried it!

Matrix

  • Matrix is a federated chat protocol, and I'm currently running its back-end implementation, synapse, on a Debian Digital Ocean droplet. I'm sick of zipping around all kinds of different apps mining my data or being generally unreliable, so an open-source chat option where I can run my own server is a good solution.

  • Why I'm not using it

    • Setting up Matrix was fine, and Riot is a pretty good interface, but I was barely using it at all and thought that the bar to get friends to sign up was wayyyy too high compared to every other available option. While a lot of those options are non-ideal, I live in the real world and only have the privilege of jumping ship on so many services. I repurposed this droplet for my mail server.

Pi-hole

  • Given my newfound love of Raspberry Pi's, and a reasonable distaste for tracking and ad crap pouring into my network, I'd love to try popping a Pi-hole onto my network.
  • Why I'm not using it

    • If I lived by myself, I would probably buy a pi and dedicate it to this, expanding it to ban literally EVERY Facebook endpoint from fetching anything on my network. But, I live with someone who frequents blogs that make use of affiliate links and who till uses Facebook, so it's not my call (and only so much whitelisting is actually useful or realistic). It was a neat service, though.