Issue with pacman: "error: failed to prepare transaction"

8,528

Solution 1

pacman is telling you that it can't update the system, because it can't update a package without breaking a dependency.

You have a package installed called pamac-qt. This package is listed as "experimental" and it is not compatible with the pamac 9 API. You'll need to replace it with pamac-gtk.

This should fix your issue:

pacman -S pamac-gtk
pacman -R pamac-qt

Solution 2

The best solution to resolve this issue is to remove all broken dependencies manually and then rerun sudo pacman -Syu command. It works!

Share:
8,528

Related videos on Youtube

Pietro
Author by

Pietro

C++ software developer. Particularly interested in software for technical/scientific applications, also in a research and development environment, following the full lifecycle of projects where possible. Interested in Standard C++, Boost, GPGPU, OpenCL, (spiking/convolutional/biological) neural networks, genetic algorithms, databases, ... and a few more things.

Updated on September 18, 2022

Comments

  • Pietro
    Pietro over 1 year

    Trying to update my package database:

    $ sudo pacman -Syu
    [sudo] password for pietrom: 
    :: Synchronizing package databases...
     core is up to date
     extra                                    1770.5 KiB   259K/s 00:07 [######################################] 100%
     community                                   5.3 MiB   150K/s 00:36 [######################################] 100%
     multilib is up to date
    :: Starting full system upgrade...
    warning: fontconfig: local (2:2.13.91+23+g65087ac-1) is newer than extra (2:2.13.1+12+g5f5ec56-2)
    warning: lib32-systemd: local (243.9-1) is newer than multilib (242.135-1)
    warning: python-pip: local (19.2.3-1.4) is newer than extra (19.2.3-1)
    warning: systemd: local (243.9-1) is newer than core (242.135-1)
    warning: systemd-libs: local (243.9-1) is newer than core (242.135-1)
    warning: systemd-sysvcompat: local (243.9-1) is newer than core (242.135-1)
    resolving dependencies...
    looking for conflicting packages...
    error: failed to prepare transaction (could not satisfy dependencies)
    :: installing pamac-common (9.0.0-3) breaks dependency 'pamac-common<9.0.0' required by pamac-qt
    

    Apart from the warnings about the newer versions already installed, what is and how can I fix the last error?

    What I am trying to update is my LLVM/clang version (from 8 to 9), which I failed to do with Pacman.

  • Pietro
    Pietro over 4 years
    Strange. With: sudo pacman -Qi pacman-qt | grep Required I get: "error: package 'pacman-qt' was not found". Trying to launch it from the GUI/KDE, nothing happens. It was working a few days ago. Could have it been uninstalled by the system automatically?
  • Codebling
    Codebling over 4 years
    @Pietro the package listed in the output is pamac-qt, not pacman-qt, try that
  • Pietro
    Pietro over 4 years
    Ops, I read too quickly; thank you. Now I get: "Required By : None"
  • Codebling
    Codebling over 4 years
    @Pietro looks like you are free to delete it. If you know what it is and want to continue using it, install the AUR package that I mentioned
  • Pietro
    Pietro over 4 years
    I successfully deleted pamac-qt and pamac-common. With sudo pacman -U pamac-qt-git I get the error "could not find or read package". Is it in a different repository? How can I access it? (I am new to Arch/Manjaro)
  • Codebling
    Codebling over 4 years
    @Pietro your question is tagged Arch, but you're using Manjaro (also tagged), right? I didn't notice the second tag. Let me update the answer
  • Codebling
    Codebling over 4 years
    @Pietro sounds like it's working
  • Pietro
    Pietro over 4 years
    Killed the "Software Update" "Preparing...". Launched "Add/Remove Software", and this is working properly. Only issue is that to install a new compiler it is updating the whole system...
  • Codebling
    Codebling over 4 years
    @Pietro earlier, you were attempting pacman -Syu, y means refresh and u means system upgrade. That's why this is happening. If you want to install a package using pacman, use pacman -S packagename