wayfire icon indicating copy to clipboard operation
wayfire copied to clipboard

cannot login into wayfire session in lightdm

Open Freemason-12 opened this issue 2 years ago • 4 comments

When I try to login into wayfire session it loads for some time and then goes back to login screen

Freemason-12 avatar May 13 '22 15:05 Freemason-12

Does running wayfire from tty without lightdm work?

NamorNiradnug avatar May 22 '22 20:05 NamorNiradnug

I don't know since now I'm using completely different setup with KDE. But I managed to login to wayfire by changing lightdm to sddm, that time

On Mon, May 23, 2022, 2:22 AM NamorNiradnug @.***> wrote:

Does running wayfire from tty without lightdm work?

— Reply to this email directly, view it on GitHub https://github.com/WayfireWM/wayfire/issues/1479#issuecomment-1133970346, or unsubscribe https://github.com/notifications/unsubscribe-auth/AXJV7M22WVVUHRSZUKU4NZTVLKJPPANCNFSM5V3VDMAA . You are receiving this because you authored the thread.Message ID: @.***>

Freemason-12 avatar May 23 '22 03:05 Freemason-12

I am having the same problem here - autologin with lightdm works fine, but if you use the greeter to prompt for a password, then the greeter appears to hang for ~20 seconds, the screen goes black, and then the greeter reappears.

Looking in logs, I think what is happening is that lightdm runs under X. When you try to login, the X session is torn down and lightdm tries to start a Wayland session - the problem is that the teardown of X takes a finite amount of time to release the video driver, and so when the Wayland session starts, the driver is not available. The Wayland session then hangs - it doesn't detect that the driver has become available - and then times out, falling back to the greeter again.

I can fix this by various kludgy hacks which mean it takes longer after the X teardown before the Wayland session is started, but none feel like the right thing to do. I think a better fix would be to run the greeter under Wayfire, so avoiding the need for X at all, but I am struggling to work out the right magic to do that.

Canonical's version of lightdm allegedly has the ability to run under Wayland - so should be possible under wayfire, but I can't at present work out how to do it. If anyone can point me in the right direction, that would be much appreciated.

spl237 avatar Jan 03 '23 11:01 spl237

Acorrding to https://github.com/canonical/lightdm/issues/63 I found that we can add this to .xprofile, it will loop blocking the lightdm until wayfire start

if [ -n "$XDG_VTNR" ] ; then
    echo "Waiting for VT $XDG_VTNR:"
    for ((i=0;i<100;i++)) ; do
      CURRENT="$(</sys/devices/virtual/tty/tty0/active)" 
      echo  "  $(date +%s.%N) using $CURRENT"
      if [[ "$CURRENT" = "tty$XDG_VTNR" ]]; then
          break
      fi
      sleep 0.01
    done 
fi

jinzhongjia avatar Feb 25 '23 05:02 jinzhongjia