20. Netscape

You need an X11 browser, Netscape is one of the best.

20.1 What_is Netscape
20.2 Download
20.3 mkdir /usr/local/lib/netscape
20.4 lib fixes
20.5 Configure
20.6 Tetris
20.7 Tcl-Security
20.8 Diagrams

20.1

What_is Netscape

Netscape is an X11-motif browser. It is an all-purpose Swiss-Army-Knife console for net access.

Personally I don't like it for NEWS, knews is much better, but as a WEB browser there is nothing like it.

Netscape has the advantage, because it runs JAVA, and it understands all the backward compattibility (HTML 3.0) Netscape Enhanced PC-Browser commands.

The current consensus, is to move to HTML-3.2, so that one page fits all browsers, except browsers that don't implement frames or JAVA. Netscape does the lot, it's nearest rival is Internat Explorer.

Netscape is a commercial browser, and currently under development, so the current deal is that the prototypes will time expire. Then you upgrade to the next, unsupported release!

Netscape provide tonnes of documentation and support, on how to write HTML that works, and they integrate with other desktop apps, through the MIME interface file.

The concept of any browser is awesome, even relatively simple ones like chimera, mc or lynx open up a navigable world, that can access your CDROM as easily as the network. The Linux HOWTO's are available in HTML format, so that you can use a second PC to read them. Even if it is running DOS (long filenames permitting).

Netscape adds JAVA and TCL-TK scripting, and server key authentication, and cookie passing, and opens up the way to MINTernet, where you can pay online for a shopping cart or things you are ordering. Presumably the supplier also gets your properly spelled address.

20.2

Download

There is version 3 and version 4 (Communicator), the following URL is out of date, but indicated their site layout.

Version 4 is HUGE, but adds style-sheets, which is a big win. When arena is fixed, and more people have CSS1 I shall simplify Raven to use use. Until then I'm continuing to use the excess of FONT tags (works fine with lynx).

ftp://sunsite.doc.ic.ac.uk/packages/netscape/pub/navigator/gold/3.01/3.01b1/unix/netscape-v301b1-export.x86-unknown-linux-elf.tar.gz Is the file that I downloaded. By the time you are doing this, the version number will have changed, so start at

20.3

mkdir /usr/local/lib/netscape

Backup your copy onto the ZIP drive, and install it as follows.

# netscape is 100 preconfigured, just use a smb-link from a PATH bin

  cd /usr/local/lib
  mv netscape netscape-old	# (re)move old version
  mkdir netscape

  cd /usr/local/lib/netscape || exit $?
  tar -zxf /tmp/netscape*.tgz	# or very long name
  ln -s `pwd`/netscape /usr/local/bin/ # put name of binary on PATH
  ln -s `pwd`/XKeysymDB /usr/X11R6/lib # for Motif compat

# that's it - you are finished
# delete netscape-old after 4 weeks
# except I need the following to make it work OK

  chmod o+r * # if you have a umask of 026

20.4

lib fixes

Netscape-3 was compiled against an old libc, and abuses malloc somewhat, as well as other libs. That may mean that you have to use preload a specific (old) libc and libX against it, to stop it crashing.

Sorry I've forgotten the site that tells you how to fix it. Do make a point of finding it, so that you see it working (Jave excercises the bugs, and crashes a lot).

20.5

Configure

Netscape keeps a local cache and configuration in ~/.netscape/ in your HOME directory.

If Netscape crashes, you may have to delete the lockfile,

ls -la ~/.netscape/
rm ~/.netscape/.lock

There are many configurable settings under the options menu, ranging from the opening page, to where your firewall proxy is. Start your own checklist:

20.6

Tetris

To run this you need the TCL/TK Netscape Plugin. It's the TCL/TK equivalent of JAVA, but beware, it is a leaky bucket security wise.

For some strange reason, the (tk) toplevel command doesn't work. The reason is that Netscape provides a single top-level window, and noone has bothered to emulat it.

If you like Netscape, visit their site and download their SDK so that you can write your own plugin.

20.7

Tcl-Security

At present, the system administrator has all manner of routes out of the Netscape/tk head. You can install a local script in the correct dir, that calls exec, no problem.

Similarly, you could call a script that opens a pipe to a local service (or even TCP socket) that has more capabilities, and the associated security checks. Some people think that even starting a process to check security, is an opening to a Denial Of Service (DOS) attack.

Presumaby your calling TCL-wrapper will check a few parameters, and sleep for at least 1 on exit, more if it failed. Then when the exec'd process does it's validation, it should get manual confirmation from the operator, even if that means starting up a non-netscape TCL binary outside the netscape head. If you get that expensive, you should combine them into a desktop demon (with a name like "find_me"), and it listens to a FIFO or other IPC that your TCL script can open, and chat with (at present it isn't practical to put C code into the plugin, but would be practical to put an executable (with DLL) outside the head.

Another Denial Of Service, is to raise dialog error messages too often.

20.8

Diagrams

One possible use of the plugin (which appear to prefer to be "." or a single canvas .c), is to be a diagram. Possibly one that can be animated, or examined. Other uses include one-arm-bandit machines in the coffe shop.

If you can get popup's running (and maybe move them around) great.