So I had my first broken update yesterday. Given how many different things I'm always installing, and how many different "unofficial" repositories I'm using, I would say openSUSE has done a pretty good job of maintaining its sanity. But I was trying to figure out how to check what apps I had installed that needed updating. This is one thing that Linux in general, and openSUSE in particular, have all over Windows - a central clearing point for application updates. On Windows, every vendor has their own update checker. But with the idea of central clearing spots for application updates, you don't have all this redundant checking going on.
So I wandered through YaST's Software Management to figure out how to get it to tell me what needed to be updated. It isn't obvious and every time I try to do it, I get lost. But actually, it isn't that hard. Package -> All Packages -> Update if newer version available does what I want. It shows a list of all the packages with updates. I don't generally do them all, en masse, but this time I took a chance (even despite the fact it was going to update some base KDE packages too).
All went smoothly, except for the Emacs update. For some reason, the big jump from v21 to v22 isn't available in the mostly standard places I use, but that's okay, as I'm not ready for it. My crfty old .emacs file will require some serious cleanup before it will work with v22 (I still have some v17 stuff in there!). But it did upgrade from 21.3 to 21.4, but in a very half-hearted fashion. It left /usr/bin/emacs, which was the 21.3 version and created a new /usr/bin/emacs21 (which was linked to a non-existent emacs21-nox), as well as a new emacs21-x version, which was the new 21.4. But even that didn't work too well, as it was expecting some lisp folders that weren't linked correctly. And there were some missing lisp files, like url, that I had to install. And then I needed to fix the /etc/emacs folder, as it created a nearly empty /etc/emacs21 folder. Ditto with the /usr/share/emacs and /usr/share/emacs21, where all the system wide lisp gets installed. The /usr/share/emacs21 folder was practically empty, except for the magic subdirs.el file, which I had to copy into the /usr/share/emacs folder. This files makes it so that emacs will find lisp files in subdirectories of /usr/hsare/emacs, like the url package.
So it took some tweaking to get Emacs to work again. I'm not sure what went wrong. Perhaps I grabbed the 21.4 update from a different repository, which used a different directory structure. Dunno. But Emacs is working again, so all is good with the world!
Have you tried Ubuntu or Debian? It does job quite well, never had any problem with update issues. However I must agree RPM based package system improved quite well.
ReplyDelete