Pitchforks set to Stun

It’s just a month into the new year and we have our first controversy in the Linux community for 2021. In a recent update to Raspberry Pi OS, the official operating system for the diminuative computers, a new repository was added to the default install. This change means new and existing Raspberry Pi devices, running the officially maintained and blessed Operating System will check in with an additional software repository when updated, which will offer more software to the consumer.

On this occasion the update added a Microsoft repository to the Raspberry Pi defaults. This enables users to have an easy way to install some prominent developer focused software - VS Code. Code is very popular and is an optional Integrated Development Envronment for the new Pi Pico.

It’s common for traditional Linux distributions to have a set of default repositories, and perhaps some user-modifiable options to adjust the available new and updated software. Some of these distributions have guidelines which set expectations for what can and cannot be added to the base image in terms of repositories. Some are hard line - such as Fedora and elementary OS - that limit the out of the box experience to certain classes of Free and Open Source (FOSS) software. Others like Ubuntu and Zorin OS are more pragmatic, allowing the user to choose between FOSS and proprietary applications out of the box.

This is unlike the typical Microsoft and macOS experience where there is a central storefront, and the ability to go ‘off piste’ to get 3rd party software via direct download. There’s not (in the stock install) on those proprietary operating systems, a concept of additional repositories. This makes sense given the OS is proprietary anyway, there’s no real need to separate the proprietary applications from the FOSS ones. The user expectations are different.

A device from a hardware vendor, shipping with Microsoft Windows will often come pre-loaded with software to ‘enhance’ the user experience. That may be trial versions of software, update managers, power utilities or other applications and tools seen as ‘necessary’ by the device manufacturer or distributor. Usually there’s some level of financial exchange going on so the hardware vendor gets a kickback if the user updates to a paid subscription, or they make some revenue from advertising shown to the user.

Users of traditional Linux distributions which are digitally downloaded, or bought on DVD/USB have different expectations. Many don’t like the Microsoft or Apple model, but prefer control, and err on the side of privacy first. Other Linux users are ‘freedom lovers’ who prefer the FOSS model that Linux typically brings, with access to source code and a community of hackers & tweakers. They often like the power in their hands to modify the shipped software, add and remove to their taste and have total control over the bits on disk.

Not all Linux users are the same, however. Some users buy their computer hardware from tier-one vendors like Dell, HP & Lenovo with the Operating System pre-installed. Some of these ship with the ‘pure’ upstream software from the Linux distribution, identical or similar to what would happen if the user installed the OS themselves from a USB key. Some behave very like the Microsoft model though. Dell commonly ships Google Chrome on the Ubuntu pre-installed image to their customers. Google Chrome is a proprietary web browser which isn’t in the Ubuntu repositories due to the software license.

While people who roll their own install, and those who buy a Dell XPS and use the stock install are arguably both in the Linux community, they have wildly different expectations. Some are pragmatic, wanting to install whatever gets the job done, license be damned, where others will only install something if it can be built from source on their hardware. There’s an infinite scale between those positions, and all are valid.

The ‘community’ of Linux users has a bit of a problem. It’s not really a community at all. The Linux ‘community’ is a bunch of individuals who have an affinity for running the OS. But there’s a whole set of people who don’t self-identify as part of that community, because they’re just using the thing as a tool, like you’d use a Dremel. I’m not aware of “Dremel User Groups” but then it wouldn’t surprise me if they exist, and there are splinter groups who eschew the electric devices for more manual ones, probably.

Similarly there’s no real wider unified ‘Free Software’ community either. There’s the Popular People’s Front of FSF and the People’s Popular front of Open Source who believe fundamentally different things and target different users. It’s a giant sliding scale, like any community of meatbags.

The ‘Linux Community’ is really more like the Borg with a terrible 2G connection back to the Borg Cube, pulling in different directions, believing their instructions are utterly correct and serving the same Borg Queen.

So when the Raspberry Pi developers added a new repository containing proprietary software by default to the OS they recommend, some sections of the Linux Community freaked out. Many of those who have a historical dislike of Microsoft as a company, hate the very idea of them encroaching on the Linux world. Some developers have ragequit GitHub when the Microsoft acquisition went through, others mirrored their git repos elsewhere as a hedge if GitHub went “bad”. People will block Microsoft IP addresses in their router to prevent perceived data leaks. Some will concoct elaborate conspiracy theories involving back-room deals which must have happened for developers to accept Microsoft may have changed.

So for these people, the very idea that the Raspberry Pi foundation would add a Microsoft repository to the flagship Pi operating system was a red flag. On each apt update the Pi would now ‘ping’ a Microsoft owned webserver, revealing the IP address and thus existence of a Pi running Linux at that location. It’s reasonable to see how these people are upset, and want the change reverted, opt-in, and better documented, although that last one is a little late now the torches are burning brightly.

I get it, I used to feel similarly about Microsoft some years ago. Microsoft though, is a company of individuals. Companies change their leadership, they can be bought out, they switch direction to service the needs of their customer base, their shareholders or the market. That can result in positive or negative change. I personally think they’re going through a positive change, not perfect, but heading in a better direction.

But if I was a hardcore FOSS advcocate (I’m not, I’m a pragmatist), I’d likely be a bit aggrevied that this was added without my consent, on my computer. The thing is though, I’d be willing to bet the vast majority of the Pi users aren’t hardcore FOSS or indeed privacy advocates either. That doesn’t make it right, but it does explain why the Raspberry Pi foundation had no qualms about adding this. They’re probably pretty confident that the majority of their users flat out don’t care.

The Raspberry Pi foundation is all about education. They create computer designs, publish books, magazines, online tutorials to help young people learn to code and create. They make computing accessible. Should their mandate include education about online privacy and software licensing perhaps? Maybe, but right now that’s not a core part of their ethos, it’s not why they exist.

At a wild guess, I’d imagine the vast majority of people who use a Raspberry Pi for anything creative, coding, making are using Windows on their main computer. Some in the Linux ‘community’ would probably like to think that when someone gets a Pi that’s their permanent, irrevocable membership to the Linux Borg Club sorted for life, and all your devices from this point on will be FOSS only. That’s far from the case though.

People use the Pi alongside a Windows PC in school, or a mac in a makerspace. Obviously a bunch of Linux enthusiasts and developers bought Raspberry Pi’s too, but I suspect that isn’t a massive part of their market. Linux marketshare on the desktop globally is in the single-digit percentage, let’s not kid ourselves that among Pi users, the main computer is always Linux. Statistically, it likely isn’t. So those people are already “checking in” with Microsoft as part of their daily use on their main PC. They may indeed already use Microsoft VS Code, and enjoy doing so. Having an easy way for a ten year old kid to install their favourite IDE without friction seems like a neat idea to me.

I’ve seen plenty of breathless videos, articles and commentary online this week about the change. Maybe it could have been opt-in as some suggest, but that’s extra code to maintain. I don’t believe the team working on Raspberry Pi OS is huge, and they likely figured this was an easy uncontroversial change to make. Perhaps the Raspberry Pi foundation could have anticipated this backlash and communicated the change in a better way.

I’m somewhat torn on this. Having seen backlash when we’ve done things in Ubuntu in the past, communication has almost always been a failing in the strategy. That said, I don’t think the ‘Linux community’ are covering themselves in glory, the way they’re speculating and spinning this. Maybe the Raspberry Pi Foundation should have better documentation of the expectations and limitations of what Pi OS will do, and won’t. The lack of such a covenant doesn’t give them carte blanche, but it is their product. You can choose not to use it if you want.

In my mind, it partly boils down to this one thing - Raspberry Pi OS isn’t a traditional Linux distribution, stop thinking it is.