On 7/31/07, Andreas Höschler <[EMAIL PROTECTED]> wrote:
> Hi Yen-Ju,
>
> >> in the application delegate of Finder.app. I am not yet sure what
> >> exactly this method will have to do to kill the session (A pkill on
> >> Azalea??). What I know is that I have no file /etoilesystem on my
> >> box!?
> >> Where should that come from? How is logout supposed to work?
> >
> >   The way Etoile does is that in the xsession,
> >   it launches etoile_system after login.
> >   Then etoile_system will read SystemTaskList.plist and lauches
> > applications
> >   one-by-one, including window manager (Azalea).
>
> I see. I have replaced
> /opt/GNUstep/System/Applications/Azalea.app/Azalea with
> /opt/GNUstep/System/Tools/etoile_system in my dtlogin files and logging
> in still works, though OuterSpace is started now. What can I do to
> prevent that? I guess editing
>
>         pico
> /usr/share/src/Etoile-0.2/Services/Private/System/SystemTaskList.plist
>
> and rebuilding etoile is not the recommended approach. :-)
>
> >   So the right way to log out is to stop etoile_system, not window
> > manager,
> >   and I believe it is what the menu server does.
>
> I don't see that. The code in question is
>
> - connectToWorkspaceApplicationLaunch: (BOOL) launchFlag
> {
>    NSString * appName = nil;
>
> #if 0
>    /* It does not make sense to check for default workspace
>       because even if there is one, we still use etoile_system to log
> out.
>       And in order to avoid GWorkspace from launching automatically,
>       we may set GSWorkspaceApplication to a non-existing application.
>       If that is the case, it will break logout. */
>    appName = [[NSUserDefaults standardUserDefaults] objectForKey:
> @"GSWorkspaceApplication"];
> #endif
>    if (appName == nil)
>      {
>        // NOTE: appName is defined as SCSystemNamespace in EtoileSystem.h
>        appName = @"/etoilesystem"; // @"EtoileWorkspaceServer";
>      }
>
>    return [self connectToApplication: appName launch: launchFlag];
> }
>
> Since there is no application /etoilesystem, this method returns nil
> and the user gets this neat "etoile is very unstable" message and
> logout is adondened. :-(
>
> I also don't find EtoileWorkspaceServer.app in the Etoile tree. This
> code seems to be obsolete!?
>
> >   If you launch window manager in your xsession instead of
> > etoile_system,
> >   then you have to logout by killing the window manager
> >   and the logout in menu server will not work.
>
> I got this working by implementing
>
> - (void)logOut
> {
>         system("pkill etoile_system &");
> //      system("pkill Azalea &");
> }
>
> in Finder.app and applying the following patch to Etoile:
>
> NSWorkspace+Communication
>
>         pico
> /usr/src/Etoile-0.2/Services/Private/System/WorkspaceCommKit/
> NSWorkspace+Communication.m
>
> - connectToWorkspaceApplicationLaunch: (BOOL) launchFlag
> {
>    NSString *appName = [[NSUserDefaults standardUserDefaults]
> objectForKey: @"GSWorkspaceApplication"];
>    if (appName == nil) appName = @"Finder";
>    return [self connectToApplication: appName launch: launchFlag];
> }
>
> EtoileMenuServer
>
>         pico /usr/src/Etoile-0.2/Services/Private/MenuServer/Controller.m
>
> - (id)_workspaceApp
> {
>    return [[NSWorkspace sharedWorkspace]
> connectToWorkspaceApplicationLaunch:YES];
> }
>
> But I still don't know how to configure AZDock. It remembered my
> setting as long as I was using
>
> /opt/GNUstep/System/Tools/make_services
> openapp AZBackground.app &
> openapp EtoileMenuServer &
> openapp AZDock.app &
> openapp Finder.app &
> openapp Terminal.app &
> exec /opt/GNUstep/System/Applications/Azalea.app/Azalea

  You can surely do this if you don't want to use etoile_system.

>
> in my dtloging file. After replacing that with
>
> exec /opt/GNUstep/System/Tools/etoile_system
>
> I always get the same AZDock with just two questionmarks and an entry
> for OuterSpace! :-(

  The default Etoile icon launch GSWorkspaceApplication
  ("AZWorkspaceView.m" line 136 of 211).
  The question marks are for application which does not supply a EWMH icon.
  You can use contextual menu on these icons to see which applications
  they are.

>
> How can the AZDock persistently be configured?
>

  AZDock stored docked application in user defaults:
  ("AZDock.m" line 725 of 984).
  It may be low-level. So maybe you can look at your user default to see.

  Yen-Ju

> Thanks,
>
>    Andreas
>
>
>
>
> _______________________________________________
> Etoile-discuss mailing list
> [email protected]
> https://mail.gna.org/listinfo/etoile-discuss
>
>

_______________________________________________
Etoile-discuss mailing list
[email protected]
https://mail.gna.org/listinfo/etoile-discuss

Répondre à