Plan 9 from Bell Labs’s /usr/web/sources/contrib/sl/rc/x

Copyright © 2021 Plan 9 Foundation.
Distributed under the MIT License.
Download the Plan 9 distribution.


#!/bin/rc
# manage equis/vnc/x11 screens on several different operating systems
if(~ $service cpu terminal)
	rfork e
switch($1){
case -d
	for(i in `{ps ax|grep -i x11|awk '{print $1;}'})
		kill -9 $i
case -e
	scr=(`{cat /dev/draw/new >[2]/dev/null})
	w=$scr(11)
	h=$scr(12)
	if(~ $w 640 && ~ $h 480){
		# nothing to see here
	}
	if(~ $w 1024 1376 && ~ $h 768){
		window -r 343 1 1365 767 'label equis; X11/equis -ac'
	}
	if(~ $w 1280 && ~ $h 800){
		window -r 1 1 1279 767 'label equis; X11/equis -ac'
	}
	if(~ $w 1280 && ~ $h 1024){
		window -r 1 1 1279 1023 'label equis; X11/equis -ac'
	}
	if (~ $w 1680 1600 && ~ $h 1050 1200){
		window -r 178 150 1599 1199 'label equis; X11/equis -ac'
	}
	if(~ $w 1920 && ~ $h 1080){
		window -r 130 1 1793 1062 'label equis; X11/equis -ac'
	}
case -r
	k x11vnc
	x11vnc -display :0 -passwdfile .vnc/passwd -repeat -capslock &
case -v
	vncv wm
case -x
	res=1280x767x24
	xinit -- /usr/X11R6/bin/Xvfb :0 -screen 0 $res &
	sleep 5
	x11vnc -display :0 -passwdfile /home/sl/lib/vnc.passwd -capslock &
case *
	echo usage: x [-ervx] >[1=2]
	exit usage
}

Bell Labs OSI certified Powered by Plan 9

(Return to Plan 9 Home Page)

Copyright © 2021 Plan 9 Foundation. All Rights Reserved.
Comments to webmaster@9p.io.