[comp.sys.next] NeXTstep and X11?

jff@groucho (Jim Frenzel) (10/10/90)

We have a network of H/P machines running HP-UX and X11, which
I will want to access if I buy a NeXT.  Consequently, I have 
a few questions regarding NeXTstep and X11.  

From the fall catalog I gather that a beta version of X (formerly
XNeXT) is available, which allows you to run X-based applications.

1) Does this run under NeXTstep or does it replace NeXTstep?  As
   I understand it, NeXT does not officially support XNeXT.

2) Is there a tool that allows you to open an X11-compatible window 
   on a remote machine running X11, if you are running NeXTstep?
   Similarly, is there a tool that allows you to run X11 applications
   under NeXTstep?

3) How difficult is it to port X11 applications to NeXTstep?

4) Is there a public domain drawing program available, similar to 
   fig under X11, that generates postscript output?

5) Is there a DOS emulator program available (preferably pd)?

Thanks!

-- 
Jim Frenzel        jfrenzel@groucho.mrc.uidaho.edu         
Univ of Idaho,     Electrical Engr       
Moscow, ID 83843   208-885-7888

peterd@opus.cs.mcgill.ca (Peter Deutsch) (10/10/90)

> From news@quiche.cs.mcgill.ca Wed Oct 10 03:59:36 1990
> 
> 
> We have a network of H/P machines running HP-UX and X11, which
> I will want to access if I buy a NeXT.  Consequently, I have 
> a few questions regarding NeXTstep and X11.  
> 
> >From the fall catalog I gather that a beta version of X (formerly
> XNeXT) is available, which allows you to run X-based applications.
> 
> 1) Does this run under NeXTstep or does it replace NeXTstep?  As
>    I understand it, NeXT does not officially support XNeXT.

XNext is a port of X11R3 done by a student at MIT. I don't
know if it will run under Release 2.0, but assume it will.
It runs concurrently with NeXTStep and the root window can
be run at any size up to the whole screen.

XNext is a single bit per pixel server. It is reasonably
fast, but I believe it makes use of a proprietary library
to do the single bit to double bit per pixel translation,
so sources are not available.  XNext has some bugs, but
works as a "proof of concept".

Perhaps of more interest to you, a programmer here at
McGill has done a port of a X11R4 server, which we call
MouseX (for reasons which will become clear soon, or will
be clear to some of you now). It uses two bits per pixel
(and in fact is a reqrite of the 8 bit server). It uses
no proprietary libraries and will be available as a set of
diffs to the standard MIT release, so you can do with it
as you will.

Currently, this server needs NeXTStep to feed it mouse and
keyboard events, otherwise it is independent of NeXTStep.
Once NeXT tells us how to get these directly from the
kernel, we should be able to do a stand-alone version (are
you listening, Chris?).

Also, it was decided to have X as a separate environment,
thus the server takes over the whole screen and currently
can't be resized. There was some talk that a new feature
of X11R4 allows resizing a root window, so maybe we'd
allow this, but this idea is on the back burner for now.

You can hot-key out of X back into NeXTStep at any time.
double-clicking on the App icon takes you back to X.

We have a bare-bones user App to launch X. X takes over
the screen, and the two coexist quite nicely.  We hope to
add the ability to cut and paste between the two, but
haven't done it yet.

It is running (I have it on my machine as we speak, with
twm, xphoon, two copies of xeyes and an xterm) but it's
only been done for a few days and we're currently shaking
a few bugs out. It is supposed to go out to a half dozen
beta sites for a couple of weeks of testing (sorry, guys -
any minute now!!) but we here at SOCS found a couple of
bugs so everyone decided to hold it for a couple of days
to see if anything else turns up. There was nothing major,
but for example if I suspend X, then log out, the launching
App dies, but not the X server. The next time you launch
X, a new server is launched, but other machines can't
reach you. Fix is trivial, and is probably done by now.

We also wanted to test it with Release 2.0, and were
promised a copy by NeXT which hasn't arrived yet (are you
there, Judy?). Once we've done that, it can go to the
world.

One interesting thing is the amount of X software which
turns out to be broken and in which the brokenness has
been found when we compiled and ran our new server.

Examples, there is a strange bug in "twm", which turns a
move into a move-constrained after the first few.  It
doesn't make it unusable, but we haven't observed this on
other machines.

We also have a lot of things which have a hard-wired
assumption that every machine will have three mouse
buttons, Sigh. I voted to have a special hot-key to
simulate the missing button, but the implementor has a
philisophical objection to hiding broken code with this
hack, so I'll have to find the time one day to do it
myself (me, I'm a pragmatist, but with no time to program
right now. It could be a while, unless someone else does
it first.)

> 2) Is there a tool that allows you to open an X11-compatible window 
>    on a remote machine running X11, if you are running NeXTstep?

Not that I know of, but our port will allow X and NeXTStep
to cooexist, so you can run X programs on your NeXT and
set the display to the other machine.


Sorry to keep tantalizing the net with promises of X, but
it really will be out soon. I keep replying to the X
questions to keep everybody informed of progress. If you
have any ideas, suggestions, etc either email them or post
them. I pass them on to the guy doing the port.


				- peterd


------------------------------------------------------------------------------

 " Although botanically speaking a fruit, in 1893 the U.S. Supreme Court 
 unanimously ruled that tomatoes are a vegetable (and thus taxable under 
 the Tariff Act of 1883) because of the way they are usually served. "

                                          ref:  Smithsonian, August, 1990.
------------------------------------------------------------------------------