NAME
aeuconf - user configuration file
SYNOPSIS
$AEGIS_FLAGS
$HOME/.aegisrc
/aegisrc
/aegisrc
DESCRIPTION
A user configuration file is used to hold user defaults. This file is
created and edited by the user. This file is only ever read by aegis,
it is never written.
The sources of user preferences are scanned in the order given above.
Earlier sources have higher priority.
AEGIS_FLAGS
This environment variable has the same format. It is read first, and
over-rides the .aegisrc file contents. This is intended to be used
within the tests distributed with aegis, but can also be of use within
some shell scripts. It contains session specific preferences.
$HOME/.aegisrc
This file contains user specific preferences.
/aegisrc
This file contains architecture-neutral preferences.
/aegisrc
This file contains architecture-specific preferences.
CONTENTS
The file contains the following fields:
default_development_directory = string;
The pathname of where to place new development directories.
The pathname may be relative, in which case it is relative to
$HOME. The default is the field of the same name in the
project attributes, or $HOME neither is set.
default_project_directory = string;
The pathname of where to place new project directories. The
pathname may be relative. If this path is relative, it is
relative to $HOME. The default is $HOME.
delete_file_preference = (no_keep, interactive, keep);
All of the commands which delete files will consult this field
to determine if the file should be deleted. Defaults to
no_keep if not set.
default_project_name = string;
The name of a project.
default_change_number = integer;
The number of a change.
Please note that the default_project_name field and the
default_change_number field are unrelated. Specifying both does not
mean that single change within that single project, they have nothing
to do with each other.
diff_preference = (automatic_merge, no_merge, only_merge);
The aed(1) command will consult this field to determine what to
do:
no_merge
means only diff the files, even if some have out of
date versions.
only_merge
means merge those files with out of date versions, and
do not do anything else, even if they need to be
diffed.
automatic_merge
means to do only_merge if any source files require
merging, otherwise do no_merge. It never combines
merges and differences in the same pass.
The corresponding command line options to the aed(1) command
take precedence, this field is only consulted if you do not
give a corresponding command line argument. Defaults to
automatic_merge if not set.
pager_preference = (foreground, never);
This field is consulted for listings and help. The standard
output is only piped to a pager if the command is run in the
foreground and the standard output is directed at a terminal.
foreground
The standard output will be piped through the command
given in the PAGER environment variable (or more if not
set).
never The standard output will not be redirected.
This field defaults to foreground if not set.
persevere_preference = (all, stop);
This field is consulted by the aet(1) command, to determine if
it should run all tests, or stop after the first failure. This
field defaults to all if not set.
log_file_preference = (snuggle, append, replace, never);
This field controls the behavior of the log file. It usually
defaults to snuggle if not set, although some commands may
default it to append. When the log file is in use, the output
continues to be sent to the screen if the process is in the
foreground and the standard output is a terminal.
never Do not redirect the output to a log file.
replace Replace any log file that is present, create a new one
if none already exists.
append Append the log to the end of any existing log file,
create a new one if none already exists.
snuggle Append the log to the end of any existing log file if
that log file was last modified less than 30 seconds
ago, otherwise replace any existing log file; create a
new one if none already exists. This option allows
runs of aegis commands to produce a meaningful log
file.
lock_wait_preference = (always, background, never);
This field is consulted by all commands which wait for locks.
always The “always” setting says that all commands should
always wait for locks. This is the default.
background
The “background” setting says that background commands
should always wait for locks, and foreground commands
will not.
never The “never” setting says that no command should ever
wait for locks. If the command would wait, it will
exit with status 1.
This user preference can be over-ridden by the -wait and
-nowait command line options.
symbolic_link_preference = (verify, assume);
This field is consulted by aeb(1) when the project
configuration file specifies create_symbolic_links_before_build
as true. The verification of the links can be quite time
consuming; if you are confident that they are already correct
(say, from a recent build run) you may wish to assume they are
correct and not verify them repeatedly.
verify This setting says to always verify the symbolic links
to the baseline. This is the default.
assume This setting says to always assume the links are
correct, unless there has been a recent integration.
This user preference can be over-ridden by the
-Verify_Symbolic_Links and -Assume_Symbolic_Links command line
options.
relative_filename_preference = (current, base);
This field is consulted by most commands which accept filenames
on the command line. It controls whether relative filenames
are relative to the current directory (this is the default), or
relative to the base of the project source tree.
current This setting says to interpret relative filenames
against the current directory.
base This setting says to interpret relative filenames
against the base of the source tree.
This user preference can be over-ridden by the -BAse_RElative
and -CUrrent_RElative command line options.
email_address = string;
This field may be used to set the preferred email address. If
not set, defaults to ‘whoami‘@‘cat /etc/mailname‘ if not set,
and if /etc/mailname exists. Otherwise, defaults to
‘whoami‘@‘hostname‘ if not set, which is usually not what is
required, particularly if you are behind a firewall.
whiteout_preference = (always, never);
All of the commands which cause a change to remove files will
consult this field to determine if the file should be have a
dummy “whiteout” file put in the development directory.
Defaults to “always” if not set.
editor_command = string;
This command is used to edit a file, if the editing is being
done in the background. Defaults to the EDITOR environment
variable if not set, or “ed” if not set.
visual_command = string;
This command is used to edit a file, if the editing is being
done in the foreground. Defaults to the VISUAL environment
variable if not set, or to the EDITOR environment variable if
not set, or “vi” if not set.
pager_command = string;
This is the command used to paginate report and listing output.
Defaults to the PAGER environment variable if not set, or to
“more” if not set.
attribute = [ { ... } ];
This is a list of (name,value) pairs, defining user specified
attributes.
name = string;
The name of the attribute. By convention, names which
start with an upper-case letter will appear in
listings, and lower-case will not. Attribute names are
case-insensitive.
Arguably, most user attributes which may be altered by
the user (and some that can’t) should be of this form.
Due to an accident of history, this is not the case.
The attributes known to Aegis are:
progress-preference
boolean; true if aet(1) should emit progress
messages, false if not. Can be overridden with
the -progress and -no-progress command line
options.
FIXME: there needs to be a aesub(5) way to get at these
values.
value = string;
The value of the attribute.
SEE ALSO
aegis(5)
aegis file format syntax
aed(1) difference and merge files
COPYRIGHT
aegis 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 aegis program comes with ABSOLUTELY NO WARRANTY; for details use
the ’aegis -VERSion License’ command. This is free software and you
are welcome to redistribute it under certain conditions; for details
use the ’aegis -VERSion License’ command.
AUTHOR
Peter Miller E-Mail: millerp@canb.auug.org.au
/\/\* WWW: http://www.canb.auug.org.au/~millerp/