RPM/YUM Tips on OS/2-eCS

From OS2World.Com Wiki
Jump to navigation Jump to search
Article Info
Author N/A
Date 2020
OS Version OS/2 Warp 4.52 / eComStation / ArcaOS 5.0.x
Companion File N/A
Source N/A

These are some RPM/YUM general tips that I need to write somewhere to don't forget them.

List repository content

yum list

or search something more specifically, like the "gcc" available

yum list gcc*

Install something

yum install <put-the-name-here>


yum install libc

Ex. with several packaged:

yum install libc gcc-4.4.4 gcc-4.7.3 openssl curl libjpeg libxslt libicu zlib libxml2 mmap pthread urpo libstdc++6

Reinstall Something

yum install <put-the-name-here>


yum reinstall coreutils

Update all the stuff you have installed

yum update

Install RPM

Sometimes RPM did not get automatically updated or installed. You can manually install them again with:

yum install rpm

Installing the Netlabs Experimental Repository

There is other repository for netlabs experimental stuff. You can use it under your risk.

This repository can be installed do running from a command line the following:

yum install netlabs-exp

It can also be set manually by creating a file under:


with content:

name=Netlabs experimental repository $releasever - $basearch

If you want to remove it later, you can execute:

yum remove netlabs-exp

Where can I get the binary files of the netlabs repository if I don't use RPM

The netlabs release and experimental repositories files are available on the following site:

Those can be downloaded as zip files.


yum clean all


This command check is the dependencies of the packaged are installed correctly.

yum check


If your RPM database got corrupted, you can use:

rpm --rebuilddb

Search for file

You can search (remember that is case-sensitive) for a file and find which package contains it, like:

yum whatprovides */libcn0.dll

which outputs:

1:libc-0.1.7-1.oc00.i686 : Standard Shared Libraries
Repo        : netlabs-exp
Matched from:
Filename    : /@unixroot/usr/lib/libcn0.dll

Or something like:

yum whatprovides */mmioos2*

Search for a package

If you want to search for a package name, you can do something like:

yum search libc | more


libc-debuginfo.i686 : Debug information for package libc
libcx.i686 : kLIBC Extension Library
libcx-debuginfo.i686 : Debug information for package libcx
libc.i686 : Standard Shared Libraries


This is a quick reminder on how you have to install YUM.

  • Install YUM Bootstrap WPI.
  • Check your paths as it ask on the readme.
  • Maybe it can be good to reboot.
  • Run YUM bootstrap console.
  • Run "yum install yum rpm".
  • Reboot.
  • Uninstall with WarpIN the YUM bootstrap.

Just to validate, open an OS/2 console and run "yum" and "yum list" to see you don't have any errors.

Unpacking an RPM file

If you have a .rpm file, and you don't want to install it, and just unpack it to review its contents you can use the rpm2cpio command like:

rpm2cpio peg-e-1.2.7-1.i686.rpm | cpio -idmv


Some of the quick tips:

  • Review any duplicated files on the Libpath between X:\ecs\dll and x:\usr
  • Make a "yum clean all", sometime it works.

Error: No such table: packages

If you get this error maybe a "yum clean all" can help a little bit.


raceback (most recent call last):
 File "C:\TMP\YUMBT\USR\BIN\YUM", line 29, in <module>
   yummain.user_main(sys.argv[1:], exit_code=True)
 File "/@unixroot/usr/share/yum-cli/yummain.py", line 288, in user_main
   errcode = main(args)
 File "/@unixroot/usr/share/yum-cli/yummain.py", line 98, in main
 File "/@unixroot/usr/share/yum-cli/cli.py", line 253, in getOptionsConfig
   (opts, self.cmds) = self.optparser.setupYumConfig(args=args)
 File "/@unixroot/usr/share/yum-cli/cli.py", line 1599, in setupYumConfig
 File "/@unixroot/usr/share/yum-cli/output.py", line 1225, in setupKeyImportCal
   gpgca_import_func = self.getCAKeyForRepo
ttributeError: 'YumBaseCli' object has no attribute 'getCAKeyForRepo'

Error: error: unpacking of archive failed on file : cpio: Digest mismatch

Error unpacking rpm package libjpeg-8c-1.oc00.i386
error: unpacking of archive failed on file /@unixroot/usr/bin/cjpeg.exe;56031939
: cpio: Digest mismatch

Possible Solution

Check the duplicated files on the LIBPATH (check on eComStation Kernel on System Setup). There can be duplicated DLLs between x:\eCS\DLL and x:\usr\lib