Portdowngrade - Downgrade to Previous Version of FreeBSD’s Ports

After you upgrade or update the FreeBSD’s ports, you may found out that there is some buys with the lastest version of a package. For example, after I ran CVSup on all ports collection on my FreeBSD server, it updated my subversion to svn version 1.3.0-rc2. The problem is, when I tried to restart Apache server, there is error that saying mod_dav_svn.so is missing.

Tried to re-compile the SVN server is of no help, as it simply won’t want to compile mod_dav_svn.so source, due to a bug in the Makefile which simply won’t recognize WITH_MOD_DAV_SVN=yes setting. So to go back to the original (or previous) version of subversion (or any other package or ports), use portdowngrade.

Without portdowngrade, a lot of works need to be done: Investigates the port changes in the cvs repository through FreeBSD’s the web interface, the insepcts all commit comments to find out which file versions are a older working release, and after downloads and copies these file to the correct location in the ports tree, then only the port can be downgraded by the usual FreeBSD port mechanism.

portdowngrade helps to downgrade FreeBSD ports by analyzing the history of commits to the port and presenting the user the list of changes. By selecting one, the port can be set back to a previous version easily. In other words, portdowngrade automatizes all these steps, from inspecting the cvs repository to showing all commit comments up to checking out a specific release and copying it into the ports tree. With just a few key presses a lot of work is saved.

Install Portdowngrade

To install sysutils/portdowngrade, use the following commands:

cd /usr/ports/sysutils/portdowngrade
make install clean

If you want to define DEFAULT_CVS_SERVER, use the following command (it’s recommended to define the server):

make DEFAULT_CVS_SERVER=\”:server_string:/home/ncvs\” install

Replace server_string with pserver:anoncvs@anoncvs.at.FreeBSD.org, one of the FreeBSD anoncvs server.

You may use any other available anoncvs servers which listed at Anonymous CVS.

Using portdowngrade

To run portdowngrade, issue the following command:

usr/local/sbin/portdowngrade portname (portname my be prefixed by category/ and postfixed by $)

or simply (if it’s within the path):

portdowngrade portname (portname my be prefixed by category/ and postfixed by $)

If you didn’t specify which CVS server to use when installation, you may specify it via command line by using “- s cvs-server or –server cvs-server option. For example, -s:pserver:anoncvs@anoncvs.FreeBSD.org:/home/ncvs

Other options available include -l or –logfile filename to specify logfile which collects debug information, -t or –maxTime time to specify maximum time difference (in seconds) to treat cvs commits with the same comment as belonging together (default: 10 seconds), -o or –login to execute a “cvs login” before all other cvs commands (if ~/.cvspass file that stores the password exists, this option is no longer required).

Then (of after login if applicable), portdowngrade will performs 6 steps (only after 6 steps will there be changes to the system):

Step 1: Checking out port from CVS repository

Step 2: Reading the port history from the CVS repository

Step 3: Analyzing the port history from the CVS repository

Step 4: Load port version numbers and present results (If more than 1 pages, use space to go to next page, p for previous page, d for details, and enter to leave the port history display. After that, select the version you wish to downgrade to or 0 change nothing).

Step 5: Checking out choosen date of the port from the CVS repository

Step 6: Modifying the port (Type yes to downgrade the port, or no to abort).

Note: portdowngrade only changes the port, not the installed software!

After 6 steps, the selected port has been set to the selected older version. Continue by install the port. If you have portupgrade installed, use the following command to see the changes in the ports database:

portsdb -Uu

To ‘downgrade’ the installed port, issue command:

portupgrade -f portname

Note: If you run cvsup, the port will be changed back to the latest version!

Share and contribute or get technical support and help at My Digital Life Forums.



Leave a Reply

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Subscribe to comments feature has been disabled. To receive notification of latest comments posted, subscribe to My Digital Life Comments RSS feed or register to receive new comments in daily email digest.
Custom Search

New Articles

Incoming Search Terms for the Article

portdowngrade - FreeBSD portdowngrade - freebsd port downgrade - freebsd ports downgrade - freebsd downgrade port - freebsd downgrade ports - freebsd downgrade - downgrade freebsd - portdowngrade freebsd - downgrade port - using portdowngrade - portupgrade downgrade - freebsd ports install old version - port downgrade - downgrade cvsup - svn downgrade version - downgrade freebsd ports - pkg downgrade freebsd - freebsd port previous version - downgrade port installed - freebsd downgrade package - freebsd ports install specific version - how to downgrade a license of teamviewer - downgrade port freebsd - portdowngrade DEFAULT_CVS_SERVER - portdowngrade cvs server - portdowngrade - downgrade php5 freebsd - portupgrade revert port to previous version - freebsd install old version of port - svn downgrade - port install previous version - make older version of port freebsd - freebsd install specific version port - how to downgrade to a previous version of internet explorer - install downgrade version - ports freebsd install previous version - portdowngrade servers list - downgrade application on freebsd - downgrade ports - freebsd using portdowngrade - freebsd AND downgrade - downgrade ports freebsd - cvs command for downgrade - downgrade freebsd install - downgrade to previous version of internet explorer - freebsd how to downgrade port - downgrade freebsd 7 to 6 - freebsd how to downgrade ports - cvs upgrade ports freebsd -