2

I installed Antergos yesterday with the Cinnamon DE. After using it for a while, I got a notification for updates to some core packages, and I thought "hey, being up to date is good right? Why not" and updated everything.

Today, I found that I'm unable to login. Luckily I was able to get a tty prompt and install Xfce4 from where I could go hunting on the internet for the solution.

It turns out that those updates I did included upgrading readline from 6.3 which I had to 7.0. cinnamon-desktop apparently relies on 6, so I started getting errors like:

cinnamon: error while loading shared libraries: libreadline.so.6: cannot open shared object file: No such file or directory

Of course just finding this error message in the first place took some hunting.

Indeed, I had only /lib/libreadline.so.7, so that explains the problem. I then assumed the easy solution is to just install the old version as /lib/readline.so.6 and that's that, but I had trouble figuring out how to do it in pacman and it turns out this isn't something encouraged in Arch.

Eventually I followed the advise from a thread about this problem and simply downgraded my readline to 6.3 from the pacman cache, and also bash since it depends on readline. Now cinnamon works as before. I see these two packages in the update notifier and I know that if I install them it will break my system.

My question is this: Is this sort of thing (updates suddenly breaking everything) expected behavior with Arch and/or Antergos? Is there some sort of "stable" channel that I could use instead, to receive updates only after they've been out for a while and tested in the real world?

I was planning to spend my morning doing work, but instead I spent it fixing a bug caused by an update. What did I do wrong? How do experienced Arch users handle this?

  • Should I have just not installed updates unless I absolutely needed them? (but what about security and vulnerabilities?)
  • Should I have only installed updates on a regular schedule, and made time for inevitable troubleshooting afterwards?
  • Should I have configured my repositories/update settings differently to not get the latest updates?
  • Is this expected behavior and you're supposed to just get used to rolling back from the cache?

Addendum: The issue with Cinnamon is included only as an example, but to await confusion from future readers, I should not that it is apparently now been fixed (7 hours after bug was opened) by rebuilding cinnamon. Looks like I got very "lucky" - I updated just when readline 7 was pushed out, but before the Cinnamon maintainers could catch and fix it.

user200295
  • 23
  • 4
  • @jasonwryan Are you sure about that? This seems more to do with Arch, not Antergos per se. – user200295 Nov 14 '16 at 21:02
  • You did nothing wrong. All of the Linux/Unix/BSD Desktops have persistent issues: no vision, package maintenance snafus, excessive incompatible libraries, perpetual driver issues, use of very old technologies, bad sound, bad video, etc, etc, etc. The only exception for *nix I know is macOS. – Christopher Nov 14 '16 at 21:14
  • 1
    @Christopher macOS has plenty of issues too: restricts the user's preferences, comes bundled with nagware, no native package manager, it's non-free, only runs on certain hardware, etc. – jayhendren Nov 14 '16 at 21:18
  • Antegros is *not* Arch. It is a separate distribution. – jasonwryan Nov 14 '16 at 21:30
  • @Christopher Well, I have some experience with other distros, and I got the impression that this sort of catastrophic failure (computer would have been unusable if I didn't know enough CLI to install a new DE and fix it from there) seem rare in, say, Ubuntu LTS. Maybe I've just been lucky. I was wondering if, being new to Arch, I was trying to use it in an unintended way. Otherwise sure, nixes have issues, but it's not really that bad and usually worth the benefits. – user200295 Nov 14 '16 at 22:02
  • @jasonwryan I was going to reply "sure but who cares it's close enough" but now I'm wondering if this particular issue was an Arch problem or an Antergos problem. If the latter, sounds like I should just set up my own Arch and stop using Antergos? Sorry for the confusion, but I assumed at first that Antergos couldn't possibly be responsible, now I'm not so sure. – user200295 Nov 14 '16 at 22:06
  • @user200295 Ha! Yes, looks like jayhendren thought I was a fanboi or something - not the case. Just trying to assure you that there was no mistake on your part, rather that issues in general are pretty much par for the course, especially in a rolling distribution. – Christopher Nov 14 '16 at 22:30
  • @user200295 as Christopher said, you did nothing wrong. This is a failure on somebody else's part (i.e., the distro or package maintainer). In other words it's probably an Antergos problem. – jayhendren Nov 14 '16 at 22:32
  • @Christopher haha, no, I just thought your wording was odd, as you seem to imply that macOS is free from any problems at all. – jayhendren Nov 14 '16 at 22:33
  • +1, came here via Google as I apparently was as lucky as you were, and simply updating again solved all of my problems. Using Arch, not Antergos, btw. – Eike P. Nov 15 '16 at 10:36

2 Answers2

1

This question is probably better directed at the Antergos forums, but I can share from personal experience with Arch:

  • It's generally better to upgrade frequently than to upgrade infrequently. You catch any issues as they come up and deal with them one-at-a-time rather than letting them pile up.

  • Update as you see fit. There's no particular reason to stick to any particular upgrade schedule; it depends on your system and your needs. I've found, for instance, that Arch systems that have fewer packages installed generally don't need to be updated as frequently. On the 4 Arch systems that I use regularly, I update every time I log in (as much as once a day), which seems to work pretty well.

  • Stick with the latest updates from the latest repos. Generally speaking, this will get you the latest security updates, get you packages that have a better chance of working with the other software you have on your system, and keep everything running smoothly.

  • Personally, I only rarely have to roll back from cache. When there is an issue with upgrading, it's usually due to maintainers failing to build or test their packages properly, not due to me upgrading overzealously.

The issue you have with Cinnamon seems likely to do with a poor packaging job on the part of the package maintainers, and not a failure of the Arch-style bleeding-edge, rolling updates. Personally, I've had some issues with Cinnamon on Arch, and it's never worked quite as well as the other DEs (I've used Gnome, MATE, and i3 with much less hassle).

One final thing that I would like to share is that, if you know you have problematic packages that break on upgrade, you can add them to an IgnorePkg directive in /etc/pacman.conf. I only have to do this rarely, and it's almost always an AUR package that I'm ignoring (I like to use an AUR helper). Once I had to blacklist the kernel in IgnorePkg on a laptop because the proprietary driver for the backlight did not work on recent kernel versions (luckily this got fixed upstream eventually and I could go back to receiving kernel updates). I would not recommend taking this approach unless absolutely necessary.

jayhendren
  • 8,224
  • 2
  • 30
  • 55
  • Ah, the paragraph about Cinnamon especially helps demystify things. Thanks for the useful suggestions as well! – user200295 Nov 14 '16 at 22:36
  • Glad to hear that helped. Good luck with Arch/Antergos! It's definitely more of a hands-on distro than many others, such as Ubuntu and the Ubuntu variants. – jayhendren Nov 14 '16 at 22:38
0

ArchLinux is a rolling release distribution as opposed to point release distributions. That means you will never have to reinstall ArchLinux to get the latest and greatest software. It slowly transforms into the newest software. This is great, most of the time. Sometimes, larger transitions need to be done and this can cause problems. To be aware of larger transitions, you should subscribe to [email protected].

ArchLinux is also somewhat bleeding-edge. That means you get the latest software fairly on time. There are testing repositories in ArchLinux as well, that you could enable in /etc/pacman.conf. I don't know how long packages stay in testing, but it is not too long. This is great, most of the time. Sometimes you will get packages that are not tested well enough.

When updating ArchLinux (which you should do), you can follow two strategies:

  1. Update often. You will run into several small problems. But they usually don't break too many things. You can also more easily understand what package might have caused the problem.

  2. Update rarely. You will run into less problems, simply because most of them have been fixed by time. However, it might be that upgrading your system is a rather large task and updating it will take a while.

The tips above are rather pessimistic. There are problems here and there (more if you don't run widely used software), but generally, ArchLinux is very stable.

To answer your question: you should definitely update! ArchLinux is known to roll out security patches fairly quickly, and you would miss that. However, do not update 10 minutes before giving a presentation with your laptop.

If you run into problems, then

  • check /var/log/pacman.log, for a history what has changed, try to understand what package is causing the problem.
  • Use downgrade to downgrade the specific package.
  • Use the ArchLinux Roll Back Machine as a last resort.
pfnuesel
  • 5,702
  • 8
  • 35
  • 60