Services in autostart can't be disabled
Closed this issue · 13 comments
I'm not sure if it is an issue related to mate-session or to mate-screensaver, please let me know if I'm wrong.
I noticed that if I remove the program mate-screensaver from the list of startup processes (from the GUI program or manually changing the file in /etc/xdg/autostart/mate-screensaver.desktop
) it will continue to be launched at login. It will happen even if I completely remove the files /etc/xdg/autostart/mate-screensaver.desktop
and ~/.config/autostart/mate-screensaver.desktop
. I noticed that it will not be launched if I remove the file /usr/share/dbus-1/services/org.mate.ScreenSaver.service
, but probably that solution is not applicable
How to reproduce
- Open the program Startup Applications
- Untick the section with Screensaver
- Log out
- Log in
- Open a terminal and run
grep -f mate-screensaver
, it will be displayed the pid.
Distro and Desktop version
I have Ubuntu MATE 17.10 with MATE Desktop 1.18.0, but I found this bug even in other MATE versions in Ubuntu 16.04 (in real hardware) and Ubuntu 18.04 (in a virtualbox)
I am noticing the same issue with the latest git commit builds (master / 1.25). Had to uninstall mate-screensaver to get rid of mate-screensaver processes...
Not only mate-screensaver is affected by this issue. Every application in autostart can't be disabled.
Not sure, but IHMO we have introduce this issue with one of those PRs.
#184
#213
#178
But there is a workaround.
After unticking the checkbox, open the edit dialog of the autostart service and click on the save button in dialog.
This should save the new state of the service.
Try it out.
So this is definitely a bug in mate-session-manager.
Not only mate-screensaver is affected by this issue. Every application in autostart can't be disabled.
Not sure, but IHMO we have introduce this issue with one of those PRs.
#184
#213
#178
It seems to be #213 - if I revert that PR, I can enable and disable screensaver (my test example) without a workaround below. Furthermore, if I revert just a part of that PR (only gsm-properties-dialog.c changes):
pr213-part-rev.patch.txt
enabling and disabling screensaver still seems to work (hiding NoDisplay apps functionality is more or less broken, of course - but, it has been made just to narrow the problematic changes, not as a solution). Hope it helps to find the bug...
But there is a workaround.
After unticking the checkbox, open the edit dialog of the autostart service and click on the save button in dialog.
This should save the new state of the service.
Try it out.
Tried, works for me (custom CentOS 8.3 build of mate-session-manager-1.25 - latest git commit).
I will not be available for two weeks.
Good to know, have a nice trip.
Try this patch:
mate-session-manager-1.25-156-fix.patch.txt
I've tried with mate-screensaver (hidden, so on the list when hidden option checked only...) and seapplet (always on the list, tested with hidden option both on and off...). I could enable / disable both as expected. Haven't noticed any other unexpected behavior as well.
This works well in a quick test. Can you please do a pull request for a review?
I've never done it before. I've tried to open a new PR now, but can't find an option to do it with a patch (I don't work with git, but download tar.gz sources to build with rpmbuild). Would you be so kind to do it?
OK :/
Here is a guide for setting up git and steps for forking a repo and doing a pull request https://guides.github.com/introduction/git-handbook/
You really need this for contribute here.
And there are a lot of guides about git in the web.
Any way i will creating a PR when i find time.