Subject: Re: [bug#40680] [PATCH] service: sddm: Have sddm-service-type conflict with other display managers.

From: Ludovic Courtès <[email-masked]>
Date: Sun, 19 Apr 2020 01:33:07 +0200

Hi,

Efraim Flashner <[email-masked]> skribis:

> On Fri, Apr 17, 2020 at 11:00:49PM +0200, Ludovic Courtès wrote:

[...]

>> > --- a/gnu/services/sddm.scm
>> > +++ b/gnu/services/sddm.scm
>> > @@ -171,6 +171,7 @@ Relogin="              (if (sddm-configuration-relogin? config)
>> >           (documentation "SDDM display manager.")
>> >           (requirement '(user-processes))
>> >           (provision '(display-manager))
>> > +         (conflicts-with '(xorg-server))
>> 
>> ‘conflicts-with’ doesn’t exist, right?  :-)
>> 
>
> I haven't tried it out for Guix services, but it exists for shepherd
> services, according to the manual¹

Right, it’s not available in Guix <shepherd-service>.

However, simplify adding ‘xorg-server’ to ‘provision’ should have the
desired effect: ‘guix system’ errors out if more than one service
provides the same symbol.

>> But yes, I think (provision '(xorg-server display-manager)) would be
>> fine.
>> 
>> Or we can even drop ‘display-manager’ since it’s not used anywhere else.
>
> Normally I'd be skeptical about dropping it since people might expect it
> if they're using sddm, but it'd probably be fine.

Yeah, maybe it’s safer to keep it.

Thanks,
Ludo’.