Opened 7 years ago

Closed 7 years ago

#175 closed enhancement (fixed)

ability to run multiple copies of winswitch under the same user id

Reported by: Antoine Martin Owned by: Antoine Martin
Priority: minor Milestone: 0.12
Component: Android Keywords:

Description (last modified by Antoine Martin)

this has been requested more than once now and would allow setups with multiple non-xinerama-ed heads to function.

this requires:

  • the ability to define an alternate root directory (currently defaults to ~/.winswitch)
  • the ability to override the location of the server socket so that the second instance launched can find the first

Change History (1)

comment:1 Changed 7 years ago by Antoine Martin

Description: modified (diff)
Resolution: fixed
Status: newclosed
Summary: ability to run multiple copies of winswitch under the same userability to run multiple copies of winswitch under the same user id

done in r4521:

The following environment variables can be used to control key files/dirs locations to prevent a clash between multiple instances and to allow one instance to find the server from another:

  • "WINSWITCH_HOME_DIR" can be used to specify an alternative configuration directory (defaults to "~/.winswitch"). A secondary instance must use a different configuration (it will be generated if the directory specified does not exist).

You can simply start the secondary instance with:

WINSWITCH_HOME_DIR="${HOME}/.winswitch-secondary" winswitch_applet --no-start-local-server

(although starting more than one client per user can be useful, it does not make much sense to start more than one local server)

  • "WINSWITCH_SERVER_LOCK_DIR" should be used on the secondary instance to tell it where to find the server lock directory of the primary instance: when "WINSWITCH_HOME_DIR" is overriden, it will try to find an existing server in "${WINSWITCH_HOME_DIR}/server/lock, so you should use this variable to allow the secondary to find the primary server by pointing it to the correct location (ie: "${HOME}/.winswitch/server/lock")
  • "WINSWITCH_SERVER_SOCKET_PATH": just like for the lock directory, this controls the server socket location and can be used to ensure a secondary instance will find the primary server socket (ie: "${HOME}/.winswitch/server/socket"

Note that each instance will have its own "identity" (name, avatar, etc)
Although running two clients against the same X11 *screen* is technically possible, this is just confusing and may lead to strange bugs. The instructions herein are for multiple instances running on separate logical screens of the same X11 server (not xinerama-ed) or separate X11 servers.

Note: See TracTickets for help on using tickets.