LON-CAPA Files and Directories


Scott Harrison, September 2000
Scott Harrison, October 2000
Scott Harrison, November 2000
Gerd Kortemeyer, Spring-Summer 2000

  1. Contents and Structure of loncapafiles.html
  2. Software Package Information


1. Contents and Structure of this loncapafiles.html

This file contains specialized markup tags which encode information readable by the LON-CAPA make/build process. This is meant to be "the master file" which encodes all necessary configuration information to the associated make process. The format of these tags is:
<LONCAPA TYPE=type [otherparameters]>

Here are examples of all the different types of LONCAPA make/build tags.
<LONCAPA TYPE=LOCATION DIST="redhat6.2" SOURCE="loncom/modules/TexConvert/tthperl/lontex.pm" TARGET="home/httpd/lib/perl/Apache/lontex.pm" CATEGORY="handler">
<LONCAPA TYPE=DIRECTORY DIST="redhat6.2" TARGET="home/httpd/lib/perl/Apache" CATEGORY="writeable by server">
<LONCAPA TYPE=OWNERSHIP DIST="redhat6.2" CATEGORY="setuid" CHMOD="6755" CHOWN="root:root">
<LONCAPA TYPE=RPM NAME="Vendor" VALUE="Laboratory for Instructional Technology Education, Division of Science and Mathematics Education, Michigan State University.">

The NAME tags associated with TYPE=RPM are:

Data can also be attached to any LON-CAPA tag. This is especially important for files. This is shown by these three examples:
<METAGROUP>
<LONCAPA TYPE=LOCATION DIST="redhat6.2" SOURCE="loncom/modules/TexConvert/tthperl/lontex.pm" TARGET="home/httpd/lib/perl/Apache/lontex.pm" CATEGORY="handler">
<DESCRIPTION>
Handler for TeX files
</DESCRIPTION>
</METAGROUP>
 
<METAGROUP>
<LONCAPA TYPE=LOCATION DIST="redhat6.2" SOURCE="loncom/modules/TexConvert/tthperl/tth.so" TARGET="usr/lib/perl5/site_perl/5.005/tth.so" CATEGORY="system file">
<DESCRIPTION>
shared library file for dynamic loading and unloading of TeX-to-HTML functionality
</DESCRIPTION>
<BUILD>
loncom/modules/TexConvert/tthperl/commands
</BUILD>
<DEPENDENCIES>
../tthdynamic/tthfunc.c
../ttmdynamic/ttmfunc.c
</DEPENDENCIES>
</METAGROUP>
 
<METAGROUP>
<LONCAPA TYPE=LOCATION DIST="redhat6.2" SOURCE="loncom/access.conf" TARGET="etc/httpd/conf/access.conf" CATEGORY="conf">
<DESCRIPTION>
define handlers, set parameters
</DESCRIPTION>
<NOTE>
<TABLE CELLPADDING=0 CELLSPACING=0 BORDER=1>
<TR><TD><TT>lonHostID</TT></TD><TD>LON-internal HostID of this machine</TD></TR>
<TR><TD><TT>lonRole</TT></TD><TD>Role of this machine: library, access</TD></TR>
<TR><TD><TT>lonAdmEMail</TT></TD><TD>Server Administration</TD></TR>
<TR><TD><TT>lonDefDomain</TT></TD><TD>Default domain</TD></TR>
<TR><TD><TT>lonLoadLim</TT></TD><TD>Load Limit ( 100% loadavg )</TD></TR>
<TR><TD><TT>lonExpire</TT></TD><TD>Expiration for local copies in seconds</TD></TR>
</TABLE>
</NOTE>
</METAGROUP>

The METAGROUP tags for files are anticipatively limited to: NOTE, BUILD, DEPENDENCIES and DESCRIPTION.

To allow for viewing the tag information in a tabular HTML format, the make process generates doc/loncapafiles/latestinstallconfiguration.html which has the latest HTML presentation of the current LONCAPA tag configuration settings. Alternatively, you can just view the internal tags of this HTML file.


2. Software Package Information

This section contains the actual LONCAPA tag information. These tags are probably not viewable with your browser and can only be seen be examining the HTML source.

This file has two major functions. For the Apache web server, it defines a global access configuration which defines what server options (Indexes", "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews") are associated with specific directories ("/", "/home/httpd/html", "/home/httpd/cgi-bin", and "/usr/doc"). For the LON-CAPA network server and perl module handlers, it defines machine specific settings (lonHostID, lonRole, lonAdmEMail, lonDefDomain, lonLoadLim, lonExpire, and lonReceipt) and internal machine settings for specific directories, socket ports, and browser detection logic. configure
lonHostIDLON-internal HostID of this machine
lonRoleRole of this machine: library, access
lonAdmEMailServer Administration
lonDefDomainDefault domain
lonLoadLimLoad Limit ( 100% loadavg )
lonExpireExpiration for local copies in seconds
This is the main server configuration file. The settings here are more or less standard for the Apache web server. Most notably (and importantly!), perl handling and mod_perl are enabled in this configuration file.

This file configures the "name space" of the Apache web server. srm.conf defines when specific perl modules should be called to handle a given request. This definition is a function of both the name of the perl module, and a specific regular expression associated with the URL, such as "^/res/.*\.page".

Here is an example entry:

<LocationMatch "^/res/.*\.page$>
SetHandler perl-script
PerlHandler Apache::lonpage
</LocationMatch>

This file provides initializations for perl handlers. It adjusts what the module path space is (so as to include /home/httpd/lib/perl/Apache) as well as causing the Apache module to be used for every perl handler. startup.pl is invoked by access.conf. Default spreadsheet for individual assessment. Default spreadsheet for assessment of students. Default spreadsheet for assessment of a class. List of privileges associated with users of multiple types (for example: Teaching Assistant, Exam Proctor, Course Coordinator) Descriptive list of abbreviations used in roles.tab for user types and privileges available in the network with function List of all machines in the LON-CAPA network. Relates lonHostID to lonDefDomain and IP address Spare hosts to offload session to if the LON-CAPA machine is overloaded configure
list elements are separated by newlines
each list element consists of only one value; the value for lonHostID in access.conf
Basic auth password to access /lon-status and /server-status which Kerberos server to contact for which Kerberos domains
list elements are separated by newlines
each list element consists of only two subelements separated by a colon
  • Kerberos domain value
  • Kerberos server IP address
configuration file to make LON-CAPA server file space accessible to network neighborhood configure which NTP server to contact for information (XNTP3 standard)
only one line needs to be changed to specify a server ip address
Example:
server ntp.msu.edu
proxy server This is a remote command interpreter on a TCP LON-CAPA network layer. It accepts and processes incoming requests from other LON-CAPA machines on the network. lond's functionality is self-contained in the sense that it does not reference (import, require, use) any other file described in this document. There are only 15 subroutines in this script, however the make_new_child subroutine is quite complex since it parses and responds about 29 different types of network requests (i.e. enc, ping, pong, ekey, load, auth, passwd, makeuser, home, update, unsub, sub, log, put, rolesput, get, eget, del, keys, dump, store, restore, querysend, queryreply, idput, idget, tmpput, tmpget, and ls). housekeeping maintain secondary database of metadata coordinates the system services and files in order to allow lond to change user passwords coordinates the system services and files in order to allow lond to add a new user coordinates the system services and files in order to allow lond to delete a user coordinates the system services and files in order to allow lond to enable NFS for a user coordinates the system services and files in order to allow lond to disable NFS for a user HTML frame that presents a form element to allow for the publishing of resources, directories and underlying subdirectories. The relevant conditions and metadata to attach to LectureOnline-specific tags. File which contains words which should not be keywords used to specify resource content. Table which contains list of copyright possibilities for educational resources. Table which contains string abbreviations of language::font rendering combinations. Table which has hash data necessary for distinguishing IDs from indices. Metadata display handler. works/unverified Handler to resolve ambiguous file locations. works/unverified Handler to set resource parameters inside of the RAT based on metadata. works/unverified Handler for showing sequence objects of educational resources. works/unverified Creates a new course and assigns course coordinator. works/unverified Creates a new user and/or changes user privileges works/unverified Produces simple LectureOnline-like student assessment performance chart works/unverified Makes a table out of the previous attempts. Inputs result_from_symbread, user, domain, home_server, course_id works/unverified Handles the viewing of grades. Coordinates the response to clicking an image. Handles tags associated with showing a list of options. Handles tags associated with output. Seems to relate to due dates of the assignment. Used for debugging and testing the LON-CAPA system. Handles multiple-choice style responses. Handles processing of assignments. Handles communication. Handles errors. Handles evaluation. Handles feedback from students to instructors and system administrators. Unknown function. Handles navigational maps. Handles user preferences associated with customizing the online LON-CAPA educational environment. Handles the production of printable files and resources. Handles a searchable catalogue. Handler to drop and add students in courses. Routines for messaging. This handler coordinates the delivery of hints to students working on LON-CAPA problems and assignments. Spreadsheet/Grades Display Handler Handler to resolve ambiguous file locations Page wrapper for handling construction space. Publishes an LON-CAPA educational resource complete with metadata (authorship, language, copyright, creation date, etc). Has routines which control the remote control. Deals with forward, backward, and other page flips. Builds up frame set and loads in the right thing. Homework remote control. This will take annotations and then plug them into a page This will take bookmarks and get/write/display them for the LON-CAPA user interface Handler tat takes output from RAT and stores it on disk. Handles the upper hidden frame of the added window that comes up in RAT. (3 frames come up in RAT server, code, and output. This module handles server connection.) bundles pages into one page compile course into binary data structure (in loncom/rat) Handler for tex files (somewhere in loncom/modules) Access to tth/ttm XML Parsing Module Style Parsing Module Tags Default Definition Module used to prevent poorly written problems from causing lingering after effects implements <script>, <scriptlib>, <parserlib>, and <import> handles requests for output, evaluation, and alteration of homework resource produces HTML input tags (<INPUT>) for rendering homework resources produces HTML tags necessary for structuring the presentation of homework resources defines different types of responses given to student as well as syntax for producing response values handles request to the CAPA homework processing engine (This module, like loncacc.pm also authenticates with cookies.) lonacc.pm coordinates access to a wide range of administrative-type functions (e.g. roles, logout, annotations, and bookmarks) as well as coordinating access to educational resources. access handler for file transfers This module provides access to an educational resource construction area. This module is invoked by the URL-related pattern syntax LocationMatch "^/priv.*" or LocationMatch "^/\~.*". Authentication of user identity is coordinated through cookies. The abbreviation "cacc" corresponds to "construction-space access"). If the cookie handle is invalid, then this module returns a forbidden status and makes appropriate log entries. If the cookie handle is valid, status is determined to be okay (and, for the "priv"-type access, the resource is delivered by the lonconstruct module). authenticate, set up session environment login screen logout replication This perl handling module reads in the available roles available for a LON-CAPA user (different courses, different privileges, etc) and produces a form-element HTML page which allows the user to select which role he wishes to exercise in the LON-CAPA system. For instance, a user may want to select between being a student in a thermodynamics physics course or a teaching assistant for an introductory calculus class. cross server filesystem browser This file is an interface to the lonc processes of the LON-CAPA network as well as set of elaborated functions for handling information necessary for navigating through a given cluster of LON-CAPA machines within a domain. There are over 40 specialized functions in this module which handle the reading and transmission of metadata, user information (ids, names, environments, roles, logs), file information (storage, reading, directories, extensions, replication, embedded styles and descriptors), educational resources (course descriptions, section names and numbers), url hashing (to assign roles on a url basis), and translating abbreviated symbols to and from more descriptive phrases or explanations. bumps to login symbolic link to /etc/mime.types symbolic link to /home/httpd/html/res static html page that is shown when an attempt is made to access a document not present on the web server static html page that is shown when an attempt is made to access a document which is restricted based on file or server configurations frameset Parameter input window. javascript bumper A blank page with very minimal HTML structural elements. graphic files 1.1.dt.gif 1.1.empty.gif 1.1.ld.gif 1.1.lr.gif 1.1.rd.gif 1.1.rl.gif 1.1.td.gif 1.1.tdrl.gif 1.1.tl.gif 1.1.tr.gif 1.1.utd.gif 1.2.ctd.gif 1.2.dt.gif 1.2.empty.gif 1.2.ld.gif 1.2.lr.gif 1.2.lrd.gif 1.2.lrtd.gif 1.2.rd.gif 1.2.rl.gif 1.2.rld.gif 1.2.rltd.gif 1.2.rtd.gif 1.2.rtdl.gif 1.2.rtl.gif 1.2.td.gif 1.2.tdl.gif 1.2.tdrl.gif 1.2.tl.gif 1.2.tr.gif 1.2.utd.gif 2.1.dt.gif 2.1.empty.gif 2.1.ld.gif 2.1.lr.gif 2.1.rd.gif 2.1.rl.gif 2.1.td.gif 2.1.tdrl.gif 2.1.tl.gif 2.1.tr.gif 2.2.dt.gif 2.2.empty.gif 2.2.ld.gif 2.2.lr.gif 2.2.lrd.gif 2.2.lrt.gif 2.2.rd.gif 2.2.rl.gif 2.2.rld.gif 2.2.rlt.gif 2.2.td.gif 2.2.tdl.gif 2.2.tdr.gif 2.2.tdrl.gif 2.2.tl.gif 2.2.tr.gif 2.2.url.gif 2.2.utd.gif arrow.gif bdt.gif bempty.gif bld.gif blr.gif blrd.gif blrt.gif brd.gif brl.gif brld.gif brlt.gif btd.gif btdl.gif btdr.gif btdrl.gif btl.gif btr.gif burl.gif butd.gif condition.gif edit.gif finish.gif info.gif inscol.gif inscond.gif insres.gif insrow.gif resource.gif sctd.gif sdt.gif sempty.gif sld.gif slr.gif slrd.gif slrtd.gif srd.gif srl.gif srld.gif srltd.gif srtd.gif srtdl.gif srtl.gif start.gif std.gif stdl.gif sutd.gif icons to indicate an unexpected result lonconstruct.gif lonlogo_broken.gif logos liteani.gif lonlogo.gif lonlogos.gif perl module for invoking functions specific to Tex-to-HTML conversion Has the same dependencies and build process as tth.so. Currently, only the tth.so file specifications invoke the build process however. shared library file for dynamic loading and unloading loncom/modules/TexConvert/tthperl/commands ../tthdynamic/tthfunc.c ../ttmdynamic/ttmfunc.c perl module for invoking functions specific to CAPA Has the same dependencies and build process as capa.so. Currently, only the capa.so file specifications invoke the build process however. bootstrap file associated with dynamic loading of this module on multiple architectures Has the same dependencies and build process as capa.so. Currently, only the capa.so file specifications invoke the build process however. shared library file for dynamic loading and unloading loncom/homework/caparesponse/commands caparesponse.c caparesponse.pm [ALWAYS_RUN_BUILD_COMMAND] entity files isoamsa.ent isoamsb.ent isoamsc.ent isoamsn.ent isoamso.ent isoamsr.ent isobox.ent isocyr1.ent isocyr2.ent isodia.ent isogrk1.ent isogrk2.ent isogrk3.ent isogrk4.ent isolat1.ent isolat2.ent isomfrk.ent isomopf.ent isomscr.ent isonum.ent isopub.ent isotech.ent mmlalias.ent mmlextra.ent cascading style sheet document type definition Encryption Routines according to Data Encryption Standard DES, written in javascript used by lonxml::xmlparse() as input variable $safeinit to Apache::run::run() Define unit prefixing and conversion for CAPA problem handling. icons used for the entire LON-CAPA user interface a.gif b.gif c.gif chat.gif d.gif e.gif endmenu.gif f.gif feedback.gif fnkmenu.gif g.gif group.gif h.gif help.gif hyphen.gif i.gif info.gif j.gif k.gif l.gif ledblink.gif ledoff.gif ledon.gif ledsend.gif m.gif n.gif navmenu.gif next.gif o.gif p.gif prev.gif q.gif r.gif reload.gif remotebg.gif s.gif space.gif spacer.gif t.gif title.gif u.gif v.gif w.gif x.gif y.gif z.gif image maps for the LON-CAPA remote control welcoming page to the LON-CAPA system upon login renders the HTML (including image maps) for the LON-CAPA remote control icons used for the bookmark portion of the LON-CAPA user interface a.gif alert.black.gif alert.red.gif back.gif ball.gray.gif ball.red.gif binary.gif binhex.gif blank.gif bomb.gif box1.gif box2.gif broken.gif burst.gif c.gif comp.blue.gif comp.gray.gif compressed.gif continued.gif course.gif dir.gif down.gif dvi.gif f.gif folder.gif folder.open.gif folder.sec.gif folder_closed.gif folder_closed_pressed.gif folder_new.gif folder_opened.gif folder_opened_pressed.gif folder_pointer_closed.gif folder_pointer_opened.gif folder_spacer.gif folder_trash.gif forward.gif generic.gif generic.red.gif generic.sec.gif hand.right.gif hand.up.gif html.gif image1.gif image2.gif image3.gif index.gif layout.gif left.gif link.gif mov.gif movie1.gif p.gif patch.gif pdf.gif portal.gif problem.gif ps.gif quill.gif right.gif screw1.gif screw2.gif script.gif sound1.gif sound2.gif sphere1.gif sphere2.gif tar.gif tex.gif text.gif transfer.gif unknown.gif up.gif uu.gif uuencoded.gif white_space_20_22.gif white_space_22_22.gif world1.gif world2.gif icons used for directory indexing and login screen button_close.gif button_edit.gif button_preview.gif folder_closed.gif folder_closed_pressed.gif folder_new.gif folder_opened.gif folder_opened_pressed.gif folder_pointer_closed.gif folder_pointer_opened.gif folder_spacer.gif folder_trash.gif left_bar.gif link.gif link_pressed.gif ll_corner.gif lower_bar.gif lr_corner.gif right_bar.gif toolbar_bg.gif ul_corner.gif upper_bar.gif ur_corner.gif associated with the frameset scheme of displaying bookmarks aaloader.html bookmarkmenu_bb.html bookmarkmenu_left.html bookmarkmenu_ll.html bookmarkmenu_lr.html bookmarkmenu_right.html bookmarkmenu_toolbar.html bookmarkmenu_ul.html bookmarkmenu_ur.html bookmarkmenu_uu.html bookmarkpal.html bookmarkpal_old.html bookmarkpal_v2.html bookmarkpal_v2_backup.html index.html loading_bookmarks.html javascript for handling client-side interactions with bookmark interface checks the system RPMs against what install.lon-capa.org specifies checks the important base LON-CAPA files against what install.lon-capa.org specifies restores .rpmsave files after a LON-CAPA-base upgrade does all the things to coordinate updating of LON-CAPA base files. Should be used with caution so that you do not lose work makes verification report using loncapaverifypackages and loncapaverifybasepackage file that specifies periodic processes to run for the LON-CAPA machine file that stimulates running of ntpdate upon init.d/xntpd initiation
just one line with the ip address of the server
system init and control handling for the LON-CAPA network configuration file to make LON-CAPA server file space accessible to Appleshares access (Macintosh)