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.
-
The
aed(1)
command will consult this field to determine what to do:
- 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.
-
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.
- 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.
-
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.
- 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.
-
This field is consulted by all commands which wait for locks.
- 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.
-
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.
- 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.
-
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.
- 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.
-
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.
- value = string;
- The value of the attribute.
-
This is a list of (name,value) pairs, defining user specified attributes.
COPYRIGHT
aegis version 4.24.3.D001Copyright (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.