Bonum Certa Men Certa

Microsoft GNU-Hub (Part 1)

Guest post by figosdev

GNUHub

Summary: Any project of GNU going into GitHub is making it seem or feel acceptable for GNU projects to be 'outsourced' to Microsoft; so what does it mean to have some of GNU inside the proprietary software jail of Microsoft? The first part deals with GNU projects that have GitHub dependencies.

Microsoft's takeover of free software is fascinating, but where can the line be drawn? I treat this as both a hypothetical question and a practical one, because I've spent years boycotting Microsoft and ever since they purchased GitHub, I've noticed that's become next to impossible. "A source repo on every desk..."



Originally I thought perhaps we could boycott projects that are based on GitHub, since hey -- there's some cool stuff there but it's just some applications, right? Then I noticed full programming languages and libraries. Oh... Node.js, that sucks. CPython, oh well, there are other implementations. Perl, hmm...

Then I noticed several GNU/Linux distros volunteer to be captured by Microsoft. I mean I'm not going to be using those -- oh, it's a lot. I've already gone to the trouble of figuring out that out of 275 active distros on DistroWatch, if you really want to boycott GitHub you're down to at most, 33. No, not 33 percent -- 33 distros, including Tiny Core! Not including Trisquel. Trisquel is captive to an anti-GPL monopoly via its stupid, stupid "init" system. (Cuckoo OS, more like).

But we can always build our own distro, Eh? So let's take apart Tiny Core, I figured -- It's incredibly modular, it should be a piece of cake to remove the parts controlled by Microsoft, right?

"Microsoft has Gtk yoked by something glib2 needs."The kernel isn't libre, I know. I've wanted a linux-libre kernel (or at least a Debian blob-free kernel) for TC for ages. Maybe the blobs are in tcz packages. But I think if TC had a blob-free kernel it would be advertised as such.

I once hoped Alex Oliva would consider making a libre kernel for TC, but that's getting ahead of ourselves a bit. I've never been interested in maintaining a kernel, I only got into remixing distros because I wasn't paying attention.

I created scripts a year or two ago to remix Tiny Core and create tcz packages. They're basically squashfs files, which TC "installs" by mounting them. Ok, that's no big deal. Oh, development of squashfs-tools has moved to GitHub. Lovely. But the kernel portion is still developed where it should be. I take this as meaning that the Linux kernel can mount tcz, it just can't produce them. Ok, I guess we can use files that are mkfs'd to ext3 instead. That's a GitHub-free solution, we can worry about compressing them later.

What we really need to do is figure out what to remove, and that's going to take some research. I've already started figuring out which TC packages can be dropped.

Those red boxes are packages for things based on GitHub, but the gold boxes are packages that need things like libffi which is based on GitHub. Just so you know, libffi is pulled in by glib2. The GUI apps (Gtk at least) need libffi, so that's at least one serious "Gotcha" already. Microsoft has Gtk yoked by something glib2 needs.

I don't always trust Debian dependencies, but they're certainly illustrative -- here's the page for glib2: https://packages.debian.org/buster/libglib2.0-0 it needs libffi6. Oh, fun -- it also needs zlib1g. This is needed for loading png graphics, so anywhere you find a png, you need GitHub. No, this isn't because of glib2. Zlib1g is also developed on GitHub, and is needed along with libpng for loading or saving png graphics.

In the past, Microsoft has killed off lots of its acquisitions to hurt competitors, so the scenario I'm assuming is one where it decides to start killing (or taking over) free software projects it doesn't care about.

"There ought to be an exodus."When Oracle tried this with OpenOffice, the developers simply left and forked it. That's exactly what they should do, but in this instance, developers have loads of warning. And they're just sitting on Microsoft's repos like it's no big deal, letting their projects become further and further entrenched. I'm well aware of the fact that not everybody who develops on GitHub actually cares about software freedom. That's another reason not to develop there.

So imagine Microsoft forcing several such forks at the same time. Build systems for distros everywhere would be thrown into disarray. It's not that the scenario will necessarily be worst-case, but I expect Microsoft intends to get their money's worth. There ought to be an exodus.

If we are trying to escape, at least we can figure out where free software has its foot caught in a proverbial bear trap.

Libffi? Not good. Zlib1g and png graphics? Whoa, someone fix that. Lately I'm saving screencaps with JPEG in protest, which is certainly not ideal. The GIF patent has expired, but it only does 8-bit colour. I guess there's still X PixMap, right? We can do 24-bit graphics with xpm.xz (XZ-utils are not GitHub-based. I think they originated with a couple of Slackware developers.)

I've made my way from Tiny Core to Trisquel looking for GitHub vulnerable projects, and finally from Trisquel directly to the GNU project itself. It isn't good, folks.

This is Part 1, implying that there will be a Part 2 if not a Part 3, but I've only looked through a fraction of the GNU projects and here's what I've already found:

The GNU project uses Perl -- a lot!

"The GNU project uses Perl — a lot!"I don't compile a lot of programs, personally. I've spent hours editing and recompiling one C++ program, I've edited and compiled one minor C program, mostly I work with scripting languages (though I do use source-to-source compilers a lot).

If there are obvious mistakes or less obvious misconceptions I'm presenting when I talk about some of the details, I hope you'll mention it in the comments. I'm sure there will be a few differences of opinion as well.

But let's start with Automake. Automake is used for a large number of GNU packages -- it depends on Perl. Perl is on GitHub. That's not good, hackers -- that's not good.

Many GNU sources have a file called "missing" which I believe is Automake-related. This file often informs the user that they will need Perl (and links to perl.org so they can get it) and it links to flex on GitHub. There's another one. Of course some of the GNU sources are so old they still link to the flex on SourceForge. Here's a fun fact: GNU Savannah is a fork of SourceForge from when it was still free software.

Flex, lex, Yacc and Bison are all related -- lex is a lexer, flex is an alternative, Bison is an alternative to Yacc and Bison often uses flex to get tokens. The problem is that flex is GitHub-based. This is not good. Plus, Automake also wants flex. So whatever sort of creek we are in, our paddle is slowly transforming into a tiny little stick.

A lot of GNU sources include texinfo files. Texinfo seems to need Perl as well.

VERA includes a Perl script, vc-dwim is a Perl script (missing wants flex anyway) WB B-tree Associative Arrays seems to include C Sharp code (so you'll need Mono, which the FSF warned against and which is based on GitHub) XBoard uses png files, Xnee includes pnee which uses Gtk and png.

As mentioned, Gtk brings in glib2 which brings in libffi, which is based on GitHub -- while Gtk2 and Gtk3 are not based on GitHub, if you're looking for Gtk1, GitHub is where it appears to be.

Some of these old GNU programs appear to use Gtk1, so whether each one is GitHub-based because of libffi or GitHub-based because of Gtk1, is a detail I've mostly ignored.

Units includes units_cur which is a Python script and texi2man which is a Perl script.

"Texinfo seems to need Perl as well."The thing about Python is that CPython is the most often-used implementation, including in the GNU project, and CPython is based on Microsoft GitHub. PyPy is a great drop-in replacement, though it doesn't work on everything.

You can't always tell when you find yourself in front of a Python script, whether it needs CPython (thus GitHub) or not. So Python is worth watching for, but only proves to be a GitHub hostage sometimes.

Taylor UUCP uses Perl, Tex for the impatient uses png files in docs, Texinfo uses Perl, Hurd includes gitlog-to-changelog which calls Perl, GNU Readline includes texi2html and texti2dvi, which use Perl.

GNU Shepherd has png files in /doc and perl and flex in missing. Gnu Telecom has a png file. Sather has a Perl script called ps2gif. Spread Sheet Widget uses Gtk, SQLtutor has pngs in the docs. Swbis appears to need Python and python-devel.

Queue is dumped in favour of GNU Parallel, which uses Perl. Ring redirects to GNU Jami, which uses Python.

PythonWebkit obviously needs Python; pyconfigure may get away with PyPy as a replacement. PSPP uses Perl and png files with a GUI in Gtk. Proxyknife has Perl code in the docs and in configure.

Doxyfile is one to watch for in the sources. I believe this is created by Doxygen, which is used to created documentation from source code. Doxygen is based on GitHub.

PowerGuru has a png and lots of Python code, oleo has png in docs and uses plotutils, which support png. Ocrad has a png in /archive. Occhiolino uses Python. MetaHTML uses perl.h.

Mac Changer hasn't updated in years, but like GNU Radio is a GNU project that's based on GitHub -- really not good. I can't figure out why GNU Radio hasn't tried to move though. That still gets worked on, unlike Mac Changer.

GNU LibreJS, a tool I cheered on for ages waiting for it to be created, uses Jasmine, a Javascript library which is based on GitHub: http://git.savannah.gnu.org/cgit/librejs.git/tree/build.sh

In fact build.sh downloads it directly from Microsoft, which I think shows a bit too much trust given that this plugin goes directly into GNU IceCat:

JASMINE_URL="https://GitHub.com/jasmine/jasmine/releases/download/v$JASMINE_VER/jasmine-standalone-$JASMINE_VER.zip" curl -L -o "$JASMINE_LIB.zip" "$JASMINE_URL" && unzip -d test/ $JASMINE_LIB.zip lib/**

We've all done something like this, but this is exactly where it shouldn't be done.

Make also seems to need Perl, it may or may not need Python.

"The FSF already warns people against non-free repos such as GitHub. While self-hosting is certainly better, many people won't and my advice to them is at least choose a non-profit organisation for hosting their code."This only covers a portion of the GNU project, but let's tally up what needs to happen for the GNU Project to not rely so heavily on the good will of its most dedicated foe:

1. Fork or make an official GNU mirror of Perl. If Perl goes, GNU is just about done.

2. The same applies for zlib1g as well. This library was invented and/or promoted specifically to avoid GIF-related patent traps! Now it's controlled by the world's second-biggest patent troll (the other sponsors the FSF. Great.)

3. Figure out libffi. I can't tell you more, I only know it helps things like Python use things like ctypes ("foreign functions").

4. Start using PyPy more, when possible. CPython is a trap. Note that PyPy has some major limitations. I'm very fond of it, any limitation it has I'm hoping for the best.

5. Write something justifying support of Mono in WB B-tree Associative Arrays. I would suggest removing that part of the code, but that seems unlikely.

6. That LibreJS code could be fixed today. At least mirror Jasmine in the LibreJS tree.

7. The FSF already warns people against non-free repos such as GitHub. While self-hosting is certainly better, many people won't and my advice to them is at least choose a non-profit organisation for hosting their code.

Gitea is also developed on GitHub, so it's a bit odd that they're touting it as an alternative. If it's an alternative, why not move Gitea off GitHub then? (at least move it to GitLab).

I never did trust Google Code, of course. For-Profit code repos technically have the same problem that GitHub has: they can be bought just like GitHub. Non-profits have to be infiltrated like the FSF or FSFE instead, which is harder.

"What's lacking now is leadership, and though I think it would take more than putting Stallman in charge again (which is the right thing to do as the efforts to remove him were dishonest and corrupt, plus it would probably help) there doesn't seem to be anybody who is doing a better job."A decentralised, peer-to-peer means of hosting would be ideal, though currently the main project I know of related to hosting code that way is through feneas.org, which I already associate with the typical trend of Codes-of-Censorship (along with a "FOSS" manifesto which combined with their Code of Conduct is ultimately going to lead to a hardline, de facto "be nice to the Open Shills" policy. It's not like there aren't precedents.

Don't get me wrong, so far the software looks good. But you can say the same for the GNU Project.

The importance of leaving GitHub is really not stressed enough by what's left of the Free Software Foundation.

What's lacking now is leadership, and though I think it would take more than putting Stallman in charge again (which is the right thing to do as the efforts to remove him were dishonest and corrupt, plus it would probably help) there doesn't seem to be anybody who is doing a better job.

Unless "better" means "bigger events funded by Microsoft and Google". No thanks, the Linux Foundation was doing that already, and it didn't help at all.

Long live rms, and happy hacking.

Licence: Creative Commons CC0 1.0 (public domain)

Not including the code snippet, which is from http://git.savannah.gnu.org/cgit/librejs.git/tree/build.sh

And if this article uses a parody of the GitHub logo based on the GNU head, I almost certainly used this one from Wikipedia.

Comments

Recent Techrights' Posts

The Last 'Dilberts' or Some of the Last Salvaged (Comic Strips Which Disappeared Shortly After They Had Been Published)
Around the time the creator of Dilbert went silent he published some strips mocking TikTok and usage of it
IBM Paying the Price for Treating Workers Badly and Discarding Real Talent (Because It's "Expensive")
IBM is dead man walking
Projection Tactics - Part III: Silencing Inconvenient Voices Online
If X gets banned in the UK, it'll be hard to see what the spouse says in public
Reminder That Red Hat Enterprise Linux (RHEL) Is Not Free, And It's Because of IBM
software freedom just 'gets in the way'
Under IBM, in Order to Game the Stock Market, Red Hat Resorted to Boosting the Biggest Ponzi Scheme in Human History
This is what IBM turned Red Hat into
What Will Happen to GAFAM After the US Defaults Rather Than Bails Out the Market?
Or tries to topple every government that doesn't play by its rules?
EPO People Power - Part XXXIV - Bad Optics for the European Union (for Failing to Act and Tolerating Cocaine Use in Europe's Second-Largest Institution)
There are principles in laws which tie awareness with complicity
 
Still Condoning Child Labour and Exploiting Unpaid Children Developers as PR Props (to Raise Monopoly Money)
These people lack morals. So they project.
"Security, AI or Quantum" on "the IBM Titanic"
Who's RMS?
Hours Ago The Register MS Published Microsoft Windows SPAM "Sponsored by Intel." The Fake 'Article' Says "AI" 34 Times.
The Register MS isn't a serious online newspaper
EPO People Power - Part XXXV - Where Else Will Corruption and Substance Abuse be Tolerated?
We need to raise standards
Status and Capital
People who do a lot are too busy to boast about it and wear fancy garments
Turbulence Ahead
I last rebooted my laptop in 2023
Google News Rewards Plagiarism With LLMs (About Linux, Too)
Google is in the slop business now
Links 14/01/2026: Failing Economy and Conquest Abroad as a Distraction From Domestic Woes
Links for the day
Gemini Links 14/01/2026: The Ephemerality of Our Digital Lives and "Summer of Upgrades"
Links for the day
Outsourcing on Microsoft's Agenda, Offshoring Also
"In some cases, India hiring is poised to replace certain roles previously based in the U.S."
Links 13/01/2026: 'Dilbert' creator Scott Adams Passes Away With Cancer, Ban on X/Twitter Considered for CSAM Profiteering
Links for the day
The Goal is Software Freedom for All
Anything to do with "Linux Foundation" is timewasting
Revision handed Microsoft the keys to the distortion of the past/history
This isn't the first time The Register MS rewrites computing history in Microsoft's favour, as we pointed out several times in past years
EPO's Central Staff Committee is Now Redacting (Self-Censoring) Due to Threats From the EPO "Mafia"
"On the agenda: salary adjustment procedure for 2025 (as of January 2026)"
"AI" (Slop) 'Demand' Isn't Growing, It's Fake, It's a Pyramid Scheme
They try to resort to 'creative' accounting (fraudulent schemes like circular financing)
Difficult Times at IBM and Microsoft Ahead of Mass Layoffs (Probably Before This Month's Results Unless Postponed to 'Prove' Rumours 'Wrong')
IBM and Microsoft used to be tech giants. Nowadays they mostly pretend by pumping up their stock and buying back their own shares.
Canonical: Make Ubuntu Bloated (Debian With Snaps), Then Sell the 'Debloated' Version for a Fee
If people want a light distro, then they ought not pay Canonical but instead choose a light (by design) GNU/Linux distro
People Don't Want "Just Enough", They'll Look for Quality
That's why slopfarms will go away or become inactive
Gemini Links 14/01/2026: 3D and Tiny Traffic Lights Pack
Links for the day
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Tuesday, January 13, 2026
IRC logs for Tuesday, January 13, 2026
Slop Waning Whilst Originals Perish
Slop is way past its "prime"
XBox's 'Major Nelson' Loses His Job Again, This Time in a Microsoft Mono Pusher
Microsoft hasn't much of a future in gaming. XBox's business is in rapid decline and people who push Mono to game developers are the same
Links 13/01/2026: Russia Weaponises Weather Against Civilians, Beijing-Controlled HK Attacks Legal Team of Besieged Critics
Links for the day
Gemini Links 13/01/2026: Loss of Desire to Produce, Individual Consumption
Links for the day
Shobhit Varshney From IBM Pushing Slop at Large Bank, Another McDonald's Waiting to Happen?
How long can they get away with phony narratives like "replaced by AI"?
Links 13/01/2026: Ubisoft Layoffs, "India IT In Shambles", and Microsoft Chatbot Killing People
Links for the day
IBM is Not a Leftist Company, the "I" Stands for Imperialism, and Poo Floats to the Top
Remember that AK is military from both sides of his family
Links 13/01/2026: More Mass Layoffs in GAFAM, Catching Up With Political News of Early January
Links for the day
Freedom of Speech in the UK (or Freedom of the Press/Expression) and Protection From Adversaries
undressing people without consent and in very bad taste is not "speech"
Ending the Status Quo at the European Patent Office (EPO) This Year
Things will continue to get worse as long as the "Digital Majority" stays silent and/or passive
Greenland Ought to Move to GNU/Linux, Not Apple
GNU/Linux at 4%
So When Will British Politicians, Police, Government Departments Quit Twitter (X.com)?
They sure bring constituents there (by being there)
If You Care About Freedom, Don't Follow IBM Red Hat (Like Microsoft Novell 20 Years Ago)
IBM Red Hat and Microsoft don't seem to compete
IBM Red Hat Does Not Compete With Microsoft, It's a Microsoft Reseller
even if employees of Red Hat dislike and distrust Microsoft
Red Hat Layoffs, Even of "AI" Staff in India
This is how companies die
LLM Slop Isn't Replacing Online News, It's Just a Pest That's Gradually Going Away as Money for Slop Runs Out
Slop likes to talk about itself (like some kind of 'web-cancer')
Not Journalism: Almost 80% of the 'Articles' We Saw About Torvalds and 'Vibe Coding' Are LLM Slop (Sometimes Slop Images)
The real issue is, Torvalds who created Git as a solution to proprietary prison is entertaining Microsoft's own proprietary prison
EPO People Power - Part XXXIII - Interest From Some European Media, For a Change
Without it, we'll become another Russian Federation
Just Another Reminder That Microsoft Didn't Deny Mass Layoffs
Remember that Microsoft never denied this
GNU/Linux Measured at 6% in Réunion This Year
Population sizes like a million people are nothing to sneeze at
Dr. Andy Farnell on Marketing Bad Things Like Slop Using FOMO (Fear of "Being Left Behind")
many of the same themes we often cover here
IBM Stock Compared to Bitcoin, Fake Articles About IBM Promote Myths About IBM
The stock moves based on false marketing
Bluewashing Continues, Red Hat Onboarding Interns in Low-Paid Regions
It's the end of the second Monday of 2026
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Monday, January 12, 2026
IRC logs for Monday, January 12, 2026
Gemini Links 13/01/2026: ScottoRang and Outage
Links for the day
GNU/Linux Exceeding 6% in Cape Verde
Windows is measured as down sharply
When It Comes to Health, Slop is a Flop and It Kills People
Chatbots will mostly die after many people die due to them
2026 Has Begun Well for GNU/Linux Users (and for Us)
A lot of the anti-Linux FUD we got accustomed to seeing some years ago became scarce
Links 12/01/2026: Vista 11 Exodus and Famicom/NES Game
Links for the day
Links 12/01/2026: Twitter (X) Being Blocked in More Countries, PTAB Besieged by Cheeto Appointees (Bad Patents Getting Through)
Links for the day
Links 12/01/2026: Brussels Plotting Exit From GAFAM (US), Carole Cadwalladr Explains "Peter Thiel's New Model Army"
Links for the day
Oligarchs and States Always Attempted to Obstruct Efforts to Expose Their Corruption
We commend the administrator who consistently and adamantly defend the freedom of speech
Scheduled Maintenance Between 15th of January and Days to Follow, Free Software Foundation (FSF) Looking to Add 43 More Members by 16th of January
People who value Software Freedom should consider joining to support the FSF
Bracing for Microsoft Layoffs, Tired of Microsoft Lies, Microsoft Staff Wants Transparency, Not Face-Saving Coverup From Frank Shaw
totally made up stock price
GNU/Linux Estimated at Around 5% in Montserrat
another country where the "share" of GNU/Linux is now measured at 5%
GNU/Linux Exceeding 5% in Guadeloupe According to statCounter
GNU/Linux "share" estimates in Guadeloupe
Dr. Richard Stallman @ Georgia Tech Next Week
More Than One Week From Now
EPO People Power - Part XXXII - Little Hope That European Press Will Attempt to Expose Drug Abuse in Europe's Second-Largest Organisation
What does this tell us about the press in Europe?
Three most controversial Australian authors linked to St Paul's, Coburg
Reprinted with permission from Daniel Pocock
Links 11/01/2026: Data Breaches and Recent (Early 2026) Political Developments
Links for the day
Gemini Links 12/01/2026: Insomniacs After School and Boycotting Amazon
Links for the day
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Sunday, January 11, 2026
IRC logs for Sunday, January 11, 2026
Brett Wilson LLP 'Dropping' the LLP, Is This Rebranding?
It's not a coincidence or a glitch, there was a formal change somewhere in the system
Can IBM Still Control the Narrative?
We'll see what comes out through the grapevine later this week