[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

First post as maintainer :) (about 2-3 screenfuls)



Hi...

First off.... <gush>Glad to be here; thanks for accepting my app</gush>

I'd like to maintain maybe 1 or 2 easy packages, pwgen comes to mind
(Hi Vincent :) 

Also, I have some stuff I wrote that's unpackaged I'd like to package
eventually, but I'm not so sure they'd be easy... Let me try to drum up
some interest in them with a short description of the most important one
(I need other help on them, they have internal documentation, but I'd like
to add some more user docs)

"Roster" is a set of perl scripts that take a a file previously downloaded 
from a school district Admissions and Records database, converts it to
a copyrighted/GPLed file format and then merged into another copyrighted/
GPLed file format. Once there, student accounts can be added to arbitrary 
numbers of arbitrary kinds of servers. Master departmental lists as well as
individual class lists are generated in two forms (printable, tab-delimited)
are mailed out to teachers. The scripts handle midterm adds and drops. 

Anyone can get the scripts at http://www.laney.edu/pub/jim/roster/ and there
are a few things in /pub/jim other than roster iirc.

When the foreign database is processed, a login name is assigned by a process 
which can be changed by someone with a reasonable knowledge of perl; when
a new student is merged in, a password is assigned by a similar process. 
The perl subroutines defining these processes are in their own file and can
be arbitrarily altered in order to implement any needed naming or password
conventions.

I am in the process of OOPizing the scripts, and have done the following
abstractions: Roster::Entry records are those to be merged into the main
database, whose type is Roster::People::User. A Roster::Server is a go-
between class that hides the kind of server (Roster::ServerType) to allow
generic treatment of the servers to which students are added. Present server
types supported are in Roster::ServerTypes: NT, UnixNewusers, Novell3xx, and
presently working on UnixBSDIAdduser and Novell4xx. Each server type is a
single perl module file, so new server types are easily added. Once a server
type is known, you add one line to an auxilliary database and run the 
mk-logins.perl script and go add the accts. I'm planning on adding other
abstractions (such as Teacher, StaffPerson, Admin, etc.) as they become 
needed and useful.

I admin the internet at Laney College, an Oakland, California community 
college which is a part of Peralta Colleges, a four-campus college district.
These scripts were written by me to support adding accounts to the servers
at the Laney CIS computer lab. (I volunteer there, so the scripts are mine.)
The roster scripts have been in use for approximately 6-8 semesters (incl.
summer session) and have been quite stable since the start. Problems that
came up were solved by a quick script. I'm looking to let more schools use
this project, both in and out of the Peralta district. Presently, two labs
within the district use them.

I would like some help, especially in the area of documentation and new server
types (I presently need help with Novell4's uimport command) and would like to
have a man page for each script as well as one for each file format in the 
database. Questions welcome, and I note that maybe 20-25 man pages need to be
created to give you an idea of the volume. The latest TODO list refer to this
need only fleetingly, the next version thereof will make each man page needed
explicit.

-Jim


Reply to: