unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: Maxime Devos <maximedevos@telenet.be>
To: Andrew Tropin <andrew@trop.in>, 56661@debbugs.gnu.org
Subject: bug#56661: SDDM does not do the equivalent of 'login shell --login', unlike other login managers
Date: Fri, 22 Jul 2022 15:13:15 +0200	[thread overview]
Message-ID: <9f6bd194-2a9d-a595-b217-3926885a87a2@telenet.be> (raw)
In-Reply-To: <87czdxl2o7.fsf@trop.in>


[-- Attachment #1.1.1.1: Type: text/plain, Size: 2952 bytes --]


On 22-07-2022 15:03, Andrew Tropin wrote:
> It's a tricky question, because it's a case on the edge of Home/System.
>  From one point of view it should be handled by some home service, which
> will create a proper ~/.xsession or extend it and generic mechanism,
Such a mechanism already exists for GDM and SLiM, see later (though it 
doesn't create ~/.xessionrc, it's more stateless, and it is independent 
of Guix Home). I don't see why Guix Home should handle things, it 
doesn't seem to have anything to handle (unless you go for the 
alternative, more stateful, solution you are proposing?).
> from some display managers will automatically source it, but on the
> other hand maybe adjusting system services for other DMs, which doesn't
> work "out of the box" yet is a way to go.  I don't have much experience
> with X11, and don't see a whole picture, so it's hard to tell which
> option is better.

I think I've found a solution that works for Guix System, independent of 
Guix Home (doesn't depend on Guix Home and doesn't interfere with Guix 
Home and doesn't require Guix System and Guix Home to interact), as 
written in another response (thread is getting a bit long!):

> On 22-07-2022 12:24, Maxime Devos wrote:
>> retitle 56661 SDDM does not do the equivalent of 'login shell 
>> --login', unlike other login managers
>> thanks
>>
>> A digged a little, and found  that:
>>
>> For GDM, things work, for SDDM, they don't.
>>
>> There is a 'xinitrc' procedure in gnu/services/xorg.scm that 
>> generates a configuration file that has a fallback .xsession that 
>> does a --login. This is used by gdm-wayland-session-wrapper, 
>> <gdm-configuration> and slim-shepherd-service.  However, nothing 
>> similar appears to be done for SDDM.  So it appears that the SDDM 
>> service needs to be tweaked to use xinitrc or such.
>
> It appears that SDDM supports xinitrc files, but it looks for them 
> (see data/scripts/Xsession) in $HOME/.xsessionrc and 
> /etc/X11/xinit/xinitrc.d, which do not exist in Guix. There is no 
> option for overriding the xinitrc.  However, it is possible to 
> override the Xsession script used, so we can give SDDM a modified 
> Xsession script that uses Guix' xinitrc. 

TBC: the 'xinitrc' that Guix generates does not override the ~/.xinitrc 
written by the user (if any) -- IIUC, the generated wrapper looks for 
~/.xinitrc and if it exists, it runs that, but if it doesn't exist, it 
has a fallback. Also, TBC, it doesn't create ~/.xsessionrc (unlike what 
you seem to be proposing), the relevant code just tells the login 
manager to look at /gnu/store/...-the-generated-xinitrc.

It seems to work for GDM and presumably also for SLiM, which has similar 
code. As such, I would expect it to work without problems for SDDM as 
well (please write SDDM in the subject line, the original SLiM is 
incorrect, I actually used SDDM).

Greetings,
Maxime


[-- Attachment #1.1.1.2: Type: text/html, Size: 3954 bytes --]

[-- Attachment #1.1.2: OpenPGP public key --]
[-- Type: application/pgp-keys, Size: 929 bytes --]

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 236 bytes --]

  reply	other threads:[~2022-07-22 13:14 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-20 10:45 bug#56661: EMACSLOADPATH not set when using Guix System + Guix Home + SLIM + Mate Maxime Devos
2022-07-20 10:59 ` bug#56661: EMACSLOADPATH not set when using Guix System + Guix Home + SDDM " Maxime Devos
2022-07-20 12:08 ` bug#56661: EMACSLOADPATH not set when using Guix System + Guix Home + SLIM " Andrew Tropin
2022-07-20 12:30   ` Maxime Devos
2022-07-20 17:47     ` Andrew Tropin
2022-07-22  9:28       ` bug#56661: EMACSLOADPATH not set when using Guix System + Guix Home + SDDM " Maxime Devos
2022-07-22 10:17         ` Maxime Devos
2022-07-22  9:32       ` bug#56661: EMACSLOADPATH not set when using Guix System + Guix Home + SLIM " Maxime Devos
2022-07-22 13:03         ` Andrew Tropin
2022-07-22 13:13           ` Maxime Devos [this message]
2022-07-22 10:24 ` bug#56661: EMACSLOADPATH not set when using Guix System + Guix Home + SDDM " Maxime Devos
2022-07-22 10:44   ` Maxime Devos
2022-07-22 11:00     ` bug#56661: SDDM does not do the equivalent of 'login shell --login', unlike other login managers Maxime Devos
2022-07-22 13:15     ` bug#56661: EMACSLOADPATH not set when using Guix System + Guix Home + SDDM + Mate Andrew Tropin
2022-07-30 11:16 ` bug#56661: [PATCH] build-self: Try printing nicer error messages Maxime Devos
2022-07-30 11:17   ` Maxime Devos

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=9f6bd194-2a9d-a595-b217-3926885a87a2@telenet.be \
    --to=maximedevos@telenet.be \
    --cc=56661@debbugs.gnu.org \
    --cc=andrew@trop.in \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).