How to roll back PPA Upgrade

Asked by Carlo Capocasa

I did an apt-get upgrade which installed the latest version of a PPA package.

There was a regression and I would like to get the previous package.

How would I do that?

Thanks

Question information

Language:
English Edit question
Status:
Solved
For:
Ubuntu apt Edit question
Assignee:
No assignee Edit question
Solved by:
Eliah Kagan
Solved:
Last query:
Last reply:
Revision history for this message
Eliah Kagan (degeneracypressure) said :
#1

You can try:

sudo apt-get install --reinstall packagename=packageversion

Replace packagename with the name of the package and packageversion with the version of the package you want to go back to. If you don't have this information, you should be able to obtain it by looking in /var/log/dpkg.log.

If that doesn't work: Please provide all the text from the Terminal from when you tried that, and also specific details about the package you installed, the version it's at now, and the version you want to revert to. In your reply, please make sure to also specify if the older version of the package is from the PPA itself, or from a different software source (such as the standard Ubuntu repositories). Please also open /var/log/dpkg.log in a text editor, select all the text in the file, copy it to the clipboard, paste it at http://paste.ubuntu.com, click Paste!, and post the hyperlink here.

Revision history for this message
Carlo Capocasa (carlotheman) said :
#2

Thank you for your reply, Eliah!

The repository is https://launchpad.net/~supercollider/+archive/ppa

It appears that there are no older versions present in the repository.

If you can verify that is correct, I would be glad to forward information on how to make the older versions available to the maintainer, as I am in contact with him.

Carlo

Revision history for this message
Eliah Kagan (degeneracypressure) said :
#3

Can you provide the other requested information? Package name? Old package version? New package version? The text from the Terminal? A link to the contents of /var/log/dpkg.log dumped at http://paste.ubuntu.com?

Revision history for this message
Carlo Capocasa (carlotheman) said :
#4

Hi Eliah,

of course.

Package name: supercollider

Old package version: unknown (dpkg.log is truncated at 2011-04-02 00:29:22, package installed Oct 2010)

New package version: 1:3.4.2-0ubuntu1~lucid3

Text from terminal: unknown, cannot issue command "apt-get reinstalled name=version" without old package version

dpkg.log: http://paste.ubuntu.com/588875/

Carlo

Revision history for this message
Eliah Kagan (degeneracypressure) said :
#5

In order to figure out the best way for you to downgrade to the previous version, we need to know what version that was. Past package management logs are stored, compressed, inside the /var/log folder, but before we examine those, it might be faster simply to check what the latest version is of the software that is not affected by the regression. Do you have a source of this information? Is the bug documented somewhere?

Revision history for this message
Carlo Capocasa (carlotheman) said :
#6

Hi Eliah,

I don't have a source of that information, but I know about logrotate, must have mistyped on the command line, it looked like the logs weren't there. Here is the updated info:

Package name: supercollider

Old package version: 1:3.4-0ubuntu1~lucid1

New package version: 1:3.4.2-0ubuntu1~lucid3

Text from terminal:

$ sudo apt-get install supercollider=1:3.4-0ubuntu1~lucid1

Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Version '1:3.4-0ubuntu1~lucid1' for 'supercollider' was not found

dpkg.log.2.gz: http://paste.ubuntu.com/589011/

Carlo

Revision history for this message
Best Eliah Kagan (degeneracypressure) said :
#7

I recommend building and installing from source. You can download older--and also newer--versions of supercollider's source code at http://sourceforge.net/projects/supercollider/files/Source/. The standard way to do this is to save the .tar.gz archive to /usr/local/src (you may have to change that directory's permissions and/or your own user account's privileges to make it so you can write to that directory), unpack it with "tar xzf ..." where ... is replaced with the name of the file, then cd to the newly created directory, view the appropriate readme file (either on the command line with a pager such as less, or with a graphical program) and follow the instructions indicated for Debian. Ubuntu is a derivative of Debian, and those instructions should work. They consist of information about what packages you need to have installed, as well as the commands to run (in this case, with the scons utility) to build and then install the software. I recommend configuring supercollider to be installed with the /usr/local path prefix (which is usually the default, and is in contrast to the /usr prefix which applies to software that is installed using the package manager). Before installing supercollider, I recommend uninstalling the packages that provide your current version of supercollider (that is, the packages called supercollider, supercollider-common, and supercollider-server). After installing supercollider from source, you can update it (or otherwise change its version) by uninstalling it (which you should be able to do with the scons utility as well, in accordance with the information provided in the readme file), optionally removing the old source code, downloading the new source code, and repeating the above installation steps. Similarly, you can uninstall it and replace it with a version from the PPA (by reinstalling the PPA package after it's uninstalled).

Please feel free to reply with additional questions if you have any trouble understanding how to build from source, or if you get errors when attempting to do so.

Revision history for this message
Carlo Capocasa (carlotheman) said :
#8

Thanks Eliah Kagan, that solved my question.

Revision history for this message
Carlo Capocasa (carlotheman) said :
#9

Thank you again for answering, Eliah! I much appreciate you efforts, compiled from source and works again.

I have a (less urgent) follow-up, I would like to help the maintainer of the PPA provide all versions (from this one on) so that in the case of future regressions a downgrade is possible from the PPA.

Could you (or someone) point me to instructions on how to upload packages to the PPA while keeping older versions available? Or is this possible at all?

Thanks, Carlo

Revision history for this message
Eliah Kagan (degeneracypressure) said :
#10

I don't know the answer to that question -- I recommend posting a separate question here at https://answers.launchpad.net to ask about that. To do that, click https://answers.launchpad.net/launchpad/+addquestion (which will automatically mark the question as being about Launchpad itself).