JustinTimperio / pacback

Advanced Version Control for Arch Linux
MIT License
148 stars 4 forks source link

Using pacback -pkg A B fails when A depends on B and vice versa #21

Closed acheronfail closed 4 years ago

acheronfail commented 4 years ago

Describe the Bug:\ Using pacback -pkg A B fails when A depends on B and vice versa.

Output of Command

sudo pacback -pkg gcc gcc-libs
Searching File System for Packages...
Pacback Found the Following Package Versions for gcc:
(1) gcc-10.1.0-1
(2) gcc-9.2.0-4
(3) gcc-9.2.1+20200130-2
(4) gcc-9.3.0-1
Enter Your Selection With an INT: 4
loading packages...
warning: downgrading package gcc (10.1.0-1 => 9.3.0-1)
resolving dependencies...
warning: cannot resolve "gcc-libs=9.3.0-1", a dependency of "gcc"
:: The following package cannot be upgraded due to unresolvable dependencies:
      gcc

:: Do you want to skip the above package for this upgrade? [y/N]
error: failed to prepare transaction (could not satisfy dependencies)
:: unable to satisfy dependency 'gcc-libs=9.3.0-1' required by gcc
Pacback Found the Following Package Versions for gcc-libs:
(1) gcc-libs-10.1.0-1
(2) gcc-libs-9.2.0-4
(3) gcc-libs-9.2.1+20200130-2
(4) gcc-libs-9.3.0-1
Enter Your Selection With an INT: 4
loading packages...
warning: downgrading package gcc-libs (10.1.0-1 => 9.3.0-1)
resolving dependencies...
looking for conflicting packages...
error: failed to prepare transaction (could not satisfy dependencies)
:: installing gcc-libs (9.3.0-1) breaks dependency 'gcc-libs=10.1.0-1' required by gcc

Machine (please fill in the following information):

To Reproduce Steps to reproduce the behavior:

  1. Try to downgrade two packages that are dependent on one another. For example, gcc and gcc-libs.

Expected behavior Pacback is able to downgrade both dependencies at the same time.

Maybe pacback could resolve the dependencies first, and then send them through to pacman in a batch?

acheronfail commented 4 years ago

Looks like this is fixed on the latest build, I just installed pacback-git from the AUR and everything is working as intended. :)