Declare provides+conflicts on Debian/Ubuntu packages #2203
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See #2085 and #2116 for previous work:
While the Debian/Ubuntu packages have different package names, aside from
bpfcc-tools
/bcc-tools
, the contents of the packages conflict and cannot be simultaneously installed or mixed with upstream packages.Further, should one install a package declaring a dependency on
bpfcc-tools
,libbpfcc
, etc, while the upstream packages are installed, given there's no relationship between the packages,apt
will gladly pull down and try to install the Debian/Ubuntu packages and explode in a half-configured mess :)This PR adds a Provides relationship between the iovisor and corresponding Debian/Ubuntu packages so the iovisor packages can satisfy dependencies (PCP is a good example, although they've since adjusted their dependencies to allow
python3-bpfcc | python3-bcc
) and also adds a Conflicts relationship to try to prevent users from mixing the installs.cc @brendangregg