PROJET AUTOBLOG


Free Software Foundation Recent blog posts

source: Free Software Foundation Recent blog posts

⇐ retour index

Alyssa Rosenzweig's summer internship wrap up

lundi 5 novembre 2018 à 16:51

As you already know if you read my introductory blog post, over the summer, I interned with the Free Software Foundation tech team. A free software enthusiast, I joined the FSF in order to grow my appreciation, to work on interesting free software projects for which I normally would not have the opportunity, and to meet other free software supporters. My dreams were exceeded!

For my first project of the internship, I researched single-board computers in order to update the FSF's page detailing the freedom status of various single-board computers -- the page needed updating to reflect how software freedom continues to advance. You can read about my updates here.

For my second project, I was tasked with researching out-of-band remote server management. Like many organizations, the FSF hosts a number of servers, both on premises controlled by the FSF as well as external data centers. However, as anyone who has futzed with servers knows, computers are fickle. Even the most robust setup is prone to breaking once in a while... and sometimes those breakages can hang the server or prevent it from booting. Cue comic of a sysadmin asking, "Did you try turning it off and on again?"

The in-vogue free software solution is OpenBMC, a free software implementation of the IPMI remote administration stack. Unfortunately, due to the diversity of server boards we use, OpenBMC risked becoming a maintenance burden in and of itself.

Eventually, after a handful of whiteboard sessions with the tech team, I thought back on my work with ARM single-board computers. I realized a solution: rather than using a specialized BMC chip attached to the server motherboard, we could use an external single-board computer running GNU/Linux, remotely accessible over the Internet, connected to the various peripherals of interest. We settled on using a BeagleBone Black, which can run without proprietary blobs, connected to each server's serial port and power pins via USB-controlled relays. Finally, I wrapped up this system into a high-level utility, libremanage, and we were on our way.

My third and final project was still more ambitious. As you may know from my work with Panfrost, the free software driver for modern Mali GPUs, I enjoy liberating critical proprietary software by decoding its internal protocols and reimplementing them in freedom. So, we looked around for latent proprietary software involved with FSF operations. Although we eat our own dog food, there was one proprietary system that could not be ignored: PayPal, which recently began requiring nonfree JavaScript. Pah. Enter Pagamigo. (In Calculus, this is formally known as a p-series.)

Pagamigo liberates the proprietary software required to donate to organizations like the FSF or the Debian Project via PayPal. Soon, the FSF Web pages that take online payments will include instructions for using Pagamigo.

Unfortunately, everything good must come to an end. My summer classes finished; I have now returned home and am busy with fall semester classes. Still, although my internship with the FSF has ended, the lessons I have learned about free software will stay with me.