Manjaro Update fails

For some reason when applying the updates today that Pacman recommends, I get errors about dependencies.

For example Thunderbird returns:
could not satisfy dependencies:

  • unable to satisfy dependency ‘libicui18n.so=76-64’ required by thunderbird
  • unable to satisfy dependency ‘libicuuc.so=76-64’ required by thunderbird

Lots of other problems. Some electron.

I am still too new at this.

It’s possible the mirrors you are using haven’t fully synced yet:
Mirror Check Service
If this is the case, you could try e.g.:

sudo pacman-mirrors -c Germany

I’m using these now as I found the UK mirrors to be too unreliable.

1 Like

You likely have outdated electron packages remaining as orphans. The old electron packages depend on the old icu version, preventing icu from being properly updated.

Check for orphaned packages ( pacman -Qtd ). Anything listed is not required by any other package on your system, but it is possible that you have come to use and rely on the package yourself. If you do not use the orphaned package, it should be safe to remove.

Once the orphaned electron packages have been removed, icu should be able to update normally, and thunderbird will too.

3 Likes

What is the proper way to remove them? One at a time? I’m not even sure where they are.

[steve@steve ~]$ pacman -Qtd 
asar 3.2.18-2
attica5 5.116.0-1
autoconf-archive 1:2024.10.16-2
blueprint-compiler 0.14.0-3
box2d 3.0.0-1
cfitsio 1:4.5.0-1
cuneiform 1.1.0-22
dnssec-anchors 20190629-4
electron33 33.4.0-1
extra-cmake-modules 6.10.0-1
faudio 25.03-1
fcitx5 5.1.12-1
gendesk 1.0.10-1
gi-docgen 2024.1-2
gn 0.2207.ed1abc10-1
gnucash-docs 5.10-1
gobject-introspection 1.82.0-2
gperf 3.1-5
gtk-doc 1.34.0-3
gtuber r452.468bf02-1
haskell-base64 0.4.2.4-81
haskell-digits 0.3.1-30
haskell-pandoc-lua-engine 0.2.1.2-80
haskell-pandoc-server 0.1.0.5-98
haskell-string-conversions 0.4.0.1-180
haskell-x509-system 1.6.7-63
haskell-x509-validation 1.6.12-65
help2man 1.49.3-2
hslua-cli 1.4.1-65
i2c-tools 4.4-2
iniparser 4.2.5-1
js115 115.18.0-1
kdeclarative5 5.116.0-1
kirigami2 5.116.0-1
kpty5 5.116.0-1
lib32-libcanberra 1:0.30+r2+gc0620e4-3
lib32-libxss 1.2.4-2
lib32-sdl12-compat 1.2.68-2
libcgif 0.4.1-1
libdbi-drivers 0.9.0-10
libksane5 24.08.3-1
libngtcp2 1.10.0-1
libomxil-bellagio 0.9.3-5
libtracefs 1.8.1-1
libvisual 0.4.2-2
libxcrypt-compat 4.4.38-1
linux-lts-meta 5.4-1
linux-lts-virtualbox-host-modules-meta 5.4-1
linux613-rt-virtualbox-host-modules 7.1.6-3
linux66-rt-virtualbox-host-modules 7.1.6-6
linux66-virtualbox-host-modules 7.1.6-10
lld 19.1.7-1
lua52 5.2.4-7
marisa 0.2.6-16
mathjax2 2.7.9-2
mbedtls2 2.28.9-1
meson 1.7.0-1
moreutils 0.70-1
nvm 0.40.1-1
patchelf 0.18.0-3
patchutils 0.4.2-3
perl-crypt-random-tesha2 0.01-11
perl-date-manip 6.96-1
perl-finance-quote 1.5400-1
perl-inc-latest 0.500-13
perl-sub-identify 0.14-13
poppler-qt5 25.01.0-1
premake3 3.7-6
pybind11 2.13.6-2
python-annotated-types 0.7.0-2
python-argcomplete 3.4.0-2
python-distutils-extra 2.39-14
python-httplib2 0.22.0-8
python-hypothesis 6.124.7-1
python-manjaro-sdk 1:0.1.1-1
python-ordered-set 4.1.0-7
python-pydantic-core 2:2.27.2-1
python-pyrsistent 0.20.0-6
python-tomli 2.0.1-5
python-validate-pyproject 0.23-1
python-xmltodict 0.14.2-1
python-zipp 3.21.0-2
qt5-charts 5.15.16-3
qt5-doc 5.15.16-3
qt5-imageformats 5.15.16+kde+r2-3
syndication5 5.116.0-1
v86d 0.1.10-13
wayland-protocols 1.39-1
wpebackend-fdo 1.14.3-1
xsane 0.999-7
yarn 1.22.22-2
yelp-tools 42.1-2
[steve@steve ~]$

Mod edit: Fixed formatting. :wink:

My mirror is in Canada at University of Waterloo

not important - makes no difference
except perhaps in download speed - from Germany to Canada is likely not the fastest

If these packages are orphans - they are not needed by anything.
Remove them all - then deal with any (unlikely) carnage.

How?

search - I’d rather pacman -Rns each single one separately
than look for an easy catch all ready made command line example
… which you will find if you where to look …

2 Likes

Sorry, but I tried the first one:

[steve@steve ~]$ pacman -Rns  asar 3.2.18-2
error: you cannot perform this operation unless you are root.
[steve@steve ~]$ sudo pacman -Rns  asar 3.2.18-2
[sudo] password for steve: 
error: target not found: 3.2.18-2
d

… should have been sudo pacman -Rns :wink:

Also, just the package name without the space and numbers following, e.g.:

sudo pacman -Rns asar

… but check first with pacman -Qii <package>. ← No sudo needed for this.

1 Like

that is only part of the command

sudo pacman -Rns yxz
would be the full command
(xyz is a placeholder for the actual name, of course)

1 Like
[steve@steve ~]$ sudo pacman -Rns  asar
checking dependencies...

Packages (1) asar-3.2.18-2

Total Removed Size:  0.33 MiB

:: Do you want to remove these packages? [Y/n] y
:: Processing package changes...
(1/1) removing asar                                [######################] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
[steve@steve ~]$ 
1 Like

… mkay - go on with the next one in the list

1 Like
[steve@steve ~]$ sudo pacman -Rns attica
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: removing attica breaks dependency 'attica' required by discover
:: removing attica breaks dependency 'attica' required by knewstuff

as logic would dictate:
remove these dependencies too

sudo pacman -Rns discover
sudo pacman -Rns knewstuff

These are the current blockers.
Remove them - so they can’t be blockers anymore …

or just do
sudo pacman -R ...
instead of
pacman -Rns ...
to avoid going down dependency chains

1 Like

Discover isn’t a default application as far as I’m aware and nothing seems to depend on it. However:

pacman -Qii knewstuff
Name            : knewstuff
Version         : 6.10.0-1
Description     : Support for downloading application assets from the network
Architecture    : x86_64
URL             : https://community.kde.org/Frameworks
Licenses        : LGPL-2.0-only  LGPL-3.0-only
Groups          : kf6
Provides        : None
Depends On      : attica  gcc-libs  glibc  karchive  kcmutils  kconfig  kcoreaddons  ki18n  kirigami
                  kpackage  kwidgetsaddons  qt6-base  qt6-declarative  syndication
Optional Deps   : None
Required By     : discover  dolphin  frameworkintegration  grantleetheme  k3b  kate  kdenlive
                  kdeplasma-addons  knotes  konsole  konversation  kwin  libkdegames  libksysguard  pimcommon
                  plasma-desktop  plasma-systemmonitor  plasma-workspace  sddm-kcm  yakuake
Optional For    : None
Conflicts With  : None
Replaces        : None
Installed Size  : 3.54 MiB
Packager        : Antonio Rojas <arojas@archlinux.org>
Build Date      : Thu 09 Jan 2025 18:09:32 GMT
Install Date    : Tue 04 Feb 2025 12:48:11 GMT
Install Reason  : Installed as a dependency for another package
Install Script  : No
Validated By    : Signature
Backup Files    : None
Extended Data   : pkgtype=pkg

— see the “Required By” section. ← I was about to advise not removing that package!

1 Like

Not clear, but here is what happened:

sudo pacman -Rns knewstuff
[sudo] password for steve: 
checking dependencies...
:: pyside6 optionally requires qt6-websockets: QtWebSockets bindings
:: python-pyqt6 optionally requires qt6-websockets: QtWebSockets bindings

Packages (10) appstream-qt-1.0.4-1  kidletime-6.10.0-1  kirigami-addons-1.7.0-1
              kitemmodels-6.10.0-1  ksvg-6.10.0-1  qcoro-0.11.0-1
              qqc2-desktop-style-6.11.0-1  qt6-websockets-6.8.2-1
              qt6-webview-6.8.2-1  discover-6.3.2-1

Total Removed Size:  17.24 MiB

:: Do you want to remove these packages? [Y/n] y
:: Processing package changes...
( 1/10) removing discover                          [######################] 100%
( 2/10) removing qt6-webview                       [######################] 100%
( 3/10) removing qqc2-desktop-style                [######################] 100%
( 4/10) removing qcoro                             [######################] 100%
( 5/10) removing qt6-websockets                    [######################] 100%
( 6/10) removing kirigami-addons                   [######################] 100%
( 7/10) removing ksvg                              [######################] 100%
( 8/10) removing kitemmodels                       [######################] 100%
( 9/10) removing kidletime                         [######################] 100%
(10/10) removing appstream-qt                      [######################] 100%
:: Running post-transaction hooks...
(1/3) Arming ConditionNeedsUpdate...
(2/3) Updating icon theme caches...
(3/3) Updating the desktop file MIME type cache...
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: removing knewstuff breaks dependency 'knewstuff' required by kate
[steve@steve ~]$ sudo pacman -Rns kate
checking dependencies...

Packages (8) attica-6.10.0-1  editorconfig-core-c-0.12.9-1  knewstuff-6.10.0-1
             kpackage-6.10.0-1  ktexteditor-6.10.0-1  kuserfeedback-6.10.0-1
             syndication-6.10.0-1  kate-24.12.2-1

Total Removed Size:  59.18 MiB

:: Do you want to remove these packages? [Y/n] y
:: Processing package changes...
(1/8) removing kate                                [######################] 100%
(2/8) removing kuserfeedback                       [######################] 100%
(3/8) removing ktexteditor                         [######################] 100%
(4/8) removing editorconfig-core-c                 [######################] 100%
(5/8) removing knewstuff                           [######################] 100%
(6/8) removing syndication                         [######################] 100%
(7/8) removing kpackage                            [######################] 100%
(8/8) removing attica                              [######################] 100%
:: Running post-transaction hooks...
(1/4) Arming ConditionNeedsUpdate...
(2/4) Reloading system bus configuration...
(3/4) Updating icon theme caches...
(4/4) Updating the desktop file MIME type cache...
[steve@steve ~]$ 

… yes - and?

what about the rest of all the orphans?

It was:

pacman -Qtd

I believe?

What is still left of that initial list?

1 Like

No! attica is not the same as your orphan attica5

3 Likes

I keep getting

1/1) Arming ConditionNeedsUpdate..

The next one worked, so I will try more.

I’ll now revise my advice
to just use
pacman -R
(not: pacman -Rns - not recursively remove stuff)

It’s more tedious, but safer
esp. for folks who do not know what they are doing

2 Likes

That’s me! A few more have worked so I will try them all.