manjaro-sway / manjaro-sway

manjaro linux with wayland 🖼, sway 🌴 and a lot of ♥
https://manjaro-sway.download
MIT License
702 stars 20 forks source link

🐛 `podman stop` will log you out when using session "Sway Service" #688

Closed heapifyman closed 4 months ago

heapifyman commented 6 months ago

branch

testing

Architecture

x86_64

Description

When using "Sway Service" as login session there seems to be a problem with podman. Running podman stop <container> to stop a container will log you out of sway to the greetd login screen.

Workaround:

Use session type "Sway" when logging in.

Notes:

Reproduction steps

1. Login using session type "Sway Service" (press F3 at greetd login screen)
2. `pacman -S podman` (in a VM or the live-system you may also need to install `fuse-overlayfs`)
3. `podman run -itd --rm --name alpine alpine:latest sh`
4. `podman ps -a` will show that the container is running
5. `podman stop alpine`

Result:

You will be logged out of sway and end up on the greetd login screen.

Expected result:

Container alpine should be stopped, and I should remain logged in.

Screenshots

No response

Logs

No response

boredland commented 5 months ago

While I am able to reproduce this, I am unsure why this happens. That service file is pretty straightforward:

https://github.com/alebastr/sway-systemd/blob/main/units/sway-session-shutdown.target

Somehow sway seems to be killed:

Feb 20 00:16:24 jonas-20kgs6c000 podman[1317540]: 2024-02-20 00:16:24.362287235 +0100 CET m=+5.274537277 container create bf43bfdf7fb2805120496b0bc99c4e03981d8a97cca75dbb3983c4211>
Feb 20 00:16:24 jonas-20kgs6c000 podman[1317540]: 2024-02-20 00:16:24.423202873 +0100 CET m=+5.335452927 container init bf43bfdf7fb2805120496b0bc99c4e03981d8a97cca75dbb3983c421166>
Feb 20 00:16:24 jonas-20kgs6c000 podman[1317540]: 2024-02-20 00:16:24.42647926 +0100 CET m=+5.338729303 container start bf43bfdf7fb2805120496b0bc99c4e03981d8a97cca75dbb3983c421166>
Feb 20 00:16:24 jonas-20kgs6c000 podman[1317540]: 2024-02-20 00:16:24.350406361 +0100 CET m=+5.262656403 image pull 3db8720ecbf5f5927d409cc61f9b4f7ffe23283917caaa992f847c4d83338cc>
Feb 20 00:16:24 jonas-20kgs6c000 sh[1312263]: 00:05:59.001 [ERROR] [wlr] [backend/drm/atomic.c:72] connector eDP-1: Atomic commit failed: Device or resource busy
Feb 20 00:17:13 jonas-20kgs6c000 ubuntu[1317602]: # 
Feb 20 00:17:13 jonas-20kgs6c000 podman[1318059]: 2024-02-20 00:17:13.19653886 +0100 CET m=+10.044500327 container died bf43bfdf7fb2805120496b0bc99c4e03981d8a97cca75dbb3983c421166>
Feb 20 00:17:13 jonas-20kgs6c000 podman[1318059]: 2024-02-20 00:17:13.230047113 +0100 CET m=+10.078008579 container cleanup bf43bfdf7fb2805120496b0bc99c4e03981d8a97cca75dbb3983c42>
Feb 20 00:17:13 jonas-20kgs6c000 podman[1318161]: 2024-02-20 00:17:13.247646348 +0100 CET m=+0.053646407 container remove bf43bfdf7fb2805120496b0bc99c4e03981d8a97cca75dbb3983c4211>
Feb 20 00:17:13 jonas-20kgs6c000 systemd[1186733]: sway.service: Main process exited, code=exited, status=137/n/a
░░ Subject: Unit process exited
░░ Defined-By: systemd
░░ Support: https://forum.manjaro.org/c/support
░░ 
░░ An ExecStart= process belonging to unit UNIT has exited.
░░ 
░░ The process' exit code is 'exited' and its exit status is 137.
Feb 20 00:17:13 jonas-20kgs6c000 nwg-wrapper[1312545]: Error reading events from display: Broken pipe
Feb 20 00:17:13 jonas-20kgs6c000 evolution-alarm[1312575]: Error reading events from display: Broken pipe
Feb 20 00:17:13 jonas-20kgs6c000 pcmanfm[1312428]: Error reading events from display: Broken pipe
Feb 20 00:17:13 jonas-20kgs6c000 sh[1313072]: (EE)
Feb 20 00:17:13 jonas-20kgs6c000 sh[1316872]: warn: wayland.c:1418: disconnected from Wayland
Feb 20 00:17:13 jonas-20kgs6c000 sh[1313072]:  failed to read Wayland events: Broken pipe
Feb 20 00:17:13 jonas-20kgs6c000 sh[1316872]:  err: wayland.c:1977: failed to roundtrip Wayland display: Broken pipe
Feb 20 00:17:13 jonas-20kgs6c000 sh[1316872]:  err: wayland.c:1977: failed to roundtrip Wayland display: Broken pipe
Feb 20 00:17:13 jonas-20kgs6c000 sh[1316872]:  err: wayland.c:1977: failed to roundtrip Wayland display: Broken pipe
Feb 20 00:17:13 jonas-20kgs6c000 sh[1316872]:  err: wayland.c:1942: failed to flush wayland socket: Broken pipe
Feb 20 00:17:14 jonas-20kgs6c000 systemd[1186733]: sway.service: Failed with result 'exit-code'.
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: https://forum.manjaro.org/c/support
░░ 
░░ The unit UNIT has entered the 'failed' state with result 'exit-code'.
Feb 20 00:17:14 jonas-20kgs6c000 systemd[1186733]: sway.service: Consumed 2min 47.253s CPU time, 373.7M memory peak.
heapifyman commented 4 months ago

Looks like this has been "fixed by accident" in the meantime? Maybe by the changes for foot config related to login shell? At least I cannot reproduce this any more with session type "Sway Service" and manjaro-sway-settings 16.19.0-7.

@boredland is it the same for you?

boredland commented 4 months ago

Not intended, but I restructured a lot around foot. Perhaps that is the reason?

boredland commented 4 months ago

Anyway: happy this got resolved along the way.