#!/bin/zsh -f
 
#  Function to run a program in second X11 display
#  using the specified remove host x-server (eg: startkde, startxfce4)
#  without disturbing the default 24-bit X11.
#  See also 8bitx

#  Created by William Scott on 2007-04-26.
#  Copyright (c) 2007. All rights reserved.

version="0.0.1"

#  Check to make sure /usr/X11R6/bin/Xquartz is present

if [[ ! -x /usr/X11/bin/Xquartz && ! -x /usr/X11R6/bin/Xquartz ]];then
	print "Requires Apple's X11 with Xquartz to run"
	return 1
fi

if [[ $# == 0 ]];then
	print "Usage:  $0 remotehost remoteXwindowingsystem"
	return 42
fi

# Do all of this as a subprocess:

(
		# set the DISPLAY to a two-digit random value
		# note that this is zsh-specific code

		 DISPLAY=:$$[3]$$[4]

		# start Xquartz on this display  

		Xquartz $DISPLAY    2>/dev/null  & 
		# Xquartz $DISPLAY  -depth 8 2>/dev/null  & 

		sleep 1

		# start an instance of the quartz window manager

		# quartz-wm &

		# sleep 1

		# start the desired program in the foreground
		# the kill commands terminate the background
		# processes when the foreground process is terminated.

		 ssh -Y "$@" ; kill -9 %1
)

