Add remove software updates failing

Hi,
I cannot add remove or update software. When I run the below in terminal I get this:

~ >>> sudo pacman -Syu                                                         
[sudo] password for jarrod: 
warning: config file /etc/pacman.conf, line 20: directive 'SyncFirst' in section 'options' not recognized.
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
 multilib is up to date
 TROMrepo                0.0   B  0.00   B/s 00:01 [######################] 100%
 chaotic-aur           628.5 KiB   187 KiB/s 00:03 [######################] 100%
:: Starting full system upgrade...
warning: appimagelauncher: local (2.2.0-10) is newer than chaotic-aur (2.2.0-9)
warning: easystroke: local (0.6.0-24.4) is newer than chaotic-aur (0.6.0-24.1)
:: Replace lib32-libva-mesa-driver with multilib/lib32-mesa? [Y/n] y
:: Replace lib32-mesa-vdpau with multilib/lib32-mesa? [Y/n] y
:: Replace libva-mesa-driver with extra/mesa? [Y/n] y
:: Replace mesa-vdpau with extra/mesa? [Y/n] y
:: Replace p7zip with extra/7zip? [Y/n] y
warning: qt5gtk2: local (1.0-8) is newer than TROMrepo (1.0-3)
:: Replace sdl2 with extra/sdl2-compat? [Y/n] y
:: Replace tracker3 with extra/tinysparql? [Y/n] y
:: Replace webrtc-audio-processing with extra/webrtc-audio-processing-0.3? [Y/n] y
resolving dependencies...
:: There are 2 providers available for qt6-multimedia-backend:
:: Repository extra
   1) qt6-multimedia-ffmpeg  2) qt6-multimedia-gstreamer

Enter a number (default=1): 2
:: There are 3 providers available for phonon-qt6-backend:
:: Repository extra
   1) phonon-qt6-mpv  2) phonon-qt6-vlc
:: Repository chaotic-aur
   3) phonon-qt6-gstreamer-git

Enter a number (default=1): 3
looking for conflicting packages...
warning: removing 'gtkhash-1.5-3.3' from target list because it conflicts with 'gtkhash-thunar-1.5-3.3'
:: gtkhash-thunar-1.5-3.3 and gtkhash-1.5-3 are in conflict. Remove gtkhash? [y/N] y
:: nodejs-23.11.1-1 and nodejs-lts-hydrogen-18.20.4-1 are in conflict. Remove nodejs-lts-hydrogen? [y/N] y
error: failed to prepare transaction (could not satisfy dependencies)
:: installing icu (76.1-1) breaks dependency 'libicui18n.so=75-64' required by electron28
:: installing icu (76.1-1) breaks dependency 'libicuuc.so=75-64' required by electron28
:: installing flac (1.5.0-1) breaks dependency 'libFLAC.so=12-64' required by electron28
:: installing libxml2 (2.14.3-1) breaks dependency 'libxml2.so=2-64' required by electron28
:: installing icu (76.1-1) breaks dependency 'libicui18n.so=75-64' required by electron32
:: installing icu (76.1-1) breaks dependency 'libicuuc.so=75-64' required by electron32
:: installing flac (1.5.0-1) breaks dependency 'libFLAC.so=12-64' required by electron32
:: installing libxml2 (2.14.3-1) breaks dependency 'libxml2.so=2-64' required by electron32

Please see this The TROMjaro repo is broken. Here how to fix it - let me know if it fixes the issue.

Also please select the code you pasted and then press the code button to format it as code, else it is hard to read.

I did it for you this time but keep in mind.

Thanks @Tio ,

not fixed.

I followed the instruction on the link. I manually found the folder: filesystem/etc/pacman.d then right clicked and edited as root adding the new address.

When I refresh database in add/remove I get the following error:
ā€˜error failed to prepare transaction’
ā€˜Failed to generate wordnet-common information’

You can paste all of the errors but first try to search for wordnet-common in Add/Remove and remove it.

If you click this arrow you can see more details

Let me know.

I managed to remove many conflicts for sdl and gtkhash and I am now stuck on nodejs.

Adventure below:

Checking inter-conflicts...
Warning: removing 'sdl2-2.32.8-1' from target list because it conflicts with 'sdl2-compat-2.32.56-1'
Warning: removing 'nodejs-24.2.0-1' from target list because it conflicts with 'nodejs-lts-iron-20.19.2-1'
Warning: removing 'gtkhash-1.5-3.3' from target list because it conflicts with 'gtkhash-thunar-1.5-3.3'
Error: unresolvable package conflicts detected
Failed to prepare transaction:
conflicting dependencies:

In add/remove I searched for nodejs then selected the relevant file and that led to another conflict and another and so on. Until the transaction was successful. Code below:


Preparing...

Checking dependencies...

Failed to prepare transaction:

could not satisfy dependencies:

- removing nodejs-lts-hydrogen breaks dependency 'nodejs' required by node-gyp

Preparing...

Checking dependencies...

Failed to prepare transaction:

could not satisfy dependencies:

- removing nodejs-lts-hydrogen breaks dependency 'nodejs' required by nodejs-nopt

- removing node-gyp breaks dependency 'node-gyp' required by npm

Preparing...

Checking dependencies...

Failed to prepare transaction:

could not satisfy dependencies:

- removing node-gyp breaks dependency 'node-gyp' required by npm

Preparing...

Checking dependencies...

Warning: nodejs-lts-hydrogen optionally requires npm: nodejs package manager

Running pre-transaction hooks...

Refreshing the chaotic-aur keyring...

warning: config file /etc/pacman.conf, line 20: directive 'SyncFirst' in section 'options' not recognized.

==> Appending keys from chaotic.gpg...

gpg: invalid size of lockfile '/etc/pacman.d/gnupg/pubring.gpg.lock'

gpg: cannot read lockfile

gpg: can't lock '/etc/pacman.d/gnupg/pubring.gpg'

gpg: key 57F3D9CC660431DD: public key not found: General error

gpg: error reading '/usr/share/pacman/keyrings/chaotic.gpg': General error

gpg: import from '/usr/share/pacman/keyrings/chaotic.gpg' failed: General error

==> Locally signing trusted keys in keyring...

-> Locally signed 1 key.

==> Importing owner trust values...

==> Updating trust database...

gpg: next trustdb check due at 2025-07-01

Removing npm (10.8.3-1)...

Removing node-gyp (10.2.0-1)...

Removing semver (7.6.3-1)...

Removing nodejs-nopt (7.2.0-2)...

Running post-transaction hooks...

Arming ConditionNeedsUpdate...

Transaction successfully finished.

nodejs iron conflict is now resolved however I now have a nodejs hydrogen (older release) conflict and I cannot see how to uninstall it in add/remove.

Warning: removing 'nodejs-24.2.0-1' from target list because it conflicts with 'nodejs-lts-hydrogen-18.12.0-2'

I then added hyrdogen from add/remove so that I could remove it and I did remove it but I still have the same error and also this error below:

conflicting dependencies:

How can I manually uninstall nodejs hydrogen?

maybe NPM manager could have done it but I uninstalled that in the process.

Thank you for the details. Weird that you got so many dependencies errors. Cant you just install nodejs-lts-iron and at the same time remove 'nodejs-lts-hydrogen ? Select both and try to apply.

Thanks @tio

I can’t install anything via add/remove.

Resolving dependencies...
Checking inter-conflicts...
Warning: removing 'nodejs-24.2.0-1' from target list because it conflicts with 'nodejs-lts-hydrogen-18.12.0-2'
Failed to prepare transaction:
could not satisfy dependencies:
- unable to satisfy dependency 'nodejs>=20.17.0' required by npm
Transaction cancelled.

I can install versions of node through terminal using nvm.
I installed 18.12, 20.17, 22, 24 etc and then uninstalled them and then I made sure there was no versions left on my computer through nvm.

to remove nvm i deleted a folder in /var/tmp/pamac-build-jarrod/npm
the internet mentioned to edit a bashfile but i didnt have luck working that out.

I still get them same dependency error. What else can I do, do i need to do a clean install?

I cleared some caches in preferences of add/remove.

could not satisfy dependencies:

- unable to satisfy dependency 'libicui18n.so=75-64' required by electron28

- unable to satisfy dependency 'libicuuc.so=75-64' required by electron28

- unable to satisfy dependency 'libFLAC.so=12-64' required by electron28

- unable to satisfy dependency 'nodejs>=20.17.0' required by npm

removed electron28

now it stops at this message:

waiting for another package manager to quit

I tried

sudo killall -9 -ir pamac

and tried reboot

still no luck.

Make sure you remove all electron versions that are not needed. It usually creates a lot of conflicts. They are installed because of whatever apps you have installed.

waiting for another package manager to quit

Should go away after some time especially after a reboot. Try to clear the cache for packages from the Add/Remove menu. Also try the terminal with pamac update . I would say it is overkill to reinstall tromjaro again.

I will tag @rokosun too maybe he can also help.

I would also suggest removing unwanted Electron versions from your system, based on your initial post that seems to be triggering these conflicts. Also take note of the pacman -Qdt command which will list unwanted programs on your system which are usually safe to remove, these are programs that were previously installed as dependencies but are not needed anymore because the program that depended on it was either uninstalled or don’t require it as a dependency anymore - also note that manually installed programs would never get listed by that command.

How can I manually uninstall nodejs hydrogen?

You can uninstall any program from the terminal by running this command:

sudo pacman -R <packagename>

Replace <packagename> with the name of the package you want to remove, like nodejs-lts-hydrogen if you want to remove that.

waiting for another package manager to quit

This usually happens when pamac is running in the background checking for updates, it creates a lock file at /var/lib/pacman/db.lck to prevent other package managers from trying to alter the package database at the same time. If pacman or pamac is interrupted while changing the database, this stale lock file can remain. When you killed the pamac backgroud process that might have left the database lock file in place without giving pamac a change to remove it. If you are certain that no instances of pacman or pamac are currently running in the background then delete the lock file:

sudo rm /var/lib/pacman/db.lck

Then you should be able to run pacman and pamac like normal again.

Watch out because I ran this and it listed many many packages that I definitely need.

Thanks all,

The conflicts maybe resolved and now I’m up to a keyring error.
I think its from not updating in so long (be over 6 months).
I’ll continue to follow some articles and this were I’m up to when i try
sudo pamac -Syy

Total (874/874) 2.6 GiB 3.24 MiB/s 13:34 [######################] 100%
(874/874) checking keys in keyring [######################] 100%
downloading required keys…
:: Import PGP key 349BC7808577C592, ā€œGaruda Builder team@garudalinux.orgā€? [Y/n] y
error: key ā€œ349BC7808577C592ā€ could not be looked up remotely
:: Import PGP key 3A40CB5E7E5CBC30, ā€œGaruda Builder team@garudalinux.orgā€? [Y/n] y
error: key ā€œ3A40CB5E7E5CBC30ā€ could not be looked up remotely
error: required key missing from keyring
error: failed to commit transaction (unexpected error)
Errors occurred, no packages were upgraded.

That is surprising because this command should only list dependencies that are no longer required (not even optionally) by any other packages, and like I said it won’t list any packages that you have manually installed on your own. I wonder if pamac wrongly flags packages as dependencies or something, or else I don’t know how this could list out packages you actually need. Can you show me the output of that command on your system? On my personal system it lists these packages:

cmake 4.0.3-1
gcc13 13.3.1+r432+gfc8bd63119c0-3
gcc14 14.3.1+r25+g42e99e057bd7-1
go 2:1.24.4-1
libc++ 20.1.6-1
python-build 1.2.2-3
python-installer 0.7.0-10
python-python-multipart 0.0.20-1

None of which I need on my system for any other programs to work correctly.

Can you try running this command: sudo pacman-key --populate chaotic

~ >>> pacman -Qdt                                                              
adobe-source-code-pro-fonts 2.042u+1.062i+1.026vf-2
ant 1.10.15-1
asar 3.4.1-1
blueprint-compiler 0.16.0-1
boost 1.88.0-3
box2d 3.1.1-1
cargo-c 0.10.13-1
cargo-make 0.37.24-1
ccache 4.11.3-2
chrono-date 3.0.4-1
chrpath 0.17-1
clojure 1.12.1.1550-1
cxxopts 3.3.1-1
cython 3.1.2-1
cython2 0.29.37-1
dictd 1.13.3-1
dotnet-sdk 9.0.4.sdk105-1
doxygen 1.14.0-1
electron34 34.5.8-1
extra-cmake-modules 6.15.0-1
fcitx5 5.1.13-1
fdkaac 1.0.6-1
gcab 1.6-2
gcc13 13.3.1+r432+gfc8bd63119c0-3
gendesk 1.0.10-1
gi-docgen 2025.3-1
git-lfs 3.6.1-1
gn 0.2238.a84e399f-1
go 2:1.24.4-1
gobject-introspection 1.84.0-2
gperf 3.1-5
gptfdisk 1.0.10-1
gradle7 7.6.4-1
grantlee 5.3.1-2
gst-editing-services 1.26.2-2
gst-plugin-gif 0.13.6-1
gstreamer-svt-av1 2.0.0-1
hardinfo2 2.2.13-1
haskell-base64 0.4.2.4-105
haskell-connection 0.3.1-236
haskell-cryptonite-conduit 0.2.2-697
haskell-data-array-byte 0.1.0.1-84
haskell-digits 0.3.1-52
haskell-ghc-bignum-orphans 0.1.1-3
haskell-hsyaml 0.2.1.3-34
haskell-optparse-generic 1.5.2-41
haskell-string-conversions 0.4.0.1-202
haskell-system-filepath 0.4.14.1-19
help2man 1.49.3-2
hotdoc 0.17.4-3
icecat-bin 128.9.0-1
icu60 60.3-1
intel-oneapi-compiler-dpcpp-cpp-runtime 2025.0.4-1
jitsi-meet-desktop 2025.4.0-2
js102 102.15.1-2
js115 115.24.0-1
just 1.40.0-1
kactivities-stats5 5.116.0-1
kcalendarcore5 5.116.0-1
kcmutils5 5.116.0-1
kdesignerplugin 5.116.0-2
kdnssd5 5.116.0-1
kdsoap-qt5 2.2.0-1
kfilemetadata5 5.116.0-2
kimageannotator-qt5 0.7.1-3
kinit 5.116.0-1
knewstuff5 5.116.0-3
knotifyconfig5 5.116.0-1
kparts5 5.116.0-1
kpeoplevcard 0.1-2
kquickcharts 6.15.0-1
kquickcharts5 5.115.0-1
krunner5 5.115.0-4
lerna 8.2.1-1
lib32-fontconfig 2:2.16.2-1
lib32-gettext 0.24-1
lib32-giflib 5.2.2-1
lib32-libpcap 1.10.5-3
lib32-libunwind 1.8.1-1
lib32-libxcomposite 0.4.6-2
lib32-libxdamage 1.1.6-2
lib32-libxinerama 1.1.5-2
lib32-libxkbcommon 1.10.0-1
lib32-libxrandr 1.5.4-1
lib32-libxss 1.2.4-2
lib32-libxtst 1.2.5-2
lib32-sdl2-compat 2.32.56-1
libart-lgpl 2.3.21-5
libcurl-gnutls 8.14.1-1
libgdata 0.18.1-4
libindicator-gtk3 12.10.1-10
libkeybinder2 0.3.1-4
libngtcp2 1.13.0-1
liboauth 1:1.0.3+r16+gc26f038-2
libomxil-bellagio 0.9.3-5
libsidplay 1.36.59-10
libunique 1.1.6-12
libvisual 0.4.2-2
libvncserver 0.9.14-4
libxcrypt-compat 4.4.38-1
libxdg-basedir 1.2.3-2
libxml2-legacy 2.13.8-1
linux-headers-meta 6.15-1
linux-meta 6.15-1
linux-nvidia-meta 6.15-1
linux-virtualbox-host-modules-meta 6.15-1
lld 20.1.6-1
llvm14-libs 14.0.6-5
llvm15 15.0.7-3
lua52 5.2.4-8
lua53 5.3.6-4
mate-panel 1.28.4-1
maven 3.9.9-1
meson 1.8.2-2
modemmanager-qt5 5.116.0-1
nasm 2.16.03-2
nccl 2.27.5-1
nvm 0.40.3-1
onednn 3.7.2-1
opencollada 1:1.6.68-3
patchutils 0.4.2-3
perl-mozilla-ca 20250602-1
perl-parse-yapp 1.21-8
pkgfile 24-1
pnpm 10.12.1-1
prison5 5.116.0-1
pyqt-builder 1.18.2-1
python-aiohttp 3.12.13-1
python-async-timeout 5.0.1-1
python-async_generator 1.10-9
python-boto3 1.38.36-1
python-build 1.2.2-3
python-coloredlogs 15.0.1-7
python-deprecated 1.2.18-1
python-exceptiongroup 1.3.0-1
python-flatbuffers 25.2.10-1
python-flit-core 3.12.0-1
python-future 1.0.0-4
python-html5-parser 0.4.12-4
python-httplib2 0.22.0-8
python-installer 0.7.0-10
python-jsonschema 4.23.0-2
python-llfuse 1.5.0-3
python-manimpango 0.6.0-3
python-mock 5.2.0-1
python-nanomsg 1.0-1
python-nose 1.3.7-18
python-ordered-set 4.1.0-7
python-pbr 6.1.1-1
python-pep517 0.13.1-2
python-ply 3.11-15
python-poetry-core 2.1.3-1
python-pydantic 2.11.7-1
python-pynput 1.8.1-1
python-pyopenssl 25.1.0-1
python-pytest-asyncio 0.26.0-1
python-pytest-cov 6.1.1-1
python-pytest-lazy-fixture 0.6.3-8
python-pytest-runner 6.0.1-2.1
python-responses 0.25.7-1
python-rfc3986 2.0.0-4
python-testpath 0.6.0-4
python-toml 0.10.2-12
python-tomlkit 0.13.3-1
python-uc-micro-py 1.0.3-3
python-validate-pyproject 0.24.1-1
python-xxhash 3.5.0-1
qoauth 2.0.0-3
qt-jdenticon 0.3.0-1.9
qt5-charts 5.15.17-1
qt5-doc 5.15.17-1
qtkeychain-qt5 0.15.0-1
qwt5-qt5 5.2.3.4-3
r-rinside 0.2.19-1
rapidjson 1.1.0-6
ruby-ronn-ng 0.10.1-6
rust-bindgen 0.72.0-1
rust-script 0.35.0-1
scripthaus-git 0.5.1.r0.g03c4760-1
simdjson 1:3.13.0-1
stack 2.9.1-174
strace 6.15-1
swig 4.3.0-1
syntax-highlighting5 5.116.0-1
thunarx-python 0.5.2-6
tinyxml 2.6.2-12
ttf-djb-zora-prints 1.0-1
unrtf 0.21.10-3
v86d 0.1.10-13
vala 0.56.18-4
vo-aacenc 1:0.1.3-1
vulkan-headers 1:1.4.313.0-1
webkit2gtk-5.0 2.38.6-1
winetricks 20250102-1
xcb-util-xrm 1.3-3
xmlto 0.0.29-1
xorg-font-utils 7.6-6
xorg-server-xvfb 21.1.18-1
xorg-xcursorgen 1.0.9-1
xorg-xmessage 1.0.7-1
xorg-xwininfo 1.1.6-2
yajl 2.1.0-6
yarn 1.22.22-2
yasm 1.3.0-8
youtube-dl 2021.12.17-4
~ >>>                                                                          

Yes it can be…but no need to reinstall you can likely fix all issues. It is very good if you can keep your system up to date.

Thanks @rokosun

I cleaned up many programs using pacman -Qdt

I have done many keyring stuff and will need to keep trying.

This link is a little tricky for me to understand but will keep trying.

when i run pacman -Syu I get this

(839/839) checking keys in keyring                 [######################] 100%
(839/839) checking package integrity               [######################] 100%
error: appmenu-glib-translator-git: signature from "TNE <tne@garudalinux.org>" is unknown trust
:: File /var/cache/pacman/pkg/appmenu-glib-translator-git-25.04.r4.gc172702-1-x86_64.pkg.tar.zst is corrupted (invalid or corrupted package (PGP signature)).
Do you want to delete it? [Y/n]

I go through and delete them all but still fail.

Going to bed now but I may have success.