1Password and Hyprland

    I've recently been trying out the Hyprland on my Fedora-based ThinkPad. It's a breath of fresh air next to macOS, combining the fast functionality I've come to expect of a tiling window manager with good looks and elegant animations.

    One of the challenges I've found to be consistent across tiling window managers however, is how they handle apps like 1Password that offer more transient experiences. Since traditional window managers don't differentiate between tiled and more transient floating windows, you're left to add these annotations for yourself.

    Fortunately, Hyprland makes it easy to add window rules that instruct it to treat certain windows specially. For example, I use the following set of window rules:

    windowrulev2 = float, title:(1Password)
    windowrulev2 = size 70% 70%, title:(1Password)
    windowrulev2 = center, title:(1Password)

    This ensures that the 1Password window (specifically any window titled '1Password') will open centered, 70% of my screen size, and floating above all other windows, making it minimally disruptive when I unlock 1Password to log into a website.

    Checking a password no longer disrupts my window layout

    To round things out, I've also added a key-binding to let me quickly launch 1Password using Super+\, replicating the workflow I'm familiar with from macOS:

    bind = $mainMod, code:51, exec, 1password

    MiSTer Switches

    Going through all my past projects, I discovered I'd never finished my acrylic MiSter case–I'd put everything together but didn't take the time to wire up the three case switches, leaving me without the crucial Reset and OSD buttons (I've still not found a use for the User button).

    Armed with a new-found desire to finish up my projects and free myself up to do other things, I ordered the appropriate JST connectors from Mouser and set about soldering everything up.

    Finally fully functional, my MiSTer case with all the switches wired up

    Overall, I'm pretty pleased with how the case turned out. It's been a pleasure to go back to it after all this time and get to enjoy some of the design choices I made–I love how it shows off the internals of the MiSTer. Of course, there's a bunch of things I'd change1, but it's nice to call it 'finished', at least for a little while.

    1. Not least reducing the number of port cutouts. 

    Letting Go

    Spherical Display and Locate

    I've collected a large number of hardware and software projects over the past few years. These served as wonderful distractions during the pandemic but now feel like they're stopping me from completing anything–especially when the software components often require on-going effort to simply keep up with operating system and language updates.

    With that in mind, I've decided to very consciously stop working on a few projects and limit the scope of others, starting with Spherical Display and Locate.

    Spherical Display

    The project never made it out of the prototype phase

    My attempt at a spherical persistence-of-vision display, this now feels like a textbook sunk cost fallacy–I have invested a lot of time in designing and assembling the mechanics of the display yet I find myself a long way from even a working demo. The idea and approach feels sound and I've learned a lot on the way, but it's clear there remains a huge amount of work required to produce the kind of robust display I would need to be able to take it to festivals. With that in mind (and as cool as the idea might be), I'm putting it on indefinite hold and archiving the GitHub project to let me focus on other things.


    Locate is macOS app that lets you add URLs to a map and tries to automatically detect a suitable location for web pages wherever possible. While I built Locate to serve a need when we were apartment hunting, it was primarily intended as a proof of concept; a way to test out ideas that I hope to roll into Bookmarks in the future. Instead of investing effort keeping Locate building, I'm going to archive the project and focus my efforts on adding the location-based view I'd always planned into Bookmarks.