
I don't like flatpak: if there is a shared library bug, it can be fixed once on a normal Linux distro. With flatpaks, each one that uses the library must be update. But will they? Furthermore, there is a lot less sharing of disk space and RAM. $ flatpak list --columns=name [1mName[22m Element Bluefish Fedora KDE 6 Platform Fedora Platform default fedoraproject platform translations Freedesktop Platform Freedesktop Platform Mesa Mesa (Extra) Mesa Mesa Mesa (Extra) Mesa (Extra) FFmpeg extension with extra codecs openh264 openh264 openh264 GNU Image Manipulation Program Déjà Dup Backups GNOME Application Platform version 46 KolourPaint Paint Telegram Telegram Desktop Webview Add-on I don't know why there are so many versions of a particular package installed. For example, here's more info about Mesa (ignoring Mesa (Extra)): Mesa …esktop.Platform.GL.default 25.0.3 23.08 flathub system Mesa …esktop.Platform.GL.default 25.0.3 24.08 flathub system Mesa …esktop.Platform.GL.default 25.0.3 24.08 flathub user There are two "branches"s: 23.08 and 24.08 and yet the versions are all 25.0.3. And why would one have "installation" "user" and the other two "system"?

They keep trying to fix an NP-complete program with a hack. Alas, it's a popular hack, and when the perpetrators are told it won't work, they go "nah, nah, can't hear you". TL:DR? Do it with shared libraries as Hugh suggests, or die in agony (:-)) I have a whole series on this: I used to work in/Binary Stability/ at Sun, where David J. Brown (which see!) solved it in Solaris. The original Go paper was Russ Cox's https://research.swtch.com/version-sat He proposed using a "sat solver" to find particular combinations that would work... or timeout and say "can't find one". Sun used a sat solver to make sure we hadn't screwed up the general case In rough order, I wrote * https://leaflessca.wordpress.com/2017/02/12/dll-hell-and-avoiding-an-np-comp... * https://leaflessca.wordpress.com/2018/10/28/how-about-a-stable-kernel-api/ * https://leaflessca.wordpress.com/2018/09/03/avoiding-an-np-complete-problem-... The last one was an "experience report" submitted to the Go team. --dave On 4/26/25 11:49, D. Hugh Redelmeier via talk wrote:
I don't like flatpak: if there is a shared library bug, it can be fixed once on a normal Linux distro. With flatpaks, each one that uses the library must be update. But will they?
Furthermore, there is a lot less sharing of disk space and RAM.
$ flatpak list --columns=name [1mName[22m Element Bluefish Fedora KDE 6 Platform Fedora Platform default fedoraproject platform translations Freedesktop Platform Freedesktop Platform Mesa Mesa (Extra) Mesa Mesa Mesa (Extra) Mesa (Extra) FFmpeg extension with extra codecs openh264 openh264 openh264 GNU Image Manipulation Program Déjà Dup Backups GNOME Application Platform version 46 KolourPaint Paint Telegram Telegram Desktop Webview Add-on
I don't know why there are so many versions of a particular package installed. For example, here's more info about Mesa (ignoring Mesa (Extra)):
Mesa …esktop.Platform.GL.default 25.0.3 23.08 flathub system Mesa …esktop.Platform.GL.default 25.0.3 24.08 flathub system Mesa …esktop.Platform.GL.default 25.0.3 24.08 flathub user
There are two "branches"s: 23.08 and 24.08 and yet the versions are all 25.0.3. And why would one have "installation" "user" and the other two "system"?
--- Post to this mailing listtalk@gtalug.org Unsubscribe from this mailing listhttps://gtalug.org/mailman/listinfo/talk
-- David Collier-Brown, | Always do right. This will gratify System Programmer and Author | some people and astonish the rest davecb@spamcop.net | -- Mark Twain

On Sat, Apr 26, 2025 at 12:23:25PM -0400, David Collier-Brown via talk wrote:
They keep trying to fix an NP-complete program with a hack. Alas, it's a popular hack, and when the perpetrators are told it won't work, they go "nah, nah, can't hear you".
TL:DR? Do it with shared libraries as Hugh suggests, or die in agony (:-))
I have a whole series on this: I used to work in/Binary Stability/ at Sun, where David J. Brown (which see!) solved it in Solaris.
The original Go paper was Russ Cox's https://research.swtch.com/version-sat He proposed using a "sat solver" to find particular combinations that would work... or timeout and say "can't find one".
Sun used a sat solver to make sure we hadn't screwed up the general case
In rough order, I wrote
* https://leaflessca.wordpress.com/2017/02/12/dll-hell-and-avoiding-an-np-comp... * https://leaflessca.wordpress.com/2018/10/28/how-about-a-stable-kernel-api/ * https://leaflessca.wordpress.com/2018/09/03/avoiding-an-np-complete-problem-...
The last one was an "experience report" submitted to the Go team.
Seems people keep repeating past mistakes. Shared libraries were invented for good reasons. But golang and some other modern languages seem to have decided static linking is so much better so they can move their code in a single piece around in containers. Security and efficiency are apparently not something they have heard of or at least they don't care. flatpaks and company cause a similar problem. -- Len Sorensen

My industry is not particularly good at learning from experience. Once upon a time, bridge-building engineers suffered the same problem. Bridge the river Bure in Yarmouth? Watch it fall into the river while a crowd was looking at a clown, in1845. The problem was noticed in 1940, when the Tacoma Narrows bridge ("Galloping Gertie") collapsed. I hope it doesn't take 95 years for computer science to notice (:-)) --dave [to be fair, I too like to statically link stuff that's in MY code base, but then most people also fix bugs in their own code. Shared libraries are good if you have /*two or more */developers working on a project] On 4/26/25 16:38, Lennart Sorensen wrote:
On Sat, Apr 26, 2025 at 12:23:25PM -0400, David Collier-Brown via talk wrote:
They keep trying to fix an NP-complete program with a hack. Alas, it's a popular hack, and when the perpetrators are told it won't work, they go "nah, nah, can't hear you".
TL:DR? Do it with shared libraries as Hugh suggests, or die in agony (:-))
I have a whole series on this: I used to work in/Binary Stability/ at Sun, where David J. Brown (which see!) solved it in Solaris.
The original Go paper was Russ Cox'shttps://research.swtch.com/version-sat He proposed using a "sat solver" to find particular combinations that would work... or timeout and say "can't find one".
Sun used a sat solver to make sure we hadn't screwed up the general case
In rough order, I wrote
*https://leaflessca.wordpress.com/2017/02/12/dll-hell-and-avoiding-an-np-comp... *https://leaflessca.wordpress.com/2018/10/28/how-about-a-stable-kernel-api/ *https://leaflessca.wordpress.com/2018/09/03/avoiding-an-np-complete-problem-...
The last one was an "experience report" submitted to the Go team. Seems people keep repeating past mistakes. Shared libraries were invented for good reasons. But golang and some other modern languages seem to have decided static linking is so much better so they can move their code in a single piece around in containers. Security and efficiency are apparently not something they have heard of or at least they don't care. flatpaks and company cause a similar problem.
-- David Collier-Brown, | Always do right. This will gratify System Programmer and Author | some people and astonish the rest davecb@spamcop.net | -- Mark Twain
participants (3)
-
D. Hugh Redelmeier
-
David Collier-Brown
-
Lennart Sorensen