Open Source Development

Power Open Source Development

Explore the open source tools and capabilities for building and deploying modern applications on IBM Power platforms including AIX, IBM i, and Linux.


#Power


#Power

 View Only
  • 1.  Issues with DNF migration after NIMADM upgrade to 7.3

    Posted Wed December 21, 2022 02:00 AM
    Edited by Alan Wed December 21, 2022 02:06 AM
    I have reviewed the blog with the details of the steps required to migrate DNF after NIMADM to AIX 7.3.

    I had DNF on the source system already on AIX 7.2.

    It looks like there are some dependency issues which I would like some advice as the best way to work around. 

    The new DNF looks to require python3-gpgme-1.13.1-64_1.aix7.1.ppc.rpm, which is provided in the DNF AIX 7.3 installer bundle. But this has been obsoleted by python3-gpg-1.13.1-100.ppc, so was updated by a previous update before the NIMADM when on AIX 7.2. 

    Output of the installer:

    # /tmp/dnf/install_dnf.sh -y


    Checking whether any of the rpms from dnf_bundle are already installed...
    Takes couple of minutes to process.

    Skipping ca-certificates-2020.06.01-0 as higher version ca-certificates-2021.2.52-3.ppc is installed.
    dnf-4.2.17-32_50.ppc will be updated to dnf-4.2.17-64_4
    dnf-automatic-4.2.17-32_50.ppc will be updated to dnf-automatic-4.2.17-64_4
    dnf-data-4.2.17-32_50.ppc will be updated to dnf-data-4.2.17-64_4
    Skipping libcomps-0.1.11-64_1 as higher version libcomps-0.1.11-100.ppc is installed.
    libdnf-0.39.1-32_50.ppc will be updated to libdnf-0.39.1-64_3
    Skipping libmodulemd-1.5.2-64_2 as higher version libmodulemd-1.5.2-100.ppc is installed.
    Skipping librepo-1.11.0-64_1 as higher version librepo-1.11.0-100.ppc is installed.
    Skipping libsmartcols-2.34-64_1 as higher version libsmartcols-2.34-100.ppc is installed.
    libsolv-0.7.9-32_51.ppc will be updated to libsolv-0.7.9-64_2
    Skipping libzstd-1.4.4-64_2 as higher version libzstd-1.4.4-100.ppc is installed.
    Skipping p11-kit-0.23.16-0 as higher version p11-kit-0.23.22-1.ppc is installed.
    Skipping p11-kit-tools-0.23.16-0 as higher version p11-kit-tools-0.23.22-1.ppc is installed.
    Skipping python3-3.7.9-0 as higher version python3-3.7.12-1.ppc is installed.
    python3-dnf-4.2.17-32_50.ppc will be updated to python3-dnf-4.2.17-64_4
    python3-gpgme-1.13.1-64_1 will be installed
    python3-hawkey-0.39.1-32_50.ppc will be updated to python3-hawkey-0.39.1-64_3
    Skipping python3-libcomps-0.1.11-64_1 as higher version python3-libcomps-0.1.11-100.ppc is installed.
    python3-libdnf-0.39.1-32_50.ppc will be updated to python3-libdnf-0.39.1-64_3
    Skipping python3-librepo-1.11.0-64_1 as higher version python3-librepo-1.11.0-100.ppc is installed.
    rpm-python3-4.15.1-32_1.ppc will be updated to rpm-python3-4.15.1-64_2
    yum-4.2.17-64_4 will be installed
    Skipping zchunk-libs-1.1.4-64_2 as higher version zchunk-libs-1.1.4-101.ppc is installed.

    Installing the packages...

    error: Failed dependencies:
    python3-gpgme is obsoleted by (installed) python3-gpg-1.13.1-100.ppc

    dnf installation failed.
    If the failure was due to a space issue, increase the size of /opt and re-run the script again.
    Another reason for failure could be mixing of Toolbox packages and packages from other sources.

    I have tried excluding this RPM but it needs it, even though the replacement is already installed:

    error: Failed dependencies:
    python3-gpgme >= 1.13.1 is needed by python3-dnf-4.2.17-64_4.noarch

    So went to the next choice, replacing the python3-dnf with the new one from the toolbox python3-dnf-4.2.17-64_51.aix7.3.ppc.rpm . which changes the error to

    error: Failed dependencies:
    python3-dnf = 4.2.17-64_4 is needed by dnf-4.2.17-64_4.noarch
    dnf-data = 4.2.17-64_51 is needed by python3-dnf-4.2.17-64_51.ppc
    python3-hawkey >= 0.39.1-64_50 is needed by python3-dnf-4.2.17-64_51.ppc
    python3-libdnf >= 0.39.1-64_50 is needed by python3-dnf-4.2.17-64_51.ppc

    I am sure I could get it to work eventually by replacing them all with all the newer toolbox RPMs, or removing all the old DNF RPMs before running the installer.

    It looks like the available RPMs in the toolbox are newer than the ones bundled in the installer, which may be causing the issue when we have upgraded to those before NIMADM migration? Is the AIX 7.3 DNF installer bundle requiring an update with the newer RPMs?

    ------------------------------
    Alan
    ------------------------------
    #AIXOpenSource


  • 2.  RE: Issues with DNF migration after NIMADM upgrade to 7.3

    Posted Wed December 21, 2022 04:28 AM
    Edited by SANGAMESH MALLAYYA Wed December 21, 2022 04:28 AM
    Hi Alan,

    We have changed the package naming of python3-gpgme to  python3-gpg.

    So, When python3-gpg is already installed the rpm update command is complaining when we try to again install the python3-gpgme from the 7.3 bundle. 

    We will check and modify the script accordingly to skip installing python3-gpgme if python3-gpg is already installed.



    ------------------------------
    SANGAMESH
    ------------------------------



  • 3.  RE: Issues with DNF migration after NIMADM upgrade to 7.3

    Posted Wed December 21, 2022 06:16 PM
    Thanks. I already tried manually excluding pytyhon3-gpgme, and it came up with the 2nd error:

    error: Failed dependencies:
    python3-gpgme >= 1.13.1 is needed by python3-dnf-4.2.17-64_4.noarch

    So the older python3-dnf from the installer script also requires this old python3-gpgme version. The latest version of python-dnf in the toolbox changes this requisite to python3-gpg. 

    But changing the python3-dnf RPM  to this latest version causes other dependency issues- as several other dependent RPMs were changed or missing as well. 

    error: Failed dependencies:
    python3-dnf = 4.2.17-64_4 is needed by dnf-4.2.17-64_4.noarch
    dnf-data = 4.2.17-64_51 is needed by python3-dnf-4.2.17-64_51.ppc
    python3-hawkey >= 0.39.1-64_50 is needed by python3-dnf-4.2.17-64_51.ppc
    python3-libdnf >= 0.39.1-64_50 is needed by python3-dnf-4.2.17-64_51.pp

    I expect the suite of RPMs included in the installer just need to be updated to the latest toolbox version so the prerequisites are included and it should work OK.

    ------------------------------
    Alan
    ------------------------------



  • 4.  RE: Issues with DNF migration after NIMADM upgrade to 7.3

    Posted Thu December 22, 2022 07:25 AM
    Hi Alan,

    Thanks.
    I have updated the dnf bundle to have python-gpg instead of gpgme to resolve the obsolete error.
    We wanted the dnf bundle to have as less packages as possible hence bringing latest toolbox one to bundle would bring many other packages.
    I have just rebuilt to have python3-gpg instead of python3-gpgme in the bundle itself.

    Coming to the your recent Failed dependencies error.
    You seem to have python3-dnf from the bundle but dnf-data from the latest AIX Toolbox.
    But in the log it shows python3-dnf-4.2.17-32_50.ppc will be updated to python3-dnf-4.2.17-64_4
    Any other packages you tried installing manually after the failure ?


    ------------------------------
    SANGAMESH
    ------------------------------



  • 5.  RE: Issues with DNF migration after NIMADM upgrade to 7.3

    Posted Thu December 22, 2022 08:40 PM
    It was actually the opposite with that dependency error. 

    I copied the latest toolbox python3-dnf-4.2.17-64_51.ppc to allow the newer python3-gpg but not its dependency dnf-data - the installer had version dnf-data-4.2.17-64_4.aix7.1.noarch.rpm, which did not meet the requirements for python3-dnf-4.2.17-64_51.ppc.

    This seems fixed with the new installer, thanks.  I installed this successfully. Output below.

    # ./install_dnf.sh -y


    Checking whether any of the rpms from dnf_bundle are already installed...
    Takes couple of minutes to process.

    Skipping ca-certificates-2020.06.01-0 as higher version ca-certificates-2021.2.52-3.ppc is installed.
    dnf-4.2.17-32_50.ppc will be updated to dnf-4.2.17-64_5
    dnf-automatic-4.2.17-32_50.ppc will be updated to dnf-automatic-4.2.17-64_5
    dnf-data-4.2.17-32_50.ppc will be updated to dnf-data-4.2.17-64_5
    Skipping libcomps-0.1.11-64_1 as higher version libcomps-0.1.11-100.ppc is installed.
    libdnf-0.39.1-32_50.ppc will be updated to libdnf-0.39.1-64_3
    Skipping libmodulemd-1.5.2-64_2 as higher version libmodulemd-1.5.2-100.ppc is installed.
    Skipping librepo-1.11.0-64_1 as higher version librepo-1.11.0-100.ppc is installed.
    Skipping libsmartcols-2.34-64_1 as higher version libsmartcols-2.34-100.ppc is installed.
    libsolv-0.7.9-32_51.ppc will be updated to libsolv-0.7.9-64_2
    Skipping libzstd-1.4.4-64_2 as higher version libzstd-1.4.4-100.ppc is installed.
    Skipping p11-kit-0.23.16-0 as higher version p11-kit-0.23.22-1.ppc is installed.
    Skipping p11-kit-tools-0.23.16-0 as higher version p11-kit-tools-0.23.22-1.ppc is installed.
    Skipping python3-3.7.9-0 as higher version python3-3.7.12-1.ppc is installed.
    python3-dnf-4.2.17-32_50.ppc will be updated to python3-dnf-4.2.17-64_5
    Skipping python3-gpg-1.13.1-64_2 as higher version python3-gpg-1.13.1-100.ppc is installed.
    python3-hawkey-0.39.1-32_50.ppc will be updated to python3-hawkey-0.39.1-64_3
    Skipping python3-libcomps-0.1.11-64_1 as higher version python3-libcomps-0.1.11-100.ppc is installed.
    python3-libdnf-0.39.1-32_50.ppc will be updated to python3-libdnf-0.39.1-64_3
    Skipping python3-librepo-1.11.0-64_1 as higher version python3-librepo-1.11.0-100.ppc is installed.
    rpm-python3-4.15.1-32_1.ppc will be updated to rpm-python3-4.15.1-64_2
    yum-4.2.17-64_5 will be installed
    Skipping zchunk-libs-1.1.4-64_2 as higher version zchunk-libs-1.1.4-101.ppc is installed.

    Installing the packages...

    Verifying... ################################# [100%]
    Preparing... ################################# [100%]
    Updating / installing...
    1:libsolv-0.7.9-64_2 ################################# [ 5%]
    2:rpm-python3-4.15.1-64_2 ################################# [ 11%]
    3:libdnf-0.39.1-64_3 ################################# [ 16%]
    4:python3-libdnf-0.39.1-64_3 ################################# [ 21%]
    5:dnf-data-4.2.17-64_5 ################################# [ 26%]
    6:python3-hawkey-0.39.1-64_3 ################################# [ 32%]
    7:python3-dnf-4.2.17-64_5 ################################# [ 37%]
    8:dnf-4.2.17-64_5 ################################# [ 42%]
    9:dnf-automatic-4.2.17-64_5 ################################# [ 47%]
    10:yum-4.2.17-64_5 ################################# [ 53%]
    Cleaning up / removing...
    11:dnf-automatic-4.2.17-32_50 ################################# [ 58%]
    12:dnf-4.2.17-32_50 ################################# [ 63%]
    13:python3-dnf-4.2.17-32_50 ################################# [ 68%]
    14:python3-hawkey-0.39.1-32_50 ################################# [ 74%]
    15:python3-libdnf-0.39.1-32_50 ################################# [ 79%]
    16:libdnf-0.39.1-32_50 ################################# [ 84%]
    17:libsolv-0.7.9-32_51 ################################# [ 89%]
    18:rpm-python3-4.15.1-32_1 ################################# [ 95%]
    19:dnf-data-4.2.17-32_50 ################################# [100%]

    dnf installed successfully.
    Please run 'dnf update' to update packages to the latest level.

    Please note, RPM packages are downloaded in dnf cache /var/cache/dnf.
    RPM packages install files go under the path /opt.
    Hence it is recommended to always keep at least 512MB of free space in /var & /opt
    to avoid any download and installation/update failures.

    I was then able to dnf update to get the latest from the toolbox, which worked fine. 


    ------------------------------
    Alan
    ------------------------------