Projects / AutoRPM


AutoRPM is a program that can do any combination of the following: mirror RPMs from an FTP site, keep installed RPMs consistent with an FTP site or local directory and keep installed RPMs in a cluster or network of systems consistent. It is highly flexible and contains a fully command-line driven interactive install mode (for installing RPMs from the queue or for installing RPMs from your system interactively). It also handles recursive dependencies, multiple versions of the same RPM, the same RPM with multiple architectures, and more. It does some of the same tasks as up2date and AutoUpdate.


Recent releases

  •  06 Apr 2004 17:32

    Release Notes: Full configuration files for Fedora updates are now included.

    •  15 Feb 2003 05:07

      Release Notes: A fix for a typo in trigger support.

      •  31 Jan 2003 01:01

        Release Notes: Triggers now work for package downgrades too.

        •  31 Jan 2003 00:59

          Release Notes: The New Trigger() command actually works (Regex_Trigger() was fine, though).

          •  30 Jan 2003 06:39

            Release Notes: This version adds Trigger() and Regex_Trigger() functions. These tell AutoRPM to call external scripts when certain packages are installed/upgraded, or when they fail.

            Recent comments

            05 Apr 2002 04:10 fsteiner

            Great stuff
            I use autorpm to keep all of our hosts in the network at the same level, for official rpm updates as well as for our local software. Great tool! I couldn't do without!
            Although it took some time for the 2.x to work well, it seems to run fine now, and it's very actively maintained. Kirk reacts very fast to bug reports, comments etc.
            Great work!

            03 Apr 2002 13:42 kirkbauer

            Re: Actively Maintained?

            > I've found a couple of
            > bugs/problems and mailed Kirk as
            > suggested in the docs but he
            > doesn't respond. Is this package
            > actively being maintained?

            I had slacked off for a while, but AutoRPM is now being actively maintained and expanded again.

            29 Sep 2000 09:23 nikconwell

            Actively Maintained?
            I've found a couple of bugs/problems and mailed Kirk as suggested in the docs but he doesn't respond. Is this package actively being maintained?

            Probs: The pool defs are a bit stale now.
            The parsing for the ftp ls output sometimes fails
            depending on the site, it may not parse the line and so misses stuff.

            Parse fix I hacked up (sorry about wrap/crap):

            [sbin]# diff -c autorpm.20000929 autorpm
            *** autorpm.20000929 Sun Jan 9 19:42:29 2000
            --- autorpm Fri Sep 29 09:19:09 2000
            *** 1352,1357 ****
            --- 1352,1358 ----
            foreach $Temp (@DirListing) {
            + Inform(' ' . $Temp . "n");
            if ( ($LinkName,$LinkDest) = ($Temp =~ /^l[rwxst-]{9}s+S+s+S+s+S+s+[0123456789]+ ... .. [ ]?..[:]?..s+(.*) -> (.*)$/ ) ) {
            if ($LinkName eq $CurrFTPDir) {
            # The actual directory we are looking at is a symlink, so look at the directory it points to
            *** 1385,1395 ****
            $RemoteSizes{$LinkDest} = $FileSize;
            ! elsif ( ($FileName) = ($Temp =~ /^d[rwxst-]{9}s+S+s+S+s+S+s+[0123456789]+ ... .. [ ]?..[:]?..s+(.*)$/ ) ) {
            # Directory...
            push @SourceList, $CurrFTPDir . $FileName . '/';
            ! elsif ( ($FileSize, $FileName) = ($Temp =~ /^[rwxst-]{10}s+S+s+S+s+S+s+([0123456789]+) ... .. [ ]?..[:]?..s+(.*)$/ ) ) {
            # Regular file...
            push @SourceList, $CurrFTPDir . $FileName;
            $RemoteSizes{$CurrFTPDir . $FileName} = $FileSize;
            --- 1386,1396 ----
            $RemoteSizes{$LinkDest} = $FileSize;
            ! elsif ( ($FileName) = ($Temp =~ /^d[rwxst-]{9}.*s+... .. [ ]?..[:]?..s+(.*)$/ ) ) {
            # Directory...
            push @SourceList, $CurrFTPDir . $FileName . '/';
            ! elsif ( ($FileSize, $FileName) = ($Temp =~ /^[rwxst-]{10}s+.*s+([0123456789]+)s+... .. [ ]?..[:]?..s+(.*)$/ ) ) {
            # Regular file...
            push @SourceList, $CurrFTPDir . $FileName;
            $RemoteSizes{$CurrFTPDir . $FileName} = $FileSize;

            23 May 2000 11:25 mattdm

            dependency problems
            Autorpm is nice, but it has issues when there are multiple dependencies. It tries to upgrade packages one at a time, which often doesn't work. For example, it can't upgrade netscape:
            netscape-communicator 4.72 requires netscape-common = 4.72. This means netscape-common 4.73 can't be installed without breaking the dependency. But, of course, the -communicator 4.73 package can't be installed until -common is updated.

            Since Red Hat is splitting out more and more packages this way, this is becoming a crippling problem, making autorpm almost useless.

            The solution to this would be to specify all package names on the same rpm command line, so that RPM itself can sort all this out.

            Hopefully the next version will fix this.

            04 Feb 2000 11:50 kreucher

            fails for 6.1 deps ??
            when using autorpm for rh6.1, it fails for alot of the update rpms if you have the devel packages installed.

            if it tries to upgrade say ORBit, it fails becasue ORBit-devel needs the same version of the non-devel ORBit package.

            it fails on similar package pairs.

            is there a way to make autorpm smart enough to install both the devel and non devel packages at the same time so the deps are ok?


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.