RPM/YUM Tips on OS/2-eCS: Difference between revisions
mNo edit summary |
mNo edit summary |
||
(10 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
{{Article | |||
|Author=N/A | |||
|Date=2020 | |||
|OS=OS/2 Warp 4.52 / eComStation / ArcaOS 5.0.x | |||
|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== | ==List repository content== | ||
yum list | yum list | ||
or search something more specifically like the "gcc" available | or search something more specifically, like the "gcc" available | ||
yum list gcc* | yum list gcc* | ||
Line 26: | Line 33: | ||
==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 | This repository can be installed do running from a command line the following: | ||
yum install netlabs-exp | 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: | ||
Line 37: | Line 44: | ||
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== | ||
Line 46: | Line 61: | ||
==RebuildDB== | ==RebuildDB== | ||
If your RPM database got corrupted you can use: | If your RPM database got corrupted, you can use: | ||
rpm --rebuilddb | 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== | ==Installation== | ||
Line 59: | Line 95: | ||
* Uninstall with WarpIN the YUM bootstrap. | * 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. | 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== | ==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=== |
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