AFICKONFIG(1)

NAME
afickonfig - a tool to manage Afick's config files

DESCRIPTION
"afickonfig" is to change parameters in afick's config file, in a batch way. It can add, replace, remove any components (macro, alias, directives, rules) It was designed to work with same options names as afick (directives).

Note : in the current version, it can checks some arguments syntax before applying,

The idea came from the "postconf" utility from postfix.

SYNOPSIS
afickonfig.pl [options] [action] [macros] [alias] [directives] [rules]

afick use posix syntax, which allow many possibilities :

•   long (--) options

•   short (-) options

•   negative (--no) options

REQUIRED ARGUMENTS

OPTIONS
options are used to control afickconfig

--config_file|-c configfile
    read the configuration in config file named "configfile".

--check_config|-C
    only check config file syntax and exit with the number of errors

--clean_config|-G
    check config file syntax, clean bad line, and exit with the number of errors

--help|-?
    Output summary help information and exit.

--man
    Output full help information and exit.

--print_config
    display internals variables after arguments and config file parsing (for debugging purposes)

--version|-V
    Output version information and exit.

--verbose|-v
    add debugging messages

ACTIONS
actions are used to change afick's configuration

--allow_overload,(--noallow_overload)
    if set, allow rule overload (the last rule wins), else put a warning and keep the first rule.

--archive|-A directory
    write reports to "directory".

--database|-D name
    select the database named "name".

--debug|-d level
    set a level of debugging messages, from 0 (none) to 3 (full)

--full_newdel|-f,(--nofull_newdel)
    (do not) report full information on new and deleted directories.

--history|-y historyfile
    write session status to history file

--ignore_case|-a
    ignore case for file names. Can be helpful on Windows platforms, but is dangerous on Unix ones.

--missing_files|-m,(--nomissing_files)
    (do not) warn about files declared in config files which does not exists.

--max_checksum_size|-S size
    fix a maximum size (bytes) for checksum. on bigger files, compute checksum only on first 'size' bytes. (0 means no limit)

--dead_symlinks|-s,(--nodead_symlinks)
    (do not) warn about dead symlinks.

--follow_symlinks,(--nofollow_symlinks)
    if set, do checksum on target file, else do checksum on target file name.

--running_files|-r,(--norunning_files)
    (do not) warn about "running" files : modified since program begin.

--timing|-t,(--notiming)
    (do not) Print timing statistics.

--exclude_suffix|-x "ext1 ext2 ... extn"
    list of suffixes (files/directories ending in .ext1 or .ext2 ...) to ignore.

--exclude_prefix|-X "pre1 pre2 ... pren"
    list of prefix (files/directories beginning with pre1 or pre2 ...) to ignore.

--exclude_re|-R "pat1 pat2 ... patn"
    list of patterns (regular expressions) to ignore files or directories

MACROS
macros are to be set in afick configuration format (see afick.conf(5)) : '@@define macro value'

ALIAS
aliases are to be set in afick configuration format (see afick.conf(5)) : 'newrule = attributes'

DIRECTIVES
directives are to be set in afick configuration format (see afick.conf(5)) : 'directive := value'

RULES
rules are to be set in afick configuration format (see afick.conf(5)) : 'file alias'

you can also use

--addpath
    add PATH directories to rules

--addlib
    add libraries directories to rules (linux)

FILES
if no config file on command line, afick try to open /etc/afick.conf (Unix) or windows.conf (Windows) as default config

for config file syntax see afick.conf(5)

USE
afickonfig may

change a config
    if it can find an old config

add a config
    if it does not find a previous value

remove a config
    you just have to specify a parameter without any value. the old line is commented

USAGE
To use this program, you must just run it with same afick command line options :

"afickonfig.pl -c afick.conf --timing --norunnig_files --debug=1 --archive=afick_archive"

or the same in configuration file syntax :

"afickonfig.pl -c afick.conf 'timing := 1' ' running_files := no' 'debug:=1 'archive:=afick_archive'"

and a mix of all types

"afickonfig.pl -c afick.conf --timing 'debug:=1' '@@define BATCH 0' 'newrule = p+u+g' '/tmp newrule'"

remove lines

"afickonfig -c afick.conf 'debug:=' '@@define BATCH' 'newrule=' '/tmp'"

NOTES
this program only use perl and its standard modules.

SEE ALSO
afick.conf(5) for the configuration file syntax

afick-tk(1) for the graphical interface

afick(1) for the command-line interface

afick_archive(1) for a tool to manage archive's reports

DIAGNOSTICS
all warnings go to stderr

EXIT STATUS
The exit status is the number of real changes

CONFIGURATION
no specific configuration file

DEPENDENCIES
perl

INCOMPATIBILITIES
(none)

BUGS AND LIMITATIONS
(none known)

LICENSE AND COPYRIGHT
Copyright (c) 2002 Eric Gerbier All rights reserved.

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 2 of the License, or (at your option) any later version.

AUTHOR
Eric Gerbier

you can report any bug or suggest to gerbier@users.sourceforge.net