Why does Ubuntu list more packages than Debian?

Running ‘apt-cache stats’ on Ubuntu and Debian on distrosea.com shows a large difference in the number of packages.

Format: Ubuntu - Debian = Difference
Total package names: 158,944 - 120,720 = 38,224
Normal packages: 72,131 - 63,041 = 9,090

Why are there so many more in Ubuntu if it is based on Debian?

The key is in the words “based on.” It is not the “same as.” There are many packages that are in Ubuntu that are not in Debian. The opposite is not generally true.

3 Likes

While I appreciate your reply, it makes me realize I didn’t make my question clear enough.

Below is a readout of apt-cache pkgnames | wc -l , uname -r , and apt-cache madison for a particular software I was looking at from various Debian based distros on Distrosea.com.

Pop OS	            80922	6.8.0-76060800daily20240311-generic	0.3.0-3
 Linux Mint	        77970	6.8.0-51-generic	0.4.3-3
 ElementaryOS	    76861	6.8.0-49-generic	0.4.3-3
 Ubuntu	            72577	6.11.0-8-generic	0.4.4-1
 Vanilla OS	        69114	5.19.0-31-generic	0.3.0-3build1	
 LMDE		        65044	6.1.0-12-amd64		0.4.2-1
 Trisquel	        64686	5.15.0-67-generic	0.3.0-3
 BunsenLabs	        64567	6.1.0-17-amd64		0.4.2-1
 PepermintOS	    64516	6.1.0-15-amd64		0.4.2-1
 Debian	            63442	6.1.0-18-amd64		0.4.2-1
 Pure OS		    58732
 Nitrux		        2321	6.12.1-1-liquorix-amd64
 Linux Lite	        2321	6.8.0-31-generic
 Zorin OS 	        2001
 Siduction	        1873	6.12.6-1-siduction-amd64
 Spiral Linux       1778	6.4.0-0.deb12.2-amd64
 AntiX		        1753
 Endless OS	        1543	6.5.0-10-generic
 Bodhi		        1139
 Slax Debian        1117	6.1.38
 SparkyLinux	     808
  1. While it is obvious that distributions based on Debian will likely have Debian packages + the new distribution’s packages, I’m wondering what they are?

  2. Is it mainly just some window dressing or what are these different packages?

  3. Is there a good command to export the list of packages and then run a comparison and list the differences?

  4. Also, I’m unable to make sense of all the different listings in apt-cache stats and haven’t found any other explanation online?

It’s hard to quantify the differences granularly, but let’s provide a few examples.

The kernel itself in Debian isn’t updated too often in the stable release, on Ubuntu, the Kernel in LTS releases can jump up entire versions through the HWE (Hardware Enablement) updates, each kernel becomes a new package, so we can clearly see that would up the numbers a little.

Separately, we’ve entire software ecosystems that exist in one but not the other. Great example, we’ve .NET in the Ubuntu archives, but it’s not in Debian, there is no upstream source for those packages. Ultimately I imagine Debian would be happy to have .NET upstream eventually, but for now, they simply don’t.

Then, individual applications might be fairly different. Ubuntu effectively doesn’t have a Firefox Apt package, since in the newer releases it’s a transitional package to avoid people having Firefox deleted entirely when the snap replaced it.

The Firefox Apt package in Debian is entirely different to Ubuntu, and then, entirely different again in Linux Mint (which avoids the snap, but isn’t simply the Debian version either).

And ultimately, a lot of these packages might just be some minor abuse of the packaging system. For example, Ubuntu’s default Gnome environment has a few tweaks from Debians (the dock, and the minimise icons, etc). There’s a separate Vanilla package Ubuntu users can install to undo the Ubuntu customisations and revert to stock Gnome. Debian wouldn’t have this because they don’t have a need to go back to their own defaults. Meanwhile Mint wouldn’t ship Gnome Shell, so they could easily have the package in the repos, but, is it actually viable to use in their ecosystem? Probably not.

(And you can see using Apt for config management as a pattern elsewhere, e.g., python-is-python2 or python-is-python3 historically - that’s two whole packages to handle a symlink).

2 Likes

Thank you for your reply!

So, is it fair to say it’s generally tweaks and overhead (symlinks, multiple versions, etc…) plus some additional features (.NET)?

I’m adding some data from Debian Sid below: (I read that Ubuntu is based on Debian Sid and their package count is very similar) I wonder why Debian stable has less packages?

Pop OS	            80922	6.8.0-76060800daily20240311-generic	0.3.0-3
 Linux Mint	        77970	6.8.0-51-generic	0.4.3-3
 ElementaryOS	    76861	6.8.0-49-generic	0.4.3-3
 Debian Sid	        72860	6.12.12-amd64		0.4.4-1+b1:
 Ubuntu	            72577	6.11.0-8-generic	0.4.4-1
 Vanilla OS	        69114	5.19.0-31-generic	0.3.0-3build1	
 LMDE		        65044	6.1.0-12-amd64		0.4.2-1
 Trisquel	        64686	5.15.0-67-generic	0.3.0-3
 BunsenLabs	        64567	6.1.0-17-amd64		0.4.2-1
 PepermintOS	    64516	6.1.0-15-amd64		0.4.2-1
 Debian	            63442	6.1.0-18-amd64		0.4.2-1
 Pure OS		    58732
 Nitrux		        2321	6.12.1-1-liquorix-amd64
 Linux Lite	        2321	6.8.0-31-generic
 Zorin OS 	        2001
 Siduction	        1873	6.12.6-1-siduction-amd64
 Spiral Linux       1778	6.4.0-0.deb12.2-amd64
 AntiX		        1753
 Endless OS	        1543	6.5.0-10-generic
 Bodhi		        1139
 Slax Debian        1117	6.1.38
 SparkyLinux	     808

I’m guessing Pop OS, Linux Mint, and Elementary OS might come down to something as simple as all their interface tweaks along with their additional unique custom features.

Interesting!

1 Like

If you’ve gone as far as running apt-cache and finding out package lists from distros, it’s only one or two steps more to get the list, diff them, and answer the question yourself, surely?

I suspect (guesswork) that you’ll find some packages in Ubuntu that aren’t in the base Debian repos but live in a 3rd party media or contrib place. Similarly, you’ll find debs in the Pop_OS! repo that are equivalent to snaps in Ubuntu, but were debs in the past. There are also debs in the Pop_OS! repo that exist as 3rd party packages in PPAs or other repos in Ubuntu, or are just plain duplicates of other packages. For example, note that your Pop_OS! system there has a wild ‘daily’ kernel build. Is there more than one of these?

In short, I think you’re so close to the answer to your question, with the data you’ve gathered, we can smell it :slight_smile: Distros have different motivations for packaging and allowing the hosting of things based on their own customer/user requirements. That’s it.

2 Likes

Thank you for your reply!

If only I had my own computer, I could actually get those elusive answers. (I’m working on getting one. Any suggestions for finding a good Linux machine with open source firmware are appreciated. )

But this is interesting.

It’s amazing how similar all the Debian based OSes felt (on the command line).

I’m guessing running apt list > /path/to/filename.txt might be an ok way to get a list of the packages and the the diff command could provide the output I’m looking for.

But I can’t do that on Distrosea…

Thanks again and best wishes!

One question worth asking is what the point behind all this is? What are you, ultimately, trying to figure out?

I’m trying to understand how all of these are related and what the differences really come down to.

I’m also deciding which one I’ll use as my daily driver and which I’ll use for servers, etc.

I still don’t understand the output of apt-cache stats, but I have a much better overall picture.

I’ve more or less made my decision.

When I get a computer, I will figure out the rest.

Ubuntu uses Debian sid as a upstream source for its source code, but not everything comes from there. The packages Ubuntu uses are its own, with the source code imported creating Ubuntu packages anyway.

The packages from upstream Debian may contain defaults/configs as provided by the Debian team; Ubuntu team devs often don’t amend these; but create their own in Ubuntu packages; thus you can install a desktop on Ubuntu Server and get some of the defaults from upstream Debian; but use different packages to install that desktop & you’ll get the Ubuntu flavor version of that same desktop. This effect means distros downstream can have a slightly larger quantity of packages; and whilst you may achieve two sets of configs; in effect its not anything new.

For the distros that don’t build their own system (ie. your list of distros included many that use binaries from upstream sources) those can have inflated results as the same package will get counted more than once; if it’s a Ubuntu based system for example; the count may count the Ubuntu package, but you’ll also have the version of package (inflated version number) that does the same thing of the downstream flavor; the inflated version on the downstream based on system will mean that package can be expected to be installed & used. Does your count of packages remove this duplication? I suspect it doesn’t; Pop OS, Linux Mint, Elementary are based on systems that do use Ubuntu’s binary packages.

If I was deciding which GNU/Linux distro I’d want to use, the package count is NOT something I’d consider.

I’m using Ubuntu plucky right now, but I also do use Debian. As far as I’m concerned; the package differences between Ubuntu and Debian are mostly moot, and it’s the timing that matters to me most (ie. I’d spend more effort deciding if I used a LTS, non-LTS old-LTS etc; or in Debian terms testing, stable, old-stable etc. My secondary Debian desktop runs testing, so its pretty much the same as me here on Ubuntu’s development release… I have other systems, and whilst most are running a stable release, most also run Ubuntu as its easier for me, and packages are not what I consider.

Different distros have different security profiles; Ubuntu’s is rather easy to work out given the repository of where packages are found tells gives you detail; but your look at totals ignores that detail anyway.

When it comes to removing/dropping packages; in many cases Ubuntu/Debian do it at the same time, which given my use of testing on Debian and development here on Ubuntu; it appears the same time usually for me; however if using a stable release you may not detect that did it at the same time, as Ubuntu LTS is always released April of the even year, where Debian is the odd year when it’s ready; thus timing never aligns.

Package differences between Debian & Ubuntu (or systems based on those) will be minimal I suspect; differences in packages of those and say Fedora, or OpenSuSE maybe more significant; but even then the package count is NOT what I’d consider if choosing a distro.

I’ve made my choices; I don’t use just Ubuntu, but I’m using Ubuntu 85%+ of the time (some of my files are on a Debian server, but I’m ignoring servers to make 80% guessimate somewhat easier to guess)

2 Likes

This topic was automatically closed after 30 days. New replies are no longer allowed.