Open Source AIX Software Remains Plentiful

Edit: Some of these links no longer work.

Originally posted April 2, 2013 on AIXchange

Remember the UCLA freeware repository? This post is part of a discussion surrounding the repository going offline back in 2007. As Nigel wrote at the end of this thread:           

“There are still people active in this area. Take a look at www.perzl.org/aix. I got Apache, PHP, rrdtool and the wonderful Ganglia (with POWER5/6) enhancements from here. I would also recommend telling your local IBM representative that you think this needs to be fixed. Customer pressure is a good incentive for IBM to get organized, sort this out and eventually works.”

As this old post shows, perzl.org has been around for a while, though plenty of admins are unaware of it. For instance, just recently when a customer was interested in getting gnupg working on AIX and they were having trouble getting the package dependencies worked out, I referred them to this tip:

            “A solution to the RPM dependency… problem. I guess everybody who has installed a couple of RPM packages using rpm itself and not the help with a tool like yum ran into the following issue:

            1) You have downloaded and want to install RPM aaa.rpm.
            2) aaa.rpm has dependency on bbb.rpm and ccc.rpm.
            3) bbb.rpm has dependency on ddd.rpm and ccc.rpm on eee.rpm and fff.rpm.
            4) etc. 

“So you end up circling through all your RPM files and downloading all prerequisite RPM files just to install aaa.rpm. This can become quite annoying and time-consuming for packages with lots of dependencies. This is actually where a tool like yum is helping you a lot because it does all the steps outlined above for you. Unfortunately, I have so far found no way of compiling and providing YUM for AIX that could be done in a compatible manner (to the IBM provided RPM) as AIX still uses the old V3.0.5 version of RPM while all RPM-based Linux distributions have switched to RPM V4.X a long time ago. Also all recent YUM versions require at least a RPM version >= 4.4.

“My solution approach to this problem:

• Basically what you want is a complete and self-contained list of dependencies for the RPM file aaa.rpm.
• You download all the RPM packages on this list (make sure that you have downloaded them all into a separate directory which was empty before).
• After downloading all the RPM packages on the list you can just install the RPM file aaa.rpm as easy as rpm -Uvh *.rpm
• This approach mimics kind of the AIX NIM behavior of a software bundle (the list here) and a lpp_source (the separate directory containing all required RPM files).”

Read more in the Perzl.org FAQ.

In the meantime, hopefully this procedure can help someone else with a similar situation. Just get whichever .deps file you’re interested in for the package you want to install:

1) If wget is not already installed on your system, download wget to /tmp/gnupg (or some other temporary location)

ftp://ftp.software.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/ppc/wget/wget-1.9.1-1.aix5.1.ppc.rpm

Install the rpm with: rpm –ivh wget*rpm2) Use wget to download the gnupg rpm dependency file to /tmp/gnupg.

Use this file for AIX 7.1:

wget http://www.oss4aix.org/download/rpmdb/deplists/aix71/gnupg-1.4.13-1.aix5.1.ppc.deps

Use this file for AIX 6.1:

wget http://www.oss4aix.org/download/rpmdb/deplists/aix61/gnupg-1.4.13-1.aix5.1.ppc.deps

Use this file for AIX 5.3:

wget http://www.oss4aix.org/download/rpmdb/deplists/aix53/gnupg-1.4.13-1.aix5.1.ppc.deps3)

From /tmp/gnupg, run wget -B http://www.oss4aix.org/download/everything/RPMS/ -i
gnupg-1.4.13-1.aix5.1.ppc.deps.

This will download the dependencies needed to install gnupg.

4) Run rpm –Uvh *rpm. The dependencies are now installed. (On one test LPAR I got a warning about a conflict with /opt/freeware/man/man3/Thread.3. I got past it by running rpm –Uvh –force *rpm.)

5) Download gnupg:

wget http://www.oss4aix.org/download/RPMS/gnupg/gnupg-1.4.13 -1.aix5.1.ppc.rpm

6) Install with rpm –ivh gnupg*rpm.

You should now have gnupg on your system.

            /opt/freeware/bin/gpg –version
            gpg (GnuPG) 1.4.13
            Copyright (C) 2012 Free Software Foundation, Inc.
            License GPLv3+: GNU GPL version 3 or later
            This is free software: you are free to change and redistribute it.
            There is NO WARRANTY, to the extent permitted by law.

            Home: ~/.gnupg
            Supported algorithms:
            Pubkey: RSA, RSA-E, RSA-S, ELG-E, DSA
            Cipher: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH,
                    CAMELLIA128, CAMELLIA192, CAMELLIA256
            Hash: MD5, SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
            Compression: Uncompressed, ZIP, ZLIB, BZIP2

Here’s a list of open source tools in addition to perzl.org. Perhaps you’ll recognize some. Even better, perhaps you’ll find something that’s new to you. Also check out IBM AIX Toolbox download info and Bull AIX freeware.

So which of these open source software repositories do you use and recommend?