void-linux / void-packages

The Void source packages collection
https://voidlinux.org
Other
2.59k stars 2.15k forks source link

[RFC] Prevent installation of conflicting pkgs in chroot? #39577

Open classabbyamp opened 2 years ago

classabbyamp commented 2 years ago

It seems that some packages, like grep, will remove packages necessary for xbps-src's operation like chroot-grep when added to hostmake/make/checkdepends, and then get removed after a successful build.

Should these packages be prevented from installation? or maybe this could be prevented by re-installing these after dependencies are removed from the chroot?

sgn commented 2 years ago

I have a WIP patchset in my local tree to move those chroot-* pkgs binaries to /usr/libexec/xbps-src/ and appends them to $PATH, which will allow they co-exists, however, I suspect that move would break those build systems that expect /bin/grep horribly. Or worse, change build artifacts shebang from /bin/grep to /usr/libexec/xbps-src/grep and likewise.

Chocimier commented 2 years ago

It looks like xbps bug that grep can replace chroot-grep in first place.

base-chroot depends on exactly chroot-grep, and after xbps-install grep, xbps-pkgdb base-chroot reports ERROR: base-chroot: dependency not satisfied: chroot-grep>=0.

JamiKettunen commented 2 years ago

pnc (libphonenumber command-line tool) has a GNU AWK extension that doesn't build without gawkapi.h, and well it's not provided with chroot-gawk...

$ xlocate /gawkapi.h
gawk-5.1.1_1  /usr/include/gawkapi.h

So it really would be great to be able to include gawk in (host)makedepends without that destroying masterdirs.

github-actions[bot] commented 1 year ago

Issues become stale 90 days after last activity and are closed 14 days after that. If this issue is still relevant bump it or assign it.