Bonum Certa Men Certa

Harfbuzz Joins LibFFI, Zlib1g in Dragging GNOME, All Free Software Towards Microsoft

Article by figosdev

A combination lock



Summary: "...I don’t want to help them help Microsoft control my computing by proxy — by controlling the development platform itself"

For those of you who started complaining about this in late 2019, well done. You get the credit for early warning.



The name "Harfbuzz" is based on a translation of the phrase "OpenFont". Its lead author is Behdad Esfahbod, who is also the lead dev of Pango -- the GNOME thingy that (typically) makes text happen. I don't know (or very much care) about the finer details about that, I know that my Gtk applications refuse to run without it.

GNOME is not directly a Microsoft hostage, even though lots of its people have sold us out over the years. Many people have betrayed both Free software and rms, but the only person rms ever called a "traitor" was GNOME co-founder Miguel de Icaza. He should have simply called GNOME traitors instead -- a better warning to the rest of us.

But in fairness, most GUI toolkits require libffi and/or zlib1g, and both of those are hostages of Microsoft GitHub.

Both GNOME and KDE require Harfbuzz as well, and as of last year it looks like Esfahbod (or someone close to them) worked to make Pango -- which is not a GitHub hostage -- require Harfbuzz, which is.

Even people at Phoronix thought this sucked. Bitmap fonts -- those were an option. Harfbuzz, that was also relatively optional. Remember when Free software was modular, and things like this were typically optional? Yeah, less and less so all the time.

So while I am aware that GNOME is not the only problem here, this makes even firmer my resolve to rid myself of GTK where I can.

It is nearly impossible to boycott GitHub without boycotting Free software (GNU/Linux at least) -- I recommend people try anyway, and it didn't take long for people to ask me if I was boycotting my own.

The answer to that is "Yes". Sometimes, at least.

For example, my three favourite languages (all related) are fig, figplus and Python. For Python I have mostly switched to PyPy, and I basically (can't think of an exception) do not develop Python-based software that will not work in PyPy. For fig 5, I switched to PyPy for the default.

Figplus still uses Python (it will work with PyPy however) and it will work with Pygame if you install that. Note that if Pygame is not installed, it will just try to use text "graphics" instead.

For fig I actually removed Pygame and added support for full colour text. Figplus has a few other extra features, but I am largely boycotting it (not 100%, but I definitely avoid it regularly) in favour of relatively GitHub-free fig.

I have removed leafpad (GitHub, Gtk) and now lean towards Tkinter-based editors. On this machine (where I typed this article as well as my recent book) I have not used xterm in a while.

There are certainly things I need xterm (or something like it) for, such as doing "graphics" in fig 5.0. But for most command line tasks, I am using a text editor. For example, if I want to know how much free space there is on the drive:

    df -h | grep sd


I type that line and hit CTRL-T, then it gives me the output of the command. Errors are ignored (I could fix that, I haven't) though I can say "df -h 2> log | grep sd"

Then cat the log.

One of my favourite tools is gdmap, though it needs Harfbuzz and Gtk so I am eager to come up with a simple, homemade-quality replacement.

I can do a GUI app, but I'm always loath to because they're really kind of a pain to make in my opinion. I do like CGI, old-fashioned though it is. Everyone uses frameworks now.

Gdmap creates a treemap that shows grouping (by folder) and (relative) sizes of files, giving you a really great idea of what stuff takes up the greatest amount of space on your system. I used screencaps of it on this page.

I could just look up that project to create a treemap of folders in Tkinter -- I wasn't thrilled with it, but it does what it claims. MY thoughts on a simple tool to create an "overview" like Gdmap while accepting many imperfections (favouring simplicity) goes like this:

* Use find and/or du -k and/or PyPy to get the filesizes for every file

* Get the int of the SQRT of the filesize as a variable

* Create a div of that integer (height/width, square) in whatever background colour is associate with the file extension (Gdmap lets you configure that)

* Use float:left or float:right CSS (try both) to make it so as many squares fit together as possible. This will probably be really lame and result in single rows where we want several.

But up to a certain size filesystem, this would probably be better than nothing. For the moment, I'm using this:

    for p in $(find / -type d) ; do echo $(find "$p" |
    egrep -v "\.html" | 
    wc -l) " " $(/mnt/sda1/usr/bin/du -k "$p" --exclude="*.html" | 
    tail -1) ; done | sort -n 


What this does is create a list of all folders in /, which it then lists with first the COUNT of files under each folder, followed by the total SIZE of the files under each folder, sorted by count. Excluding certain filetypes is optional; you can also exclude more than one.

If you page up through this list (I use a text editor, you could also use "more" while possibly reversing the list) you will find the file count gradually and smoothly lowers, while the size also tends to lower but occasionally jumps back up.

The places where you notice the total size "jump" are the places where the "big" files are. So graphics, sound, video, very large program binaries -- those will cause such jumps in size relative to file count.

You can go through thousands of folders in a few minutes and find where the largest files are. You can do this with "du -k / | sort -n" as well, but now you have tens or hundreds of thousands of files to process, rather than folders.

Gdmap will not show you all of your smallest files, what it does best is show you where the biggest files (and biggest groups of big files) are. This will do that as well.

I can think of various ways to display this information, I've played with graphics for more than 25 years, but sometimes I'm trying to get a task done rather than create something that's very attractive.

My priority here is boycotting software that I can manage without. Gdmap was always good to me, though Gtk was always a liability. "No" is about the only currency we have against this takeover, and if effort isn't sometimes made then progress isn't either.

As for Behdad Esfahbod, the funny thing is that they (I'm happy to use "they/them" as preferred pronouns, I've never had a problem using singular "they" at all) do not approve of Microsoft's practices, which they consider unfair -- they even tweeted Satya Nadella to complain.

So it's funny then, when someone who (unless I read this wrong) worked at Google, Red Hat AND Facebook -- that's one HALF of GIAFAM, has a problem with Microsoft over monopoly abuse.

Hello... the rest of GIAFAM isn't exactly working for our freedom either. I don't deny that Microsoft is among the worst on the list.

Considering that they are forcing GNOME closer to Microsoft GitHub, the truth is that Esfahbod has worked for TWO THIRDS of GIAFAM -- including Microsoft, for whom they develop.

I may not be able to remove Gtk from my system, though I can minimise my use of Gtk applications -- and that helps to boycott GNOME (which is evil and toxic, Open Source and anti-freedom) and Microsoft Harfbuzz at the same time.

I hope they #deletegithub rather than continue to help out a company they claim to dislike. I know I'm putting in a great deal of effort to avoid this garbage, but nobody (certainly not the president of the FSF, who was a Microsoft GNUStep developer) cares if they're helping Microsoft control my computing or not.

But I don't want to help them help Microsoft control my computing by proxy -- by controlling the development platform itself. That can't be how the FSF intends to spend your donations "fighting" for your freedom -- by putting a monopoly in charge of it?

If this isn't a parallel universe to the one with the FSF I thought I knew, YOU explain how this happened.

Long live rms, and happy software boycotting.

Licence: Creative Commons CC0 1.0 (public domain)

Recent Techrights' Posts

European Patent Office (EPO) Series: Czech Mate: EPO Kingmaker or Merely a Pawn in the Game?
recent "missions" of the EPO President
SLAPP Censorship - Part 131 Out of 200: A Big Win for the Media in the United Kingdom (UK) Today
In a democratic society the Right to Know, which is closely connected to freedom of the press (or what one might label "blogging" or "blag"), comes above all else, except where there are lives being put at risk
IBM's Fedora Plans to Integrate Slop Into "Fedora Workstation as a Default Feature."
IBM does not care whether the community wants this or not
The Media Talks a Lot About XBox Layoffs, a Closer Look at the Data Shows Microsoft 'Bloodbath'
'Bloodbath' is the term insiders use
 
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Tuesday, July 07, 2026
IRC logs for Tuesday, July 07, 2026
Links 07/07/2026: Microsoft Cuts Doom "id Software" and Turkey Detains Journalists
Links for the day
Gemini Links 07/07/2026: Old Computer Challenge (OCC) and Hardware Tests
Links for the day
A Break From the Routine
What matters is what whistleblowers keep feeding information to us
SLAPP Censorship - Part 132 Out of 200: When You Cannot Pay a Million Pounds (1,335,520.00 United States Dollar) to Lawyers But Have a Strong Community
Techrights compensates for its fiscal poverty with a wealth of community spirit
Fame is Not the Goal
"Fame" kills
Mental Health in Free Software Communities
clearly there is a subject that merits debate and it ought not be a taboo anymore
The Era of Sponsored Spam
There is no "era of AI", there is era of BRIBES to PRETEND there is an "era of AI"
Gemini Links 07/07/2026: Cleaning, Old Computer, and More
Links for the day
Links 07/07/2026: Le Monde Combats LLM Slop Plagiarism, "ACLU Launches Largest Ever Midterm Electoral Program"
Links for the day
Extremism in the Free Software World is Mostly a Myth
Only the firm belief that justice applies to all will produce a just society
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Monday, July 06, 2026
IRC logs for Monday, July 06, 2026
Links 07/07/2026: Kernelized Secure Operating System (KSOS) and "Exploiting Thoughtcrime in LLMs"
Links for the day
SLAPP Censorship - Part 130 Out of 200: Jealousy, Envy, Hubris
This site is primarily about Free software
Gemini Links 06/07/2026: Still Mostly Dry, GoToSocial, and More
Links for the day
European Patent Office (EPO) Series: Effective Dispute Resolution… But Not For EPO Staff
Slovenia fielded one of the few Administrative Council delegations which managed to maintain its own independent line against the tyrannical EPOnian "Sun King"
Community Sites Need Genuine Collaboration and True Autonomy
People who want to communicate, federate and organise for effective change need to evolve
Free Software Foundation (FSF) Covers Quibble, Free Software for Secure Communications, in the FSF Summer Bulletin
The Georgia Tech folks are bringing Free software education and contributions to one of the better known Computer Science hubs in the US
Microsoft Layoffs Include Windows, Bing, Slop (CoPilot etc.) and There Will More More Rounds (or Waves) to Come
"43% of Xbox laid off"
Obscene Contradiction in Microsoft's Layoffs Tally ("Official" Numbers Do Not Add Up)
Notice how they treat "LinkedIn" as separate
Preserving Comments About the Real IBM Before They Get Deleted
IBM in the 1980s is not what it is right now
Cybershow on "Escaping Prisons For Your Mind"
"THE CYBER SHOW: Stealing technofascism's boots, and stomping on its own face with them."
Links 06/07/2026: At Least 20% Staff Reduction in XBox (Microsoft), Taiwan Sees Uptick in Chinese Aggression/Provocation, Senator Rodante Marcoleta Arrested
Links for the day
Confirmed: Microsoft Layoffs Come in Two Waves, Just Like Last Summer
To us, what stands out is the admission from Microsoft that there are two (or more) waves
In Praise of the UK's Stance on Free Speech (but Some Reservations)
At the moment there is a healthy discussion going on with the objective of disrupting attacks on British press
Exposing Corruption at the European Patent Office (EPO), a Call for More Whistleblowers
We predict that, provided enough whistleblowers speak out, António "the unready" won't even finish his current term
Leaving Our Pets for Several Days
This week our pets will be worried that "mommy and daddy" are away
Dating Trees and Dating 'Apps'
several high-profile stories in the news about scandals in "dating apps"
DW Documentary About Julian Assange Turns 2
It was released just days after Assange had turned 53 and about two weeks after he had left the UK
Independent Media is the Only Form of Legitimate Media
Independent media is, indeed, what we need to demand more of
The Story of the European Patent Office (EPO) Wagging the Dog (EU)
The aim of the series is to properly inform the world - not just Europeans - how Europe's second-largest institution is run [...] How did a corporate hub of monopolies become so detached from the Rule of Law?
GNU/Linux Up to New High in Libya, Windows Down to All-Time Low
GNU/Linux touches 5% there, based on statCounter
Links 06/07/2026: Artists Reject Slop (or Even de Facto Bribes to Market/Endorse Slop)
Links for the day
SLAPP Censorship - Part 129 Out of 200: Iranian Tactics
Hunger for revenge compels people to do overzealous, irrational things
Quiet Week
Many in the US are still enjoying an extended weekend
The Media Needs to Speak of Slop as a Climate Issue Like It Did With Bitcoin
But the slop industry keeps paying the media to play along with the hype
IBM's Fall
IBM's fate is closely connected to that of the Free software movement because of the salaries
Social Dialogue at the European Patent Office (EPO) is Dead, the Strikes and Work Stoppage-Like Actions Carry on
What next for the EPO?
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Sunday, July 05, 2026
IRC logs for Sunday, July 05, 2026
Links 05/07/2026: Shadows of the Upper Peninsula and 2026 Old Computer Challenge
Links for the day