
This is almost a plan for an install script but there are too many
options to hard code this.

Step 1. Find a file with the roll. Most likely the file
	/home/m1/rosters/pub/mac2314.66
will contain the roll for section 66 of mac2314. But check
as it might contain last semesters roll.

Personally I find the all caps names on the roll ugly so I change
them to standard capitalization before doing the next steps.

Step 2. Directories for the hidden spreadsheets and for the
web based visible student pages. For the hidden directory we
will assume something like
	/home/m1/you/class/cal3/gp
and for the public directory
	/home/m1/you/public_html/class/f02/cal3/gp

File permissions are important. Likely one would want the class
subdirectory ~/class realable by only you so that 
unix> ls -ld ~/class
drwx------  61 bellenot faculty     4096 Aug 27 03:14 /home/m1/bellenot/class/

The command to change permissons to the directory to match the above is
	chmod 700 ~/class.

On the otherhand, you want the public_html/class/f02/cal3/gp to have
the permissions
unix> ls -ld ~/public_html/class/s02/cal3/gb
drwx--x--x   2 bellenot faculty     4096 Jan 24  2002 /home/m1/bellenot/public_html/class/s02/cal3/gb/

The command to change permission to match the above is 
	chmod 711 ~/public_html/class/s02/cal3/gb

We will use HIDDEN for /home/m1/you/class/cal3/gp and PUBLIC for the public
/home/m1/you/public_html/class/f02/cal3/gp

Step 3. Create the codes. 
There are many ways of doing this, The command
	~bellenot/codewords > temp
will create a file name temp with 35 code words that are random. There is
a slight change of duplicates. Use the wc command to check
unix> wc temp
      35      35     175 temp
      ^^
      this 35 says temp has 35 lines

unix> sort temp | uniq |wc
      35      35     175
      ^^
      this says there are still 35 lines after the file is sorted and
duplicate lines are removed.

Step 4. Create the master file in $HIDDEN this is of the form
code student-name, call this file codes. The command
unix> paste -d" " temp roll > codes
will come close to doing what is needed. But you have to trim
the extra lines, or perhaps add codes.

Step 5. Create the spreadsheets you what. I have separate sheets for
attendance, homework, maple, tests and grades. I read the roll file
it to seed the spreadsheet, and add a row above the names. I save
the spreadsheet in both its native form and in the exported form of
csv. The comma separated values format. 

I've switch gnumeric because of its conversion powers. The commands
	ssconvert foo.csv foo.gnumeric
	ssconvert foo.gnumeric foo.csv
convert from one format to the other. The conversion is not always
perfect, but these are easy files to convert.

> Old files used nexs:
> If you use nexs, I have attend.xs3 (native) and attend.csv. Also
> quiz.xs3 and quiz.csv, proj.xs3 and proj.csv later on I create 
> grade.xs3 and grade.csv.

Step 6. Copy the Makefile and gb.sh.
Replace /home/m3/bellenot/cal3/gb with your TARGET (step 2 above).
You will have to modify the Makefile replacing Kowb with one of the
your codes. You may have to edit gb.sh. 

Step 7. Type make, look at a sample file. If it looks ok type make install.


Standard update. Use the spreadsheet to update the native file. Export
the csv format. Type make. Check file, type make install.
