Skip to content

Draft: Use greetd to start phosh

Joel Selvaraj requested to merge joelselvaraj/pmaports:greetd-phosh into master

Based on discussion: !6044 (comment 464873)

Currently marked as Draft as I noticed the following issue.

  • In systemd, greetd is not enabled on boot even though preset is set. I have to ssh and do sudo systemctl enable greetd to make it work on future boots. maybe I am missing something? preset for greet was added
  • gnome-session package from upstream gets pulled in and brings with it gnome x11 and gnome wayland session files. This gets displayed in the greetd-phrog session selector. Phosh session has to be manually selected before logging in. Ideally this needs to be fixed upstream? such that these session files are not installed unless gnome shell is used? Tracked in https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/79185.
  • When shutdown, phosh prints debug logs on the virtual terminal used by greetd and thus collides with the postmarketOS logo during shutdown. I was told that this MR may help with that, but not tested yet: https://gitlab.gnome.org/World/Phosh/phosh/-/merge_requests/1620
  • I have tested this in systemd. But I havent tested the openrc setup yet. Will update once I did that. Updated and now tested in openrc, works fine, but faces the same slow startup issue shown below.
  • Currently I pulled in a WIP MR that is not yet merged in phrog, which will include a trivial flow where if only one user and one session is present, it would skip the user/session selector and directly lands in phosh lockscreen. Here is the MR: https://github.com/samcday/phrog/pull/84. It got landed in alpine aports greetd-phrog 0.44.0 onwards.
  • The startup seems to be very slow... I think it may be related to systemd though. Happens in both systemd and openrc, not sure if the reason is the same in both cases.

Here is the full systemd boot log: pmos_phrog_phosh_systemd_logs.txt

Here is the full openrc logread log: pmos_greetd_openrc_logread.txt

These lines are where most of the delay seem to happen. I couldnt find the underlying cause yet. (I dont know much about these stuff too...so help is welcome)

Jan 15 18:45:03 xiaomi-beryllium pipewire[1201]: [0:00:56.791472684] [1279]  WARN IPASoft soft_simple.cpp:96 IPASoft: Failed to create camera sensor helper for imx363
Jan 15 18:45:31 xiaomi-beryllium systemd[1]: systemd-hostnamed.service: Deactivated successfully.
░░ Subject: Unit succeeded
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ The unit systemd-hostnamed.service has successfully entered the 'dead' state.
Jan 15 18:45:48 xiaomi-beryllium phoc[951]: [backend/drm/atomic.c:73] connector DSI-1: Atomic commit failed: Resource busy
Jan 15 18:46:06 xiaomi-beryllium kernel: wcd934x-codec wcd934x-codec.1.auto: Port Closed RX port 2, value 4
Jan 15 18:46:26 xiaomi-beryllium gnome-session[1355]: gnome-session-binary[1355]: GnomeDesktop-WARNING: Failed to acquire idle monitor object manager: Timeout was reached

I am currently looking for help to get past the issues mentioned

Here is a video demo of the current status:

pmos-phosh-phrog-systemd

Edited by Joel Selvaraj

Merge request reports

Loading