16 March 2016

display

System: Slackware Linux (version 14.0)
CPUs: Intel(R) Atom(TM) CPU N270 @1.60GHz
Deps: weirdx-1.0.32.tar.gz

This entry is about running plan9port's rio window manager logged in
as one user, then opening a Java window into which will be loaded an
X terminal, switching in that xterm to another user and running GUI
applications inside the Java window.

http://www.jcraft.com/weirdx/
weirdx-1.0.32.tar.gz

One needs a JDK installation, instructions for which are located
in the /extra directory of Slackware distributions. I've used early
as J2SE 1.5.0_01 from Slackware version 10.1. JRE will work,
excepting you can't compile files for other keyboard layouts than
those (gb, de, and jp106) which ship with 1990's circa software.

Boot into the default runlevel 3.

Welcome to Linux 3.2.29-smp (tty1)
darkstar login: glen
Password:
Linux 3.2.29-smp
glen@darkstar:~$ startx -- :1 vt8

Use mouse button 3 to access the menu, select New,
then use mouse button 3 to draw a window.

Check if you're on a non-English keyboard.

sh-4.2$ setxkbmap -query

If you're on an unsupported keyboard run this command.

sh-4.2$ setxkbmap --layout us

Start WeirdX in the background
and xterm on DISPLAY :2.0.

sh-4.2$ cd /tmp/weirdx/misc
sh-4.2$ java -jar weirdx.jar &
[1] 2121
sh-4.2$ xterm -display :2.0 -geometry 80x20-1-1 &
[2] 2135
sh-4.2$

In xterm switch to another user as a login shell,
which will add the variables from /etc/profile.d,
into your shell. If that user is already logged in,
e.g., on another tty, omit the '--login' argument; the
shell within which one runs the su command will
retain a non-login status, but additional terminals
started from twm's mouse accessed menu will
appear as login shells.

sh-4.2$ su felix --login
Password:
felix@darkstar:~$

Start a tab window manager (twm).

felix@darkstar:~$ twm -f /tmp/weirdx/misc/twmrc &
[1] 2166
felix@darkstar:~$ cd $HOME
felix@darkstar:~$

Qt applications will miss the Xlib extension SYNC in WeirdX.

The GTK+ applications wanting access & write permissions to
freedesktop's ~/.local/share/recently-used.xbel won't complain
(issue warnings) when started under a twm. However owing to
the limitations of RANDR to run only one window manager per
screen, having rio running on DISPLAY :1, DISPLAY :2.0 will
lack support for the Xlib extension for a running twm.

Tk applications and athena widgets render favourably.

When finished with the session, use the mouse accessible
menu to Exit; clicking the mouse again in xterm and typing
'exit' returns the shell to the user glen.

Kill the xterm PID from 9term
and then the WeirdX PID.

I first used JCraft's software with a Microsoft® XP
installation of SFU 3.5 Interix. That platform does
not exhibit the above issue with RANDR though I
occasionally have seen a "blacked out" effect on a
widget's dropdown menu entry after having clicked
on it; gvim compiled with the athena toolkit.

I might create Scandinavian languages' keymap and
key modifier files; uncommenting the following line in
C:\weirdx\misc\config\props.and starting WeirdX on
my Netbook I note though that AltGr does not work -
having set the Windows keyboard to DE - and with
CapsLock pressed the typing of numbers results in
the equivalent of Shift + number having been typed.

#weirdx.display.keymap=de

X clients can also be started from remote Un*x
machines, the client applications appearing in
the running X Window System server's display.

I have neither tried Java GUIs nor XForms Toolkit
applications with WeirdX; in the sidebar there are
for example two Java programs as RAnalyticFlow
and SQuirreL SQL Client.

Rudimentary GUI design is an interesting skill.

On Linux from plan9ports's event.c [line 197] is
output "rio: bad mapreq c %p w %x, rescanning\n"
when attempting to run p9p's rio inside WeirdX.

In terms of the differences in ELF versus PE32
interaction between an MS® machine with Interix
and a Un*x network might be possible utilising
multiple Tcl interpreters.