Ghee: >> In my previous email I asked why we still need to hack >> dtlogin-integration's Xsession script to save the user's SHELL variable >> and reset it after calling dbus-launch. This seems unnecessary when >> calling dbus-launch with --sh-syntax. >> > Yes. Brian. You are absolute correct here. Sorry I haven't made changes > to that patch because > I would like to work on a final solution before making changes. So now > as based on > our discussion here, it looks like I can remove the current patch :)
That makes sense. >> Also, why are we patching dtlogin-integration rather than modifying >> the dtlogin-integration module and spinning a new release? >> > Yes. I will make a new tarball with the final solution. Mmmm, I love final solutions. >> When using GDM, the /etc/X11/gdm/Xsession script has this code: >> >> # run all system xinitrc shell scripts. >> if [ -d /etc/X11/xinit/xinitrc.d ]; then >> for i in /etc/X11/xinit/xinitrc.d/* ; do >> if [ -x "$i" ]; then >> . "$i" >> fi >> done >> fi >> >> So, if you install files to this directory, they should run. I >> believe that the /etc/x11/xinit directory is empty by default on >> both Solaris and OpenSolaris. > I would like gdm to own that directory since this is the 'interface' > it supports. > other clients can throw in their startup scripts accordingly. So, gdm > can determine > the correct permission etc. Could you patch SUNWgnome-display-mgr to create this directory and commit it along with your other dbus-launch fixes? Since we need to get approval to get this into 2.24 anyway, I think it is easiest if you made this minor change. I'd think that the same permissions as used for the /etc/X11 and /etc/X11/gdm directory would be appropriate: drwxr-xr-x 5 root sys 512 Oct 1 10:01 /etc/X11 drwxr-xr-x 7 root sys 512 Sep 29 13:37 /etc/X11/gdm Since the /etc/X11/gdm contains the Xsession script itself that would mean the xinitrc.d directory would have the same permissions as the Xsession script. >> However, any package (such as >> gnome-session) which wants to install a script to make sure that >> something like dbus-launch is started can easily create the directory >> and add any desired scripts. Since OpenSolaris only uses GDM, this >> should work fine. >> > I would think SUNWdtlogin-integration should be use to deliver that for > now. That seems fine to me also. >> For this to work with CDE login, though, you would need to also >> put the same script in /usr/dt/config/Xsession.d. Since, on >> Solaris Nevada, GDM runs both the /etc/X11/gdm/Xsession script >> and the /etc/X11/xinit/xinitrc.d scripts, you would obviously >> need to check the environment variables as you describe and avoid >> starting dbus-launch a second time if it was already started by >> an earlier process. >> > A sample called 0005.dbus which I put in /usr/dt/config/Xsession.d is > attached. > That do the checking before calling dbus-launch. I will try out a > similar one on > OpenSolaris tomorrow. Looks good to me. Brian
