RPM/YUM Tips on OS/2-eCS: Difference between revisions

From OS2World.Com Wiki
Jump to navigation Jump to search
Jugbogdan (talk | contribs)
mNo edit summary
 
(14 intermediate revisions by 2 users not shown)
Line 1: Line 1:
This are some RPM/YUM general tips that I need to write somewhere to don't forget them.  
{{Article
 
|Author=N/A
==List the Content on the RPM Server==
|Date=2020
  yum list
|OS=OS/2 Warp 4.52 / eComStation / ArcaOS 5.0.x
 
|File=N/A
or search something more specifically like the "gcc" available
|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*
  yum list gcc*


==Install something==
==Install something==
  yum install <put-the-name-here>
  yum install <put-the-name-here>
Ex:
Ex:
  yum install libc
  yum install libc
Ex. with several packaged:
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
  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==
==Reinstall Something==
  yum install <put-the-name-here>
  yum install <put-the-name-here>
Ex:  
Ex:  
  yum reinstall coreutils
  yum reinstall coreutils
Line 30: Line 28:
  yum update
  yum update


==Install YUM/RPM==
==Install RPM==
Sometime RPM did not get automatically updated or installed. You can manually install them again with:
Sometimes RPM did not get automatically updated or installed. You can manually install them again with:
  yum install rpm
  yum install rpm


==Installing the Netlabs Experimental Repository==
==Installing the Netlabs Experimental Repository==
There is other repository for netlabs experimental stuff. You can use it under your risk.  
There is other repository for netlabs experimental stuff. You can use it under your risk.
 
This repository can be installed do doing a:
 
  yum install netlabs-exp


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:
It can also be set manually by creating a file under:
  x:\etc\yum\repos.d\netlabs-exp.repo
  x:\etc\yum\repos.d\netlabs-exp.repo
with content:
with content:
  [netlabs-exp]
  [netlabs-exp]
  name=Netlabs experimental repository $releasever - $basearch
  name=Netlabs experimental repository $releasever - $basearch
  baseurl=http://rpm.netlabs.org/experimental/$releasever/$basearch/
  baseurl=http://rpm.netlabs.org/experimental/$releasever/$basearch/
  enabled=1
  enabled=1
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:
* http://rpm.netlabs.org/
Those can be downloaded as zip files.


==Clean==
==Clean==
 
yum clean all
  yum clean all


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


==RebuildDB==
==RebuildDB==
If your RPM database got corrupted you can use:  
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
shows:
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


rpm --rebuilddb
==Installation==
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.


==TroubleShooting==
==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


==Troubleshooting==
Some of the quick tips:
Some of the quick tips:
* Review any duplicated files on the Libpath between X:\ecs\dll and x:\usr
* Review any duplicated files on the Libpath between X:\ecs\dll and x:\usr
* Make a "yum clean all", sometime it works.  
* Make a "yum clean all", sometime it works.
 


===Error: No such table: packages===
===Error: No such table: packages===
If you get this error maybe a "yum clean all" can help a little bit.
If you get this error maybe a "yum clean all" can help a little bit.


===Error:===
===Error:===
<PRE>
<PRE>
C:\usr\share\yum-cli]yum
C:\usr\share\yum-cli]yum
Line 97: Line 127:
ttributeError: 'YumBaseCli' object has no attribute 'getCAKeyForRepo'
ttributeError: 'YumBaseCli' object has no attribute 'getCAKeyForRepo'
</PRE>
</PRE>


===Error: error: unpacking of archive failed on file : cpio: Digest mismatch===
===Error: error: unpacking of archive failed on file : cpio: Digest mismatch===
Line 104: Line 133:
error: unpacking of archive failed on file /@unixroot/usr/bin/cjpeg.exe;56031939
error: unpacking of archive failed on file /@unixroot/usr/bin/cjpeg.exe;56031939
: cpio: Digest mismatch
: cpio: Digest mismatch
</PRE>
</PRE>


====Possible Solution====
====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
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


[[Category:How_To]]
[[Category:How_To]]

Latest revision as of 02:15, 5 January 2024

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>

Ex:

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>

Ex:

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:

x:\etc\yum\repos.d\netlabs-exp.repo

with content:

[netlabs-exp]
name=Netlabs experimental repository $releasever - $basearch
baseurl=http://rpm.netlabs.org/experimental/$releasever/$basearch/
enabled=1

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.

Clean

yum clean all

Check

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

yum check

RebuildDB

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

shows:

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

Installation

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

Troubleshooting

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.

Error:

C:\usr\share\yum-cli]yum
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
   base.getOptionsConfig(args)
 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
   self.base.setupKeyImportCallbacks()
 File "/@unixroot/usr/share/yum-cli/output.py", line 1225, in setupKeyImportCal
backs
   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