Linux: the only OS that uses less disk space after an update?
Love to see upgrades with a negative net size lmao. Software should get more optimized with time, not more bloated. Oop, just got the gnome console popup notification saying that my install command finished running, sweet -- it took as long as making this post
Exactly. Same here. The fact that „linux“ isnt a product that has to have the shiny new thing after every update and has no deadlines to hold and no manager to keep happy makes it a fundamentally different thing which actually is very much in line with efficiency ideas, the idea of progress and evolution as a whole. At least thats how I view it.
Back in the day there was a Mac OS update (Snow Leopard) that took gigabytes off. They dropped support for PowerPC CPUs. So the compiled binaries basically got slashed in half.
The goals of Snow Leopard were improved performance, greater efficiency and the reduction of its overall memory footprint, unlike previous versions of Mac OS X which focused more on new features. Apple famously marketed Snow Leopard as having "zero new features".[13] Its name signified its goal to be a refinement of the previous OS X version, Leopard.
As an avid apple disliker, they really got a lot of things right with 10.x, with snow leopard hitting it out of the park. Everything from them around that era was slick. If I wasn't a poor college kid running a 5 year old eBay Thinkpad I would have been sucked into their oppressive ecosystem in a heartbeat.
I don't know if that's what they did for the PowerPC -> Intel switch, but now with the Intel -> ARM switch, Xcode compiler tools spit out dual arch binaries, so you can run the same binary natively on x86 or ARM. Things that aren't compiled that way yet and only have x86 binaries, will be run using Rosetta 2.
Doesn't matter much to the end user though. It's all just pretty seamless if you're on an ARM Mac and idk if there's much or any problems on x86 Macs yet regarding binary compatibility. I actually doubt there is.
a new version of a program can also move to a different set of dependencies that is shared with another program, so you don't need to keep both around.
This wouldn't appear like this when upgrading the system with pacman. pacman does not automatically remove orphaned dependencies during upgrades. You have to query for them and remove them explicitly as a separate operation afterwards. So in the OP what we're seeing is the new versions of packages themselves getting smaller.
I remember one internship in college, I realized that after 4 months of work, the result was 15k lines less code than when I started. I figured out new ways to structure the system so it was much easier to write and maintain, while actually adding features. That felt great
And yeah, there are many ways for it to happen. Ex. someone was shipping the tests with the code and decided to stop, debug symbols being removed, inlined dependencies being externalized, maybe a new version of a UI toolkit has extra icons built in
Efficiency can gently creep in. What blows my mind is that this is averaged out across so many packages at once. And sure, sometimes it goes up too, but nothing like Windows/OSX. It's really cool that you can make a Linux that will fit into ~any space you want, whereas the min requirements for Win11 include 64gb of hd
Decided to try this out on Tumbleweed. I last updated yesterday. Today I have 4 packages to upgrade and doing so will drop ruby 3.3. Looks like I also have Ruby 3.4 installed so likely I had a package depending on 3.3 and another on 3.4 and now the 3.3 has moved to 3.4. I regained a whopping 30 MB disk space!