NOTE: CAPer V6 does all setup for you except defining the USER DEFINEABLE FILE TYPES, so this information does only apply for CAPer V4 and below.
Shortcuts:
NEXTSTEP setup
1) Make sure your password is no more than eight
characters long.
2) Make a subdirectory of your UNIX home directory or
work area to be your Macintosh volume, say 'mac'.
Create two additional subdirectories named
.resource and .finderinfo at the same level, then
change your working directory to the mac subdirec-
tory and make the same subdirectories again. For
example:
% mkdir mac
% mkdir .finderinfo .resource
% cd mac
% mkdir .finderinfo .resource
The top level .finderinfo directory is used to
store information about the volume window size,
position and layout. You can do without the top
level .finderinfo and .resource directories but
the window will always open with default settings,
changes to which will not be saved.
3) Make a file named afpvols or .afpvols in your home
directory to designate your Macintosh directory,
with a line like:
~/mac:UNIX_mac_files:
where the part before the colon is the UNIX
pathname (here relative to my home directory) and
the part after is the volume name that the Macin-
tosh will use and display.
For a system wide setup edit the file
/usr/local/lib/cap/afpvols. CAPer will open it
for you in the Script menu.
Now startup or restart CAP on the NeXT.
Macintosh setup and use
1) Make sure you have installed AppleShare client
code (version 1.1 or later) and Chooser (version
3.0 or later) on your Macintosh startup disk.
Your Macintosh must be connected to an AppleTalk
net that is bridged to the Ethernet.
2) Follow these steps to mount your AUFS volume:
a) Select Chooser from the Apple menu. When the
Chooser menu window comes up, click on the
AppleShare icon in the upper left corner (if
you do not have this icon, you have not prop-
erly installed AppleShare). Activate
AppleTalk if it is not already activated.
b) Chooser will query the net for available file
servers and list their names. Double click
on the file server you wish to use. You may
need to select another AppleTalk zone to find
the server.
c) A connection request menu window will now
appear. Click the button for registered user
if it is not already clicked. Type your UNIX
login account name in the Name: field
(Chooser will supply the name from its name
field as the default). Click in the Pass-
word: field to activate text entry there and
type in either your UNIX password ("Clear
text" is specified in the login dialog box)
or your AUFS password (asterisks will show
instead of the characters you typed for secu-
rity). Press the RETURN key or click on OK.
guest connections may also be allowed at your
site.
d) The AUFS server logs you in and a final menu
window appears, listing the available
"volumes" (directories) that you may mount.
This list consists of the entries in your
afpvols or .afpvols file, plus any volumes
that the UNIX system manager has made avail-
able for general use. Click on the desired
volume name and then click OK to mount it
(you may shift-click to select several
volumes). The AUFS volume icon (a NeXT "cube")
should appear on your desktop.
e) You are returned to the Chooser main menu.
Click its close box to return to your appli-
cation.
3) You work with this AUFS volume as if it were an
attached Macintosh hard disk. Note that the fig-
ures for space used and available refer to the
entire UNIX disk partition, not just your Macin-
tosh volume directory.
4) To dismount an AUFS volume, simply drag its icon
to the trash can. AUFS volumes will also be
dismounted if you select Shutdown from the
Finder's Special menu.
For more information read the AUFS(1) man page,
see CAPers Info menu.
1) Open CAPer.app and startup CAP if it is not yet running.
2) Click on 'Mount remote' in the Activity->Network menu.
3) After a few seconds the names of the AFP servers in your
network appears in the CAPer console. Locate the one you
want to connect to and enter its full (!) AFP name into the
'Mount remote filesystem' dialog. (Spaces are important!)
4) Select your mountpoint, every afpmount must have a unique
one. I suggest the names '/apple1','/apple2','/apple3'...
The remote system will show up with all available volumes
in this mountpoint.
5) Enter your login name and password or leave the fields
blank for guest access.
6) Select your desired character mapping. For most people
the default 'NeXT' is ok.
7) Check all entries and click on 'Mount'. CAPer will now
issue the following command for you:
/usr/local/cap/afpmount -u USER:PASSWORD -c CHARMAPPING
"AFP SERVER NAME" LOCALMOUNTPOINT
(As you surely have recognized all versal names are placeholders.)
8) Select the filesystem in Workspace, you should see all
exported volumes from the given server. If the mountpoint
shows up empty your user/password is perhaps wrong.
EXPORTING PRINTERS (LaserWriter 8 access)
1) A printer is a local UNIX queue, so create one using
PrintManager.app first if you don't have one handy.
Remember its name for later use.
2) To export a single printer, open the file
/usr/local/lib/cap/lwsrv.conf and enter the name from
1. in the place of 'myUnixQueue'. Save it, restart
CAP, it should work now. You are done.
[3]) To export additional printers open the file
/usr/local/cap/start-cap-server and search the line:
${CAP}/lwsrv8 /usr/local/lib/cap/lwsrv.conf
Copy and change it so it becomes:
${CAP}/lwsrv8 /usr/local/lib/cap/lwsrv.conf
${CAP}/lwsrv8 /usr/local/lib/cap/lwsrv2.conf
Save the startup script now.
(The idea is to start a new lwsrv8 process per
exported printer. It is possible to server all
printers with one lwsrv8 but in my tests this
sometimes leads to the loss of PS jobs in the
queue, so to stay on the safe side just start
a new one for each queue)
[4]) Copy the file /usr/local/lib/cap/lwsrv.conf to the
name /usr/local/lib/cap/lwsrv2.conf. Open it and
change the name of the printer queue as explained
above. Change the entity name to something reasonable.
Save it, restart CAP, it should work now. You are done.
To change the printer type, just change the 'include'
statement in the lwsrv.conf file. See /usr/local/lib/cap/DBfile
for some built-in printer types.
1) Startup CAP if it is not running yet.
2) Select Activity->Network->Show printers
You should see a list of available network printers
in your network.
3) To test access just issue a
/usr/local/cap/lwpr -p "REMOTE PRINTER NAME:LaserWriter@ZONE" FILE
where REMOTE PRINTER NAME and ZONE are taken from the list
in the CAPer log.
FILE should be a normal PostScript file. It should be send to
the remote printer.
4) To setup a permanent queue, startup PrintMananger.app and
create a new printer. Use the correct type (or add its PPD
to /NeXTLibrary/PrinterTypes/English.lproj (or your language)).
We assume the name 'Appletalk_printer' in the following
example.
5) Write a little script in /usr/local/cap, call it as you like,
in our example we choose the name 'printer1'.
#!/bin/sh
PSTEXT=/usr/bin/enscript
export PSTEXT
# pass the printer name and the arguments lpd passed us
/usr/local/cap/papif -P PRINTER_NAME $*
Save it and make it executable.
6) Create (or edit) the file /etc/cap.printers to include the line
PRINTER_NAME=REMOTE PRINTER NAME:LaserWriter@ZONE
(As you surely have recognized all versal names are placeholders.)
You can now test the communication by typing
/usr/local/cap/printer1 < FILE
where FILE is a PostScript file.
7) We now must setup the printer queue. As NeXT does not use the
/etc/printcap we have to manipulate the netinfo database.
[NOTE: you can backup your local netinfo DB by doing a
cd /etc
gnutar czvf netinfo_backup.tar.gz netinfo
you can later (if everything else fails) restore the DB by
cd /etc
gnutar xzvf netinfo_backup.tar.gz netinfo
reboot
as a last resort. Please note that this is only needed for
emergency cases.]
In a shell, do a
niutil -read . /printers/Appletalk_printer
you should see a list of attributes. Look for the if: one, it
should read
if: /usr/local/lib/NextPrinter/Server/prserver
Now issue a (careful, watch the spaces!)
niutil -createprop . /printers/Appletalk_printer if /usr/local/cap/printer1
and check it with a
niutil -read . /printers/Appletalk_printer
the 'if' property should now read
if: /usr/local/cap/printer1
8) Print a test page using PrintManager.app.
See the papif.8 man page for more information.
Using CAP it is possible to define a 'map' what UNIX
file extension maps to what Apple TYPE/CREATOR and if a
automatic translation should be done on the file to
change the line ends. AUFS is compiled with the USRFILETYPES
in so all you have to do is put a file in your home directory
called '.afpfile' with a similar content to this example:
# This is a sample CAP AUFS afpfile
#
# It controls the type of translation performed on the file content and the
# mapping between UNIX filename extension and the Macintosh Creator and Type.
#
# The available forms of translation are
# Ascii, map LF to CR and vice versa
# Text, map Mac quotes to UNIX quotes (not vice-versa, implies Ascii)
# Iso, map to/from ISO 8859 characters (requires ISO_TRANSLATE)
# Raw, no translation
#
# EXTN XLate CREAT TYPE Comment
#
.c Ascii 'MPS ' 'TEXT' "This is a UNIX C source file."
.h Ascii 'MPS ' 'TEXT' "This is a UNIX C source header file."
.p Ascii 'KAHL' 'TEXT' "This is a UNIX pascal source file."
.o Raw 'unix' 'OBJ ' "This is a UNIX object file."
.a Raw 'unix' 'AR ' "This is a UNIX archive file."
.Z Raw 'LZIV' 'ZIVU' "This is a UNIX compressed file."
.ps Raw 'ASPS' 'TEXT' "This is a UNIX PostScript file."
.sit Raw 'SIT!' 'SIT!' "This is a UNIX StuffIt file."
.gif Raw 'JRVL' 'GIFf' "This is a UNIX GIF file."
.tar Raw 'TAR ' 'TARF' "This is a UNIX Tar file."
.tex Raw '*TEX' 'TEXT' "This is a UNIX TeX source file."
.fram Raw 'Fram' 'FASL' "This is a UNIX FrameMaker file."
.xlt Ascii 'XCEL' 'TEXT' "This is a UNIX Excel Text file."
.hqx Ascii 'BnHq' 'TEXT' "This is a UNIX BinHex file."
.wrd Ascii 'MSWD' 'TEXT' "This is a UNIX Text file."
.wrt Ascii 'MACA' 'TEXT' "This is a UNIX Text file."
.txt Ascii 'ttxt' 'TEXT' "This is a UNIX Text file."
.* Raw 'ttxt' 'TEXT' "This is a UNIX created file."