aeget(1) Aegis CGI file access




The aeget command is used with Apache (or CGI conforming any other web server) to access the files of an Aegis project. The files are searched for along the appropriate search path, including all ancestor baslines, not just the baseline of the branch.

This is useful when developing web sites using Aegis.


In order to use aeget(1), you need to copy it into your cgi-bin directory.

You may prefer to use a symbolic link, as this will be more stable across Aegis upgrades. However, this requires a corresponding follow-symlinks setting in your web server's configuration file.


Once aeget(1) is installed, files may be accessed via
If no project name is given, a list of projects will be generated. This will lead you through a series of menus, giving access to manu useful pages of information about your projects.

Cascading Style Sheets

The web interface uses Cascading Style Sheets. You can give the web interface a personalised look and feel, by creating stylesheets in the web server's Document Root directory. The interface will use it's default styles, then styles from a global style sheet called aedefault.css, and then styles from a project stylesheet called projectname.css (replace projectname with the name of the project).

There is an example style sheet in /aedefault.css which demonstrates the style elements used. This particular stylesheet is not designed to be aesthetically pleasing, but to exercise all of the elements. Using this stylesheet unmodified will give psychedelic results. Use it as a template.


You can set your own project specific page headers and footers by using the "html:meta", "html:body-begin" and "html:body-end" project specific attributes.
project_specific =
    name = "html:body-begin";
value = "<i>This text goes immediately after the &lt;BODY&gt; and before any text generated by <i>aeget</i>(1).</i>";
    name = "html:body-end";
value = "<i>This text goes immediately before the &lt;/BODY&gt; and after all text generated by <i>aeget</i>(1).</i>";
These fields may be used to customize your web pages for your project-specific or company-specific needs. Each project is configured independently.


If you wish to prevent a change set appearing in the change set inventory used by aedist -replay to determine what needs to be downloaded, set the following change set attribute:
attribute =
    name = "aeget:inventory:hide";
    value = "true";
You must use the aeca(1) command for this, the tkaeca(1) command can not edit change set attributes.


You can run the aeget(1) program from the command line if you set the appropriate environment variables. This is how you debug or test aeget(1) command.
This is how the script is being invoked. For aeget(1) command, this is always "GET".
This is the path of the script name, from the HTTP client's point of view. Typically this is "/cgi-bin/aeget".
This is the portion of the URL between the script name and the question mark. For aeget(1) this is usually the project name or the project name and the change number. No project name will get you the project list page.
This the portion of the URL after the question mark.

The above will not means much if you are not familiar with CGI scripts. For the URL http://localhost/cgi-bin/aeget/aegis.4.1.C10?menu would have Apache set the following environment variables

SCRIPT_NAME=/cgi-bin/aeget \
PATH_INFO=/aegis.4.1.C10 \
Output is written to stdout. Tests scripts can easily capture this and compare it with expected results. Make sure you avoid false negatives because of the date tacked onto the end of most pages.


If you see "serious server error" pages when accessing aeget(1) via a web server, the stderr text is usually available in the server's error log.


aeget version 4.24.3.D001
Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Peter Miller

The aeget program comes with ABSOLUTELY NO WARRANTY; for details use the 'aeget -VERSion License' command. This is free software and you are welcome to redistribute it under certain conditions; for details use the 'aeget -VERSion License' command.


Peter MillerE-Mail:[email protected]