ck4up(1)                                                                                                                                          ck4up(1)

NAME
       ck4up - Check for Updates, a utility to monitor web pages for updates

SYNOPSIS
       ck4up [options] [<regexp> ...]

DESCRIPTION
       ck4up  is a small command-line utility, written in ruby, primarily intended for CRUX ports maintainers to watch http and ftp sites for updates, but
       may also be useful for others.

       ck4up scans through a configuration file, fetches the listed URLs from the web, computes the md5sum of the page, and compares the  value  with  one
       stored in a gdbm database. If both differ a message will be written to the standard output.

       To improve performance, ck4up is multi-threaded. A configurable number of threads fetches pages in parallel. The default setting is a maximum of 20
       threads and can be changed at the top of the script (variable Threads_max).

       Regular expressions can be applied to each page in the event that ck4up produces repetitive diff messages. For example, if daily  snapshots  and  a
       web counter are on the same page.

       To simplify maintenance of the configuration file, a kind of macro-expansion can be used.

OPTIONS
       -d, --debug
              Run  ck4up in debug mode. All fetched pages will be written to the standard output. This is especially useful when combined with a regexp to
              limit the number of pages to process.

       -k, --keep
              Keep md5 values, don't update the database.

       -v, --verbose
              Verbose mode. Print a message also for unchanged pages.

       -h, --help
              Print a short help message and exit.

       -p, --parseonly
              Parse configuration file, expand macros and print lines matched by <regexp>.  Do not fetch any remote data.

       -c, --cleandb
              Removes unused entries from the ck4up database.

       -f <file>, --config <file>
              Use alternative configuration from <file> instead of the default
               ~/.ck4up/ck4up.conf.  ck4up creates a database with the same full pathname but the extension replaced by .dbm.

       <regexp>
              Process only configuration-lines matching <regexp>. If more than one expression is given, all of them are or'ed to build a  regular  expresâ<
              sion.

CONFIGURATION
       The  configuration file for ck4up contains lines with macro definitions and lines defining URLs to check for updates.  Blank lines and lines beginâ<
       ning with a pound-sign, which are considered comments, are ignored. Spaces at the beginning of definition-lines are not allowed.
       The default location for the ck4up configuration file is ~/.ck4up/ck4up.conf.

       <name> <type> <url> [<regexp>]

       Lines starting with a valid character in the range [a-zA-Z] are URL lines, defining the web-pages you would like to check for updates.  <name> is a
       symbolic  name  for  the  URL,  md5  is  the only valid entry for <type> at the moment, <url> is the URL of the web-site, <regexp> is an optionally
       extended regular expression.  Don't use spaces in regexps, but \s instead.

       Examples:

       apache  md5  http://www.apache.de/dist/httpd/    httpd-2[0-9.]*
       uw-imap md5  ftp://ftp.cac.washington.edu/imap/

       <@[A-Za-z0-9_]*@> <string> [<string>]

       Lines starting with @ define macros for later use.  A system macro @NAME@, which is the <name> of the URL line, can be used in other macro  definiâ<
       tions.   This is handy if many URLs follow a common syntax. See the examples for @GNU@ below.  Macro expansion is done recursively, allowing macros
       to be nested.  See the @SF@ example which works for many but not all sourceforge project pages.

EXAMPLE
       Example of a configuration file containing URL and macro definitions:

       @TAR@     @NAME@-.*?.tar.[bgx]z2?

       @SUN@     http://mirrors.sunsite.dk
       @GNU@     http://ftp.gnu.org/gnu/@NAME@   @TAR@

       @SF_RE@   /files/@NAME@/[.0-9]+|@TAR@
       @SF@      http://sourceforge.net/projects/@NAME@/files/@NAME@  @SF_RE@

       apache      md5  http://www.apache.de/dist/httpd/    httpd-2[0-9.]*
       exim        md5  @SUN@/exim/exim/exim4/              @TAR@
       gawk        md5  @GNU@
       hdparm      md5  @SF@
       uw-imap     md5  ftp://ftp.cac.washington.edu/imap/  imap-200.?[a-z]

PROXY
       If a environment variable HTTP_PROXY or http_proxy is set with a valid URI, e.g. http://server.localnet:3128/, ck4up make use of the proxy for  the
       HTTP and HTTPS protocols.

FILES
       ~/.ck4up/ck4up.conf - configuration-file
       ~/.ck4up/ck4up.dbm - gdbm database to store the md5 hashes

AUTHOR
       Juergen Daubert <jue@jue.li>

ck4up 1.4                                                               Dec 23 2014                                                               ck4up(1)