Bonum Certa Men Certa

Microsoft GNU-Hub (Part 4)

Article by figosdev

Catch me if you can



Summary: Following the first 3 parts [1, 2, 3] we look more closely at individual GNU projects and their Microsoft-hosted dependencies

In the previous article, the overall methodology for this series was discussed, and Tom has since written this article outlining some of the reasons these things are problems, and what can and probably ought to be done about them.



He also mentioned that the "gnu.org/software" url for Fribidi immediately redirects to the Microsoft-controlled GitHub repo. Let me tell you what I think of this fact.

The processes and policies of the GNU Project are certainly not up to me, though if I (or anybody in charge of policies for the GNU Project) were a lawyer, there would be some sane, ethical limits on what I can support simultaneously.

I couldn't represent people on opposite sides of a court case, because I would basically be taking their money for performing the service of fighting against myself. No matter who wins that one, I've taken their money and thrown the fight for one side or the other!

"Microsoft doesn't say they love your freedom, because their model isn't based on freedom."Microsoft claims to "Love Linux", but lots of very bad people claim to love their victims. Microsoft doesn't say they love your freedom, because their model isn't based on freedom.

They don't say "free software" because they aren't trying to make you free. In fact Techrights has covered the money they paid to politicians to get the City of Munich to ditch free software -- and go back to Microsoft instead! Then there are the bogus patents and royalty-seeking attacks on free software, which both FSF-sponsor IBM and Microsoft have continued to support.

More than a year before Microsoft purchased it, the FSF gave GitHub an "F" in its evaluation of code repo criteria: https://www.gnu.org/software/repo-criteria-evaluation.en.html. They cited:

* Important site functionality does not work without running nonfree JavaScript. * Specific information may not be available in all countries * The worst thing that GitHub does is to encourage bad licensing practice

The FSF also links to other reasons for avoiding GitHub, which were valid before the acquisition but are all the more relevant now.

"In fact Techrights has covered the money they paid to politicians to get the City of Munich to ditch free software -- and go back to Microsoft instead!"The lock-in for some users (or perhaps we should consider a different term for people stuck with GitHub -- useds, because Microsoft is using them more than they're using Microsoft) could be enough to create tension between developers and GNU leadership, as of the 33 people on this anti-rms petition nearly 2/3 of them have remained active on GitHub since they were purchased by Microsoft.

We are going to avoid using the names of individuals (though they already name themselves) but some of the people on the list have even contributed to the connections between GitHub and the GNU project. What isn't being said here is that this is definitely the reason for the petition. While the timing "seizes the day" in terms of trying to kick out rms while he was already stepping down from FSF leadership, the real motivations of the signed are unknown unless we take them at their word.

When no fewer than 20 of them have written or forked code on Microsoft GitHub in the past year, in some instances even for the GNU Project -- (at least 7 of them appear to work for Red Hat, which develops on GitHub and is now owned by the FSF's largest sponsor) we have to point out the possibility that opportunism was a factor.

Either way, trusting one of the most infamous opponents of software freedom with moderation of projects like GNU Bison, GNU Fribidi and other projects key to the GNU project seems like either hiring or working for your own client's opponent -- this sounds like textbook conflict of interest to me, though Tom is the person I would go to for his greater experience with organisational process. Perhaps instead of formally being a conflict of interest, crossing the GNU project with GitHub is merely a really terrible idea -- one of those instances where "compromise" isn't a word denoting reason and cooperation as much as failure.

A bit outside the reach of GNU developers to be certain, GNUzilla is built with rust, which is developed on GitHub.

I'm now trying to catch projects that include jpeg, pdf and postscript files. Why? Because pdf and postscript files use ghostscript, which is typically compiled with png support and brings in zlib1g from GitHub. Help me find a way that's not so.

"...of the 33 people on this anti-rms petition nearly 2/3 of them have remained active on GitHub since they were purchased by Microsoft."For a week or two I was saving screencaps as jpeg instead of png, but it looks like OpenJPEG is GitHub-based as well. Does anybody still use libj2k?

Packages that include one or more png files include gnuschool, GNUjump, GNUbik, GNU remotecontrol, GNU Optical design and simulation library, GNU mifluz, GNU Chess and GNU libmicrohttpd.

GNU Crypto, GNU Astronomy Utilities and Gnu Circuit Analysis Package have png and pdf in docs. GNU Generic Security Service Library has png, pdf and postscript.

GnuTLS has Perl and png in the docs, GNUtrition has Python, png, and pdf.

GNUspool and GNUbatch have Perl, Python and png.

GNUsound has png files, as well as modules for ALSA and Jack, both of which are GitHub based -- though I still don't believe that and will have to check it a few more times before I do.

GNUpod is Perl based.

GNUnet uses Perl, and wolfssl from GitHub.

GNUlib uses https://github.com/gnulib-modules/bootstrap which I found because gnu-pw-mgr uses bootstrap.

GnuCOBOL has a scanner generated by flex, and Perl in tests and docs.

With gnubg, I'm hoping someone can explain this one. It contains Python scripts, there's code written in C which is alright (I'm not going to check how these are related) and someone who appears unrelated to the project is working on something on GitHub which is also called "GNU Backgammon" at ytani01/ytBackgammon--

This is free software, so it's certainly alright if someone forks it or creates what appears to be a Javascript project (if it is indeed a fork). It's unfortunate that they've chosen GitHub for this, but if it's not one of the actual GNU maintainers, we can't blame the GNU Project for this. We can only hope that ytani01 decides to DeleteGithub and move their project somewhere else.

"GNU Smalltalk really shouldn't be developed on Microsoft Github."GNU Zile has Perl in tests and build.

GNU Wget has png in docs and could be compiled with support for brotli (from Google's GitHub) or zstd (Facebook's GitHub) or libpsl for cookie domain checking, which appears to be from GitHub.

GNU VCDImager is being developed on GitHub.

GNU Typist has Perl and Perl modules in tools.

GNU troff and GNU Stow use Perl.

GNU tar calls GNU bison, which is GitHub-based.

GNU SpaceChart uses Perl and contains a parser made for or with bison.

GNU source-highlight has Python and Perl in tests.

GNU Source Release Collection will depend on GitHub as long as any official GNU software does, as its purpose is to "maintain a rolling release of the latest version" of GNU projects.

I would be more comfortable with someone trying to make an official distro-like collection of all GNU projects if the project admin wasn't someone who has continued to develop on Microsoft GitHub for the past year. Why not just bring the entire GNU project into a GitHub staging area?

What is this, anyway? https://github.com/gitGNU

"gnu_bash C GPL-3.0 37 61 0 2 Updated 5 days ago"

"I stopped counting things that use flex or bison for building because there are so many."GNU Solfege uses Python and png.

GNU social uses HTTP_Request2, from GitHub.

GNU Smalltalk has a story, of sorts. It was being developed on GitHub as far back as 7 years ago, well before the Microsoft purchase but by now-inactive contributor bonzini/smalltalk. I only noticed this because of a dead link to MrGwen/gst-visualgst in the /packages folder of the GNU Smalltalk sources.

The current GNU maintainer is also active on GitHub, though it does not seem to be where the most recent Smalltalk development has taken place. For clarity, here is a quick timeline...

* The most recent commit from the actual GNU Smalltalk maintainer on GitHub appears to be from 2015 on janvrany/gst, except for the following fork:

* The most recent commit on GitHub related to GNU Smalltalk appears to be on a fork of Smalltalk at Synss/smalltalk (it also includes a more recent commit from the current GNU maintainer) in 2017 -- this is before the GitHub purchase.

* After the 2018 acquisition, the most recent commit to GNU Smalltalk (typo fixes in the tutorial) appears to be on the GNU git -- this is ideal if it's accurate. GNU Smalltalk really shouldn't be developed on Microsoft Github. http://git.savannah.gnu.org/cgit/smalltalk.git/commit/

So there's probably nothing sinister there, but it's worth watching. The /examples include Gtk, cairo (either gtk1/github or cairo2 < zlib1g) and it uses png.

Gnu Slip uses or used bison, uses or used flex, includes a pdf user manual.

GNU Shishi is a Kerberos 5 implementation with pdf, png and postscript in the docs.

GNU sed uses Perl in tests.

"Even without being based on nixos, the fact that Guix is/has a package manager with package data means that its going to pull in applications from GitHub."GNU Screen includes postscript in docs, while GNU Scientific Library includes Python and png in the docs.

GNU Rush includes cflex.c which is generated by flex, which is from GitHub.

I suppose there are two ways you can treat a parser or lexer created with bison or flex. You can treat them as compiled output of bison or flex, or as a program or fork in their own right. How you decide to think of them determines how vital bison or flex is to changing that project.

You can certainly change the output of bison or flex without running bison or flex again. Anybody who has written their own parsers understands this. But if the source includes the input for bison and flex or calls it from a script, then it's difficult to say they aren't required as well.

I stopped counting things that use flex or bison for building because there are so many.

GNU Robots uses Gtk. When you see Gtk, it pretty much means glib2 or gtk1 -- one of which needs libffi, the other of which is on GitHub. This is irritating -- somebody show the way out of this. I don't love GNOME at all, but I do like Gtk.

GNU radius has a scanner written by flex, it also uses Perl. GNU Pth uses Perl and includes postscript documents.

GNU Prolog has Perl in examples, pdf and png in docs. GNU Pem uses Perl.

GNU patch appears to use bison. GNU Parted uses Perl and Python in tests.

"As to whether Guix depends on GitHub, I would say so."GNU Parallel is based on Perl, and has pdf in /src.

GNU Paint is written in Vala, and uses glib, cairo and Gtk.

GNU Octave uses Perl and png, GNU Networking Utilities use Perl.

GNU nano has OS/2 support which comes from GitHub, and seems to need flex. The Debian package inexplicably requires zlib1g, I was unable to determine why (it's not mentioned in the source) https://packages.debian.org/buster/nano

GNU MIX Development Kit has png in the docs, a scanner generated by flex, and uses Gtk.

GNU Midnight Commander uses Perl and optionally builds with glib2 (which needs libffi which is from Github).

The NEWS file in GNU Mes says: "Mescc now depends on M1" from mescc-tools on GitHub, and "Mescc now depends on the hex2 linker" from mescc-tools on GitHub.

GNU MediaGoblin uses Python, as well as Docker (Docker is based on GitHub).

GNU Mailutils uses lots of Python and may need bison or flex.

GNU Mailman uses Python and png.

GNU Linear Programming Kit has pdf in examples, /doc.

GNU LilyPond Music Typesetter uses Python, postscript, has png in docs.

GNU Libtasn1 may need bison, has postscript, png and pdf in docs.

"First, I use basic automation and string matching to isolate relevant data, then to present it to me one project at a time so I can process hundreds of projects."GNU Internationalized Domain Names Library has Perl in tests, pdf and png in docs and may have other components from GitHub.

GNU Hyperbole uses Python, png -- this one is worth watching with regards to GitHub.

GNU Health is largely Python-based.

GNU HaliFAX uses Gtk. GNU gzip uses Perl. GNU gv has a parser generated with bison and uses Perl.

GNU Guix has png in docs, pdf in docs and probably needs libffi from GitHub.

NixOS being Github-based means GitHub is probably impossible to avoid for Guix -- though that wouldn't mean Guix had no potential as a fork.

Even without being based on nixos, the fact that Guix is/has a package manager with package data means that its going to pull in applications from GitHub. No effort is being made to make that more than it is, because practically every known distro pulls in packages that are GitHub-based -- like Python, for example. Also libgd (GitHub) which the changelog says was added then removed. Very relevant to Guix? Perhaps not, but due to looking it up I know libgd is GitHub-based.

As to whether Guix depends on GitHub, I would say so. Elogind is forked on GitHub for guixSD: https://github.com/elogind/elogind The fork is for a good cause, but why use GitHub for this?

From README.md: "All of the credit for elogind should go to the systemd developers." "All of the blame should go to Andy Wingo, who extracted elogind from systemd." "All complaints should go to Sven Eden, who is maintaining elogind."

The readme for GNU Guile-CV says Guile-CV is based on vigra (which is based on GitHub).

GNU GRUB uses Python, png, jpeg. Riscv-isa-manual is GitHub-based. The changelog implies that zstd from Facebook's GitHub is supported, which possibly means it's included. And m4/intl.m4 says "dnl because plural.y uses bison specific features".

"As to how to devote hours at a time to this, it really takes a soundtrack. Half of this research was not possible without Green Velvet and Tiësto sets on loop -- I would have gotten really bored."GNU gradebook uses png and Gtk. GNU Go uses Perl, Python and has png in docs and pdf in docs.

GNU GLOBAL uses Python and Perl. It also appears to include jQuery, which is GitHub-based.

GNU Enterprise and GNU EDMA use Python.

GNU C Library uses Perl and Python. Serious question -- what is it like if you remove them? I'm glossing over a lot of details there, sorry about that.

This was incredibly tedious work to research and put together, how did I sit through this?

"With a soundtrack, it's also quite interesting to discover all these Lilliputian strings linking the GNU project with stuff developed increasingly on GitHub -- Microsoft tries, as it always has year after year -- to take all the marbles and win."First, I use basic automation and string matching to isolate relevant data, then to present it to me one project at a time so I can process hundreds of projects. The automation and results prove nothing -- they only show where to pay more attention. I take the data and go from there.

As to how to devote hours at a time to this, it really takes a soundtrack. Half of this research was not possible without Green Velvet and Tiësto sets on loop -- I would have gotten really bored. With a soundtrack, it's also quite interesting to discover all these Lilliputian strings linking the GNU project with stuff developed increasingly on GitHub -- Microsoft tries, as it always has year after year -- to take all the marbles and win.

Will Part 5 have some good news? You tell me.

Long live rms, and happy hacking.

Licence: Creative Commons CC0 1.0 (public domain)

Recent Techrights' Posts

unixcop.com is the Latest "Linux" Site to Have Become a Slopfarm After 2 Years of Death (Inactivity)
Not a way to stage a comeback
While GAFAM/Microsoft Disguise Financial Crisis as "Investment in AI" the Slop Giants Make Up a Narrative of Wilful Slowdown
A BS artist is good at the art of BS when the artist's failures or weaknesses get twisted as moral or professional leadership
It Has Cost $215,000 in Legal Costs to Sue IBM for Wrongful Termination
IBM typically settles out of court and demands secrecy (to avoid anyone else benefiting from the very expensive outcome)
 
Links 15/09/2026: Putin-Connected Money for The Insurrectionist Jr. and Turkey's Crackdown on Activists
Links for the day
publicdomainpictures.net Seems to Have Become Fed Up With Slop Contaminating Its Database (Wasting Storage, Bandwidth), Now It's Suitably Flagged, Should Be Demoted/Delisted
The site was redone, suffered some hours of downtime, then 'relaunched' with a new interface this week
Gemini Links 15/09/2026: Hiking in Munții Făgăraș, Scams, and Slop Plagiarism Considered Unethical
Links for the day
Linux Kernel Becoming a Slopfest - Part 1 - At the Beginning (Torvalds Knew It Was Trouble)
We still wonder if we should make and actively maintain a shame list (developer/employer) for the people who contaminate Linux the most with slop plagiarism
EPO Staff is Preparing to Take Up a Notch the Strikes and Other Industrial Actions Ahead of October's Meeting (It Can Help Oust the Corrupt Leadership)
mobilising perhaps thousands of workers at a critical time in the history of the Office
Allegedly Many PIP Layoffs in Nepal, IBM Does This Before a Known Death Toll in Avalanche (Caused by China-, Europe-, and US-Induced Global Warming)
Fresh wounds, before the bodies are even recovered (thousands still missing)
"Wail" by Alexandre Oliva
This work is licensed under the Creative Commons License BY-SA (Attribution ShareAlike) 4.0 International
This Morning The Register MS Published a Page With "AI" 83 Times in it. The Register MS Got Paid to Do This.
The Register MS is not a serious publisher and a lot of the stuff about "AI" on the Web isn't journalism but paid-for SPAM
SLAPP Censorship - Part 184 Out of 200: A Tiny Law Firm That Knows Nothing But Microsoft (But Merely Pretends to Understand "IT")
They've managed to trick some mainstream media into thinking they're "Tech" experts or "Social [Control] Media" gurus; nothing could be further from the truth
Links 15/09/2026: Sweden’s Far Right Perishing and "Iceland Just Got Played"
Links for the day
It's Not About How Developers Vote
This isn't about politics, it's about users being in control of their own computers and computing
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Monday, September 14, 2026
IRC logs for Monday, September 14, 2026
Gemini Links 15/09/2026: Poetry, Enshittification of Ebay, and Mecha System
Links for the day
LG Lies to Cover Up Lies About Its Spying TVs (It Records and Transmits Conversations in Rooms)
This is what a lot of "modern" technology is like
Oracle's Debt Continues to Soar (Increase of 60 Billion Dollars in 15 Months, Not Counting the Secret Debt, With Off-balance-sheet Debt Having "Grown Roughly Thirtyfold in Four Years")
Oracle debt continues to grow
Apple's iOS and macOS Measured as Bigger Than Windows in the US, Linux-Based OSes at Almost 30%
Expect the silent layoffs at Microsoft to continue at a rapid pace
Oracle, Like Microsoft, Drowns in Debt and Discards Tens of Thousands of Staff (Microsoft Does the Same More Discreetly)
The main difference between Microsoft and Oracle is that the latter is honest about what's going on
Gemini Links 14/09/2026: First Android Phone, Leaving Sony, and Rant About Gemini-to-HTTP Proxy Providers
Links for the day
Links 14/09/2026: "Scam Altman Now Trying to Gain Control of Electric Grid" and Sweden Moving to the Right
Links for the day
Vista 11 Flunked
Microsoft cannot start a "Vista 12" campaign as it would only make matters worse
Microsoft Urgently Needs Distraction: There's No "Next XBox", But There's a New Boot Screen (Like 'Dark Mode', a Feature That Can be Implemented in Mere Minutes/Hours)
Anything to distract from XBox fiasco
The PIPs or 'Voluntary Termination Offers' Help IBM Fake Its Situation
"IBM is not a tech company"
IBM Flying Away to Sweatshops (So Will Red Hat)
Even on Sunday people post about 'leaving' IBM
RFID Ambitions Already Established by Widespread Skinnerbox Adoption
A society that cannot maintain privacy for those who deserve it will not manage to assure dignity of citizens
SLAPP Censorship - Part 183 Out of 200: What Actually Happened Two Months Ago (Based on People Who Attended)
It's dangerous to assert what happened in a hearing you did not attend (there was no video stream or recording, either)
Phil Harvey, an Editor-in-Chief in a B2B Site, Explains Why ChannelFutures (Connected to TechTarget) and Other Sites That Used to Cover Linux Deleted Many Articles
Every old article in channelfutures is gone!
Software Freedom Day 2026 is 5 Days From Now, Fresh Reminder to Boycott Proprietary Software
Let this be a timely reminder of why people should avoid proprietary software
Links 14/09/2026: Slop Hardly Used for Actual Work (Chatbots Are for Lonely People), Slop Bots (Scrapers, Plagiarism) "Are Thirsty for Power"
Links for the day
Gemini Links 14/09/2026: Trip, Hiding, and OCR
Links for the day
IBM PIPs Are Layoffs (RAs Come Later Even If You Satisfy the "Performance" and "Plan")
Notice how "the media" almost never mentions silent layoffs, as if just because they're silent, there's nothing to investigate, nothing to see there
Slop Companies Engage in Plagiarising the Web, Now They Pay People to Contaminate the Web With Their Lies
Remember that the lawfare against us is funded by slop salaries!
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Sunday, September 13, 2026
IRC logs for Sunday, September 13, 2026
Microsoft is Laying Off All Year Long (It's Just Keeping Quiet About It)
The issue here is also the media. It's complicit.
MElon's Twitter Takeover Was Meant to Amplify People Like Himself or David Heinemeier Hansson (Slop Pyramid Schemes and Bigotry)
Social control media is not neutral
Microsoft Lunduke of 'Linux Sucks' (and Microsoft Corp.) Tries to Replace GNU/Linux With Toxic Discussions About Toxic Politics
Poisoning the well people drink from
General Assembly Covers EPO Strikes on Thursday, September 17th (2026)
The EPO's staff representation at The Hague has asked people to join an upcoming online session about industrial actions
Links 13/09/2026: Republican Campaign Aide Uses Nazi Photo and Convicted Felon is Wielding Power to Stifle Speech
Links for the day
Gemini Links 13/09/2026: Never Settling, Plain Text Digital Life, and Newsgroups
Links for the day
SLAPP Censorship - Part 182 Out of 200: UK Dockets With Machine-Generated Applications to the Court (From American Slop Companies)
Earlier this year Garrett was using machine-generated output as legal papers and submissions
Efforts to Cancel Matt Mullenweg Have Made Us More Sympathetic Towards Mullenweg and More Sceptical of the People Who Run Automattic (Named After Mullenweg)
Mullenweg, unlike Automattic, is not "in it for the money"
Boosters of Omarchy Are No 'Underdogs'
There are many Arch derivatives that do not rely on "viral" marketing in MElon's child porn-pushing social control media and are instead relying on real development, not slop
PIPs Are a Setup: They Set Workers Up to Fail While Working Their Arse Off Before Getting Kicked (Out) in the Arse
Malicious and exploitative
SLAPP Censorship - Part 181 Out of 200: This is Really More Like Brett Wilson LLP v Schestowitz (Using Money From American Slop Companies, Plagiarism Pushers)
We approach the parts where we explain that the Application to the Court with Garrett's name on it was instead complaining about fair criticism of the combative law firm (irrelevant to any injunctions) as if it was impermissible to explain what it had done - and still does - to my wife and I
It Sometimes Feels Like Slop Companies Are Committing Online/Digital Crimes
"GPT" out of control
Gemini Links 13/09/2026: Why Omarchy is "Plain Disgusting" and "AI Slop" and Why "Plain Text To Do List" Rocks
Links for the day
Links 13/09/2026: Scam Altman Admits Issues (Financial), Rival Says Stop Slop (Plagiarism)
Links for the day
Windows Down to New Lows as Switzerland's Federal Government Abandons Microsoft (Where Feasible for Now)
That's how it starts...
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Saturday, September 12, 2026
IRC logs for Saturday, September 12, 2026