News for hackers. Stuff that matters.
Re:“Shared libraries are not a good thing in general” by ufo on Saturday May 01, 2021 @05:28PM (#27010013)
As Serge Guelton said in a followup email, one of the reasons that Linux distros use dynamic linking is to reduce the disk usage and bandwidth requirement for updates.

Technically speaking, would it be possible to design a Linux distro so that the installed executables are statically linked but an update for a library doesn't require redownloading large executables for every package that depends on the library?

Re:“Shared libraries are not a good thing in general” by est31 on Saturday May 01, 2021 @06:03PM (#27010293)
I think it would be possible, yes. Google has even developed a binary diffing system.

https://www.chromium.org/developers/design-documents/softwar...

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=538339

It would still not be pleasant for disk space. Ideally I want my OS as well as the VMs to be small and require as little ram as possible. I don't want to update my entire OS just because glibc had a critical bug.

Re:“Shared libraries are not a good thing in general” by wizzwizz4 on Saturday May 01, 2021 @05:32PM (#27010052)
Yup: distribute source code. (Step 0 is making compilation not require the world's most powerful gaming rig.)
Re:“Shared libraries are not a good thing in general” by mjbrusso on Saturday May 01, 2021 @05:43PM (#27010148)
What about distribute LLVM bitcode?
Re:“Shared libraries are not a good thing in general” by rodgerd on Saturday May 01, 2021 @06:14PM (#27010365)
> As Serge Guelton said in a followup email, one of the reasons that Linux distros use dynamic linking is to reduce the disk usage and bandwidth requirement for updates.

There are a number of ways to solve the latter problem, though: dnf, for example, includes the ability to download only the diff between your installed RPM and the version you're upgrading to.

Re:“Shared libraries are not a good thing in general” by klyrs on Saturday May 01, 2021 @05:38PM (#27010109)
Absolutely possible, with source distribution. It keeps downloads small, and upgrades (notionally) transparent. The downsides are that it's computationally expensive on the user end, in addition to storage bloat. Does the latest firefox depend on the latest llvm? Depending on how awful your hardware is, you might wait a day for those two packages to build.
Re:“Shared libraries are not a good thing in general” by drdec on Saturday May 01, 2021 @05:37PM (#27010101)
I think a distribution similar to Gentoo, where the software is compiled at install time, could do something like this.

(I don't know enough about Gentoo to know if it already does.)

Re:“Shared libraries are not a good thing in general” by brandmeyer on Saturday May 01, 2021 @05:49PM (#27010197)
The single number one gripe about Gentoo was how long it took to build packages, closely coupled to the difficulty in keeping a system up-to-date.

In response, Gentoo developed methods to ship binaries for the common cases.