AntFlow builds upon Apache Ant to provide a new approach to simplifying system automation that uses pipelines of hot folders chained together to perform a given task. Using XML, it associates an automated task such as data transfer, encryption, or XML processing with a directory on the local system. Whenever a file is copied or written into the hot folder, the associated task is executed and the file is moved to the next hot folder in the pipeline for further processing.
GNU EPrints is a solution for sites wanting to set up archives. By default it is configured to be an archive of research publications but can be easily altered. It is scalable and robust; all metadata is stored in UTF-8 rather than ASCII, and all "phrases" the system uses in user interaction are stored in an XML file for easy editing or translating. The system is built around Apache, mod_perl, and MySQL. Submissions are made via the Web and not entered into the main archive until approved by an editor.
GNotary is a set of Python scripts that implement an asynchronous digital notary service. Anybody who needs certification of any digital document creates a message digest (like MD5 or RIPEMD160) of that document and submits it to the GNotary service by email. GNotary signs this email digitally (using GnuPG), retains a copy of the certified and time stamped message, and mails it back to the sender, optionally with the public key attached to allow the sender to verify the signed document. At regular intervals, the GNotary server creates message digests of its own logs and distributes them among other GNotary servers, thus making it virtually impossible to forge the chain of evidence that authenticates a submitted document.
The GNotary client is a multi-platform GUI client that allows you to select files via drag and drop from any file manager, create the secure hash sums for each file, and submit the hash list to a list of digital notary servers. Optionally, all selected files can be backed up into a zip archive. It is written in Python and requires the wxPython toolkit.
Genetic Algorithm File Fitter, GAFFitter for short, is a tool based on a genetic algorithm (GA) that tries to fit a collection of items into as few as possible volumes of a specific size. For example, the items might be files/directories and the volumes might be CDs or DVDs. The task of arranging items in such manner that the number of required bins is minimized is called Bin Packing, a NP-hard combinatorial problem for which no deterministic polynomial-time algorithm is known. Using heuristics, such as GAs, it is usually possible to approximate -- and often reach -- the best solution for the problem within a reasonable time.
Optar is a software codec that generates 2D bar codes for data storage on paper using a black and white laser printer and scanner. It fits 200kB on an A4 page, uses Golay forward error correction codes to ensure reliability, and can also be used to store data on photographic film.
PBZIP2 is a parallel implementation of the bzip2 block-sorting file compressor that uses pthreads and achieves near-linear speedup on SMP machines. The output of this version is fully compatible with bzip2 1.0.2 or newer (ie: anything compressed with PBZIP2 can be decompressed with bzip2).
MPIBZIP2 is a parallel implementation of the bzip2 block-sorting file compressor that uses MPI and achieves significant speedup on cluster machines. The output of this version is fully compatible with bzip2 1.0.2 or newer (i.e. anything compressed with MPIBZIP2 can be decompressed with bzip2).
QML (Quantity Modeling Language) is a "thing"-based language for scientific and mathematical data modeling. Each "thing" is a quantity which may be associated with either a structure or physical phenomena. Quantities, in turn, may hold other Quantities or values (numbers or strings). Higher-level data models, which associate or define meanings to various quantities (such as velocity or position), can be built from QML quantities. The higher-level data model (XML) schema that inherits from QML may be understood, and its instance documents may be parsed into QML documents and objects by the QMLReader.