** Description changed: - It's very handy to install build-essential meta package on dev systems, - but it seems to have a hard dependency on coreutils-from-uutils. When I - replaced it by coreutils-from-gnu by running: + [Impact] + Many packages depend on build-essential or users install build-essential to get a tool chain. + + The dependency on coreutils-from-uutils means that people using GNU + coreutils cannot install build-essential and packages depending on it. + + [Solution] + As a compromise to maintain integrity of Ubuntu package builds while allowing as much freedom as possible we: + + 1. make dpkg-checkbuilddeps inject a coreutils-from-uutils unless the + package build-depends on coreutils-from-gnu + + 2. replace the build-essential dependency with a bumped version + requirement on the new dpkg. + + [Test plan] + Automated test case is included. + This change was deployed in 26.10. + + To further check, build a package in a sbuild w/ proposed and ensure it + builds. + + To further check, build a package in sbuild w/ proposed and coreutils- + from-gnu and build-essential installed and check the dependency check + fails. + + [Where problems could occur] + There may be complex bootstrapping issues and so on, but nothing significant: The changes are fairly straightforward: We literally check the list of build-depends we parsed to see if it contains -gnu and otherwise inject uutils. + + [Caveat: Limitations on flexibility] + Note that the dpkg check allows a package to build-depends on coreutils-from-gnu instead of coreutis-from-uutils (it only injects a build depends for coreutils-from-uutils when no coreutils-from-gnu one is present). + + However, while this works, you cannot build those packages in a normal + builder: The coreutils-from-uutils package is protected, and can't be + removed automatically to install coreutils-from-gnu - so this cannot be + used to build official Ubuntu packages with GNU coreutils (yet?). + + [Original bug report] + It's very handy to install build-essential meta package on dev systems, but it seems to have a hard dependency on coreutils-from-uutils. When I replaced it by coreutils-from-gnu by running: sudo apt install coreutils-from-gnu coreutils-from-uutils- --allow- remove-essential It ended up removing build-essential meta package from my system. It would be useful to have a virtual package for coreutils that accept any of the available flavors and make users' lives easier to replace one by another.
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2147638 Title: Transition coreutils-from-uutils requirement from build-essential to dpkg-buildpackage runtime check To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/build-essential/+bug/2147638/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
