Bug 1927907 - Latest release sssd 2.4.1 hard requires Python 3
Summary: Latest release sssd 2.4.1 hard requires Python 3
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: sssd
Version: 34
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Alexey Tikhonov
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-02-11 19:42 UTC by Jonathan Lebon
Modified: 2022-03-14 16:51 UTC (History)
9 users (show)

Fixed In Version: sssd-2.4.2-2.fc34
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-03-14 16:51:06 UTC
Type: Bug


Attachments (Terms of Use)

Description Jonathan Lebon 2021-02-11 19:42:07 UTC
Description of problem:

It seems since the 2.4.1 rebase (https://src.fedoraproject.org/rpms/sssd/c/9e5dd4b66572aeb348f3cc854ce7fca9f7afd97b?branch=f34), sssd now pulls in python3 because it changed python3-sssdconfig from a "Suggests" to a "Requires". In Fedora CoreOS, we're trying to avoid shipping Python entirely to encourage containerizing user workloads and to keep the OS minimal. In a rawhide and f34 build, this package was identified as pulling it back in.

Would it be possible to make it a weak dep again? This would also be useful in other environments like containers and custom OS builds which value minimalism. We can help with that if there's agreement.

Comment 1 Alexey Tikhonov 2021-02-11 21:04:24 UTC
Hi Jonathan,

do I understand correctly that you are fine with 
```
%package tools
...
Requires: python3-sssdconfig = %{version}-%{release}
```
that was in the spec file even before this rebase (i.e. you do not pull sssd-tools in Fedora CoreOS)?


Change you mention was introduced upstream in https://github.com/SSSD/sssd/commit/5eb4d5c8e02c4c2ed32bee7269cf681b68613ed9 , so this is basically what RHEL was using. And it's been there about 7 years, so probably nobody remembers the reason anymore.

In general this bz is a regression of bz 1667444

So I think we can fix it back to 'Suggests' at least conditionally for Fedora, but in general I don't see a reason to hard require in on RHEL as well.
Sumit, Pavel, what would you say?

Comment 2 Sumit Bose 2021-02-12 06:50:09 UTC
Hi,

please note the 'sssd' package is a meta package which just pulls in other packages. E.g. sub-packages like e.g. sssd-ad for Active Directory integration are listed in 'Requires:' as well. Is this kind of integration expected for Fedora CoreOS? If not it might be more suitable to not include the 'sssd' package but only 'sssd-common' and 'sssd-kcm' as it is in the Fedora minimal installation.

Nevertheless I think it is ok to change 'Requires' to 'Suggests' for 'python3-sssdconfig'.

bye,
Sumit

Comment 3 Alexey Tikhonov 2021-02-12 12:04:38 UTC
(In reply to Sumit Bose from comment #2)
> Hi,
> 
> please note the 'sssd' package is a meta package which just pulls in other
> packages. E.g. sub-packages like e.g. sssd-ad for Active Directory
> integration are listed in 'Requires:' as well. Is this kind of integration
> expected for Fedora CoreOS? If not it might be more suitable to not include
> the 'sssd' package but only 'sssd-common' and 'sssd-kcm' as it is in the
> Fedora minimal installation.

Yes, it was discussed in https://bugzilla.redhat.com/show_bug.cgi?id=1667444#c1 already...
I agree it makes sense for CoreOS team to review their approach here...

> Nevertheless I think it is ok to change 'Requires' to 'Suggests' for
> 'python3-sssdconfig'.

Ok, thanks.
JFTR: I read this as "and on RHEL as well".

Comment 4 Alexey Tikhonov 2021-02-12 12:11:39 UTC
Upstream PR: https://github.com/SSSD/sssd/pull/5500

Comment 5 Lukas Slebodnik 2021-02-12 14:43:22 UTC
> And it's been there about 7 years, so probably nobody remembers the reason anymore.

python3-sssdconfig was never required on rhel7 because it has never been there.
python-sssdconfig was required because of authonfig did not want to require it due to "optional" dependency on python-sssdconfig
but it was required for proper functionality of authconfig for sssd

Comment 6 Alexey Tikhonov 2021-02-12 16:53:40 UTC
(In reply to Lukas Slebodnik from comment #5)
> > And it's been there about 7 years, so probably nobody remembers the reason anymore.
> 
> python3-sssdconfig was never required on rhel7 because it has never been
> there.
> python-sssdconfig was required because of authonfig did not want to require
> it due to "optional" dependency on python-sssdconfig
> but it was required for proper functionality of authconfig for sssd

Yes, I meant 'python-sssdconfig' and just cut it short.

Thank you for the explanation.

Comment 7 Jonathan Lebon 2021-02-12 19:42:09 UTC
> please note the 'sssd' package is a meta package which just pulls in other packages. E.g. sub-packages like e.g. sssd-ad for Active Directory integration are listed in 'Requires:' as well. Is this kind of integration expected for Fedora CoreOS? If not it might be more suitable to not include the 'sssd' package but only 'sssd-common' and 'sssd-kcm' as it is in the Fedora minimal installation.

Thanks, I think that makes sense as well. I don't think we can remove all the sssd packages we've been shipping so far, but at least we can freeze on the set we're currently shipping.

Comment 8 Jonathan Lebon 2021-02-12 19:49:41 UTC
FYI: https://github.com/coreos/fedora-coreos-config/pull/852

Comment 9 Pavel Březina 2021-02-16 10:27:03 UTC
Pushed PR: https://github.com/SSSD/sssd/pull/5500

* `master`
    * b1f4dc82a5f9d30121f641430c9cbbb804686974 - SPEC: don't hard require python3-sssdconfig in a meta package


Note You need to log in before you can comment on or make changes to this bug.