One morning, not long ago, I ran the sudo conary updateall command in the terminal emulator in one of my Foresight Linux Xfce installations. Conary did what it was told, as Conary always does unless the connection times out or something. But this time, one of its gifts was a beta of Opera 11.50.
Opera did something clever. The beta installed itself as opera-next and borrowed my bookmarks ‘n stuff from the ~/.opera directory, so I could use both the stable version (11.11) and the beta side-by-side. Or so that was the theory. The beta didn’t work, for whatever reason, and the stable version wouldn’t load.
Reader, I was plunged into despair. Maybe someday I’ll write a blog post about why I love Opera so much. But I understand that browser discussions can get as perfervid as WordPerfect vs. Word or (X)Emacs vs. Vi(m), so for now, all I want to say is that I’ve been using Opera since version 5, which came out a couple of days before the Supreme Court stopped the Florida vote recount, and I’ve hardly ever had a problem with it. I’ve run alpha versions that have been worked better than the stable versions of some programs. Not this time. Ahh…nobody’s perfect, you know what I’m sayin’?
But despair is fleeting in the world of Linux, where our women are tougher than their men. I decided to try the promising command sudo conary rollback, which cancels the effects of the last updateall while it insinuates hokey Wal-Mart jingles into your brain. Rollback is pretty customizable; you can roll back the last two, or more, or you can even roll back every update and restore your Foresight system to what it was like the very minute you first installed it. You can think of it as the Linux version of Stephen Hawking’s A Brief History of Time. Reader, I ask you to remember the power of sudo conary rollback…a power so great that, yea, verily it can reshape the past.
Before one tries a rollback, it might be useful to run the sudo conary rblist command, which gives you a verbose list of changes, organized by updateall moments. Here is a partial example:
r.10:
updated: conary:config foresight.rpath.org@fl:2-qa/2.2.15-1-1 -> 2.3.3-1-1
updated: conary:data foresight.rpath.org@fl:2-qa/2.2.15-1-1 -> 2.3.3-1-1
updated: conary:doc foresight.rpath.org@fl:2-qa/2.2.15-1-1 -> 2.3.3-1-1
updated: conary:python foresight.rpath.org@fl:2-qa/2.2.15-1-1 -> 2.3.3-1-1
updated: conary:runtime foresight.rpath.org@fl:2-qa/2.2.15-1-1 -> 2.3.3-1-1
updated: Thunar(:config :data :doc :lib :locale :runtime) foresight.rpath.org@fl:2-qa/1.2.1-0.2-1 -> 1.2.2-0.1-1
updated: conary foresight.rpath.org@fl:2-qa/2.2.15-1-1 -> 2.3.3-1-1
updated: exaile(:config :data :doc :lib :locale :runtime) foresight.rpath.org@fl:2-qa/0.3.2.1-1-1 -> 0.3.2.1-1-2
updated: gdm(:config :data :lib :locale :runtime) foresight.rpath.org@fl:2-qa/2.32.1-1-1 -> 2.32.1-2-1
updated: gdm-user-switch-applet(:data :lib :runtime) foresight.rpath.org@fl:2-qa/2.32.1-1-1 -> 2.32.1-2-1
updated: group-base foresight.rpath.org@fl:2-qa/2.5.0+2011.05.18-0.1-2 -> 2.5.0+2011.06.02-0.1-1
updated: group-codecs foresight.rpath.org@fl:2-qa/2.5.0+2011.05.18-0.1-2 -> 2.5.0+2011.06.02-0.1-1
updated: group-mozilla foresight.rpath.org@fl:2-qa/2.5.0+2011.05.18-0.1-2 -> 2.5.0+2011.06.02-0.1-1
updated: group-pidgin foresight.rpath.org@fl:2-qa/2.5.0+2011.05.18-0.1-2 -> 2.5.0+2011.06.02-0.1-1
updated: group-printing foresight.rpath.org@fl:2-qa/2.5.0+2011.05.18-0.1-2 -> 2.5.0+2011.06.02-0.1-1
updated: group-text-tools foresight.rpath.org@fl:2-qa/2.5.0+2011.05.18-0.1-2 -> 2.5.0+2011.06.02-0.1-1
updated: group-xfce-apps foresight.rpath.org@fl:2-qa/2.5.0+2011.05.18-0.1-2 -> 2.5.0+2011.06.02-0.1-1
updated: group-xfce-extras foresight.rpath.org@fl:2-qa/2.5.0+2011.05.18-0.1-2 -> 2.5.0+2011.06.02-0.1-1
updated: group-xorg foresight.rpath.org@fl:2-qa/2.5.0+2011.05.18-0.1-2 -> 2.5.0+2011.06.02-0.1-1
updated: libcanberra(:data :lib) foresight.rpath.org@fl:2-qa/0.26-1-1 -> 0.26-2-1
updated: libexo(:config :data :doc :lib :locale :python :runtime) foresight.rpath.org@fl:2-qa/0.6.1-1-1 -> 0.6.1-2-1
updated: libgpod(:lib :python) foresight.rpath.org@fl:2-qa/0.7.95-1-2 -> 0.7.95-1-3
r.9:
installed: binutils:devel foresight.rpath.org@fl:2-qa/2.20.51.0.2-6-1
installed: binutils:devellib foresight.rpath.org@fl:2-qa/2.20.51.0.2-6-1
installed: gcc(:devel :devellib :doc :lib :locale :runtime) foresight.rpath.org@fl:2-qa/4.4.4-5-1
installed: libgcc:devellib foresight.rpath.org@fl:2-qa/4.4.4-5-1
r.8:
updated: b43-fwcutter(:doc :runtime) foresight.rpath.org@fl:2-devel/012-7-1 -> 013-1-1
And so on. (I recommend that you run sudo conary rblist in your favorite terminal emulator with the window maximized; that chatty output is hard to read as it is, and it’s a lot worse if every line is broken.)
Anyway, that told me that I wanted to rollback #10. So I blithely typed sudo conary rollback 10, having, of course, misread the instructions. That command doesn’t roll back update number 10, it rolls back the last 10 updates, which, in my case, is all of them.
I saw my Opera 11.11 come back.
I saw update number 10 vanish into the ether from whence it came.
I saw update number 9 disintegrate, too, and I thought, “Hmmmm. This can’t be good.”
I saw update number 8, and my b43-fwcutter, fall screaming into the nihilistic bit-bucket.
I saw the best minds of my generation destroyed by madness, starving hysterical naked.
I felt myself rising slowly and yet falling down upon shattered dreams. Crystal sights are shattered and distorted by reality’s truth.
I felt myself hurtling back into the endless moment before time when the whole universe was contained in a single atom, and unimaginable particles in their rage and chaos howled against the boundaries of infinity.
Reader, I hit [Ctrl-Z].
Without a word or a whimper, the rollback stopped.
“Jumpin’ pumpkins!” I exclaimed. “That was a close one!” I ran another useful conary command, sudo conary pin opera. The pin command inoculates the object, in this case Opera, from future attempts to alter it; it’s something like apt-get hold.
I ran sudo conary updateall to repair the damage I had done. Everything was restored to its state of a few minutes before. Opera-next was there, though it didn’t work. Opera-of-the-eternal-present was there, too, and it worked just fine.
Foresight Linux is so cool!
Envoi
Since the events described above, the Foresight packagers have been busy. A recent sudo conary updateall brought me an especially interesting update: from the reliable but dowdy OpenOffice.org 3.2.1 to LibreOffice 3.4.1. Not only did they skip generation 3.3, but they went from Open to Libre, which I hadn’t seen done anywhere before. It seems to work fine, too, though in all honesty my current projects haven’t required me to do anything strenuous with either Writer or Calc.
Yes, noticed it too. Opera-next did install extensions, profile settings in another directory.
So now, 11.50 is in as “stable” release. Should update and keep all settings.
The version is: opera=foresight.rpath.org@fl:2-devel/11.50-1-1
looks like you are in fl:2-qa label, you need to install it like:
sudo conary update opera=foresight.rpath.org@fl:2-devel
or
sudo conary update opera=@fl:2-devel
Same command really ^
[TForsman@localhost ~]$ conary q opera –info
Name : opera Build time: Thu Jun 30 09:11:31 2011
Was built early yesterday, sorry for the opera problem. Hope it will act normal again if you unpin and update
Forgot to write, when devel label is stable from all Xorg updates, it will be pushed to fl:2-qa. So you could wait until it gets in fl:2-qa
to check whats there now:
conary rq opera=@fl:2-qa
and
conary rq opera=@fl:2-qa –info
will give little more info about latest build
When we update fl:2-qa, a normal sudo conary update opera will do fine
No need for apologies. I think the Opera beta problem was not because there was something wrong with the packaging in the Foresight repo, but because it was a beta.
Opera 11.50 went out of beta and into release quickly, so I didn’t try the beta in any other distro, only in Foresight.
Think in an hour or two, latest opera is in fl:2-qa label.
Let me know if that version works better than beta.
Ohh, and about rollback. you should use: sudo conary rollback r.10 to remove r.10 and everything after it. And as you wrote, rollback 10 will rollback latest 10 updates/changes.
Pingback: Links 1/7/2011: Linux at HP, Mozilla Thunderbird for Ubuntu Default | Techrights