[comp.sys.next] Running NeXT Apps across a network/Internet

barry@pico.math.ucla.edu (Barry Merriman) (05/23/91)

Well, I figured out how to run NeXTStep over a network. Its pretty
easy, and its a lot of fun. I've submitted the result as a FAQ: Still, there
are a few minor bugs to work out. Also, I wish we could
move files between hosts by dragging and dropping 
icons---any chance of this, NeXT?

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

Q: How can I run NextStep Apps on a remote NeXT and have them
   display on my local NeXT?

A: The basic details are in of the "NeXT Network and System 
   Administration Guide" (see Chapter 5 "Seeting Up a Netinfo Network", 
   section "Using the Network",  subsection "Remote Application Execution", 
   page 81; this is online in the 2.* Extended Release, in 
   /NextLibrary/Documentation/NextAdmin/05_SetupNet/_UsingTheNetwork.)

   The basic procedure will allow you to run apps across
   a local network or even the Internet.

   Running Apps:

   (1) Select ``Public Window Server'' in the Preferences panel
       (its under the UNIX heading) on your local machine; this allows 
       other NeXTs to display on your machine (this is the analog 
       of "xhost +" in X Windows). Note that this is a security risk.

   (2) rlogin to the remote machine, and from the command line,
       run an App with the option "-NXHost <displayname>", where 
       "<displayname>" is the name of the machine you want things to
       display on. ("NXHost" is the analog of the X Windows
       "DISPLAY" variable, but see step (3) for how to set it.)
       
       For example, to run Webster remotely, and
       display on my local machine arnold.math.ucla.edu, I'd enter
       the command:
       /NextApps/Webster -NXHost arnold.math.ucla.edu
       To be safe, you should give the full name of your machine,
       and the full pathname of the App, as in this example.

   Runnind a "Browser":

   (3) If you want to have a directory browser on the remote
       machine---from which you can execute other apps by 
       double-clicking on them---you need to start up a Workspace.
       But, before doing this, you must set the default NXHost
       to be your local NeXT (otherwise Apps started from
       the browser won't know to display their output on your local NeXT).
       So:
     
       (a) from a command line, do
           dwrite -g NXHost <displayname>
           (e.g., <displayname> would be arnold.math.ucla.edu 
           in the case above.) This will make all apps
           you start up send their display to <displayname>.
           This setting is put in a defaults database that persists
           after logging out---so it will stay set until you
           give the command "dremove -g  NXHost".
           With NXHost set as a default, you no longer need the
           "-NXHost <displayname>" option when you start up Apps
           (unless you want to override the default).

       (b) Now start up the Workspace, by giving the command
           /usr/lib/NextStep/Workspace.app/Workspace
           Error messages will appear, because it can't locate
           certain data, but it should start up and 
           run fine over a local network. Over the Internet, the 
           Workspace may not run---it usually dies, with a message
           "Cannot check in workspace port: Netnameserver: name is not 
            yours(1000)". Perhaps someone can figure out a fix?

Notes: Performance is good over a local Ethernet, but apps
are real slow to start up over the Internet (~30 seconds). 
Also, you _cannot_ transparently move files from the remote
machine to the local just by dragging and dropping icons between
Browsers. It'd be great if NeXT could do this in future versions.

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

   Here are the relevant instructions from the NeXT System Administration
   guide mentioned above, just for reference:

Remote Application Execution

It's possible to put the entire interface for any NeXTstepR application 
on a different machine from the one that's running the application. 
This can be useful for troubleshooting. It's also useful for using a 
dormant machine to do something computation-intensive if you're already 
loading down your machine with other processes. In the following steps, 
your machine is called yourhost and the remote machine otherhost. In 
this example, the remote machine runs the Digital WebsterT application 
while the window is displayed on your machine. To do this, you must have
your machine set up as a public window server (see step 1), be able to 
log into otherhost, and be able to run the application on otherhost.

1.	On yourhost, start up Preferences. Scroll to the UNIX button,
 click it, then click the Public Window Server check box. A check 
 mark appears. Hide Preferences.

Note:  Having a machine set up as a public window server is a 
security risk. See Chapter 16, *Security,: for more information.

2.	Open a shell window and log into otherhost using telnet or 
        rlogin, whichever you prefer.

3.	On otherhost, give the command

Webster -NXHost yourhost

The application's interface soon appears on your machine.

All the interaction is with the application interface on yourhost while 
the application actually runs on and uses the resources of otherhost.

4.	When you're finished, quit the application.

The general form of the command is:

Application -NXHost hostname

With a similar technique, you can run an application on your machine and 
have the its interface shown on another...






--
Barry Merriman
UCLA Dept. of Math
UCLA Inst. for Fusion and Plasma Research
barry@math.ucla.edu (Internet)   barry@arnold.math.ucla.edu (NeXTMail)

bedney@monolith.lanl.gov (Bill Edney) (05/23/91)

In article <1991May22.214340.2034@math.ucla.edu> barry@pico.math.ucla.edu  
(Barry Merriman) writes:
> Well, I figured out how to run NeXTStep over a network. Its pretty
> easy, and its a lot of fun. I've submitted the result as a FAQ: Still, there
> are a few minor bugs to work out. Also, I wish we could
> move files between hosts by dragging and dropping 
> icons---any chance of this, NeXT?

Barry-
Would this technique be applicable to wanting to do on the NeXT what Timbuktu  
Remote does on the Mac? (i.e. allow someone to display the screen of another  
NeXT on his NeXT in a window and do stuff on that other NeXT?)

--
- Bill Edney
- Los Alamos National Laboratory

"I don't speak for my employer and they don't speak for me. Kind of a nice  
arrangement."

eps@toaster.SFSU.EDU (Eric P. Scott) (05/25/91)

Check out ScreenSender in /NextDeveloper/Examples

					-=EPS=-

mikec@wam.umd.edu (Michael D. Callaghan) (05/28/91)

How about this scenario:


I'm logged into my NeXTCube from the Cube itself, plus I'm logged into it
from my Mac SE over Ethernet. Is there a way I can open Preview from the
command line from the SE? 

I realize that I'm showing the ultimate in laziness, since both machines
are within ten feet of each other, but I think it will be an interesting
project if it does work.



Thanks,
MikeC

-- 
---------------------------------------------------------
Michael D. Callaghan, MDC Designs, University of Maryland
---------------------------------------------------------
	- Celibacy is a curable condition -

carlos@roo (Carlos M. Salinas) (05/28/91)

In article <1991May22.214340.2034@math.ucla.edu> barry@pico.math.ucla.edu  
(Barry Merriman) writes:
> Well, I figured out how to run NeXTStep over a network. Its pretty
> easy, and its a lot of fun. I've submitted the result as a FAQ: Still, there
> are a few minor bugs to work out. Also, I wish we could
> move files between hosts by dragging and dropping 
> icons---any chance of this, NeXT?
> 
Someone at NeXT wrote a program called Touch. I have a beta copy of it, no  
official word on whether or not it will be released.

Touch mounts a pseudo NFS directory that is actually an FTP to a remote UNIX  
machine. Since the remote FTP is NFS mounted, you can treat it just like any  
other file in the filesystem. I've Touched archive sites in Oregon and Japan  
and was able to drag files around and lauch files on the remote system. Touch  
is a really neat program. Hope NeXT releases it. Can't give you specs on who to  
contact about it.

'Los