I have high hopes for future Ubuntu (desktop) release which seem to be making moves in the right general direction, but at the moment PopOS is probably where I am going to hang my hat.
It's not _exactly_ a diff, but here's a link to the Pop!_OS github page, which contains 149 repos (only 16 of which are forks) https://github.com/pop-os
> one could take Ubuntu and run a few shell scripts (I am grossly oversimplifying) and boom you are now running Pop.
That same link notes that the top languages for the Pop!_OS repos are Rust, C, Python, JavaScript, and (lastly) Shell. So not _exactly_ "a few shell scripts". (I don't know how accurate that really is, but I do know they've written a fair bit of Rust.)
(Note: I don't currently use Pop!_OS and think the name is absurd)
I suppose booting the live image and dumping packages to a file, then diffing that might be one approach?
(dpkg --get-selections)
You might also want to archive all of /etc, and compare - but that might introduce too much noise.
> So much time and effort goes into building an _entire_ distribution when, at the core, 90% or more of the thing is identical to Ubuntu LTS. Am I missing something?
I think there's a lot of effort that goes into polishing the DE/WM for a specific flavor of Ubuntu. I say this as someone who installed i3 on Linux Mate, and when using Mate now, I see i3 notifications manager.
ElementaryOS for example is a perfect case study.
> I say this as someone who installed i3 on Linux Mate, and when using Mate now, I see i3 notifications manager.
This is case and point why desktop linux sucks so bad. And it really bolsters my question: why are so many people reinventing the wheel for so many different things? Why do distributions need to have their own of everything? And if you do, hey that is great but why do you then need to wrap it into a different OS that is really just a popular one with a lot of tweaks?
I am coming from the perspective of someone who hates 'state' period ... or specifically determinism. So if I cannot reliably go from A to B to C (distributions) by just adding/removing packages and/or a kernel or two ... then the entire thing puts a bad taste in my mouth and makes me feel like the OS I am running is actually just a bunch of duct tape and garbage.
The irony is that under the hood linux is literally just plain old files on a disk. Yet if an XFCE Manjaro user asks somewhere publicly to switch to Gnome ... the solution ultimately tends to be "reinstall the Gnome ISO and copy your shit over"
One way to do that would be to install each version of each variant you are interested in on a VM (of exactly the same config each time), script a filesystem scan that always outputs the same order and sends the result to a central area where you can do a simple text diff on the output or load the results into a db of some sort for deeper analysis. You could even automate it to an extent.
I'm not entirely sure what you'd learn of much use, and you won't learn the differences between matters of real hardware support, but it might be an interesting exercise anyway.
This would only really be useful for comparing similar distributions, i.e. Ubuntu variations of similar vintage. There is so much different between, say, Ubuntu and CentOS, or Ubuntu now and Ubuntu last year, that there are too many differences for a filesystem level compare like that to be meaningful at all.
Just take a look at all the variations in this HN thread on the spelling of it. "Pop", "PopOS", "Pop OS"... I only counted two that used the full name "Pop!_OS".
macOS was nearly confusing (was first Mac OS X, OS X and now macOS) but is still recognisable in the software ecosystem with its exact full name still used.
The name "Pop!_OS" on the other hand looks so cryptic that its users have simplified the name to just “Pop OS”. It’s likely that someone will create a distro for the sake of renaming it. I won't be surprised to see a renaming soon.
Searching for "how to burn a CD pop os" has less useful results than "how to burn a CD ubuntu", but I think that's a user base size issue, not a naming issue.
So much time and effort goes into building an _entire_ distribution when, at the core, 90% or more of the thing is identical to Ubuntu LTS. Am I missing something?
Also... the name with the exclamation and the underscores is one of the most user hostile and nonsensical things I have ever seen in open source, since brainfuck the language.