Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Packages won't update if they have strict version dependency #46

Open
SunCatMC opened this Issue Dec 22, 2017 · 7 comments

Comments

Projects
None yet
7 participants
@SunCatMC
Copy link

SunCatMC commented Dec 22, 2017

Right now I have 2 outdated AUR packages: libc++=5.0.0-1 and libc++abi=5.0.0-1. Updated version is 5.0.1-1, and libc++ currently requires libc++abi=5.0.1-1

When I update (trizen -Su), it:

  1. builds and tries to install libc++, but fails, because it requires libc++abi=5.0.1-1

  2. builds and tries to install libc++abi, but fails too, because now it breaks libc++abi=5.0.0-1 dependency of outdated libc++

Possibly relates to #36

@trizen

This comment has been minimized.

Copy link
Owner

trizen commented Dec 22, 2017

This is a tricky problem for which I don't have a fix yet, because trizen, by design, builds and installs one package at a time.

A workaround would be to use the --noinstall option, then simultaneously install both built packages with pacman -U.

I will investigate the problem more carefully in the next days and, maybe, come up with a solution. Thanks for reporting.

trizen added a commit that referenced this issue Dec 30, 2017

- Install built packages with `-Ud`.
Not entirely sure if this is a good idea. (#46)
@AladW

This comment has been minimized.

Copy link

AladW commented Jan 2, 2018

-Ud is the same hack pacaur used. I would hardly call overriding dependency information a good idea (even when both official Arch and AUR packages mostly lack said information).

Essentially this showcases another limitation of relying on pacman -U. The issue is solved trivially by using a local repository.

@eli-schwartz

This comment has been minimized.

Copy link

eli-schwartz commented Jan 12, 2018

This is completely insane, and both packages should be installed together. They're a split package, does trizen not notice this and try to rebuild the same package twice?

You don't need either one to build the other, so why are you trying to install them separately?

Also if I were a trizen user, this would teach me better -- I can put up with an AUR helper being unable to install an edge case PKGBUILD, but I cannot tolerate my AUR helper breaking my installation by overriding pacman's dependency parsing.

@C0rn3j

This comment has been minimized.

Copy link

C0rn3j commented Jul 4, 2018

@trizen Is there any news on this?

Looks like this is trizen's fault for not supporting split packages, to which this hack was used, and that can apparently mess with pacman's database.

Since split packages are rare, wouldn't it be better to revert the hack and rather not support split packages at all until they are properly implemented?

I'd prefer not being able to build some packages rather than have my whole package database break, and it would remove trizen from the problematic list on the Arch wiki - https://wiki.archlinux.org/index.php/AUR_helpers#Discontinued_or_problematic

@DanitiKain

This comment has been minimized.

Copy link

DanitiKain commented Aug 25, 2018

So is this resolved?

@AladW

This comment has been minimized.

Copy link

AladW commented Aug 25, 2018

It's not. Trizen still lacks a proper mechanism to deal with split packages.

@actionless

This comment has been minimized.

Copy link

actionless commented Aug 29, 2018

couldn't you just do pacman -U <packages> instead of foreach packages pacman -U <package>?

trizen added a commit that referenced this issue Sep 15, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.