Drew DeVault's Blog

I'm going to work full-time on free software

Sorry for posting two articles so close to each other - but this is important! As I’m certain many of you know, I maintain a large collection of free software projects, including sway, wlroots, sr.ht, scdoc, aerc, and many, many more. I contribute to more still, working on projects like Alpine Linux, mrsh, musl libc, and anything else I can. Until now, I’ve been working on these in my spare time, but just under a year ago I wrote “The path to sustainably working on FOSS full-time” laying out my future plans. Today I’m proud to tell you that, thanks to everyone’s support, I’ll be working on free software full-time starting in February.

Backups & redundancy at sr.ht

sr.ht1 is 100% open source and I encourage people to install it on their own infrastructure, especially if they’ll be sending patches upstream. However, I am equally thrilled to host sr.ht for you on the “official” instance, and most users find this useful because the maintenance burden is non-trivial. Today I’ll give you an idea of what your subscription fee pays for. In this first post on ops at sr.ht, I’ll talk about backups and redundancy. In future posts, I’ll talk about security, high availability, automation, and more.

  1. sr.ht is a software project hosting website, with git hosting, ticket tracking, continuous integration, mailing lists, and more. Try it out! 

Patches welcome

Happy new year! This is always a weird “holiday” for me, since all of the fun happened last night. Today is just kind of… I guess a chance for everyone to sober up before work tomorrow? It does tend to invite a sense of reflection and is the ideal time to plan for the year ahead. One of my goals in 2019 is to change more people’s thinking about the open source community and what it means to count among their number.

Anatomy of a shell

I’ve been contributing where I can to Simon Ser’s mrsh project, a work-in-progress strictly POSIX shell implementation. I worked on some small mrsh features during my holiday travels and it’s in the forefront of my mind, so I’d like to share some of its design details with you.

Porting Alpine Linux to RISC-V

I recently received my HiFive Unleashed, after several excruciating months of waiting, and it’s incredibly cool. For those unaware, the HiFive Unleashed is the first consumer-facing Linux-capable RISC-V hardware. For anyone who’s still lost, RISC-V is an open, royalty-free instruction set architecture, and the HiFive is an open CPU implementing it. And here it is on my dining room table:

How to abandon a FLOSS project

It’s no secret that maintaining free and open source software is often a burdensome and thankless job. I empathise with maintainers who lost interest in a project, became demotivated by the endless demands of users, or are no longer blessed with enough free time. Whatever the reason, FLOSS work is volunteer work, and you’re free to stop volunteering at any time.

sr.ht, the hacker's forge, now open for public alpha

I’m happy to announce today that I’m opening sr.ht (pronounced “sir hat”, or any other way you want) to the general public for the remainder of the alpha period. Though it’s missing some of the features which will be available when it’s completed, sr.ht today represents a very capable software forge which is already serving the needs of many projects in the free & open source software community. If you’re familiar with the project and ready to register your account, you can head straight to the sign up page.

It's not okay to pretend your software is open source

Unfortunately, I find myself writing about the Commons Clause again. For those not in the know, the Commons Clause is an addendum designed to be added to free software licenses. The restrictions it imposes (you cannot sell the software) makes the resulting franken-license nonfree. I’m not going to link to the project which brought this subject back into the discussion - they don’t deserve the referral - but the continued proliferation of software using the Commons Clause gives me reason to speak out against it some more.

How does virtual memory work?

Virtual memory is an essential part of your computer, and has been for several decades. In my earlier article on pointers, I compared memory to a giant array of octets (bytes), and explained some of the abstractions we make on top of that. In actual fact, memory is more complicated than a flat array of bytes, and in this article I’ll explain how.

Sway 1.0-beta.1 release highlights

1,173 days ago, I wrote sway’s initial commit, and 8,269 commits followed1, written by hundreds of contributors. What started as a side project became the most fully featured and stable Wayland desktop available, and drove the development of what has become the dominant solution for building Wayland compositors - wlroots, now the basis of 10 Wayland compositors.

  1. 5,044 sway commits and 3,225 wlroots commits at the time of writing.