How to fix broken Zypper after change SUSE Tumbleweed to Leap

6,144

I downloaded zyppper and libzypp from software.opensuse.org for openSuse 42.3

after that I run rpm --force -hiv *rpm (for these rpm's) and after this operation zypper is fixed.

Share:
6,144

Related videos on Youtube

marcin
Author by

marcin

Updated on September 18, 2022

Comments

  • marcin
    marcin over 1 year

    I have changed my distribution from Tumleweed to Leap 43 by changing list of repositories to:

     # zypper lr
    Repository priorities are without effect. All enabled repositories share the same priority.
    
    # | Alias                               | Name                              | Enabled | GPG Check | Refresh
    --+-------------------------------------+-----------------------------------+---------+-----------+--------
    1 | http-download.opensuse.org-2fb25ebb | devel:tools:building              | Yes     | (r ) Yes  | Yes    
    2 | packman                             | packman                           | Yes     | (r ) Yes  | Yes    
    3 | repo-debug                          | openSUSE-Leap-42.3-Debug          | No      | ----      | ----   
    4 | repo-non-oss                        | openSUSE-Leap-42.3-Non-Oss        | Yes     | (r ) Yes  | Yes    
    5 | repo-oss                            | openSUSE-Leap-42.3-Oss            | Yes     | (r ) Yes  | Yes    
    6 | repo-source                         | openSUSE-Leap-42.3-Source         | No      | ----      | ----   
    7 | repo-source-non-oss                 | openSUSE-Leap-42.3-Source-Non-Oss | Yes     | (r ) Yes  | Yes    
    8 | repo-update                         | openSUSE-Leap-42.3-Update         | Yes     | (r ) Yes  | Yes    
    9 | repo-update-non-oss                 | openSUSE-Leap-42.3-Update-Non-Oss | Yes     | (r ) Yes  | Yes   
    

    Next I tried to update it:

    # zypper up
    Loading repository data...
    Reading installed packages...
    
    The following 119 package updates will NOT be installed:
      cmake dmraid ffmpeg gettext-runtime gio-branding-openSUSE gstreamer-plugins-bad gtk3-branding-openSUSE java-1_8_0-openjdk java-1_8_0-openjdk-headless libavcodec57 libavdevice57 libavfilter6 libavformat57 libavresample3 libavutil55 libdcerpc0 libdcerpc0-32bit
      libdcerpc-binding0 libdcerpc-binding0-32bit libgstadaptivedemux-1_0-0 libgstbadaudio-1_0-0 libgstbadbase-1_0-0 libgstbadvideo-1_0-0 libgstbasecamerabinsrc-1_0-0 libgstcodecparsers-1_0-0 libgstgl-1_0-0 libgstmpegts-1_0-0 libgstphotography-1_0-0 libgsturidownloader-1_0-0
      libgstwayland-1_0-0 libltdl7 libmjpegutils-2_0-0 libndr0 libndr0-32bit libndr-krb5pac0 libndr-krb5pac0-32bit libndr-nbt0 libndr-nbt0-32bit libndr-standard0 libndr-standard0-32bit libnetapi0 libnetapi0-32bit libpostproc54 libquicktime0 libsamba-credentials0
      libsamba-credentials0-32bit libsamba-hostconfig0 libsamba-hostconfig0-32bit libsamba-passdb0 libsamba-passdb0-32bit libsamba-util0 libsamba-util0-32bit libsamdb0 libsamdb0-32bit libsmbclient0 libsmbconf0 libsmbconf0-32bit libsmbldap0 libsmbldap0-32bit libsox3
      libswresample2 libswscale4 libwbclient0 libwbclient0-32bit mjpegtools NetworkManager-branding-openSUSE PackageKit-branding-openSUSE perl-Authen-SASL perl-B-Hooks-EndOfScope perl-Class-Data-Inheritable perl-Class-Factory-Util perl-Class-Method-Modifiers
      perl-Crypt-SmbHash perl-Devel-Caller perl-Devel-LexAlias perl-Digest-HMAC perl-Digest-MD4 perl-Digest-SHA1 perl-Eval-Closure perl-File-Listing perl-HTML-Tagset perl-HTTP-Daemon perl-HTTP-Date perl-HTTP-Negotiate perl-LWP-MediaTypes perl-namespace-autoclean
      perl-namespace-clean perl-Net-LibIDN perl-Package-DeprecationManager perl-PadWalker perl-Params-Util perl-Pod-Coverage perl-Sub-Install perl-TermReadLine-Gnu perl-Test-Fatal perl-TimeDate perl-WWW-RobotRules perl-X11-Protocol perl-X500-DN perl-XML-SAX python3-cairo
      qt4-qtscript samba samba-client samba-client-32bit samba-libs samba-libs-32bit samba-winbind samba-winbind-32bit site-config sox subversion-perl xf86-input-vmmouse xf86-input-void xf86-video-fbdev xf86-video-vesa xorg-x11-server yast2-core yast2-perl-bindings
    
    The following 2 packages are going to be REMOVED:
      libzypp libzypp
    
    The following 5 packages are going to be upgraded:
      libicu52_1 libicu52_1-data libzypp zypper-aptitude zypper-log
    
    5 packages to upgrade, 2 to remove.
    Overall download size: 8.7 MiB. Already cached: 0 B. After the operation, 14.9 MiB will be freed.
    Continue? [y/n/...? shows all options] (y): y
    Retrieving package libicu52_1-data-52.1-15.1.x86_64                                                                                                                                                                                       (1/5),   5.2 MiB ( 22.4 MiB unpacked)
    Retrieving delta: ./x86_64/libicu52_1-data-52.1-13.3_15.1.x86_64.drpm, 16.7 KiB
    Retrieving: libicu52_1-data-52.1-13.3_15.1.x86_64.drpm ..................................................................................................................................................................................................................[done]
    Applying delta: ./libicu52_1-data-52.1-13.3_15.1.x86_64.drpm ............................................................................................................................................................................................................[done]
    Retrieving package libzypp-16.15.6-12.1.x86_64                                                                                                                                                                                            (2/5),   2.0 MiB (  7.4 MiB unpacked)
    Retrieving: libzypp-16.15.6-12.1.x86_64.rpm ...............................................................................................................................................................................................................[done (356.5 KiB/s)]
    Retrieving package zypper-aptitude-1.13.32-8.1.noarch                                                                                                                                                                                     (3/5),  60.4 KiB (  4.0 KiB unpacked)
    Retrieving: zypper-aptitude-1.13.32-8.1.noarch.rpm .........................................................................................................................................................................................................[done (75.4 KiB/s)]
    Retrieving package zypper-log-1.13.32-8.1.noarch                                                                                                                                                                                          (4/5),  61.0 KiB (  6.2 KiB unpacked)
    Retrieving: zypper-log-1.13.32-8.1.noarch.rpm ...........................................................................................................................................................................................................................[done]
    Retrieving package libicu52_1-52.1-15.1.x86_64                                                                                                                                                                                            (5/5),   1.4 MiB (  4.3 MiB unpacked)
    Retrieving delta: ./x86_64/libicu52_1-52.1-13.3_15.1.x86_64.drpm, 21.8 KiB
    Retrieving: libicu52_1-52.1-13.3_15.1.x86_64.drpm .......................................................................................................................................................................................................................[done]
    Applying delta: ./libicu52_1-52.1-13.3_15.1.x86_64.drpm .................................................................................................................................................................................................................[done]
    Checking for file conflicts: ............................................................................................................................................................................................................................................[done]
    (1/5) Installing: libicu52_1-data-52.1-15.1.x86_64 ......................................................................................................................................................................................................................[done]
    (2/5) Installing: libzypp-16.15.6-12.1.x86_64 ...........................................................................................................................................................................................................................[done]
    (3/5) Installing: zypper-aptitude-1.13.32-8.1.noarch ....................................................................................................................................................................................................................[done]
    (4/5) Installing: zypper-log-1.13.32-8.1.noarch .........................................................................................................................................................................................................................[done]
    (5/5) Installing: libicu52_1-52.1-15.1.x86_64 ...........................................................................................................................................................................................................................[done]
    There are some running programs that might use files deleted by recent upgrade. You may wish to check and restart some of them. Run 'zypper ps -s' to list these programs.
    

    After that zypper have been broken:

    # zypper
    zypper: relocation error: zypper: symbol _ZN4zypp13KeyRingReport10infoVerifyERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_13PublicKeyDataERKNS_10KeyContextE, version ZYPP_plain not defined in file libzypp.so.1600 with link time reference
    

    I tried to find versions from Tumbleweed of packages related to zypper and I installed them:

    # rpm --force -hiv libmodman1-2.0.1-24.25.x86_64.rpm  libproxy1-0.4.14-164.14.x86_64.rpm  python-zypp-0.7.3-3.27.x86_64.rpm  zypper-1.13.32-9.1.x86_64.rpm  zypper-aptitude-1.13.14-1.1.noarch.rpm  zypper-log-1.13.14-1.1.noarch.rpm
    warning: libmodman1-2.0.1-24.25.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 629ff0c2: NOKEY
    warning: python-zypp-0.7.3-3.27.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID f3ef3328: NOKEY
    warning: zypper-aptitude-1.13.14-1.1.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID f6ab3975: NOKEY
    Preparing...                          ################################# [100%]
    Updating / installing...
       1:zypper-1.13.32-9.1               ################################# [ 17%]
       2:libmodman1-2.0.1-24.25           ################################# [ 33%]
       3:libproxy1-0.4.14-164.14          ################################# [ 50%]
       4:zypper-aptitude-1.13.14-1.1      ################################# [ 67%]
       5:zypper-log-1.13.14-1.1           ################################# [ 83%]
       6:python-zypp-0.7.3-3.27           ################################# [100%]
    

    However it do not repair zypper:

    # zypper
    zypper: relocation error: zypper: symbol _ZN4zypp13KeyRingReport10infoVerifyERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_13PublicKeyDataERKNS_10KeyContextE, version ZYPP_plain not defined in file libzypp.so.1600 with link time reference
    

    What can I do to avoid reinstalling my system? Can I download source of zypper and compile it and run?

  • Daf
    Daf over 3 years
    This mostly worked: libzypp had a dependency of libsolv-tools also. I guess it depends how broken zypper is in terms of what dependencies it may ask for. In my case just one more. libsolv-tools also had some issues installing, but the error told me how to fix the problem it raised.