General Information:
ACM East Central North America Programming Contest
sponsored by IBM
The ECNA regional contest is distributed into 4 sites. The contest environment is based on PC^2+E: A PC^2 Add-on Environment by Howard Cheng.
For more information go to http://acm.ashland.edu.
Downloads
Create /contest
Download acm.sh.
Run the script: ‘bash acm.sh’ without quotes
(The script should download all packages and install them).
Components
bash and rbash: This is a restricted bash. The goal is to closely limit what the user can do. Based on bash-2.04
gnu c and c++ compiler: No changes to gcc.
java compiler: No changes to java.
jove editor: Restricted version. Based on jove 4.16.
pc2+e: Contains pc2 version 8.6 and supporting scripts.
pico editor: Restricted version. Based on pico 4.0.
vi editor: Restricted version. Based on nvi.
xenon editor: Restricted version. Based on xenon 1.0.0.
Installation
Quick start
------------------
* download acm.sh (curl http://www.ececs.uc.edu/~kourilm/acm/packages/pkgs/acm.sh -o acm.sh)
* run it (bash acm.sh)
* edit /contest/etc/pc2v8.ini
* create user acm00 for registry and server
* create user acm001 for contestant
* create user acm002 for judge
* run /contest/admin-scripts/config-test85server acm00
* run /contest/admin-scripts/config-user acm001
* run /contest/admin-scripts/config-judge acm002
* login as acm00 and run ./pc2server
* login as acm001 and run pc2team
* login as acm002 and run ./pc2judge
Details
---------------
I have prepared a script that installs the whole environment.
It downloads necessary files using wget or curl, recompiles them
and installs them.
Please get the script from here:
http://www.ececs.uc.edu/~kourilm/acm/packages/pkgs/acm.sh
The script was tested on the following platforms:
* Linux i386 - RedHat 7.3, 9, Fedora, Gentoo and Suse
* Sparc Solaris 9
(some Linux distributions had problems compiling editors)
The script is not perfect and reports a lot of warnings during compilation.
Please ignore those.
The script maintains a work directory preset to /contest/tmp.
You can run the script MULTIPLE times and it will recompile only the packages
that were not successfully recompiled during previous runs.
Once it successfully installs each package it creates a file
with extension .ok in the workdirectory.
So if you feel like reinstalling a specific package --
just remove this file and rerun the acm.sh script.
If you'd like to get the latest version of the package --
just remove the archive from the work directory and the .ok file and rerun the acm.sh script.
The script also sets up /contest/etc from /contest/etc-dist. Files in /contest/etc will never be overwritten so you can even reinstall pc2+e.tar.gz package without loosing your configuration.
The same hold for /contest/real and /contest/rshell if you need to link
to a different file.
Client environment configuration
----------------------------------------------------
Important scripts included:
/contest/admin-scripts/config-user - setup a user's home directory
/contest/admin-scripts/config-judge - setup a judge's home directory
/contest/admin-scripts/config-test85server - setup a test 8.x server's home directory
PC2 scripts
/contest/admin-scripts/pc2team - start PC2 team login
/contest/admin-scripts/pc2server - start PC2 server
/contest/admin-scripts/pc2board - start PC2 scoreboard
/contest/admin-scripts/pc2admin - start PC2 admin client
/contest/admin-scripts/pc2judge - start PC2 judge client
config-judge creates a copy of pc2judge in the user's home directory
config-test85server creates a copy of pc2(server|board) in the user's home directory
PC2 version
--------------------
PC2 version 8.6 is included. Please check http://www.ecs.csus.edu/pc2/ for the latest version.
Bugs:
* partial downloads are not taken care of
* not all files are checked for gnu compatibility (solaris)
* you might have to install other system packages like lynx, fvwm2, ... (script will report if they are not found)
Last Update:
March 20, 2006 9:59 AM