-
-
Notifications
You must be signed in to change notification settings - Fork 4
Time to retire cerbere? #36
Comments
I think moving to using GNOME Session without the I think I agree with you that leaving off the Maybe can re-investigate having a developer session or something in the future so that we can give users this extra protection of exiting the session. But I would consider that outside the scope of the current issue. I'm in favor of retiring cerbere and using GNOME session here :) |
I'm also in favor of retiring cerbere and using GNOME Session without the |
Further experiments with this show that wingpanel is happy being launched and managed by Continuing to investigate... |
Ok, figured that out, there was a However, they're not automatically restarted when they crash or are killed. I think we need to add some extra code to wingpanel and plank so they register with the session manager properly. I'll test this out next. |
Not as complicated as I thought, I'd just typo'd something. It's just changes to some install paths and desktop files to replace cerbere with In summary, we need to ensure the following are set in the desktop files for wingpanel and plank and ensure we remove any
We also need to install those desktop files to When these fixes are released to users, there will obviously need to be a simultaneous plank, cerbere and wingpanel release. There are reasons why I haven't just gone ahead and done PRs for that:
I don't have a huge amount of time at the moment to look into the above as I'm really busy with my day job, but hopefully this investigation helps and provides some relatively bite sized tasks for someone else to pick up and finish off the fix. |
Wingpanel autostart desktop added in elementary/wingpanel#274 |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
No worries; I'll keep digging. It does sound like this is likely to require (a) separate issue report(s), toward the eventual implementation of user systemd services for wingpanel and plank (as much as I'd rather not dictate use of systemd.. the facts are that I am already using it and so is every elementary OS user). Edit: I found a workaround. In order to use X-GNOME-AutoRestart with gnome-session 3.34+, it is necessary to start gnome-session with |
This comment has been minimized.
This comment has been minimized.
Closing since this should now be completed |
While looking into the various polkit issues reported recently, I've found that it's probably something related to things like #35 or #33 . It seems cerbere clings on (despite being told to exit), even at logout and leaves behind a mess that the next session can't quite clean up and recover from.
I've tried digging into the cause of these issues a bit further and I'm making very slow progress due to the difficulty in debugging Cerbere.
I've already ran a little experiment that proves it would be possible to have
gnome-session
launch and relaunch (in the case of failure) components that are currently looked after by cerbere (plank and wingpanel), but there are a couple of points to consider:gnome-session
wherein if something crashes or is killed more than once within a minute, it's considered dead.So there's a decision to be made as to whether wingpanel and/or plank should be considered required components of the session. It feels as though if wingpanel is failing to start, then it would make sense to drop out of the session as pantheon isn't much use without wingpanel. However, I feel as though crashing more than once within a minute being considered a failure is a bit aggressive.
The immediate concern for me is that the above makes developing wingpanel (or indicators) hard because if you restart wingpanel more than once within a minute (which I frequently do while working on wingpanel), then you kill your session.
However, if we don't list plank and wingpanel as required components of the session, then they should be restarted as long as they're not crashing more than once every minute. If the limit is breached, then the automatic restarting stops and you're left in a session without wingpanel and/or plank.
I suppose another option would be to leave them as required components but patch
gnome-session
to make this limit less aggressive.I think the controllability of these limits improves slightly in GNOME >3.34 as I believe they're using systemd to manage session components now instead of custom code within
gnome-session
. But I think even migrating to usinggnome-session
at this point could still be worthwhile as it's slightly closer to the current/future GNOME philosophy and it's probably a quick way to clean up a few of the bugs we're seeing related to cerbere.Thoughts?
The text was updated successfully, but these errors were encountered: