This was bound to happen. When a bunch of smart idiots (sic!), and all kinds of narcissistic, arrogant YouTube icons and influencers are more important than the other 7.9bn people, this is what we get: Idiocracy Now!

Quid tu, Debian?

And the news came in: Debian adjusts APT to make it safer.

Linus Sebastian, you’re a disgrace!

I’ll say it out loud: I despise those overconfident, self-centered individuals whose main jobs is that of being YouTube stars! There are many educational and informative channels on YouTube, some of which are extremely professionally produced; however, even such channels produce videos full of questionable content, with factual errors and misinterpretations. Or they’re just superficial, shallow. But not those channels are what bothers me (and I won’t even talk of the crappy videos that make more than 90% of YouTube’s content). I’m particularly pissed off by the content creators who are obviously intelligent and rather knowledgeable, yet they have the arrogance of believing that every single idea that comes to their heads must be wrapped in a useless video meant to show how smart they are (a video that includes annoying paid advertising produced by the respective creator, à la “but you couldn’t do that safely without using the fabulous NordVPN etc.”). When such creators are from North America, you can expect other proofs of poor taste, such as ridiculously kitschy video thumbnails, occasionally wearing of beanie hats while inside (also, reverse baseball caps, proofs of mental retard), ear rings as a male (sometimes in the nose or lips, like a gold ring in a pig’s snout). One such creator is the ever famous Linus Sebastian, to be found primarily on the channels LinusTechTips, ShortCircuit, and ChannelSuperFun.

Linus is more than annoying in several ways. He’s a symbol of a society that uses top-notch technology not for discovering cures for cancer or COVID-19, and not for designing better cars and aircraft, but for gaming or crypto mining. His videos often show hugely powerful and expensive hardware that’s produced for the many psychopaths that go under the milder qualifier of gamers. People who use computers for serious work, for learning, or for more innocent entertainment don’t have $3,000 video cards, custom-cooled PCs, $200 keyboards, 24-core CPUs, and so on. They also manipulate a computer’s parts more carefully than Linus Sebastian, and they definitely don’t break a Microsoft Surface out of the arrogance of forcing, in the absence of carefully looking for a hidden screw. All in all, Linus is an egocentric bastard, with a good deal of ADHD and brutality in the presence of expensive hardware. North American retards, what else to expect from them? Decency, moderation, modesty? C’mon.

And then, of course, came this video of Linus Sebastian’s: Linux HATES Me – Daily Driver CHALLENGE Pt.1. (For an explanation of what went wrong, and of other questionable issues, watch Michael Tunnell’s reaction video.)

Why, of course Linus broke it! You see, he wanted the best Linux distro for gaming. I don’t say that wanting Steam is bad; what I want to say is that Pop!_OS is an overhyped piece of shit, for it’s nothing more than a themed Ubuntu with very few additions. I’ll never understand for the life of me what made Pop!_OS so popular in America! (As a further sign of North American arrogance, the Pop!_OS theme only applies to GTK apps, and absolutely no effort at all has been made to theme the Qt/KDE apps that, occasionally, most people would end using! Haven’t they heard of qt5ct?)

OK, so Linus tried to install Steam: he failed in the GUI, he insisted at the CLI, but installing Steam removed xorg and a lot of Pop!_OS packages, thus breaking the system!

Let’s talk about it

In my experience with deb packages and the concepts of Depends, Recommends, Suggests, Conflicts, Replaces, Breaks, and Provides (see also here), I’ve had them all:

  • packages with optional (recommended or suggested) dependencies marked as required dependencies;
  • packages with required dependencies marked as optional;
  • packages that conflict with other packages, but aren’t marked as such (a recent example is lite-themes conflicting with adapta-gtk-theme in Linux Lite);
  • packages that don’t conflict with the packages they pretend to conflict with;
  • packages with wrong minimum or maximum versions of the dependencies.

Here’s a relevant upstream bug that was fixed meanwhile: steam-for-linux #7982: steam tries to remove essential system packages:

Steam needs to install these additional packages:
    libgl1-mesa-dri:i386, libgl1:i386, libc6:i386

WARNUNG: Die folgenden essentiellen Pakete werden entfernt.
Dies sollte NICHT geschehen, außer Sie wissen genau, was Sie tun!
  apt adduser (wegen apt) gpgv (wegen apt) libapt-pkg6.0 (wegen apt) libc6 (wegen apt) libgcc-s1 (wegen apt) libgnutls30 (wegen apt) libseccomp2 (wegen apt) libstdc++6 (wegen apt)
  libsystemd0 (wegen apt) base-files libcrypt1 (wegen base-files) base-passwd libdebconfclient0 (wegen base-passwd) bash libtinfo6 (wegen bash) debianutils (wegen bash) bsdutils
  coreutils libacl1 (wegen coreutils) libattr1 (wegen coreutils) libselinux1 (wegen coreutils) dash dpkg (wegen dash) debconf (wegen dash) diffutils libbz2-1.0 (wegen dpkg)
  liblzma5 (wegen dpkg) libzstd1 (wegen dpkg) zlib1g (wegen dpkg) tar (wegen dpkg) e2fsprogs libblkid1 (wegen e2fsprogs) libcom-err2 (wegen e2fsprogs) libext2fs2 (wegen e2fsprogs)
  libss2 (wegen e2fsprogs) libuuid1 (wegen e2fsprogs) logsave (wegen e2fsprogs) fdisk libfdisk1 (wegen fdisk) libmount1 (wegen fdisk) libncursesw6 (wegen fdisk)
  libsmartcols1 (wegen fdisk) findutils grep libpcre3 (wegen grep) install-info (wegen grep) gzip hostname init systemd-sysv (wegen init) init-system-helpers (wegen init)
  perl-base (wegen init-system-helpers) libc-bin login libaudit1 (wegen login) libpam0g (wegen login) libpam-runtime (wegen login) libpam-modules (wegen login) mount
  util-linux (wegen mount) ncurses-bin sed shim-signed grub-efi-amd64-signed (wegen shim-signed) grub2-common (wegen shim-signed) mokutil (wegen shim-signed)
  sbsigntool (wegen shim-signed) sysvinit-utils libcap-ng0 (wegen util-linux) libudev1 (wegen util-linux)

In the case of the person reporting the bug, the root cause was this one:

apt policy libc6 shows me indeed that I have a newer libc6 version installed than what is available on the Ubuntu repos.

A guy from Valve rightfully commented:

not letting apt proceed in this case is definitely the right answer. This is a distro packaging issue, not a Steam client issue.

In the case of Pop!_OS 21.04, let’s notice this part from the apt output:

The following packages will be upgraded:

libgbm1

This was, I believe, the culprit, as Pop!_OS 21.04 has in its repos a newer version than Ubuntu 21.04:

  • Pop_OS! 21.04: libgbm1_21.2.2-1ubuntu1pop0~1634226723~21.04~b715ae2_amd64.deb
  • Ubuntu 21.04: libgbm1_21.0.3-0ubuntu0.3_amd64.deb

I’m not sure how this newer version has generated conflicts, but apparently it did. Or maybe, at the time when Linus Sebastian installed it, the version was different, possibly older than Ubuntu’s?! Either way, it was Pop!_OS’s fault, not Steam’s!

The updated version of Steam fixed this potential situation as follows:

In your situation, the apt command would now fail with unsatisfiable dependencies, instead of removing important packages.

As for Pop!_OS, I don’t care what they fixed and how.

The collateral damages are tremendously important

So many replies praised the move for making Linux more stupid-proof, but there were also a number of common-sense ones, of which I’ll mention the following ones:

But here’s the best one:

Indeed, were an anonymous Joe Sixpack or Jane Doe complaining about having screwed their Linux system, everyone would have been called them names; but when His Royal Highness Linus Sebastian, King of YouTube, does it… the world obeys!

That includes the KDE herd:

Practically, they self-reported the KDE Bug 445226: Replace “this will remove some packages” dialog with a check for the transaction removing system-critical packages like plasma-workspace or kwin, just to be able to fix it!

¡Madre de fucking Dios!

Well, the only consolation is that Win10 and Win11 are worse.

Late edit: is Steam really usable on Pop!_OS?

Here’s what I got:

Meanwhile, this is what I get in Fedora:

But, of course, if you’re stoopid, Pop!_OS is the best distro on Earth.

LATE UPDATE: People comment on DWW

Debian makes APT safer, in DistroWatch Weekly, Issue 945, 29 November 2021; selected readers’ comments:

11 • Debian APT Changes (by dave on 2021-11-29 07:46:56 GMT from United States) Sounds fishy, as usual. What is ‘Protected’ and ‘Essential’ ..?? Have to learn more voodoo and jump thru more hoops to remove stuff like Pulseaudio??

13 • Debian APT changes (by Jeff on 2021-11-29 10:03:36 GMT from United States) What would you bet that systemd is or will soon become classed Essential or Protected? So that even if you have and use another init it cannot be removed. Even though Debian talks about init diversity the truth is that several of the developers are systemd only and want all others to be unusable.

16 • @13 Debian APT changes (by anticapitalista on 2021-11-29 11:59:12 GMT from Greece) I tried to build antiX (sid repos) via debootstrap and in a chroot and I am not able to remove sysvinit-utils for sysvinit-utils-antix (in order to use antiX’s implementation of runit). It worked just fine before this latest ‘improvement’ to apt. Anyone know how to ‘manually’ force the removal/replacement?

18 • Debian APR changes (by dragonmouth on 2021-11-29 12:57:43 GMT from United States) At first glance the change looks to be beneficial. However, what is to prevent developers from declaring all their favorite pet software as “Essential”? What if tracking and spying apps are declared “Essential”? Are distros going to grow to 5, 6, 7 or more GB with no possibility of slimming them down? The first thing I do after installing a distro is to uninstall the apps I don’t/won’t need and those that I do not want. In most distros that amounts to 200-300 MB. In some distros, I’ve had to uninstall up to 1GB worth of extraneous apps. Yes, I know. With today’s multi-terabyte drives there is no need to worry about 200 MB, 300 MB or even 1 GB of wasted space. But a GB here and a GB there and pretty soon you’re looking at some serious waste of storage space.

Good move, Debian! (Not.)