Original Message:
Sent: 7/7/2023 11:35:00 AM
From: SANGAMESH MALLAYYA
Subject: RE: Migrating to python3.9 for AIX Toolbox python3 ecosystem
Hi Scott,
Please try with the latest bundle and let me know the result
------------------------------
SANGAMESH
------------------------------
Original Message:
Sent: Thu July 06, 2023 12:58 PM
From: Scott Brown
Subject: Migrating to python3.9 for AIX Toolbox python3 ecosystem
Sangamesh,
I wish there was more information. It isn't truncated. That is all that it outputs. If you would like to get on a quick call to see what is happening I am very willing.
Thanks,
Scott D Brown
Unix/Linux Systems Administrator
Team Lead- *nix Systems, Messaging/Middleware, Websphere, zVM and OpenShift
America First Credit Union
* sbrown@americafirst.com
( Office: (801)827-8271
Mobile: (801) 710-9238
Original Message:
Sent: 7/4/2023 8:55:00 AM
From: SANGAMESH MALLAYYA
Subject: RE: Migrating to python3.9 for AIX Toolbox python3 ecosystem
Hi Scott,
The output seems to be truncated. Please paste the error output one more time.
------------------------------
SANGAMESH
Original Message:
Sent: Mon July 03, 2023 04:01 PM
From: Scott Brown
Subject: Migrating to python3.9 for AIX Toolbox python3 ecosystem
Sangamesh,
I downloaded, what I think to be the latest dnf_aixtoolbox.sh script, from the link on your DNF website. It says that everything is already installed. Here is the output when I try and run dnf update:
root:afcuwasprd1 /tmp # dnf update
Traceback (most recent call last):
File "/opt/freeware/bin/dnf", line 58, in <module>
from dnf.cli import main
File "/opt/freeware/lib/python3.9/site-packages/dnf/__init__.py", line 30, in <module>
import dnf.base
File "/opt/freeware/lib/python3.9/site-packages/dnf/base.py", line 29, in <module>
import libdnf.transaction
File "/opt/freeware/lib64/python3.9/site-packages/libdnf/__init__.py", line 3, in <module>
from . import common_types
File "/opt/freeware/lib64/python3.9/site-packages/libdnf/common_types.py", line 13, in <module>
from . import _common_types
ImportError
root:afcuwasprd1 /tmp # lslpp -L rpm.rte
Fileset Level State Type Description (Uninstaller)
----------------------------------------------------------------------------
rpm.rte 4.15.1.2009 C F RPM Package Manager
That rpm.rte is the latest fileset, correct?
Thanks,
Scott
Original Message:
Sent: 7/1/2023 10:47:00 AM
From: SANGAMESH MALLAYYA
Subject: RE: Migrating to python3.9 for AIX Toolbox python3 ecosystem
Since you have DNF which is already updated from DNF repository who are still dependent on pytho3-3.7.
Here the correct method is to do dnf update which should be updating DNF to python3.9 based.
What's the error you are seeing when you do "dnf update" ?
Before running dnf update rpm.rte needs to be updated to latest version.
------------------------------
SANGAMESH
Original Message:
Sent: Fri June 30, 2023 01:21 PM
From: Howard Coles
Subject: Migrating to python3.9 for AIX Toolbox python3 ecosystem
I just tried and getting the same error for an AIX 7.2 box. I was able to update an AIX 7.3 server, so yay for that.
AIX 7.2 TL5 SP6 when I try to update I get the same conflicts and version mismatches.
When I try to just install the dnf bundle (hoping it would upgrade DNF I get the following: (which matches what I get when I do dnf upgrade)
ca-certificates-2021.2.52-3.ppc will be updated to ca-certificates-2023.2.60-0
Skipping dnf-4.2.17-32_4 as higher version dnf-4.2.17-32_50.ppc is installed.
Skipping dnf-automatic-4.2.17-32_4 as higher version dnf-automatic-4.2.17-32_50.ppc is installed.
Skipping dnf-data-4.2.17-32_4 as higher version dnf-data-4.2.17-32_50.ppc is installed.
libcomps-0.1.11-101.ppc will be updated to libcomps-0.1.15-32_1
Skipping libdnf-0.39.1-32_3 as higher version libdnf-0.39.1-32_51.ppc is installed.
Skipping libmodulemd-1.5.2-32_2 as higher version libmodulemd-1.5.2-100.ppc is installed.
Skipping librepo-1.11.0-32_2 as higher version librepo-1.11.0-101.ppc is installed.
Skipping libsmartcols-2.34-32_1 as higher version libsmartcols-2.34-100.ppc is installed.
Skipping libsolv-0.7.9-32_2 as higher version libsolv-0.7.9-32_51.ppc is installed.
Skipping libzstd-1.4.4-32_1 as higher version libzstd-1.5.2-1.ppc is installed.
Skipping p11-kit-0.23.22-0 as higher version p11-kit-0.23.22-1.ppc is installed.
Skipping p11-kit-tools-0.23.22-0 as higher version p11-kit-tools-0.23.22-1.ppc is installed.
python3-3.7.15-2.ppc will be updated to python3-3.9.16-0
Skipping python3-dnf-4.2.17-32_4 as higher version python3-dnf-4.2.17-32_50.ppc is installed.
Skipping python3-gpg-1.13.1-32_3 as higher version python3-gpg-1.13.1-100.ppc is installed.
Skipping python3-hawkey-0.39.1-32_3 as higher version python3-hawkey-0.39.1-32_51.ppc is installed.
python3-libcomps-0.1.11-101.ppc will be updated to python3-libcomps-0.1.15-32_1
Skipping python3-libdnf-0.39.1-32_3 as higher version python3-libdnf-0.39.1-32_51.ppc is installed.
Skipping python3-librepo-1.11.0-32_2 as higher version python3-librepo-1.11.0-101.ppc is installed.
python3.9-3.9.16-0 will be installed
python3.9-dnf-4.2.17-32_4 will be installed
python3.9-gpg-1.13.1-32_3 will be installed
python3.9-hawkey-0.39.1-32_3 will be installed
python3.9-libcomps-0.1.15-32_1 will be installed
python3.9-libdnf-0.39.1-32_3 will be installed
python3.9-librepo-1.11.0-32_2 will be installed
rpm-python3-4.15.1-32_1.ppc will be updated to rpm-python3-4.15.1-32_2
rpm-python3.9-4.15.1-32_2 will be installed
Skipping zchunk-libs-1.1.4-32_2 as higher version zchunk-libs-1.1.4-102.ppc is installed.
Installing the packages...
error: Failed dependencies:
libpython3.7m.so is needed by (installed) python3-libdnf-0.39.1-32_51.ppc
libpython3.7m.so is needed by (installed) python3-hawkey-0.39.1-32_51.ppc
libpython3.7m.so is needed by (installed) python3-librepo-1.11.0-101.ppc
/opt/freeware/bin/python3_32 is needed by (installed) python3-dnf-4.2.17-32_50.ppc
/opt/freeware/bin/python3_32 is needed by (installed) dnf-4.2.17-32_50.ppc
/opt/freeware/bin/python3_32 is needed by (installed) dnf-automatic-4.2.17-32_50.ppc
dnf-data = 4.2.17-32_4 is needed by python3.9-dnf-4.2.17-32_4.noarch
libdnf = 0.39.1-32_3 is needed by python3.9-hawkey-0.39.1-32_3.ppc
libdnf = 0.39.1-32_3 is needed by python3.9-libdnf-0.39.1-32_3.ppc
librepo = 1.11.0-32_2 is needed by python3.9-librepo-1.11.0-32_2.ppc
dnf installation failed.
------------------------------
Howard Coles
Original Message:
Sent: Fri June 30, 2023 01:54 AM
From: SANGAMESH MALLAYYA
Subject: Migrating to python3.9 for AIX Toolbox python3 ecosystem
Hi Howard,
We have updated bundle yesterday.
Can you retry it again and let us know if it works.
------------------------------
SANGAMESH
Original Message:
Sent: Thu June 29, 2023 11:50 AM
From: Howard Coles
Subject: Migrating to python3.9 for AIX Toolbox python3 ecosystem
I'm getting these kinds of errors when trying to update or install the latest bundle on my AIX 7.3 box:
Checking whether any of the rpms from dnf_bundle are already installed...
Takes couple of minutes to process.
ca-certificates-2021.2.52-3.ppc will be updated to ca-certificates-2023.2.60-0
dnf-4.2.17-64_51.ppc will be updated to dnf-4.2.17-64_6
dnf-automatic-4.2.17-64_51.ppc will be updated to dnf-automatic-4.2.17-64_6
dnf-data-4.2.17-64_51.ppc will be updated to dnf-data-4.2.17-64_6
libcomps-0.1.11-101.ppc will be updated to libcomps-0.1.15-64_1
Skipping libdnf-0.39.1-64_4 as higher version libdnf-0.39.1-64_51.ppc is installed.
Skipping libmodulemd-1.5.2-64_2 as higher version libmodulemd-1.5.2-100.ppc is installed.
Skipping librepo-1.11.0-64_2 as higher version librepo-1.11.0-101.ppc is installed.
Skipping libsmartcols-2.34-64_1 as higher version libsmartcols-2.34-100.ppc is installed.
Skipping libsolv-0.7.9-64_3 as higher version libsolv-0.7.9-64_50.ppc is installed.
Skipping libzstd-1.4.4-64_2 as higher version libzstd-1.5.2-1.ppc is installed.
Skipping p11-kit-0.23.22-0 as higher version p11-kit-0.23.22-1.ppc is installed.
Skipping p11-kit-tools-0.23.22-0 as higher version p11-kit-tools-0.23.22-1.ppc is installed.
python3-3.7.15-2.ppc will be updated to python3-3.9.16-0
python3-devel-3.7.15-2.ppc will be updated to python3-devel-3.9.16-0
python3-dnf-4.2.17-64_51.ppc will be updated to python3-dnf-4.2.17-64_6
Skipping python3-gpg-1.13.1-64_3 as higher version python3-gpg-1.13.1-100.ppc is installed.
Skipping python3-hawkey-0.39.1-64_4 as higher version python3-hawkey-0.39.1-64_51.ppc is installed.
python3-libcomps-0.1.11-101.ppc will be updated to python3-libcomps-0.1.15-64_1
Skipping python3-libdnf-0.39.1-64_4 as higher version python3-libdnf-0.39.1-64_51.ppc is installed.
Skipping python3-librepo-1.11.0-64_2 as higher version python3-librepo-1.11.0-101.ppc is installed.
python3.9-3.9.16-0 will be installed
python3.9-dnf-4.2.17-64_6 will be installed
python3.9-gpg-1.13.1-64_3 will be installed
python3.9-hawkey-0.39.1-64_4 will be installed
python3.9-libcomps-0.1.15-64_1 will be installed
python3.9-libdnf-0.39.1-64_4 will be installed
python3.9-librepo-1.11.0-64_2 will be installed
rpm-python3-4.15.1-64_2.ppc will be updated to rpm-python3-4.15.1-64_3
rpm-python3.9-4.15.1-64_3 will be installed
yum-4.2.17-64_6 will be installed
Skipping zchunk-libs-1.1.4-64_3 as higher version zchunk-libs-1.1.4-102.ppc is installed.
Installing the packages...
error: Failed dependencies:
libpython3.7m.so is needed by (installed) python3-libdnf-0.39.1-64_51.ppc
libpython3.7m.so is needed by (installed) python3-hawkey-0.39.1-64_51.ppc
libpython3.7m.so is needed by (installed) python3-librepo-1.11.0-101.ppc
python3.9-devel = 3.9.16-0 is needed by python3-devel-3.9.16-0.ppc
libdnf = 0.39.1-64_4 is needed by python3.9-hawkey-0.39.1-64_4.ppc
libdnf = 0.39.1-64_4 is needed by python3.9-libdnf-0.39.1-64_4.ppc
librepo = 1.11.0-64_2 is needed by python3.9-librepo-1.11.0-64_2.ppc
It looks like someone versioned the NEW stuff to look older than the OLD rpms and I can't update.
How are we supposed to update if we already have dnf installed?
------------------------------
Howard Coles
Original Message:
Sent: Thu June 29, 2023 10:43 AM
From: Sean S
Subject: Migrating to python3.9 for AIX Toolbox python3 ecosystem
I was able to get around this by installing a different rpm.rte file. I am still having an issue getting dnf update to work though.
------------------------------
Sean S
Original Message:
Sent: Wed June 28, 2023 08:05 AM
From: Sean S
Subject: Migrating to python3.9 for AIX Toolbox python3 ecosystem
Greetings,
I am pretty new to IBM AIX, and have a generic question. I downloaded the "rpm" file from the https://www.ibm.com/resources/mrs/assets?source=aixbp and moved it to the server. When I attempt to install the rpm file I get the following error:
bash-5.1
------------------------------
Sean S
Original Message:
Sent: Wed May 24, 2023 12:58 AM
From: SANGAMESH MALLAYYA
Subject: Migrating to python3.9 for AIX Toolbox python3 ecosystem
This post gives an information on what changes will be introduced and what steps users have to take when we upload packages built
with python3.9 for which python3.9 will be the default python3.
We are hoping to upload all python modules built with python3.9 in couples of weeks.
Introduction
Currently on AIX Toolbox python3 based packages are built with python 3.7.
Python 3.7 will be EOL in June 2023. https://www.python.org/downloads/
Hence it is necessary to move to supported python3 version for AIX Toolbox packages.
The default python3
The AIX Toolbox default python3 is python3-3.7. Along with this we have python3.9-3.9 as well.
Till now users who wants to use python3.9 needed to install it separately either with "dnf install python3.9" or by manually using rpm install command "rpm -ivh python3.9 …."
But now default python3 will be python3.9 instead of python3-3.7.
Because of this now when user will run "dnf update", python3.9 along with any other python3 modules (installed from AIX toolbox) or python3 based packages installed (dnf, ninja-build, git, gdb etc) will be update to python3.9 based builds. It is recommended to run "dnf update" instead of updating individual packages.
python3, python3-devel, python3-idle, python3-test, python3-tkinter rpms are now meta-packages that ships default binaries like python3, python3-config, pydoc3, etc. which are actually symlinks to python3.9, python3.9-config, pydoc3.9, etc. provided by python3.9 rpms.
These meta packages have dependencies on actual python packages those supplies the binaries and libraries. Users are recommended to install meta-packages through dnf and implicitly main python3 packages will be installed.
We have rebuilt all our python3 modules with python3.9.
Other issues fixed along with python3.9 rebuilds
Earlier we had an issue with python3 and runtime linking.
This also exposed the issues in rpm.rte and runtime linking.
Overall, this was causing issues with DNF, and breaking DNF itself where users had to fix it by manually downloading some of the rpms from AIX Toolbox.
This has been explained in detail in this forum post Recent DNF and YUM issues with newer python3 and curl builds
Users action
To get all of these latest changes users can run "dnf update". Don't try to update the package individually it recommended to run DNF update.
But before running any DNF commands one needs update rpm.rte to latest version.
We have rebuilt rpm.rte to remove runtime linking and rebuilt DNF and dependencies against this newly rebuilt rpm.rte. DNF dependencies now links to rpm.rte provided archive libraries (.a) instead of directly linking to .so libraries.
To avoid errors related to missing librpm*.a libraries one needs to update rpm.rte first.
You can download latest rpm.rte versions from AIX web download site.
https://www.ibm.com/resources/mrs/assets?source=aixbp
For AIX 7.1 and 7.2: Download and install rpm.rte-4.15.1.1010
For AIX 7.3: Download and install rpm.rte-4.15.1.2009
DNF bundle update
DNF bundle will be updated to include rebuilt DNF python3 modules with python3.9 and an updated rpm.rte.
So, when setting up the DNF using the install script, it tries to update to the latest rpm.rte first and then install the required rpm packages.
Custom Python3 Modules
If a user has built and installed python3 modules (with python3.7) on their own outside AIX toolbox then those modules will not be migrated to python3.9. User will have to reinstall them separately for python3.9.
Summary
From a user perspective there is not much work to migrate to python3.9. One just need to install latest rpm.rte from AIX web download link mentioned above (if not already at latest) and run "dnf update" to get the latest python3.9 ecosystem. Or if you are setting up first time dnf environment then just install latest rpm.rte and then install dnf with the AIX toolbox dnf install script.
------------------------------
SANGAMESH
------------------------------