Raspberry Pi OS Added a Microsoft Repository ... and why it's Not a problem

There's been a tempest in the Raspberry Pi community in the last week about the addition of a Microsoft repository to the Raspberry Pi OS default repositories. Take a look at https://hothardware.com/news/raspberry-pi-microsoft-repository-phones-home-added-pi-os for a write-up that buys into the community outrage without stopping to think about the details. I've never visited hothardware.com much, but after reading this I'll probably read them less. They posted an article that's either deliberately inflammatory or negligent in its research. It's hard to know which it was, but it doesn't matter as either way they're showing signs of becoming the Fox News of tech reporting.

And now it's my turn to put up or shut up. It's easy and often fun to write critical reviews: "OMG, they added Microsoft to my open source Raspberry Pi! Eben Upton has turned to the Devil!!" And then think "that was easy, I'm gonna drop the mic now." It's easy, but was it fair? Sometimes you have to look past the easy righteous indignation, to consider what's really going on. "Free as in free beer" is easy: grab your free OS and go. "Free as in free speech" is hard work: don't let a loud minority affect your thinking without analyzing what's being said, and support the community that's given you quality software for free as best you can.

The Raspberry Pi is made and sold by the Raspberry Pi Foundation. Their mission has always been to make it easy for people to learn about computers and programming. By November 2020, they had sold 36 million units - and this success has obscured their mission in the minds of their users, as those multi-millions of units are being used:

  • as media servers
  • as generic hardware controllers (those GPIO pins are pretty amazing)
  • as retro-gaming boxes
  • as the guidance system of robots
  • as beer brewing temperature controllers
  • as general-purpose headless servers
  • as thousands more things

This has led many people to forget the Foundation's mission. And from this comes the attitude "This is my computer, I know what I want it to do." And that's not wrong: but the mental leap from there to "Eben Upton and/or the Raspberry Pi Foundation has betrayed us" by some members of the community is a questionable one.

Yes, they inserted a Microsoft repository into your Raspberry Pi. The repository in question is for VSCode. VSCode is free and open source software. Please read that again: it is free and open source. Microsoft is providing a service to the community. And over the past five years, VSCode has developed an amazing reputation as one of the best IDEs available - in fact, possibly the best ( https://en.wikipedia.org/wiki/Visual_Studio_Code#Reception ). Me, I'm still a NeoVim user - but I respect what they've achieved. The Raspberry Pi Foundation wants VSCode to be available to you. I'm having trouble seeing that as bad.

"But it phones home!" I hear someone cry. Yes, yes it does. Have you ever used VirtualBox? If you've installed that, your computer is phoning home to Oracle. These are big companies, and many of us in the open source community don't like them. But in both cases (VSCode and VirtualBox), they're offering us an incredible resource, entirely free of charge, and complete with the source code. Perhaps you're horrified at the information they're gathering from you. Think about what they get: they get your IP, some basic description of what OS you use, and the frequency with which you update your repositories. I haven't researched this detail, but I don't think they get much more than that. If you've ever used a repository mirror (ie. not Debian's/Fedora's/whoever's own server, but a mirror hosted at a university or corporation), you're giving the mirror host this information too. You're even giving that information to Debian or RedHat or whoever created your distribution. And let's not even discuss what your ISP knows about you.

Did the Raspberry Pi Foundation handle this well? Not exactly. They're following their mission, yes. I think they should have put the new repo only on new installs, not pushed it out to existing ones. That behaviour is surprising: I'm a big fan of the principle of least astonishment. Once an installation is done, new repos are normally added only by the hardware owner, and not behaving that way was the Foundation's greatest error. They also shouldn't have pushed the repo to Raspberry Pi OS Lite at all (unless Microsoft is now providing a non-GUI version of their software because Lite doesn't have a GUI). And lastly, they could have made a more thorough explanation when it became apparent that a part of the community had got upset. But for the most part, I think this at worst a minor mis-step on their part.

With all of that said, I'd like to talk about another aspect of this incident that many people forget.

This storm of criticism is coming from a user base that's been given this product for free. Yes, we paid for our Raspberry Pis - but that's all we paid for. We got a good piece of hardware for our money. Raspberry Pi OS is free, and there are other choices. Raspberry Pi OS is meant, first and foremost, to bring programming to the masses: use another Pi OS if that's not for you.

Stop and think about managing an open source project. I can guess what it's like to run one: the people who are running those projects aren't doing it for money. They're doing it for love. Or for their community, or both. And what do they get for all the hard work they put in? Again, not usually money. Occasional thanks ... and complaints and demands that outweigh the thanks by a 10:1 ratio (yup, I'm totally guessing about that). Worse: complaints and demands that request/require mutually exclusive features. What can you do in the face of an onslaught of demands by a user-base that feels entitled to tell you what to do, requesting an orthogonal and impossible feature-set? Follow your own vision. And realize that in the end the "market" (which is represented by how many people use your product) is going to tell you whether you're succeeding or not. Like any product, the Raspberry Pi users who are complaining about this change are a vocal minority: my guess is that it's a tiny minority. The big question - that's impossible to answer - is "how do the majority of PiOS users feel about this change?" Upton is guessing they don't care or may even appreciate it. Eventually "the market" will tell him if he's right.

I admit that Upton's case is unusual in that he's salaried, but this still started as a project he did because he believed in it, not because he expected to get rich. But the product we're paying for is the hardware - which has proven very sturdy and reliable. It's up to the user what to install on it. Choose the vision you like the best, or that offends you least: there are a number of distributions that run on the Raspberry Pi. And thank someone who's giving away free software today, it's good for your soul and theirs: see this older, related blog post: "Thanks for Open Source."