/* * aegis - project change supervisor * Copyright (C) 1991-1996, 1998, 1999, 2002, 2005-2008 Peter Miller * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see * . * * this file resides at $HOME/.aegisrc * * it is only ever read by aegis, so there is no need for locking. * * If you change this file, don't forget to change * man5/aeuconf.5 */ #include /* * The name of a project. */ default_project_name = string; /* * the number of a change */ default_change_number = integer; /* * 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 $HOME. * The project attribute of the same name overrides this user attribute. */ default_development_directory = string; /* * The pathname of where to place new project directories. * This pathname may be relative, in which case it is relative to $HOME. * The default is $HOME. */ default_project_directory = string; /* * 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. */ delete_file_preference = (no_keep, interactive, keep); /* * The aed 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 * * "autmoatic_merge" means to do "only_merge" if any require * merging, otherwise do "no_merge". It never combines merges * and differences in the same pass. * * The corresponding command line options to the aed command take precedence. */ diff_preference = (automatic_merge, no_merge, only_merge); /* * This field is consulted whenever a pager is required, usually for * a listing or for a help page. Defaults to "foreground" if not set. */ pager_preference = (foreground, never); /* * This field is consulted by the aet command, to determine if it should * run all tests, or stop after the first failure. Defaults to "all" * if not set. */ persevere_preference = (all, stop); /* * This field is consulted by all commands which log their output to the * log file. Usually defaults to "snuggle" if not set, though some * commands default to "append". * * The "snuggle" means append if the file was last changed less than * 30 seconds ago, allowing runs of aegis commands to keep appending to * the log file. */ log_file_preference = (snuggle, append, replace, never); /* * This field is consulted by all commands which wait for locks. * * The "always" setting says that all commands should always wait * for locks. This is the default. * * The "background" setting says that background commands should * always wait for locks, and foreground commands will not. * * 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. */ lock_wait_preference = (always, background, never); /* * This field is consulted by aeb when the project config file specifies * create_symbolic_links_before_build. 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. * * The "verify" setting says to always verify the symbolic links * to the baseline. This is the default. * * The "assume" setting says to always assume the links are correct. * * This user preference can be over-ridden by the --verify_symbolic_links * (-vsl) and --assume_symbolic_links (-asl) command line options. */ symbolic_link_preference = (verify, assume); /* * This field is consulted by most commands which accept filenames on the * command line. It controls wether relative filenames are relative to * the current directory (this is the default), or relative to the base * of the project source tree. * * The "current" setting means relative to the current directory. * * The "base" setting means relative to base of the project source tree. * * This user preference can be over-ridden by the -base-relative and * -current-relative command line options. */ relative_filename_preference = (current, base); /* * This field is used to set the user's preferred e-mail address. * It defaults to `whoami`@`hostname` if not set. */ email_address = string; /* * All of the commands which remove files (e.g. aerm, aemv) 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. */ whiteout_preference = (always, never); /* * Command to run as editor. Overrides $EDITOR environment * variable (for Aegis only). */ editor_command = string; /* * Command to run when foreground editing required. * Overrides $EDITOR environment variable (for Aegis only). * If not set, 'editor_command' field used. */ visual_command = string; /* * Command to run as pager. * Overrides $PAGER environment variable (for Aegis only). */ pager_command = string; /* * The attribute field describes a list of user-specified attributes. * * Arguably, almost all user attributes could be subsumed into this * attribute list, but Aegis' original design was not that shape. */ attribute = attributes;