if osextras.find_on_path(msd): extras.append(subprocess.Popen( [msd], stdin=null, stdout=logfile, stderr=logfile, preexec_fn=self.drop_privileges))
elif (osextras.find_on_path(usd)): # Wait until xsettings plugin is activated xsettings = SignalWatcher(self, usd, "org.gnome.SettingsDaemon", "/org/gnome/SettingsDaemon", "PluginActivated", "xsettings") # the SignalWatcher will run until the signal is seen... extras.extend(xsettings.run()) # At this point we're sure the usd xsettings plugin is # available, we can continue setting up the session.
Thus in u-s-d case there is an extra blocking wait on u-s-d to initialise xsettings before proceeding.
I do not know if something similar is required in g-s-d case, to e.g. wait for g-s-d to be fully up.
However, longer term, imho ubiquity-dm should not at all be in use at all, and instead we should boot to gdm3 normally and have e.g. a casper override to start up in ubiquity installer mode, rather than full session.
There is a slight difference between unity-settings- daemon and gnome-settings- daemon code paths.
Specifically:
msd = '/usr/bin/ mate-settings- daemon' unity-settings- daemon/ unity-settings- daemon' gnome-settings- daemon/ gnome-settings- daemon'
usd = '/usr/lib/
gsd = '/usr/lib/
if osextras. find_on_ path(msd) :
extras. append( subprocess. Popen(
[msd] , stdin=null, stdout=logfile, stderr=logfile,
preexec_ fn=self. drop_privileges ))
Thus in u-s-d case there is an extra blocking wait on u-s-d to initialise xsettings before proceeding.
I do not know if something similar is required in g-s-d case, to e.g. wait for g-s-d to be fully up.
However, longer term, imho ubiquity-dm should not at all be in use at all, and instead we should boot to gdm3 normally and have e.g. a casper override to start up in ubiquity installer mode, rather than full session.