Well, that was a faff and a half
I upgraded my home Linux box to Debian 3.1 last night.
For a start, the upgrade process helpfully decided to uninstall about 75 packages that must have conflicted with new libraries or something (of course it didn't tell me why they had to be uninstalled, what a silly suggestion). Little things I probably wasn't using in the first place, such as Firefox, xpdf
, gv
, and my print server. Of course, updated packages of all of those are available in Debian 3.1, but did it stop to think I might like them upgraded rather than removed? Did it bobbins.
As if that wasn't enough, it then proceeded to uninstall them in the wrong order. First it took out scrollkeeper
, whatever that is (I looked at the package description and was left almost none the wiser); then it tried to uninstall a couple of other packages whose post-remove scripts turned out to depend on scrollkeeper
, so the entire process stalled at that point and had no idea how to continue. Eventually I had to go grubbing around /var
, find the post-remove scripts and hack the scrollkeeper
lines out of them. It also didn't help that dpkg
helpfully avoided showing me any meaningful error message such as ‘scrollkeeper: command not found
’, and instead I had to content myself with ‘post-remove script returned status 127
’. I eventually had to strace dpkg
to work out what the problem was. (And I can hear Mr Prosser in my head now saying ‘That's the display department’.)
So. Having fixed the post-remove scripts, the install (or rather the bulk uninstall) was ready to continue. Next headache was the rather feeble checking for modified configuration files. If I've actually modified a file in /etc
, I do appreciate the Debian upgrade process telling me so and offering to let me keep the old version, update to the new version, look at the differences between them or escape to a shell and sort it out. That's fine. But for goodness' sake I could have done without being given this choice for five times as many configuration files I hadn't modified as for ones I had! I don't know what was wrong with its detection, but it was definitely screwy.
Any Debian aficionados reading this chronicle of pain might have guessed by now that I was using apt-get dist-upgrade
rather than the choice of serious power users, dselect
. Every so often during the process I did wonder whether the apt
detractors had a point, and attempted to use dselect
to sort out the weird dependency mazes instead. I gave up after I discovered that I couldn't get it to explain to me why apt
was doing what it was doing, since when I tried to make dselect
do the same thing it reported a completely different tangle of strange dependencies and conflicts, but just as impenetrable.
Eventually, after much continued annoyance, I was finally left back at a root prompt. Time to see if I can reinstall the ‘helpfully’ removed Firefox. But no: it apparently can't install mozilla-firefox
because it depends on $library
‘which is not going to be installed’. Huh? Normally this is precisely the nice thing about apt-get
: if the package you asked for depends on five obscure libraries you haven't got, it hunts them down for you and installs them as well. Now, suddenly, it's going all innocent and saying ‘not my problem, guv, you didn't ask for that library’. So I tried explicitly installing those libraries too, in the fond hope that that might get me a marginally more helpful error message that told me why it was reluctant to install them. But no; instead it suddenly decided to cooperate after all, uninstalled another 25 almost unrelated packages, installed the libraries I wanted, and then installed Firefox. Hooray! Ish.
So now I had something roughly resembling a working system, only every so often I'd trip over an xpdf
– or gv
-shaped hole in it. In nearly all such cases, a quick apt-get install
sorted the problem out without complaint: no mysterious package conflicts, no strange library incompatibilities, no problem at all. Leaving me wondering why on earth it had been so important to uninstall those packages at the beginning of the process!
I'll skip over the entirely separate headache that is GNOME 2, because it isn't really Debian's fault that GNOME 2 is like GNOME 1 only with all the useful bits removed. Debian thoughtfully put up a warning box telling me that my GNOME 1 configuration couldn't be converted because GNOME 2 couldn't do most of the things GNOME 1 could do. As it happened I knew this already (from experience with my work RedHat box), so I was more or less expecting pain in that area anyway.
Still, got there in the end. Now I have a mostly working Debian 3.1 system; only the fonts have all gone screwy. Whatever fonts Mozilla is using by default are horribly ugly, with lots of vertical strokes that obviously should be the same width coming out at different widths. My guess is that they're scalable fonts being rendered without useful hinting, perhaps because somebody expected them to be antialiased so didn't bother (in which case, I need to work out how to turn on antialiasing). Worse than that, though, the Pango automatic font selection in my own programs (i.e. GTK 2 Puzzles) is now returning fixed
whenever I request a sans-serif font, irrespective of the size I asked for and also irrespective of the fact that fixed
is monospaced rather than sans! For goodness' sake, if it had to fixate on a single font for everything it could at least have returned variable
.
It's possible that I'm missing some vital font management package which was helpfully not installed for me; but I fear I'm not going to find out without grubbing through the Pango source to see how it's supposed to be working.
Finally … one of the reasons I was keen to upgrade to Debian 3.1 was because I expected it to have up-to-date libraries and compilers, thus allowing me to compile reasonably modern software. One particular thing I was interested to have a go with was ‘Rosegarden’, a piece of music software I'd been hearing good things about. And indeed, 3.1 is capable of compiling Rosegarden, and better still there's a pre-built package of it in unstable (which right now means I can just manually install it because all its library dependencies are satisfied by stable). But to add insult to injury, when I try to run Rosegarden, it forks off a second process which tries to open a weird sequencer thing in /dev
, immediately dies because that device doesn't exist on my system, and brilliantly the main Rosegarden process sits there and waits for the second process to finish starting up, having not noticed that it's long since dead and never going to do so! This one's probably my own fault for installing a package out of unstable, I admit, but it did rather leave me wondering whether I'd got any benefit from all that pain.
I remember upgrading to Debian some time around 1998, because of its surprising tendency to Just Work and to get things right which other distributions got wrong. Either I had a very unlucky and unusual experience last night, or somewhere between then and now it has lost its way. Badly.
no subject
no subject
no subject
no subject
no subject
I'm not sure how to re-structure the front page to improve this.
no subject
no subject
no subject
either i'm more tolerant of misbehaving upgrades or you were just extremely unlucky.
-m-
no subject
no subject
apt-get dist-upgrade
has always worked fine for me in the past, so I'd never previously had trouble from not reading release notes and it wasn't obvious that they were the first thing I should look for.I'll read them now and see if they provide any useful information about how to sort out my remaining problems...
no subject
no subject
no subject
As a side note, if apt-get ever says something like this the right move is to cancel whatever you asked for and try something different (usually installing some other stuff first). I take 'uninstall big lumps of userland' as an indication that its heuristics have come up with the completely wrong answer and you need to manually change the situation a bit so they can try again from a different starting point.
I agree entirely that it's crap that it doesn't work, and am unconvinced that putting another layer on top of apt-get is the right way to fix it either.
no subject
I'd just like to say...
Re: I'd just like to say...
Re: I'd just like to say...
Probably helps I read it in your diary at The Other Place first, and then was presented with the one line precis the second time...
no subject
no subject
no subject
no subject
I too am quite familiar with the 'apt decides to remove large chunks of userland' problem, as well as 'so-and-so depends on libso-and-so, but it is too cool to be installed'. And any changes to GNOME invariably come at the cost of having to use terrifying fonts from the past, until you figure out what apt forgot to install (xfs?)
I like Rosegarden, although the UI widgets look disturbingly like early AWT or something. /dev/sequencer is where it expects to find your MIDI device (I don't have one, but I managed to persuade it to use an ALSA software sequencer in the end). Frankly though, I put this under the heading of 'ultimately not worth the hassle of getting to run'.
I think Debian is widely perceived as being rather backward (they might prefer the term 'conservative') but I still like apt (I'm old enough to remember the horror of trying to use RPMs without a dependency resolution system like yum, or for that matter trying to build things from source, which is a real good way to shorten your telomeres) and I like their ethical policy. The installer is frankly terrible, but that's no problem: I use a cheerful front end like Knoppix or Ubuntu to get a foothold on the box, then switch to the Debian repositories and dist-upgrade.
So I think overall Debian sucks slightly less, as long as you don't try to upgrade it...
no subject
no subject
This is often because the dependencies and scripts for backported packages are written in a half-arsed sort of way.
no subject
no subject
But in spite of all that, it does cheer me up a bit as well, as does the fact that you felt like trying to cheer me up in the first place. So thank you :-)
no subject
no subject
The main problem I've had is the fact that the netinst or CD installers seem to be perfectly capable of autodetecting whatever hardware you've got, then using any old random NIC to download the rest of the system, but at some point you're asked to manually configure the hardware drivers you want installed. FFS! I DON'T KNOW WHAT MY NETWORK CARD IS! YOU DO! Stop asking me, just use whatever it is you're already using, I don't care, but if you force me to enter it manually (and it just doesn't work after rebooting if you don't) then I'm going to have to unscrew the case to figure it out.
no subject
I avoid apt like the plague, instead using the dpkg-ftp access method. apt tries to be far too clever for my liking. I prefer to have more control over the process. So, it 'only' took a few hours today to bring one machine from woody to sarge, where at one point it decided to get rid of sysvinit. And, what I really want is etch, for the AMD64 stuff.
Deborah & Ian'
I STILL don't have devfs, but I'm on a 2.6 kernel.
ugly fonts
I've just upgraded and I get the ugly-fonts problem too. I think the problem here is that they now use fontconfig for font selection, and none of the free fonts fontconfig wants to use are much cop. (Check fontconfig's Depends: ttf-bitstream-vera | ttf-freefont | gsfonts-x11 | msttcorefonts. The first looks horribly blurry to me, especially in mozilla menu bars. The third looks like gv's fonts (no surprise there), which seems slightly more palatable to me, but still not much good). The fourth is a wrapper package so you can use the (non-free) font files from a Windows installation. You might try faffing about installing or uninstalling some of these to see which is least worst.
This all worked perfectly well before, but I don't know how to get back to that now (it might not even be possible since probably everything wants to use antialiasing and fontconfig and xft and stuff. And if you turn antialiasing off mozilla misrenders!)
Re: ugly fonts
Re: ugly fonts
no subject
I've fiddled around endlessly installing MS core fonts and suchlike, but I never quite seem to end up with fonts as nice as something like Redhat or even FreeBSD will give me by default.
At least the insanely-sized-GTK-fonts issue seems to be fixed now.