You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi, I've encountered a situation where a transaction can be resolved in two ways and libsolv picks the one that is in some sense worse.
I understand that both are valid, but is there something that could be done to prefer the other choice without breaking other use cases?
The situation is following:
yolo requires (yolo-selinux if selinux-policy-targeted)
selinux-policy requires selinux-policy-base
selinux-policy-base is provided by selinux-policy-targeted and selinux-policy-mls
selinux-policy is a protected package
Installed packages:
selinux-policy
selinux-policy-targeted
selinux-policy-mls
yolo
yolo-selinux
When removing yolo-selinux, there are two options how to resolve it:
remove yolo and yolo-selinux
remove yolo-selinux and selinux-policy-targeted
From the user perspective, the first option is preferred, because yolo is designed to work with yolo-selinux and removing selinux-policy-targeted disables SELinux. However libsolv chooses the second option. We cannot mark selinux-policy-targeted as protected, because a small number of users use selinux-policy-mls instead. Is there a way to let libsolv know that selinux-policy-targeted should be treated as protected based on a configuration file?
The text was updated successfully, but these errors were encountered:
I don't think there's currently a way to make libsolv choose yolo over selinux-policy-targeted. Libsolv should IMHO take the weak dependencies into consideration when deciding which package to remove in "allowuninstall" mode, but it currently just uses the first problem package. See solver_autouninstall in problems.c for the gory details.
Hi, I've encountered a situation where a transaction can be resolved in two ways and libsolv picks the one that is in some sense worse.
I understand that both are valid, but is there something that could be done to prefer the other choice without breaking other use cases?
The situation is following:
Installed packages:
When removing yolo-selinux, there are two options how to resolve it:
From the user perspective, the first option is preferred, because yolo is designed to work with yolo-selinux and removing selinux-policy-targeted disables SELinux. However libsolv chooses the second option. We cannot mark selinux-policy-targeted as protected, because a small number of users use selinux-policy-mls instead. Is there a way to let libsolv know that selinux-policy-targeted should be treated as protected based on a configuration file?
The text was updated successfully, but these errors were encountered: