Projects

This page lists most of the Free Software projects I ever worked on. Some of them where created by me, in others I am just one of the many people who develop them. Some are being actively developed, others have reached a state where further modifications are seldom or not at all required, yet others were discontinued.

To facilitate navigating in this list, projects are categorized by their purpose, authorship, and current state. Each project entry lists the categories it pertains to. Clicking on a category name will bring a listing of all projects in that category.

Additionally, a list of related projects is provided where applicable. Each element in that list is a link to the corresponding project entry.

Clicking on a project's name will bring this project's entry as a separate page (a permalink).

Hovering your mouse over the version information of a project shows the list of changes introduced by that version.

Sort controls below allow you to order the list either lexicographically or by the most recent release date, in both directions.

Using the Search control, you can select projects by name. Shell-style globbing patterns (wildcards) are accepted.

xmltools

(Not released)
Category:
Description:

A set of Guile primitives for parsing and processing XML files.

Related projects:

xenv

Version: 4.1  —  2023-02-23
* Diagnostic directives: $$warning and $$error

The $$warning directive emits warning message.  It does not alter exit
status in any way.

The $$error directive reports a fatal error and sets exit status to
65.

After both directives, processing is resumed at the next line.

* $$exit

New directive $$exit causes immediate termination of the program.
Decimal exit code may be supplied as argument.

* New directive: $$eval

The text between $$eval and $$end is expanded and the resulting
expansion is scanned again, producing the actual output.  This makes
it possible to create variable names on the fly and get their values.
Useful in loops, e.g.:

  $$loop I 0 1 2 3 4 5 6 7
  $$  eval
  \$\$ ifset VAR_$I
  Expand \$VAR_$I;
  \$\$ endif
  $$ end
  $$end

* Bugfixes

** Fix closing the $$range loop.
	  
Category:
Description:

Xenv is a text preprocessor. It reads input from files (or the standard input, if none are supplied) and prints it on the standard output, replacing references to environment variables with their actual values. Variables are referenced using POSIX-compatible shell syntax: $NAME, ${NAME}, ${NAME:-word}, ${NAME+=word}, ${NAME:=word}, ${NAME:?word}. A special ternary construct is provided: ${NAME:|word1|word2}, which substitutes the expansion of word1 if NAME is set and the expansion of word2 otherwise. Preprocessor directives provide support for inclusion of external files, conditional text expansion (depending on the value of an environment variable or exit code of an external command), diversions, for and foreach loops etc.

wyslij-po

Version: 3.3  —  2021-02-12
* Fix parsing of po header fields

* Use the Language header instead of Language-Team.

Support for Language-Team and language tables is retained for
backward compatibility.

* Organizational change: repository moved to git

The repository along with links for cloning can be viewed online at
http://git.gnu.org.ua/cgit/wyslij-po.git.

See https://puszcza.gnu.org.ua/git/?group=wyslij-po for instructions.
	  
Category:
Description:

Wyslij-po runs basic checking on PO files given in the command line and submits them to the Translation Project robot.

Related projects:

wydawca

Version: 4.0.3  —  2021-01-06
Fix handling of archivation requests.

	  
Category:
Description:

An automatic release submission daemon. It implements the GNU automatic upload procedure, and supports upload directive files of version 1.2.

Related projects:

wordsplit

(Not released)
Category:
Description:

This package provides a set of C functions for parsing input strings. Default parsing rules are are similar to those used in Bourne shell. This includes tilde expansion, variable expansion, quote removal, word splitting, command substitution, and path expansion. Parsing is controlled by a number of settings which allow the caller to alter processing at each of these phases or even to disable any of them. Thus, wordsplit can be used for parsing inputs in different formats, from simple character-delimited entries, as in /etc/passwd, and up to complex shell statements.

wit

(Not released)
Category:
Description:

A wiki translator, a package that supplies Python classes for translating Wiki Markup into another kind of markup, such as, e.g. plain text and HTML. It has been superseded by wikitrans.

Related projects:

wikitrans

Version: 1.3  —  2018-09-01
Don't throw exception on invalid tokens.
  Fix python 3 compatibility
	  
Category:
Description:

Provides Python framework for translating WikiMedia articles to various formats. The present version supports conversions to plain text, HTML, and Texinfo. A command line translator utility is included.

Related projects:

webtools

(Not released)
Category:
Description:

A collection of various web-related programs, mostly proof-of-concept ones.

vmod-variable

Version: 1.5  —  2022-08-21
* Support for Varnish 7.1
	  
Category:
Description:

Extended variable support for VCL

Related projects:

vmod-tbf

Version: 2.6  —  2022-08-21
* Support for Varnish 7.1
	  
Category:
Description:

This module implements token bucket filtering for Varnish Cache.

Related projects:

vmod-sql

Version: 1.5  —  2022-08-21
* Support for Varnish 7.1
* Drop support for Varnish versions prior to 6.0.0.
	  
Category:
Description:

This module provides SQL interface for Varnish Cache. Both MySQL and PostgreSQL are supported.

Related projects:

vmod-remoteip

Version: 2.3  —  2022-08-21
* Support for Varnish 7.1
	  
Category:
Description:

This module is for Varnish Cache what mod_remoteip is for Apache. It determines the actual client IP address for the connection, using the useragent IP address list presented by a proxy or load balancer via the request headers and a preconfigred list of trusted IP addresses.

vmod-geoip

Version: 1.2  —  2022-08-21
* Support for Varnish 7.1
* Drop support for Varnish versions prior to 6.0.0
	  
Category:
Description:

A module for Varnish Cache that provides API for using geolocation functions in VCL scripts.

vmod-dict

Version: 1.4  —  2020-04-09
* Drop support for Varnish versions prior to 6.0.0

	  
Category:
Description:

This module for Varnish Cache adds to it the ability to look up values in a textual dictionary. A dictionary is a disk file containing on each line a keyword-value pair, separated by arbitrary amount of whitespace. Leading and trailing whitespace is ignored. Empty lines and comments (beginning with ‘#’ as the first non-whitespace character) are allowed. Two functions are provided: dict.load loads the dictionary from a disk file into hash table, and dict.lookup retrieves value for a given key.

Related projects:

vmod-dbrw

Version: 2.8  —  2022-08-21
* Support for Varnish 7.1
	  
Category:
Description:

A Varnish Cache module implementing database-driven rewrite rules. Intended for use with web sites that need an exceedingly big number of redirect and/or rewrite rules, Vmod-dbrw allows the administrator to keep all rules in an SQL database of arbitrary structure, thereby considerably speeding up their handling. Another advantage of this approach is that rewrite rules stored in a database are easier to maintain.

Related projects:

vmod-binlog

Version: 2.7  —  2022-08-21
* Support for Varnish 7.1
	  
Category:
Description:

This module provides API for writing binary log files from Varnish VCL scripts and the utilities for listing and searching in such files.

Related projects:

vmod-basicauth

Version: 2.0  —  2022-06-25
* Support for Varnish 7.1
	  
Category:
Description:

This Varnish Cache module implements basic HTTP authentication against password files created with the Apache htpasswd utility.

Related projects:

vcsync

Version: 1.3  —  2021-02-18
* New configuration statement: sentinel

The "sentinel" statement declares the name of a file which, when
present in the destination directory, informs vcsync that this
directory is exempt from the normal synchronization process.  The
presense of the sentinel file is an indication that the destination
directory is updated by other means.

* Full documentation added

	  
Category:
Description:

Vcsync synchronizes files on the file system with the corresponding repository after each commit. It is normally configured as a hook, using the mechanism provided by the version control system of choice (loginfo in CVS, post-commit in SVN, or post-receive in GIT).

Related projects:

vcl-mode

(Not released)
Category:
Description:

Emacs major mode for editing VCL files.

varnishsnmp

(Not released)
Category:
Description:

A MIB for monitoring and remote management of Varnish Cache.

Related projects:

varnish-mib

Version: 4.0  —  2019-02-14
Rewrite as a stand-alone snmpd agent.

	  
Category:
Description:

Dynamically loadable object module for net-snmp snmpd that provides access to Varnish Cache statistics.

Related projects:

tpnotify

Version: 1.04  —  2021-08-09
	- Fix operation without -d option
	
	  
Category:
Description:

Notifies the Translation Project about new POT files

Text::Locus

Version: 1.04  —  Sat Feb 13 09:44:52 2021
	- Change bugtracker address
	  
Category:
Description:

A Perl class for representing locations in text files. A location in its simplest form consists of file name and line number. In more complex forms, location represents a text fragment spanning several (perhaps not contiguous) lines, or even files.

texinfo

Version: 7.0.3  —  26 March 2023
This is a bug-fix release with minimal changes.

* texi2any
  . fix performance regression when Perl binary extension (XS) modules
    are not being used (e.g. with TEXINFO_XS=omit)

* info
  . further fix of recoding of UTF-8 files to ASCII to avoid text
    disappearing from nodes
  . avoid possible freeze at start of a file with `-v nodeline=pointers'
	  
Category:
Description:

Texinfo is the official documentation format of the GNU project. It uses a single source file to produce output in a number of formats, both online and printed (dvi, html, info, pdf, xml, etc.).

Related projects:

tar

Version: 1.35  —  2023-07-18
* Fail when building GNU tar, if the platform supports 64-bit time_t
  but the build uses only 32-bit time_t.

* Leave the devmajor and devminor fields empty (rather than zero) for
  non-special files, as this is more compatible with traditional tar.

* Bug fixes

** Fix interaction of --update with --wildcards.

** When extracting archives into an empty directory, do not create
   hard links to files outside that directory.

** Handle partial reads from regular files.

** Warn "file changed as we read it" less often.
   Formerly, tar warned if the file's size or ctime changed.
   However, this generated a false positive if tar read a file
   while another process hard-linked to it, changing its ctime.
   Now, tar warns if the file's size, mtime, user ID, group ID,
   or mode changes.  Although neither heuristic is perfect,
   the new one should work better in practice.

** Fix --ignore-failed-read to ignore file-changed read errors
   as far as exit status is concerned.  You can now suppress file-changed
   issues entirely with --ignore-failed-read --warning=no-file-changed.

** Fix --remove-files to not remove a file that changed while we read it.

** Fix --atime-preserve=replace to not fail if there was no need to replace,
   either because we did not read the file, or the atime did not change.

** Fix race when creating a parent directory while another process is
   also doing so.

** Fix handling of prefix keywords not followed by "." in pax headers.

** Fix handling of out-of-range sparse entries in pax headers.

** Fix handling of --transform='s/s/@/2'.

** Fix treatment of options ending in / in files-from list.

** Fix crash on 'tar --checkpoint-action exec=\"'.

** Fix low-memory crash when reading incremental dumps.

** Fix --exclude-vcs-ignores memory allocation misuse.
	  
Category:
Description:

GNU tar is an archiver program. It is used to create and manipulate files that are actually collections of many other files; the program provides users with an organized and systematic method of controlling a large amount of data.

Related projects:

tallyman

Version: 1.4  —  2021-11-22
* tallyman: if passed empty service ID, don't attempt to contact the collector

	  
Category:
Description:

Monitors state of running docker containers via SNMP. The package provides two utilities:

  • tallyman

    A health state collector to be run inside the container.

  • stevedore

    A container state collector and SNMP agent daemon.

Each container is supposed to run the tallyman command as part of its HEALTHCHECK configuration. This tool takes as its argument the command line that does the actual checking, collects its return and sends it over to the stevedore daemon that acts as a collector and simultaneously as a SNMP subagent, delivering the collected information to the snmpd daemon.

Related projects:

tagr

(Not released)
Category:
Description:

Decomissioned.

syslogrelay

Version: 2.2  —  2022-12-24
* Handling of control characters in syslog messages

If the message text contains ASCII control characters (ASCII 0 to 31),
these are replaced with their "caret notation", i.e. a caret
character followed by the character value XORed with 0100.  Thus,
horizontal tabulation (ASCII 9) becomes ^I, carriage return
(ASCII 13) becomes ^M, etc.  By default the newline character is
exempt from this translation.  Instead, it is substituted with
horizontal space (ASCII 32).

The "-Wcontrol_chars=MODE" option can be used to alter this
processing. Possible values for MODE are:

 caret
    Replace all control characters with their caret notation.  The newline
    character is represented as ^J.

 caretnl
    The default algorithm as described above.

 octal
    Replace control characters with their octal representation.

 raw
    Reproduce control characters verbatim.

* New option -s: set input buffer size

The -s option changes the default input buffer size.  Its argument is
the desired size in bytes.  For UDP input, values of up to 4096 are
allowed.  The default is 1024.

* New output channel: pri:///DIR

  Distributes messages to two disk files located in directory DIR.
  The name of the file to write to is selected depending on the message
  severity.  Messages with severity greater than LOG_ERR are directed
  to file "1" ("out" file), messages with severity less than or equal
  to LOG_ERR are directed to file "2" ("err" file).

  This channel understands the following parameters:

    severity=SEVERITY
       Gives name of the delimiter severity.  Messages with severity
       less than or equal to that value will be directed to "err" file.
       (DIR/2, by default).

    errfile=NAME
       Sets the name of the "err" file.

    outfile=NAME
       Sets the name of the "out" file.

    prio=none|keep|decode
       Controls whether and how the message priority is reflected on
       the output.  See the channel "file:" for details.

  Default settings correspond to:

      -Wseverity=err -Werrfile=2 -Woutfile=1 -Wprio=none
	  
Category:
Description:

This program provides system log forwarding facility for confined environments, such as docker containers. It listens for incoming system log messages on the UNIX socket file /dev/log and forwards them to the specified remote server. Relayed messages are normalized to make sure they comply with the RFC 3164. In particular, hostname is added if necessary. This is important in docker environments, since otherwise the collector would insert the IP address of the container or gateway in place of the missing hostname, and neither IP is informative enough to identify the container where the message originated.

swu

Version: 1.0  —  2019-07-31
Initial release.

	  
Category:
Description:

Displays the amount of swap space used by each running program. The utility is Linux-specific.

swis

(Not released)
Category:
Description:

Decomissioned.

smap

Version: 2.1  —  2021-07-01
* Support for Guile 2.2

* Bugfixes

* Improved testsuite

	  
Category:
Description:

An extendable socket map server with a set of modules and framework for writing new socket maps and testing them.

Related projects:

slowo

(Not released)
Category:
Description:

SÅ‚owo (the Polish for a word) is a lexical and grammatical analyzer for Polish language.

slogin

(Not released)
Category:
Description:

A replacement for /bin/login, intended to be used in system start-up script wherever the root maintenance is needed. It does not update utmp/wtmp and hence is safe to be called when the partition containig these files is not mounted.

slb

Version: 1.1  —  2012-03-30
* Support SNMPv3
* Default SNMP version is 2c
* Use newer Grecs
* Drop unneeded dependencies
* Variable assignments in expressions
* Detection of SNMP counter overflows
* Comma operator
* Support for indexed MIBs

This feature allows you to use symbolic names instead of the fixed MIBs
for MIBs that are part of SNMP subtrees.  For example, to get number of
packets sent over eth0 into variable "out", you would do the following:

    table iftable IF-MIB::ifDescr;
    variable out "IF-MIB::ifOutUcastPkts.$iftable[eth1]";

The first statement converts the subtree into a "table" named "iftable".
The second statement references an entry in this table that has
the value "eth1".  For example, if the SNMP tree has the following MIB

    IF-MIB::ifDescr.10: eth0

then the expression "$iftable[eth]" yields "10"

* Assertion syntax changed.

The assertion statement takes a single argument, which must be a
string consisting of the following three parts:

   <oid: string> [!]<opcode>[/i] <value: string>

The <opcode> part can be either an arithmetical operator (=, <, <=, >,
>=), or any of the following string operators:

    eq          string equality
    ne          string inequality
    prefix      oid value must begin with <value>
    suffix      oid value must end with <value>
    glob        <value> is a glob(7) pattern that oid value must match
    
Each of these can be suffixed with "/i" to request case-insensitive comparison.

A "!" in front of opcode reverts its meaning.   

The <value> part must not include the type prefix.

	  
Category:
Description:

A simple load balancer. The utility monitors a set of remote servers, obtaining a set of numeric values via SNMP. These values are used to compute a single floating-point number, called a relative load for that server. The servers are then sorted in order of increasing loads and the resulting table is output (using a configurable format string) to a file or pipe.

Related projects:

slackupgrade

Version: 2.3  —  2022-04-30
* Support for Slackware 15.0
	  
Category:
Description:

Upgrades the Slackware installation to a new release. Two upgrade types are supported. In normal upgrade only packages already installed on the system are upgraded. In full upgrade, all packages from the new release are installed. A combination of the two can be achieved by supplying a list of additional Slackware series when running the normal upgrade.

slackdesc

(Not released)
Category:
Description:

Formats a slack-desc file for Slackware package.

Related projects:

slackbuilder

(Not released)
Category:
Description:

A builder for Slackware packages.

Related projects:

sargon

Version: 1.0  —  2018-12-12
Category:
Description:

A Docker authorization plugin that controls container creation. It enables the administrator to excercise control over the containers that users are allowed to create and decide whether to permit creation of privileged containers, what parts of the host file system can be visible to containers via bind or volume mechanism, what memory limits to apply, etc.

rush

Version: 2.3  —  2022-07-16
* Fix invalid memory addressing in remopt command

* Fix building with flex >= 2.6.1 (EOF check)
	  
Category:
Description:

GNU Rush is a Restricted User Shell. It is intended for use with ssh, rsh and similar remote access programs. Using a sophisticated configuration file, Rush gives you complete control over the command lines users can execute, system resources they can use, etc. In particular, it allows to run remote programs in a chrooted environment.

Related projects:

runcap

(Not released)
Category:
Description:

A C module providing an API for running external command and capturing its output.

The function runcap runs an external command and waits for its termination, capturing its stdout and/or stderr and optionally piping the supplied data to its stdin.

Related projects:

runasimi

(Not released)
Category:
Description:

A web page offering various resources for learning Quechua, a language spoken in the Andes.

Related projects:

rpipe

Version: 1.8  —  2021-05-17
* Syslog support

New option '-S FACILITY' switches diagnostic output to the given
syslog facility.

	  
Category:
Description:

A simple tool for forwarding content of a local file to the stdin of a program running on a remote host via TCP. The tool was created when I needed to run GNU Mailman in a docker container without MTA in it. It implements a slightly modified version of TCPMUX protocol. The same binary (rpipe) serves both as a server (on the remote end) and as a client (on the local end).

Related projects:

rex

Version: 4.1  —  2022-03-17
* Hostgroup stack

Rex now maintains a stack of hostgroups.  Once you push a hostgroup
name on stack, that hostgroup will be used by any subsequent rex
command, unless it is given the -g option.  The new command "group"
(see below) provides ways to pop items off the stack, swap arbitrary
element with the top of stack, select new hostgroups on the fly, etc.

* New command: rex group

The "rex group" command has the following forms:

  rex group push GROUP
    Push GROUP on stack.

  rex group pop
    Pop the topmost group off the stack.

  rex group swap N
    Exchange top of the stack with the Nth element (0-based).

  rex group drop N
    Remove Nth element from the stack.

  rex group select COMMAND ARGS...
    Create on top of the stack a temporary group that contains
    those hosts from the current hostgroup where the supplied
    shell command returns success, i.e. exits with code 0.

  rex group show
    List the contents of the hostgroup stack.

* Add configuration function for overriding PTR records from rc files
	  
Category:
Description:

Rex is a remote execution utility that runs a supplied command on a set of remote hosts. Arbitrary data can be supplied to the command in the form of local files, which will be transferred to each remote host prior to running the command and removed afterwards. Both parallel and sequential execution is supported.

Special mode exists to distribute a file or files to several hosts.

Rex is written in TCL and has extensive scripting facilities. It provides a convenient way to administrate multiple servers.

The program is designed to operate in a minimalistic environment. It is self-contained and does not need any external libraries.

releaselogparser

Version: 1.0.2  —  2018-11-05
Convert byte-like objects to UTF-8 strings.
	  
Category:
Description:

Software packages usually include textual files describing noteworthy changes in each subsequent release. There exist several formats of such files. This package provides Python framework for parsing the most often used formats of such release log files. Support for any new format can be easily added.

radius

Version: 1.6  —  2008-12-06
* Configuration file raddb/config

The syslog statement takes an optional 4th argument specifying syslog
tag to use, e.g.:

    channel default {
	    syslog local1.info radiusd;
    };

* New attributes

** GNU-Server-Address

Holds IP address of the RADIUS server that recieved the
request. Notice, that the value of this attribute is "0.0.0.0" if
there are no `listen' statement in your `raddb/config'.
    
** GNU-Server-Port

Holds UDP port number of the RADIUS server that recieved the request.

* Automake function AM_GNU_RADIUS is provided, for checking if
GNU Radius is installed from configure.ac scripts.

* Guile support requires Guile version 1.8 or later.

* Bugfixes
** Pass NAS-IP-Address to mlc_stop_query	
	
	  
Category:
Description:

GNU Radius is an extensible and scalable authentication and accounting server.

pound

Version: 4.9  —  2023-08-22
* HTTP request logging

In addition to six built-in log formats, you can define your own
"named" formats and use them in the LogLevel directive.  Log format is
defined using the following statement:

  LogFormat "name" "format_string"

The "name" argument specifies a string uniquely identifying this
format.  "Format_string" is the format specification.  It is
modelled after Apache's mod_log_config LogFormat string.  For example,
the built-in format 3 is defined as:

  "%a - %u %t \"%r\" %s %b \"%{Referer}i\" \"%{User-Agent}i\""

The LogLevel directive has been extended to take symbolic format name
as argument.  For example:

  LogLevel "my_format"

The traditional built-in formats are assigned the following symbolic names:

  0 - "null"
  1 - "regular"
  2 - "extended"
  3 - "vhost_combined"
  4 - "combined"
  5 - "detailed"

So, instead of

  LogLevel 3

one may write

  LogLevel "vhost_combined"

* New statements: ForwardedHeader and TrustedIP

These statements control how the %a log format conversion specifier
determines the originator IP address:

  ForwardedHeader "name"
    Defines the name of HTTP header that carries the list of
    proxies the request has passed through.  It is used to
    report the originator IP address when logging.

    The default is "X-Forwarded-For".  This statement can be
    used in global, listener, and service scope.

  TrustedIP
    Defines a list of trusted proxy IP addresses, which is used to
    determine the originator IP.  This is a special form of the ACL
    statement and, as the latter, it can appear in two forms: directive
    and section.

    In directive form, it takes a single argument referring to a
    named access control list, which must have been defined previously
    using the ACL statement.

    In section form, it is followed by a list of one or more CIDRs
    each appearing on a separate line.  The End directive on a
    separate line terminates the statement.

    This statement can be used in global, listener, and service scope.

* New service statement: LogSuppress

Suppresses HTTP logs for requests that resulted in response status
codes from a particular group or groups.  The statement takes one or more
arguments specifying status code groups to suppress log messages for:

  info or 1      1xx status codes
  success or 2   2xx status codes
  redirect or 3  3xx status codes
  clterr or 4    4xx status codes
  srverr or 5    5xx status codes
  all            all status codes

Suggested usage is for special services that are likely to accept
large numbers of similar requests, such as Openmetrics services.  For
example:

   Service "metrics"
       URL "/metrics"
       Metrics
       LogSuppress success
   End

* New request matching directive: StringMatch

The syntax is:

  StringMatch "SUBJECT" [OPTIONS] "PATTERN"

OPTIONS are usual matcher options.  The directive matches if SUBJECT,
after backreference expansion and accessor interpretation, matches
PATTERN.

This directive allows you to build complex service selection criteria.
For example:

  Service
      Host "^foobar\.(.+)$"
      StringMatch "$1" -file "domain.list"
      ...
  End

The service above will be used for requests whose Host header value is
"foobar." followed by a domain name from the file "domain.list".

* New request accessors: host and port

The %[host] accessor returns the hostname part of the Host header
value.  The %[port] accessor returns port number with leading
column character.  If no explicit port number is given in the Host
value, %[port] returns empty string.

* Bugfixes

** Fix the QueryParam statement.

** Improve testsuite and documentation.
	  
Category:
Description:

Pound is a reverse proxy, load balancer and HTTPS front-end for Web servers. It was developed to enable distributing load among several Web-servers and to allow for a convenient SSL wrapper for those Web servers that do not offer it natively.

Pound was originally developed by Robert Segall at Apsis GmbH. I took over its development when Robert announced that he abandons it.

POSIX::Run::Capture

Version: 1.03  —  2021-02-23
	- Fix packaging
	
	  
Category:
Description:

A Perl module for running external commands and capturing their output. It prefers performance and effectiveness over portability. As its name suggests, it can be used only on POSIX systems.

Related projects:

podiff

Version: 1.4  —  2022-10-20
* Fix https://puszcza.gnu.org.ua/bugs/?562
	  
Category:
Description:

This tool finds differences in translatable strings and translations between two PO files or between two revisions of the same file. It ignores any differences in comments, entry ordering and spacing.

ping903

Version: 1.0  —  2023-02-10
* Fix handing of the Connection: HTTP handler (both server and client)
	  
Category:
Description:

Ping903 is designed to periodically monitor a very large number of remote hosts using ICMP ECHO packets. The package is built using the client-server architecture. The main component (ping903) is a daemon that sits in memory and wakes up periodically to send certain number of ICMP echo packets to a preconfigured number of hosts and to collect replies. The resulting round-trip statistics is made available via REST API.

Related projects:

pies

Version: 1.8  —  2022-08-13
* New configuration keywords

** sigterm SIG

Available for use in "component" sections.  This statement defines
signal which pies should send to the running component instance in
order to terminate it.  Defaults to SIGTERM.

* Fix the component shutdown sequence

The shutdown sequence is determined taking into account dependencies
between components, so that all dependent components are stopped
before their prerequisite components.

* Fallback log file

Fallback log file is a place where pies writes out of band log messages,
i.e. messages about not being able to open syslog socket or send logs
to it.  Regular log messages are diverted to this file if syslog was
requested, but cannot be used because of a permanent error.

* Bugfixes

** Fix piesctl config reload

** Fix configuration preprocessing.

** Varios fixes in REST API server.
	  
Category:
Description:

GNU pies (pronounced p-yes) is a program invocation and execution supervisor. This utility allows to execute usual foreground-mode applications in detached mode, as if they were daemons. It combines the fucntionality of init and inetd programs. It can be used to control complex multi-component software.

Related projects:

paxutils

(Not released)
Category:
Description:

Paxutils is intended to provide a set of archiver programs. It will include tar and cpio utilities and will provide POSIX pax program.

Related projects:

pam-modules

Version: 2.5  —  2022-05-09
* pam_fshadow: skip-password option

Based on the proposal of Mirsad Goran Todorovac, the new option
skip-password instructs pam_fshadow to check whether the user
being authenticated is present in the passwd and/or shadow files,
without verifying his password.  This way pam_fshadow can be used as
an auxiliary module in the stack, actual authentication being
performed by one of the modules before it.
	  
Category:
Description:

A collection of useful PAM modules plus a command line utility for checking PAM authentication and other management groups.

nssync

Version: 1.1  —  2012-03-27
First actual release.

	  
Category:
Description:

The nssync utility converts DNS records kept in SQL tables of arbitrary format to BIND zone files.

Related projects:

NetSNMP::Sendmail

Version: 0.96  —  2021-02-13
* Change bugtracker address.

	  
Category:
Description:

A perl plugin for NetSNMP that provides access to Sendmail statistics information obtained by mailq and mailstats.

mysqlstat

Version: 1,1  —  2020-01-23
* Minor fixes in mysqlstat-setup
* Provide default values for NULL columns
	  
Category:
Description:

NetSNMP module that provides access to process list statistics and replication status of the mysqld server.

Mojo::Log::Syslog

Version: 1.03  —  2021-02-13
	- Change bugtracker address.

	  
Category:
Description:

Syslog logging for Mojo applications

mockmta

Version: 1.0
Category:
Description:

A simplistic implementation of the SMTP mail transport agent, designed for testing purposes. It behaves almost identically to any real MTA, except that it listens on localhost only and delivers all messages to the given UNIX mailbox file.

Related projects:

mix

Version: 2.0  —  2007-09-23
* Licensed under GPLv3 or later.

* mixal

** Location of listing file

By default, mixal creates listing file in the current working directory.

* mixsim

** The .mixsim file
When started in terminal mode, the utility searches for file `.mixsim'
in the current working directory and reads it, if present. The file
may contain any mixsim commands.

** The set of terminal commands is improved to make it compatible with GDB.

** New command, PASSCOUNT
Set the number of crossings after whcih to clear the breakpoint.

** Removed optional second argument to BREAK.
The functionality of `BREAK <ADDR> <COUNT>' is now obtained by two
commands:

BREAK <ADDR>
PASSCOUNT <N> <COUNT>

** New command DELETE.
An alias to CLEAR.

** New command IGNORE
Sets the number of hits to ignore before enabling the breakpoint.

** New commands ENABLE and DISABLE
Enable or disable the breakpoint with the given number.

** New command RUN
It is an alias for GO.

** New command SOURCE
Execute a file of mixsim commands.

** New command ADDRESS.
This command takes as its argument a breakpoint manipulation command
(DELETE, IGNORE, ENABLE, DISABLE, PASSCOUNT) with arguments
appropriate for the associated command.  However, the first argument
of the corresponding command is treated as MIX address, instead of a
breakpoint number.

** New command INFO.
An alias to LIST.

** New command SHELL.
Executes a subordinate shell or a shell command. Abbreviated to !.

** NEXT and STEP take optional argument.
The argument, if given, specifies number of instructions to
execute. Default is 1.

** INFO BREAK takes an optional argument specifying breakpoint number to list.
If prefixed with ADDRESS, it treats the argument as a MIX location and
lists all breakpoints set on that location.

	  
Category:
Description:

MIX is a set of tools for assembling, running and debugging programs, written in MIXAL, an assembly language for an imaginary computer, MIX, used in The Art of Computer Programming of D. Knuth.

micron

Version: 1.3  —  2021-10-29
* Appending cronjob output to a file

Output of a cronjob can be captured and appended to a disk file,
instead of sending it via email or logging it using syslog.  This is
controlled by the _MICRON_OUTFILE (global) and _JOB_OUTFILE (per-job)
built-in variables.

* New option -P FILE

Writes PID of the running process to FILE.  The file will be removed
when the program terminates.

* Option -v replaces -o

To set initial value of a built-in variable, use the "-v NAME=VALUE"
option.

* The -V option

To obtain the micrond version, use the -V option.

* Bugfixes

** Fix allocation of environment and built-in variables defined in crontabs.
	  
Category:
Description:

An enhanced implementation of UNIX cron daemon.

mfmod_pcre

Version: 1.1.1  —  2023-06-28
Bootstrapped with mailfromd 8.16.93. This fixes configure failure
on FreeBSD.
	  
Category:
Description:

Perl-compatible regular expressions for mailfromd

Related projects:

mfmod_openmetrics

Version: 1.2.1  —  2023-06-28
Bootstrapped with mailfromd 8.16.93. This fixes configure failure
on FreeBSD.
	  
Category:
Description:

Openmetrics support for mailfromd.

Related projects:

mfmod_ldap

Version: 1.2  —  2023-07-07
Bugfixes
	  
Category:
Description:

LDAP searches for mailfromd

Related projects:

mbar

Version: 1.0  —  2019-08-01
Initial release.

=========================================================================
Copyright information:

Copyright (C) 2016-2019 Sergey Poznyakoff

   Permission is granted to anyone to make or distribute verbatim copies
   of this document as received, in any medium, provided that the
   copyright notice and this permission notice are preserved,
   thus giving the recipient permission to redistribute in turn.

   Permission is granted to distribute modified versions
   of this document, or of portions of it,
   under the above conditions, provided also that they
   carry prominent notices stating who last changed them.

Local variables:
mode: outline
paragraph-separate: "[  ]*$"
eval: (add-hook 'write-file-hooks 'time-stamp)
time-stamp-start: "changes. "
time-stamp-format: "%:y-%02m-%02d"
time-stamp-end: "\n"
end:
	  
Category:
Description:

A flexible mailbox archiver program based on GNU mailutils.

mbar scans the given mailbox folder for mailboxes matching a supplied pattern. For each mailbox found, a set of criteria is applied to its messages. All messages that matched the criteria are then picked and moved to the mailbox of the same name, located in the backup folder. If the destination mailbox doesn’t exist, it is created with the necessary intermediate directories.

Related projects:

mansrv

(Not released)
Category:
Description:

Formats and returns the requested manpage as HTML. This CGI is specifically designed to help display on-line the documentation in manpage formats for multiple software projects without the need to install these manpages somewhere in the system MANPATH. This is necessary for software forge sites that host a number of projects, such as Puszcza.

mangemanche

(Not released)
Category:
Description:

A modular remote management system for Ping903. Allows the user to inspect configuration of the running server, add or remove IP addresses, synchronize the monitored IP list with the Nagios configuration or an SQL database etc.

Related projects:

mailutils

Version: 3.16  —  2023-05-01
* Support for Berkeley DB version 2 withdrawn

* Bugfixes
** rdcache streams: fix stream size computation
** tlsfdstr streams: fix error handling
** wordwrap streams: fix handling of overflowing lines
	  
Category:
Description:

GNU Mailutils is a swiss army knife of electronic mail handling. It contains a rich set of mail-related utilities and daemons, including pop3d, imap4d, sieve and several domain-specific mail delivery agents.

Related projects:

mailfromd

Version: 8.17  —  2023-07-07
* Multiple handler definitions

Multiple "prog" declarations with the same handler name are now
allowed.  Such declarations are processed the same way multiple
"begin" and "end" sections were processed in prior versions:
when compiling the filter program, the code from all "prog"
declarations having the same handler name is combined into one code
block, in the same order the declarations appear in the source
file(s).

This allows MFL modules to define handler snippets.

* New special handler: action

The "action" special handler is executed before communicating the reply
action (accept, reject, etc.) to the server.  The handler takes four
arguments: numeric identifier of the action that is about to be
returned, SMTP response code, extended response code, and textual
message passed along with the action.  The last three arguments are
meaningful only for reject and tempfail actions.

Action handlers can be used for logging or accounting of the executed
actions.

* New variable: milter_state

The milter_state variable is initialized with the numeric code of
the current milter state.  Using this variable a function can execute
code depending on the handler it was called from.

The new module "milter.mfl" defines numeric constants for milter
states.  The functions milter_state_name and milter_state_code can
be used to convert this code to symbolic name and vice versa.

* New functions

The following new functions are provided to convert numeric
identifiers of various MFL entities to strings and vice-versa:

** string milter_state_name (number code)

Returns symbolic name of the milter state identified by its code.

** number milter_state_code (string name)

Returns numeric code of the state identified by its name.

** string milter_action_name (number code)

Returns symbolic name of the reply action identified by its code.

** number milter_action_name (string name)

Returns numeric code of the action identified by its name.

** void dbbreak (number @var{dbn})

Stop sequential access to the database and deallocate all associated
resources.  Use this function if you need to break from the sequential
access loop, e.g.:

  loop for number dbn dbfirst(dbname)
  do
    if some_condition
      dbbreak(dbn)
      break
    fi
  done while dbnext(dbn)

* New module: cdb

The "cdb" (control database) module provides functions for deciding
what MFL action to take depending on the result of a look up in a DBM
file.  Keys in the database have the format "PREFIX:KEY", where PREFIX
is one of:

  email		match sender email
  ip            match sender IP address
  domain        match sender domain part
  subdomain     search for a match among the domain part and its parent
                domains
  mx            match MX of the sender domain part

Values are (case-insensitive):

  OK            continue executing the MFL code
  ACCEPT        accept the mail
  REJECT	reject the mail (550)
  TEMPFAIL      return a temporary failure (451)
  GREYLIST      greylist the mail

or action specification in the form

  [code [xcode]] text

where code is 3-digit SMTP response code, xcode is extended SMTP code,
and text is explanatory reason text.  Both code and xcode must begin
with '4' or '5'.  If code and xcode are missing, reject the mail with
550 5.1.0 and the given text.

This module exports one function:

  func cdb_check(string prefix, string key)

Depending on the value of the prefix argument it does the following:

  ip
      Look up the "ip:KEY" in the database.  If found, take the action
      as described above.
  email
      Key is an email address.  Obtain its canonical form by
      splitting it into local and domain parts, converting the latter
      to lower case, reassembling the parts back into an email address
      and prefixing it with the string "email:".  Look up the resulting
      string in the database.  Take action indicated by the value.
  domain
      Key is an email address.  Extract its domain part, convert it
      to lower case and prefix it with "domain:".  Look up resulting
      string in the database.  If the look up succeeds, take action
      indicated by the value found.
  subdomain
      Same as above, but in case of failure, strip the shortest
      hostname prefix (everything up to the first dot, inclusively)
      from the domain and restart with the resulting value.  Continue
      process until a match is found or the argument is reduced to empty
      string.
  mx
      Key is an email address.  Extract its domain part.  For each of
      its MX servers, look up the key "mx:SERVER" and, if found, take
      action indicated by the value found.

The cdb_check function returns to caller only if the key was not
found in the database, or the lookup returned "OK" (case-insensitive)
or an empty string.  Otherwise, if the lookup returns an action, this
action will be performed and further execution of the filter code will
stop.

If the looked up value was "GREYLIST" while the function was called
from the handler prior to "envrcpt" (i.e. "connect", "helo", or
"envfrom"), the current handler will return and normal control flow
will resume from the next handler (as if by "continue" action). Actual
greylisting will be performed later, on entry to "envrcpt" handler.

The following global variables control the functionality of the
module:

  cdb_name    Name of the control database file.  Defaults to
              /etc/mail/mfctl.db
  cdb_greylist_interval
              Greylisting time.  Defaults to 900 seconds.

* mtasim: check expected textual replies

The "\E" command accepts optional second argument.  If supplied,
it is treated as an extended regular expression.  The subsequent
command will then succeed if its return code matched the one supplied
as the first argument, and its extended SMTP code and textual message
match the supplied regular expression.

* Bugfixes

** mtasim: correctly pass final body chunk to the milter

** Fix discrepancy between $N and $(N)

Both terms now mean exactly the same: Nth variadic argument.

** fix type conversions of typed variadic arguments

** Milter library: eliminate trailing space from arguments passed to handlers

** Milter server: don't pass extra \0 when sending multiple strings

** Fix handling of reply actions without explicit message text

In previous versions, the reject and tempfail actions would use the
default reply code if called without explicit message text (3rd
argument).
	  
Category:
Description:

Mailfromd is a general-purpose mail filtering daemon for Sendmail, Postfix and MeTA1. It is able to filter both incoming and outgoing messages using criteria of arbitrary complexity, supplied by the administrator in the form of a script file. The daemon interfaces with the MTA using Milter or PMilter protocols.

m4kwargs

Version: 1.0
Category:
Description:

Macro package that implements keyword arguments for m4 macros. A keyword argument consists of keyword name and value, separated with a single equals sign. Example of a macro call with single positional and two keyword arguments: INCR(10, delta=4, sign=neg)

lua-idna

(Not released)
Category:
Description:

Lua library that provides support for punicode (RFC 3492) and IDNA (RFC 3490).

Related projects:

List::Regexp

Version: 1.04  —  2021-02-13
* Change bugtracker address.

	  
Category:
Description:

Perl module that, given a list of strings, produces a regular expression that matches any of the input strings

kbdlock

Version: 2.0  —  2012-06-30
* The program is installed in /usr/bin

Prior versions went to /usr/sbin, you will need to remove them
manually.

* Print /etc/issue before the prompt
* Sleep after incorrect password is input
* New options: -i (--issue), -s (--sleep), -c (--clear)
* Add a manpage
* Improve error checking and reporting
	  
Category:
Description:

A simple console locker program for GNU/Linux systems.

jumper

Version: 1.2  —  2018-10-26
* Implement heartbeat event

* Add auxiliary program: ifactive

* Fix file descriptor leak

	  
Category:
Description:

Jumper monitors network interfaces for certain kinds of traffic and starts preconfigured external programs when such traffic is detected. It is designed mainly to bring up network links (such as VPN and the like) on demand.

Related projects:

joh

Version: 1.3  —  2011-03-31
* Use IPv6 URLs as proposed by RFC 2732

The address part of an IPv6 URL must be either an IPv6 address in
numeric notation *enclosed in square brackets* or a host name, e.g.:

  inet6://[::1]:1100

  
	  
Category:
Description:

A Jabber Over HTTP tunnel. It enables access to Jabber servers from behind firewalls which do not allow outgoing sockets on port 5222.

ipacct

(Not released)
Category:
Description:

Decomissioned.

inetutils

Version: 1.9.3  —  May 12, 2015
* ftp

An old inability to allow other names than the canonical name has
been corrected.  This means that a machine entry in the .netrc file
will now be used as expected.  Previously any alias name was replaced
by the corresponding canonical name, before reading the .netrc file.

The internal command `hash' accepts a suffixed letter to the size
argument, like `12k', instead of 12288.  Made a minor change to the
syntax of the command itself, allowing size changes independently
of activation of hash markings.  After a transfer the summary gives
the speed as `Mbytes/s', `kbytes/s', or `bytes/s'.

The .netrc file can be overridden by the environment variable NETRC.
Of even higher precedence is the new option `-N/--netrc'.  The access
to the resulting file, whatever method, is now denied unless it is a
regular file.

* ifconfig

Better command line parsing on BSD and Solaris systems.  Touch only
changeable flags on all systems.

* logger

The ability to use numerical facilities is restored to full range.

* ping, ping6

The ability to specify a pattern as payload is corrected.

* syslogd

A new switch `-T/--local-time' makes the service ignore a time
stamp passed on by the remote host, recording instead the local
time at the moment the message was received.  As a short form of
`--pidfile', the switch `-P' is new.

In common with other syslogd implementations, rsyslogd and sysklogd,
there has for a long time existed an attack vector based on large
facility numbers, made public in CVE-2014-3684.  This is now mended
in our code base.

* telnetd

The ability to autologin a client, without using authentication,
is now functional in the expected manner, i.e., the prompt for a
user name is suppressed in favour of an immediate password prompt.

In a setting where the client is using a UTF-8 encoding, it was
common to observe strange characters in most responses.  This was
caused by the server daemon, due to incomplete purging of internal
protocol data.  The issue should now be resolved.

* whois

Improved cooperation with servers like `whois.arin.net', `whois.eu',
and `whois.ripe.net'.
	  
Category:
Description:

Inetutils, or GNU Internet Utilities, are the basic internet utilities of the GNU Operating System.

imprimatur

(Not released)
Category:
Description:

Imprimatur provides Texinfo macros for various editing tasks such as adding editor notes and annotations, as well as Makeinfo rules for verifying Texinfo document structure, format, and (to a certain extent) content coverage.

Related projects:

idest

Version: 2.1  —  2017-03-11
* Convert textual frames to/from the currently used character set

The character set is deduced from the locale settings.  It can also be
set explicitly using the --charset option.

* New option --broken-8bit-encoding

Use this option for files where textual frames are stored as
ISO-8859-1, but are actually using another 8-bit encoding.  The
argument to this option is the name of the enchoding actually used.

In query mode, this option helps display such frames properly.

Use it with the --fixup option to fix such frames in the file.

* New option --encoding

Specifies encoding to store textual frames in ID3 tags.

* New option --fixup

Modifies the ID3 v2 tag so that it can be understood by most devices.

* The --convert option can be used to remove unnecessary ID3 formats.

For example, if the file input.mp3 contains both version 1 and 2 tags,
the following will remove version 1 tags:

  idest --convert=2 input.mp3

* Fix processing of unknown frames.

* Fix operation of setpic and pic modules with Guile 2.x.

* Improve documentation

	  
Category:
Description:

Idest is an ID3 Edit and Scripting Tool, a command line utility for manipulating ID3 tags. The utility allows to create new tags, to view, modify or delete the existing ones. It also provides a flexible scripting capability.

hostproc

Version: 0.3  —  2022-10-28
Fix deadlock.
	  
Category:
Description:

Hostproc provides detailed information about processes running on a host over SNMP. The information is grouped in a way similar to the ps(1) output. Additional aggregating features allow the administrator to provide summary statistics for processes matching some criteria and to exclude such processes from the detailed output. The latter feature can be used, in particular, to separate statistics for processes running on the host from those that are run within docker containers. The program is built as a sub-agent for Net-SNMP snmpd and is Linux-specific.

haproxy-bulkredirect

(Not released)
Category:
Description:

Lua library for handling big amounts of redirect rules in HAProxy.

Related projects:

gwebgal

(Not released)
Category:
Description:

A simple web gallery driver, written in Guile.

gsc

(Not released)
Category:
Description:

This project is decommissioned. It’s repository is retained as a historic reference only.

grot

Version: 1.0  —  2009-05-16
Initial release.

	  
Category:
Description:

Grot rotates MySQL binary log files on replication master server. It works by first determining what slaves are connected to the server. Then it connects to each slave and determines what master log file it currently uses. Finally, it removes those logs on master that are older than the oldest of logs used by slaves.

grecs

(Not released)
Category:
Description:

Grecs is a library for parsing structured configuration files from C programs. A structured configuration file has hierarchical structure, with block statements enclosing lower-level statements. Such configurations files are used by many programs, such as, e.g. Bind or Dico.

Related projects:

grayupload

Version: 1.0  —  2023-07-22
Initial release

=========================================================================
Copyright information:

Copyright (C) 2023 Sergey Poznyakoff

   Permission is granted to anyone to make or distribute verbatim copies
   of this document as received, in any medium, provided that the
   copyright notice and this permission notice are preserved,
   thus giving the recipient permission to redistribute in turn.

   Permission is granted to distribute modified versions
   of this document, or of portions of it,
   under the above conditions, provided also that they
   carry prominent notices stating who last changed them.

Local variables:
mode: outline
paragraph-separate: "[ 	]*$"
eval: (add-hook 'write-file-hooks 'time-stamp)
time-stamp-start: "changes. "
time-stamp-format: "%:y-%02m-%02d"
time-stamp-end: "\n"
end:
	  
Category:
Description:

Grayupload uploads software tarballs to ftp.gnu.org, alpha.gnu.org, download.gnu.org.ua, or any other site that uses the automatic ftp upload protocol. Its main audience are GNU developers and developers hosting their software on gnu.org.ua.

Related projects:

go-gdbm

(Not released)
Category:
Description:

Go API for GNU DBM.

Related projects:

gnulib

(Not released)
Category:
Description:

Gnulib is a central location for common GNU code, which is shared among many GNU (and non-GNU) packages.

glacier

Version: 2.13  —  2021-03-22
* Use explicit DESTROY with AUTOLOADs

	  
Category:
Description:

Command line tool for managing AWS Glacier

Related projects:

gitaclhook

(Not released)
Category:
Description:

Access control lists for git.

gint

(Not released)
Category:
Description:

GINT provides a framework for easy integration of Guile into arbitrary software projects. It includes Autoconf macros for detecting the presence of Guile on the system, detecting its version number and location of its components, a set of Makefile and Automake rules for snarfing C sources, i.e. generating auxiliary files (.x files, containing symbol information for Guile interpreter, and .doc files, containing information about Guile primitives, their arguments and docstrings), and a C lexer program for extracting docstrings from a C file.

Related projects:

genrc

Version: 1.3  —  2021-07-08
* Fix the --timeout option

	  
Category:
Description:

Generic helper program for writing system initialization scripts. Depending on the operation mode, it starts, stops, reconfigures or displays the status of a specific program. Primary audience is Slackware system administrators. However, the tool is generic enough to be used on any other Linux (and not only) distribution. In the contrast to another similar programs (e.g. start-stop-daemon), it is designed so that the entire rc file can consist of only one line, invoking (or exec’ing) genrc with the right set of arguments.

Related projects:

gdbm

Version: 1.23  —  2022-02-04
* Bucket cache switched from balanced tree to hash table

Change suggested by Terence Kelly.

* Speed up flushing the changed buckets on disk

* New option codes for gdbm_setopt

** GDBM_GETDBFORMAT

Return the database format.

** GDBM_GETDIRDEPTH

Return the directory depth, i.e. the number of initial (most significant)
bits in hash value that are interpreted as index to the directory.

** GDBM_GETBUCKETSIZE

Return maximum number of keys per bucket.

** GDBM_GETCACHEAUTO

Return the status of the automatic cache adjustment.

** GDBM_SETCACHEAUTO

Enable or disable automatic cache adjustment.
	  
Category:
Description:

GNU dbm is a library of database functions that use extendible hashing and works similar to the standard UNIX dbm functions. These routines are provided to a programmer needing to create and manipulate a hashed database.

Related projects:

gcide

(Not released)
Category:
Description:

GNU Collaborative International Dictionary of English, a free dictionary based on Webster’s Revised Unabridged Dictionary Version (published 1913) with additions from WordNet, proof-read and supplemented by volunteers from around the world.

Related projects:

gamma

(Not released)
Category:
Description:

GAMMA stands for a Guile Archive of Multiple Modules with an A just for the ‘A’ of it. It contains a set of useful Guile modules. In particular, it is used by runasimi.org and ellinika.gnu.org.ua.

Related projects:

fileserv

Version: 0.4  —  2019-07-25
* Bugfixes and organizational changes

	  
Category:
Description:

Simple HTTP server for static files.

Related projects:

File::BackupCopy

Version: 1.02  —  2021-02-13
	- Change bugtracker address.
	
	  
Category:
Description:

Perl extension for creating backup file copies. Three backup naming schemes are supported: simple backup creates backup file name by appending single tilde character to the original file name, numbered backup creates backup name by suffixing the original file name with .~N~, where N is a decimal number. Finally, automatic backup selects numbered scheme if at least one numbered backup file already exists and falls back to the simple backup otherwise.

extrans

(Not released)
Category:
Description:

This is a modified versions of Romuald Texier’s eXtrans. It was used as the underlying mechanism for Ellinika and Runasimi at early stages of their development, before switching to xmltools.

ellinika

(Not released)
Category:
Description:

A multilingual Greek grammar notebook and dictionary.

Related projects:

eclat

Version: 2.1  —  2022-03-03
* Implement the terminate-instances command.
* Implement MoveAddressToVpc (addr2vpc) and RestoreAddressToClassic (addr2ec2).
* Fix rmaddr -v.
* Document chvol and lschvol commands.
* Implement ModifyVolume and DescribeVolumesModifications.

	  
Category:
Description:

Eclat stands for EC2 Command Line Administrator Tool. It allows you to manage Amazon EC2 services from the command line, fast and easy. Eclat does not require any resource-consuming libraries. It is written in plain C, depends only on libraries which are always installed on any decent system, and has a tiny memory footprint.

Related projects:

dnstools

(Not released)
Category:
Description:

A set of tools for DNS management.

Related projects:

direvent

Version: 5.3  —  2021-12-30
* Introduce compound events

The "change" event is implemented on GNU/Linux and FreeBSD.  This
event is delivered when a file was modified and closed.

* New configuration statement for manipulating the environment.

The "environ" statement is now a compound statement. It can contain
five kinds of substatements: "clear" to clear the environment, "keep"
to retain certain variables while clearing the environment, "set" to
set a variable, "unset" to unset a variable or variables, and "eval"
to evaluate a variable reference for side effects.

Both "keep" and "unset" can take globbing pattern as their argument,
in which case they affect all variables matching that pattern. 

The value part in the "set" statement is subject to variable
expansion.

The "environ" block can appear in global context as well.  In this
case it applies to all watchers.

The support for the old one-line "environ" syntax is retained for
backward compatibility.

* Variable expansion in arguments to some configuration statements.

Both macro and environment variables are expanded in arguments to all
substatements of the new "environ" block statement and in the argument
to the "command" statement.  In the latter case, expansion of the
environment variables is controlled by the "shell" option.  If the
option is set, the variable will be expanded by the shell.  Otherwise,
they are expanded by direvent prior to invoking the command.

* Rewrite the recursive watching support

In particular, this fixes the bug where recursive watchers silently
assumed that the "create" generic event was configured for the
watcher.

* Change interface for bulk closing of file descriptors

To speed up launching of the user commands, system-dependent
interfaces for closing the file descriptors above the given one are
used, if available.
	  
Category:
Description:

GNU Direvent monitors a set of directories on the file system and reacts when their content changes. When a change is detected, the program invokes an external command configured for that kind of change.

Related projects:

dico

Version: 2.11  —  2021-04-27
* Bugfixes in the gcide module

* Fix searches in the gcider utility

* Support for Python 2 has been withdrawn

	  
Category:
Description:

GNU Dico provides a flexible modular implementation of dictionary server, a number of modules for it, and a console based dictionary lookup utility. A Web interface is also available.

Related projects:

cpio

Version: 2.14  —  2023-05-01
* New option --ignore-dirnlink

Valid in copy-out mode, it instructs cpio to ignore the actual number
of links reported for each directory member and always store 2
instead.

* Changes in --reproducible option

The --reproducible option implies --ignore-dirlink.  In other words,
it is equivalent to --ignore-devno --ignore-dirnlink --renumber-inodes.

* Use GNU ls algorithm for deciding timestamp format in -tv mode

* Bugfixes

** Fix cpio header verification.

** Fix handling of device numbers on copy out.

** Fix calculation of CRC in copy-out mode.

** Rewrite the fix for CVE-2015-1197.

** Fix combination of --create --append --directory.

** Fix appending to archives bigger than 2G.
	  
Category:
Description:

GNU cpio copies files into or out of a cpio or tar archive. The archive can be another file on the disk, a magnetic tape, or a pipe. GNU cpio supports a wide variety of archive formats.

Related projects:

Config::Parser::ldap

Version: 1.02  —  2021-02-13
	- Change bugtracker address
	
	  
Category:
Description:

A Perl module for parsing the ldap.conf configuration file.

Related projects:

Config::Parser

Version: 1.05  —  2021-02-12
	- Change bugtracker address.

	  
Category:
Description:

Config::Parser provides a framework for writing configuration file parsers. It is an intermediate layer between the abstract syntax tree (Config::AST) and implementation of a parser for a particular configuration file format. The package provides also Config::Parser::Ini – a configuration file parser for ini-style files.

Config::HAProxy

Version: 1.08  —  Thu Jun 23 15:21:17 2022
	- Handle the 'resolvers' section.
	- New class methods for declaring (and undeclaring) sections.
	- Fix changing the argv of a Node.
	  
Category:
Description:

A perl module supplying a parser that converts the HAProxy configuration file to a parse tree and provides methods for various operations on this tree, such as: searching, modifying and saving it to a file.

Config::AST

Version: 1.07  —  2021-02-12
	- Change bugtracker address.

	  
Category:
Description:

This perl module aims to provide a generalized implementation of parse tree for various configuration files. It does not implement parser for any existing configuration file format. Instead, it provides an API that can be used by parser implementors to build internal representation for the particular configuration file format.

cfpeek

Version: 1.2  —  2021-01-07
* New command line option --done (-d)

This option is a counterpart of --init and supplies a cleanup
expression, i.e. an expression that will be evaluated when the
main loop has iterated over all nodes in the tree.

* New parser: DHCPD

A parser for dhcpd.conf file.

* Drop support for Guile versions prior to 2.2.0

	  
Category:
Description:

Parses a structured configuration file and retrieves values specified by keyword pathnames or globbing patterns.

Related projects:

cflow

Version: 1.7  —  2021-12-30
* Multiple start functions are allowed

The '--main' option can be given multiple times.  A separate graph
will be drawn for each function given as its argument.

* New option --target=FUNCTION

If this option is given, the produced graph will contain only paths
leading from start function (or functions) to the given FUNCTION.

Multiple '--target' options are allowed.

* New output format: dot

The '-f dot' (or '--format=dot') option instructs cflow to output
graph as a description in DOT language, suitable as input to graphviz
programs.

* cflow-mode: new commands for navigating in the graph:

  c   go to the calling function
  n   go to the next function at the same nesting level
  p   go to the previous function at the same nesting level

* Bugfixes:

** CVE-2019-16165
** CVE-2019-16166
** Fix parsing of K&R style function declarations
** Improve parsing of typecasts
** Fix recursive call detection

	  
Category:
Description:

This tool analyzes a collection of C source files and prints a graph charting control flow within the program.

Related projects:

certmon

Version: 1.0  —  2019-10-10
Initial release.
	  
Category:
Description:

A tool for monitoring the expiration times of remote SSL certificates via HTTPS. Can be used either as a Nagios plugin or as a standalone tool.

beam

Version: 1.5.90  —  Git
* New configuration keyword <item>_alldb

This keyword is valid for backup items of mysql type.  If dumping all
databases is requested (i.e. the <item>_database variable is not
defined), it configures whether to dump each database into a separate
file (named after it), or to dump all databases to a singe file.

* Fix restoring from remote archives
	  
Category:
Description:

A suite of backup programs written in a reasonably portable shell language with the purpose of making backup process as easy as possible. The name is an acronym for “Backup Easy And Manageable”.

apout

(Not released)
Category:
Description:

It is a modification of the PDP-11 emulator originally written by Warren Toomey, that allows to run binaries from the earliest UNIX distributions.

Apache::Defaults

Version: 1.03  —  2021-02-12
	- Change bugtracker address.
	  
Category:
Description:

This Perl module provides a mechanism for detecting version, default settings, and the preloaded modules of the Apache httpd server. It does so by locating the server binary, invoking it with appropriate options and analyzing the output it produces.

Apache::Config::Preproc

Version: 1.07  —  2021-02-12
* Change bugtracker address.

	  
Category:
Description:

This Perl module reads and parses Apache configuration file, expanding constructs like Include, IncludeOptional, IfModule, IfDefine, Use, etc.

Related projects:

anubis

Version: 4.2  —  2014-05-23
** New operation mode: proxy

** Command line option precedence

Command line options take precedence over configuration file
statements.

** elif statement

A familiar `elif' statement is supported, e.g.:

if condition-1
  action-list-1
elif condition-2
  action-list-2
elif condition-3
  action-list-3
else
  action-list-4
fi
  
** New CONTROL statement esmtp-auth-delayed.

When set to `yes', this statement instructs Anubis to postpone ESMTP
authentication until MAIL command is issued by the client.  This
allows to change authentication credentials in the SMTP section (see
below).

** SMTP section

The new section "SMTP" is invoked each time an SMTP command
is received. This section may alter the command's argument, using the
"modify command", e.g.:

BEGIN SMTP
regex :extended
modify command [ehlo] "foo.bar.net"
if command ["mail from:"] "<(.*)>(.*)"
  modify command ["mail from:"] "<root@bar.net>\2"
fi
END

It is also allowed to use esmtp-* keywords in this section, provided
that `esmtp-auth-delayed yes' is set in the CONTROL section. Changes
in the ESMTP authentication credentials take effect if they occur
either before receiving MAIL command from the client, or when handling
this command, e.g.:

BEGIN SMTP
if command ["mail from:"] "<smith(\+.*)?@@example.net>"
  esmtp-auth-id smith
  esmtp-password guessme
else
  esmtp-auth no
fi
END

** New keywords: log-facility and log-tag

** Guile output

By default Scheme's standard error and output ports are redirected to
syslog, using priorities `err' and `warning' correspondingly.

** MySQL options file

When using MySQL for Anubis user database, the database parameters and
access credentials are read from the file /etc/my.cnf, section
"anubis".  Additionally, two URL parameters are provided:
"options-file", which sets the name of the options file, and
"options-group", which sets the name of the group.

	  
Category:
Description:

An SMTP message submission daemon. It represents an intermediate layer between mail user agent (MUA) and mail transport agent (MTA), receiving messages from the MUA, applying to them a set of predefined changes and finally inserting modified messages into an MTA routing network. The set of changes applied to a message is configurable on a system-wide and per-user basis.

Related projects:

addts

Version: 1.0  —  2019-07-31
Initial release.

	  
Category:
Description:

UNIX filter for marking each line of input with the timestamp (useful with Apache ForensicLog).

acvmod

(Not released)
Category:
Description:

A framework for creating loadable modules for Varnish Cache (vmods). It provides a set of macros and templates for configuring the module using GNU autotools and includes several auxiliary tools for creating GNU-style ChangeLog, testsuite, etc.

acmeman

Version: 3.09  —  2023-01-22
	- New domain source: pound.
	  
Category:
Description:

A tool for automatic creation and renewal of ACME (LetsEncrypt) SSL certificates. The list of domains to handle can be obtained from acmeman or apache configuration files, or from both. If the default acmeman configuration file doesn’t exist, the program scans apache configuration files for a list of domains.