RPM And Yum Are A Big Deal For IBM i. Here’s Why
July 18, 2018 Alex Woodie
By now you’ve probably heard about Yum and RPM, the new processes that IBM will use to deliver open source software to IBM i customers. But you may have questions about how the process works, and what the benefits will be. IT Jungle talked with IBM’s open source guru Jesse Gorzinski to get the low down on why the new tech is so important to the platform.
RPM, which stands for Red Hat Package Manager, is a piece of software created more than 20 years that allows customers in that Linux community to more easily distribute and install the various pieces of software required to create a working Linux environment. Over the years, RPM use has migrated beyond the Red Hat community to other Linux and Unix environments (including AIX), and has essentially become a de facto standard for distributing software in the open source world.
Then we have Yum, which stands for Yellow Dog Updater Modified. Yum’s mission in life is to make the updating and management of software dependencies easier for RPM users. It’s essentially a command designed to work with RPM, but it’s often delivered as a command-line shell environment, and even GUIs have been developed (such as the one for IBM i that we’re about to tell you about).
This spring, IBM quietly rolled out a tech preview of RPM and Yum running IBM i with the goal of completely transforming how IBM i customers get open source software (see “RPMs Getting Started” on IBM’s DeveloperWorks site).
RPM and Yum replace 5733-OPS, the licensed program option that IBM introduced in 2015 to distribute open source technology like Python, Git, Node.js, and others. Now, IBM i shops get these open source products (and many more) through RPM and Yum.
“This is significantly changing things quite a bit because people are no longer getting open source through PTFs,” says Gorzinski, whose official IBM title is business architect of open source technologies. “They no longer are installing the OPS licensee program offering that we have. Instead you can just go install Yum and tell Yum to install whatever it is that you need.”
While the PTF delivery method used by 5733-OPS helped get open source tools in front of the IBM i installed base, it eventually became clear that it had turned into more of a hindrance. That’s because, while your typical IBM i administrator is imminently familiar with how to find and apply PTFs, the PTF process proved confounding for users who were less familiar with IBM i.
In other words, the exact same folks whom IBM was trying to attract to the platform – younger programmers well-versed with modern and mostly open-source development tools and methods – were the very ones who had the most trouble with 5733-OPS and its PTF-based software delivery method. When you factor in the Catch-22 situation that ensued with having to know the name of newly released 5733-OPS option in order to get them — despite the fact that they don’t appear on the screen until you install them (which Jon Paris and Susan Gantner explained succinctly in a recent IBM System Magazine article) — and you have a process that was begging to be streamlined.
RPM takes the first step in transforming how IBM i shops use open source. “One of the big ways it makes things easy is it automatically tracks down dependencies for you,” Gorzinski says. “It lets you query things about the packages without necessarily having them installed. Overall it just lets you manage the open source packages in a sane manner.”
Yum takes RPM further and makes things even easier. “The latest round of Access Client Solutions actually has a GUI powered by Yum that makes it super easy,” Gorzinski says. “So if you don’t even have any of the open source environments installed on your system, when you go to connect, the tool will ask you ‘Do you want to install it now?’ You click yes, wait a few minutes, and you’re done.
“That’s significant in a few ways,” he continues. “One way is, although it’s different, it makes management of open source on IBM i much simpler. You can easily query what’s installed, where is it, and what’s available from IBM, and the package manager can tell you all that in minutes. If you want to install something, you just say install that thing, and a minute later it’s installed. It’s ridiculously easy.”
Besides making open source ridiculously easy, RPM and Yum also gives IBM the opportunity to deliver a lot more open source software to users. That’s because it’s no longer restricted by an inherent limitation in the PTF process, whereby PTFs can only modify existing programs, not install new ones. IBM got around this limitation by creating a series of placeholders in the 5733-OPS process that were empty at first and were gradually filled in over time.
Gorzinski says this is a “game changing” factor. “If we look at numbers, with 5733-OPS we had 11 options, and in those 11 options we had 37 or 38 open source packages. We delivered those 37 or 38 open source packages over three years. Now with RPM Package Manager, we’re at about 200 in much less time. So you can see the rate of delivery we’re able to pursue is an order of magnitude faster.”
All told, it would seem that Yum and the new RPM Package Manager together have the potential to dramatically simplify and accurate the delivery of open source software into the IBM i community. Instead of requiring users to jump through archaic PTF hoops before playing around with open source stuff, they can get it through a couple clicks of the mouse in the ACS product, which has become IBM’s preferred interface to the computer.
“Since we’ve delivered Yum, we’ve been able to deliver so much more technology, and the technology just works seamlessly because we’re now doing things in standard ways,” Gorzinski says. “We’re doing things in ways that are consistent with how the open source package is distributed and how it’s laid down on the file system, so they know how to find each other better.”
For example, users who previously struggled to get Python working on the IBM i will find the process tremendously streamlined under Yum and the RPM Package Manager, Gorzinski says. “Now there’s just so much more stuff that just works.”
It would be incredibly easy if it worked. We are at v7r3 of IBM i. ACS is chock full of useful options. However, Open Source Package Management is not one of them. ERROR: bsh: /QOpenSys/pkgs/bin/yum: not found.