Bug 1006978

Summary: systemd coming with sysusers.d/basic.conf
Product: [openSUSE] openSUSE Tumbleweed Reporter: Thorsten Kukuk <kukuk>
Component: BasesystemAssignee: systemd maintainers <systemd-maintainers>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Major    
Priority: P2 - High CC: behlert, fbui, lnussel, ro, systemd-maintainers
Version: Current   
Target Milestone: ---   
Hardware: Other   
OS: Other   
See Also: https://bugzilla.suse.com/show_bug.cgi?id=1007492
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Thorsten Kukuk 2016-10-26 09:04:33 UTC
Systemd is coming with /usr/lib/sysusers.d/basic.conf

This is the generic default one, not even synced with what aaa_base delivers.

While the idea is good and some people are already thinking about, how this could be __integrated__ into our distribution, the parallel installation without any integration into the system is the worst thing which could happen.

Currently, if systemd will ever be installed before aaa_base, aaa_base will fail since the group numbers will clearly not match.

If aaa_base is hopefully installed before systemd, this file will never be used and only confuses people.

We should not ship such files as long as the feature is not integrated into the system, means here especially aaa_base and the installer.
Comment 1 Thorsten Kukuk 2016-10-26 09:08:34 UTC
By the way, systemd introduces now new system groups we didn't had until now.
Comment 2 Ludwig Nussel 2016-10-26 10:00:54 UTC
same as bug 958151 for TW
Comment 3 Franck Bui 2016-10-26 11:59:43 UTC
Ok I'm fine to remove /usr/lib/sysusers.d/basic.conf until it's better integrated (if we decide to do so).

Does that sound ok for the rest of the team ?
Comment 4 Thorsten Kukuk 2016-10-26 12:09:47 UTC
(In reply to Franck Bui from comment #3)
> Ok I'm fine to remove /usr/lib/sysusers.d/basic.conf until it's better
> integrated (if we decide to do so).

I'm working already on a good integration:
https://build.opensuse.org/project/monitor/home:kukuk:sysusers

So this will come.

> Does that sound ok for the rest of the team ?

Yes, we only need to make sure, that the additional groups are not used anywhere (e.g. by udev) or add this groups for SLES12 SPx to aaa_base for the time being.

And I think this is something for a maintenance update, I'm pretty sure that Stefan does not want to have that anymore in GMC2.
Comment 5 Stefan Behlert 2016-10-26 13:54:03 UTC
Yes, definitely maintenance update.
Comment 6 Franck Bui 2016-10-27 12:13:03 UTC
(In reply to Thorsten Kukuk from comment #4)
>
> Yes, we only need to make sure, that the additional groups are not used
> anywhere (e.g. by udev) or add this groups for SLES12 SPx to aaa_base for
> the time being.

Indeed the following groups are used by udev rules:

# Hardware access groups
g audio   -     -            -
g cdrom   -     -            -
g dialout -     -            -
g disk    -     -            -
g input   -     -            -
g lp      -     -            -
g tape    -     -            -
g video   -     -            -

And this seems better if their creation still belongs to udev package.

Maybe we can extract them and create a /usr/lib/sysusers.d/hw.conf ?
Comment 7 Dr. Werner Fink 2016-10-27 12:25:56 UTC
(In reply to Franck Bui from comment #6)

Then you have to sync the the group numbers with that found in aaa_base, see /var/adm/fillup-templates/group.aaa_base ... that is that the numbers for groups found in both group.aaa_base and hw.conf should be in sync
Comment 8 Franck Bui 2016-10-27 12:37:24 UTC
(In reply to Dr. Werner Fink from comment #7)
> (In reply to Franck Bui from comment #6)
> 
> Then you have to sync the the group numbers with that found in aaa_base, see
> /var/adm/fillup-templates/group.aaa_base ... that is that the numbers for
> groups found in both group.aaa_base and hw.conf should be in sync

Indeed.

Well the question is now: is there any possible use case where those groups should be created/used before udev package is installed ?
Comment 9 Stefan Behlert 2016-10-27 13:08:08 UTC
The sequence in which packages are installed is not guaranteed. Packages currently expect aaa_base to be one of the first, but not that udev is there [for groups].
Comment 10 Franck Bui 2016-10-27 13:22:06 UTC
(In reply to Stefan Behlert from comment #9)
> The sequence in which packages are installed is not guaranteed. Packages
> currently expect aaa_base to be one of the first, but not that udev is there
> [for groups].

Maybe packages relying on the existence of those groups (if any ?) should depend on udev then ?

But I agree this doesn't belong to SLE12-SPx. For those distros I'll remove basic.conf and open a bug against aaa_base in order to get the missing groups used by udev created by this package.
Comment 11 Franck Bui 2016-10-28 11:39:33 UTC
I've opened: https://bugzilla.suse.com/show_bug.cgi?id=1007492

Once this one will be addressed and closed, I'll remove sysusers.d/basic.conf from the systemd package.
Comment 12 Franck Bui 2017-06-21 15:39:07 UTC
*** Bug 958151 has been marked as a duplicate of this bug. ***
Comment 13 Franck Bui 2017-06-21 16:37:07 UTC
Even though there's some conflicts with basic.conf on SLE12, it doesn't seem to hurt and cause real issues.

So the plan, as discussed with Thorsten, is to do the cleanup on Factory only since we can take advantage of the new user/group scheme [1]

Therefore for Factory, systemd will stop shipping basic.conf and will rely on system-sysusers for the initialization of the basic system users/groups.

Udev in its turn will "Requires: system-group-hardware" to make sure that all groups it uses will be created before it's installed.

I hope that makes sense.

[1] https://en.opensuse.org/openSUSE:Packaging_guidelines#Users_and_Groups
Comment 14 Franck Bui 2017-06-22 14:31:40 UTC
I've submitted: https://build.opensuse.org/request/show/505697

If anyone could have a look...

Thanks.
Comment 15 Thorsten Kukuk 2017-06-23 10:16:23 UTC
(In reply to Franck Bui from comment #14)

> If anyone could have a look...

Looks good to me.
Comment 16 Franck Bui 2017-06-23 11:31:45 UTC
Thanks for the review.

The changes have been submitted to Base:System, closing.