Bug 1179854

Summary: Systemd user service does not allow usage of dispal :0
Product: [openSUSE] openSUSE Tumbleweed Reporter: Georg Grauberger <georg.grauberger>
Component: OtherAssignee: Dr. Werner Fink <werner>
Status: RESOLVED DUPLICATE QA Contact: E-mail List <qa-bugs>
Severity: Minor    
Priority: P5 - None    
Version: Current   
Target Milestone: ---   
Hardware: 64bit   
OS: openSUSE Tumbleweed   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: Systemd service unit for emacs.

Description Georg Grauberger 2020-12-09 17:15:50 UTC
Created attachment 844327 [details]
Systemd service unit for emacs.

Hi,
I am trying to enable emacs --daemon as a user service. When I am logged in and start the service I can connect to the emacs daemon via `emacsclient -c`.

After I reboot the machine and login again the `emacsclient -c` command throws following error.

Waiting for Emacs...
*ERROR*: Display :0 can’t be opened

This stops if I disable access control via `xhost +`.

I tried with different display managers `gdm` and `sddm` both don't work.

The expected result should be a emacs window opening.

To reproduce.
use tumbleweed snapshot 20201207

put attached `emacs.service` file into `~/.conf/systemd/user/emacs.service`

enable systemd service
`systemctl --user daemon-reload && systemctl enable --user emacs`

reboot, login and run `emacslient -c`
Comment 1 Dr. Werner Fink 2021-01-12 09:15:52 UTC
(In reply to Georg Grauberger from comment #0)

> 
> This stops if I disable access control via `xhost +`.

Never use xhost for this ... the started emacs daemon does not know about the XAUTHORITY of the DISPLAY.  It is up on you to set this.

*** This bug has been marked as a duplicate of bug 1174534 ***