-
Notifications
You must be signed in to change notification settings - Fork 198
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
compose: Support exclude
list
#1768
Comments
at a previous job we used Also we'd probably need to carry the 'exclude' into the client side so that client side operations don't add it back? So we would need to be able to configure it like we do with install/override/kargs etc.. |
I'm not sure what depwhiteout is, but "exclude=" is a yum and dnf directive that's supported in both yum/dnf.conf and in .repo files. What it does is it hides any packages that match the exclude from the depsolver so that it doesn't "see" the excluded packages. If we hide something that's hard required then transactions just fail with depsolving errors, but in this case we'd like to hide a soft dep, so the depsolver should be able to solve the transaction even if a soft dep is not available. As for the client side, I think it should be fine to let someone locally overlay PackageKit if they want to for whatever reason. But sure, if there's a way to carry it to client side maybe that's nice too, but the compose side directive should be enough for now I think. |
Yeah - when we were using this in the past there was no such thing as a |
Have you thought about the Another approach: would |
Yep, I think
|
Silverblue composes are already pretty different from regular workstation composes for the same reason of slimming it down though. See e.g. the comps sync scripts in https://pagure.io/workstation-ostree-config/tree/master and the blacklist at https://pagure.io/workstation-ostree-config/blob/master/f/comps-sync-blacklist.yml. |
(Definitely not against an |
My main worry with going all It will also be confusing if we have recommends on by default for layering but not in the base. |
Hmm yeah, that's a good point. Probably safer to match the dnf default here so that packagers' decisions to add weak deps (or demote existing hard deps) applies across the board. Re.
I played with this quickly and it doesn't seem bad:
|
To me, using conflicts seems appropriate for this since it does genuinely conflict with the RPM-OSTree model (unless we actually add an rpm-ostree backend to it...). The only potential pitfall I see is that it would prevent users from pkglayering things that still bring it in but that offer other features that are relevant to Silverblue. Though not sure how many packages fall in that category. OK,
The one thing that jumps out is Plasma Discover, which I guess will have to go through the same process as GNOME Software (which we'd want anyway if we don't want it to be in the base layer of a KDE variant either). |
This was done now in #1980. |
For Silverblue we want to drop PackageKit but it's tricky to do without breaking "traditional" systems. Today one can add
exclude=PackageKit
to.repo
files but this would require more work in pungi which generates repo files.Let's add to the treefile:
And have that be exactly the same syntax/semantics as adding that
exclude
to every input rpm-md repo.(Though an open question here is whether we want to support repo-scoped excludes, but eh)
The text was updated successfully, but these errors were encountered: