0

So the core of the problem started after Ubuntu prompted me to upgrade. I am on Ubuntu 18.04.5 (Bionic Beaver). After the upgrade, I tried starting my browser to no avail. So I navigated to the binary in a terminal, ran it, and got this error:

user@computer:~/Files/Apps/Waterfox$ ./waterfox
XPCOMGlueLoad error for file /home/user/Files/Apps/Waterfox/libnspr4.so:
/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.30' not found (required by /home/user/Files/Apps/Waterfox/libnspr4.so)
Couldn't load XPCOM.

Naturally, I tried upgrading the libc and libc-amd64 packages to their latest version (2.34) however when I downloaded and installed the .deb with dpkg, I majorly screwed up my system and now this error comes up every time I re-run the command.

user@computer:~/Downloads$ sudo dpkg -i  ./libc6-amd64_2.34-0ubuntu2_i386.deb ./libc6_2.34-0ubuntu2_i386.deb
(Reading database ... 317143 files and directories currently installed.)
Preparing to unpack .../libc6-amd64_2.34-0ubuntu2_i386.deb ...
Unpacking libc6-amd64:i386 (2.34-0ubuntu2) over (2.34-0ubuntu2) ...
Replaced by files in installed package libc6:amd64 (2.27-3ubuntu1) ...
Preparing to unpack ./libc6_2.34-0ubuntu2_i386.deb ...
Unpacking libc6:i386 (2.34-0ubuntu2) over (2.34-0ubuntu2) ...
dpkg: error processing package libc6:i386 (--install):
 package libc6:i386 2.34-0ubuntu2 cannot be configured because libc6:amd64 is at a different version (2.27-3ubuntu1)
dpkg: dependency problems prevent configuration of libc6-amd64:i386:
 libc6-amd64:i386 depends on libc6 (= 2.34-0ubuntu2); however:
  Package libc6:i386 is not configured yet.

dpkg: error processing package libc6-amd64:i386 (--install): dependency problems - leaving unconfigured Errors were encountered while processing: libc6:i386 libc6-amd64:i386

After this, I tried using sudo apt upgrade:

user@computer:~/Downloads$ sudo apt upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 libc6 : Breaks: libc6:i386 (!= 2.27-3ubuntu1) but 2.34-0ubuntu2 is installed
 libc6:i386 : Depends: libgcc-s1:i386 but it is not installable
              Depends: libcrypt1:i386 (>= 1:4.4.10-10ubuntu4) but it is not installable
              Breaks: locales (< 2.34) but 2.27-3ubuntu1.4 is installed
              Breaks: locales-all (< 2.34)
              Breaks: locales-all:i386 (< 2.34)
              Recommends: libidn2-0:i386 (>= 2.0.5~) but 2.0.4-1.1ubuntu0.2 is installed
              Recommends: libnss-nis:i386 but it is not installable
              Recommends: libnss-nisplus:i386 but it is not installable
              Breaks: libc6 (!= 2.34-0ubuntu2) but 2.27-3ubuntu1 is installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

So this tells me to use fix broken install command. Using sudo apt --fix-broken install is telling me that it will remove 175 packages, so that's an absolute no-go. The packages it wants to remove are essential, like playonlinux, wine, steam, code, etc. basically stuff i use every day.

All in all, pretty much every app still works on my computer, but I can't use my browser (using chrome temporarily right now) and I can't install new packages. I don't want to risk restarting my PC in case of some major screw-up, so I need to fix this before the next restart. Any ideas?

  • You have glibc | 2.34-0ubuntu2 | impish | source installed yet you say you're on 18.04? then glibc | 2.27-3ubuntu1.4 | bionic-updates | source as also appears in your message is correct. You've polluted your sources with packages for different releases; those should be removed; but you mention trying to upgrade to the latest (2.34?) but on your release 2.27 is the latest... Please explain as your latest does not match a 2018-April (18.04) system. How did you update? FYI: You may no longer be using 18.04 – guiverc Sep 21 '21 at 22:19
  • Maybe useful is https://askubuntu.com/questions/151283/why-dont-the-ubuntu-repositories-have-the-latest-versions-of-software (ie. the 18.04 tells you you're using the 2018-April release with packages of that date). Updated security fixes are back-ported to your software; not newer versions (except in rare circumstances where it's more work to backport fixes than update all packages required for a newer version). Depending on how you performed the 'update' a re-install maybe easiest fix (you fix by reversing what you did but you've not said what you did; it maybe minimal & easy, maybe not) – guiverc Sep 21 '21 at 22:32
  • @guiverc I manually downloaded the deb files from the ubuntu repository and tried to install them with dpkg. I was really desperate to get waterfox working, and it demanded that I have this newer version of a library. – spacefluff432 Sep 22 '21 at 01:11
  • You need to revert your changes; either via uninstall of the package you added (intended for impish) or install -reinstall (dpkg -i) of the correct version; or reverting backup. You've changed part of your system to impish so you can go all the way (bump yourself to impish but you're off-topic here) OR restore backups; back out your changes (I'd try installing the correct version of the package you installed; dealing with issues as they occur; I don't have a bionic system handy and aren't willing to spin up a VM to see how easy it'd be given what you did) – guiverc Sep 22 '21 at 01:57

1 Answers1

1

I solved the issue for myself by checking what packages --fix-broken would've actually removed, and it wasn't actually anything that bad. Ran that and it fixed the problem, with a little help from the Software Updater.

I am leaving this question up though, just in case somebody wants to answer the theoretical problem of using a newer GLib version on an older Ubuntu version.

(Solution moved here from the OP's question)

Zanna
  • 70,465