Semantic search

Jump to: navigation, search

Edit query Show embed code

The query [[Interface::command-line]] was answered by the SMWSQLStore3 in 0.1593 seconds.

Results 11 – 510    (Previous 500 | Next 500)   (20 | 50 | 100 | 250 | 500)   (JSON | CSV | RSS | RDF)

Automates most tasks on video and audio streaming. Besides being a free/libre software, its goals are:
  • Move past command-line based streaming, by automating things.
  • Provide audio/video feedback for the volunteer at the station to monitor the streaming.
Its current features include:
  • Behave slightly differently according to user actions or loss of the feed.
  • GTK+ graphical user interface.
  • Ease to switch between testing mode -- for testing the audio and video chain without broadcasting -- to stream mode, which broadcasts the feeds.
  • In the event of main camera source failure, ABYSS changes the pipeline to fetch the video source from a backup USB webcam and then starts broadcasting again.
  • Each stream is actually recorded locally in three forms to allow easy post-processing: audio-only, raw-video, and audio-video.
Was used during LibrePlanet 2015 and 2016. ABYSS was previously know as Libre-Streamer.
ACDK is a development framework with a similar target of Microsoft's .NET or Sun's ONE platform, but instead of using Basic/C# or Java as programming language, it bases C++ as core implementation language. ACDK implements the standard library packages, including acdk::lang, acdk::lang::reflect, acdk::util, acdk::io, acdk::text (including regexpr), acdk::net, acdk::sql, acdk::xml and more, as well as technologies like flexible Allocator/Garbage Collection, Threading and Unicode. With the extensions of ACDK C++ objects are available for reflection, serialization, aspect oriented class attributes and [D]ynamic [M]ethod [I]nvocation. This DMI act as an universal object oriented call interface to connect C++ with scripting languages (Java, Perl, Tcl, Python, Lisp, Visual Basic, VBScript) and standard component technologies (CORBA, COM+).
ACL2 is a mathematical logic and a mechanical theorem prover to help you reason in the logic (which is a subset of applicative Common Lisp). The theorem prover is an ``industrial strength version of the Boyer-Moore theorem prover, Nqthm. Users can build models of all kinds of computing systems in ACL2, just as in Nqthm, even though the formal logic is Lisp. Once you've built an ACL2 model of a system, you can run it and use ACL2 to prove theorems about the model.
The ADG library (Automatic Drawing Generation) is a set of functions focused on automating the drawing of mechanical parts. It is not a CAD system but a library providing a non-interactive canvas where you can put common CAD entities such as paths, xatches and quotes, to create your technical drawings. The final result can be displayed inside a GTK+ widget or exported to any cairo available format, such as PostScript and PDF documents or PNG and SVG images.
AFT (Almost Free Text) is a document preparation system. It is mostly free form, meaning that there is little intrusive markup; AFT source documents look a lot like plain old ASCII text. It has a few rules for structuring your document, more to do with formatting your text than embedding lots of commands, and it produces all types of output (HTML, XHTML, LaTeX, roll-your-own XML, etc.). All that needs to be done is to edit a rule file. You can even customize your own rule files for specialized output
AGFL is a parser generator for natural languages. It can cope with ambiguity, which is a must for natural languages, has a lexicon system and is quite fast. If you don't know what to think of it, think "yacc" (or "bison") without shift-reduce conflicts.
AGT is a console frontend for iptables. It lets you specify options in easy-to-read configuration files, so you can quickly make complex changes to your firewall/gateway.
'ALE' renders high-fidelity images of real scenes by aligning and combining many similar images from a camera or scanner. The correct similarity between images is roughly that achieved by a somewhat unsteady hand holding a camera.
ALSA plugins
The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI functionality to the GNU/Linux operating system. ALSA has the following significant features:
  • Efficient support for all types of audio interfaces, from consumer sound cards to professional multichannel audio interfaces.
  • Fully modularized sound drivers.
  • SMP and thread-safe design.
  • User space library (alsa-lib) to simplify application programming and provide higher level functionality.
  • Support for the older Open Sound System (OSS) API, providing binary compatibility for most OSS programs.
aMule is short for "all-platform eMule-like file-sharing program", or, in short, "all-platform Mule". It's a port of the well-known eMule P2P client for the eDonkey2000 file sharing network, and supports most of eMule features. It also provides a small separate Web server and command line interface to connect to a running aMule via the network.
ANDREW's Not a DVD Ripping and Encoding Wizard
ANDREW's Not a DVD Ripping and Encoding Wizard, but a command-line interface that simplifies the use of some applications to create AVI, Matroska, MP4 or OGM files from DVDs.
APSR is a TCP/IP packet sender to test firewalls and other network applications. It also includes a syn flood option, the land DoS attack, a DoS attack against tcpdump running on a UNIX-based system, a UDP-flood attack, and a ping flood option. It currently supports the following protocols: IP, TCP, UDP, ICMP, Ethernet frames and you can also build any other type of protocol using the generic option. This package was formerly known as APSEND.
ATLAS (Automatically Tuned Linear Algebra Software) is a system for generating high-performance mathematical libraries. It generates a library that is specifically tuned to your processor and compiler. ATLAS's purpose is to provide portably optimal linear algebra software. In particular, ATLAS provides ANSI C and Fortran 77 interfaces to the BLAS, and a subset of LAPACK.
The ATSlog software provides a handy web-oriented interface for viewing and analysing calls for various types of PBX (Private Branch eXchange) models.
At present the program operates successfully with Panasonic, Samsung, Hybrex, Siemens, LG, and Alcatel PBX models. If your particular type of PBX is not supported yet, we can add this functionality.
'AVInfo' displays AVI, MPEG (1 and 2), OGM, MKV, and IFO (DVD) information. It returns the length of a clip, FPS, resolution, codec, audio and video bit rate, number of key frames, sound parameters, the number and type of streams, and the language for audio/subtitles. It then generates an HTML, plain text, or CSV file list with statistics.
AVideo /ævə'dɛjo:/ is a powerful, 100% libre video and audio downloader for GNU/Linux. With your freedom and privacy a #1 priority, avideo offers you peace of mind in watching everything from world news and documentaries to the latest cat videos. AVideo builds on the power of the infamous youtube-dl to ensure that the user's liberty is not sacrificed. YouTube-DL incorporates JS, SWF, and SDK interpreters in order to deliver some functionality. However, packaging these runs contrary to delivering freedom as a number 1 priority.
Advanced Web Statistics is a free tool that generates advanced web server access statistics graphically. This web server log analyzer works as a CGI or from command line and shows you all information your log contains, in few graphical web pages. It can analyze IIS 5.0+, Apache log files and some other web servers (log files with a personalized format are supported since version 3.0). It's the best statistics tool for web server with less than 200,000 visits a month. The program can measure visits, unique vistors, pages, domains/countries, OS busiest times, robot visits, search engine/keyword used, and HTTP errors. Statistics can be updated from a browser or your scheduler. The program also supports virtual servers.
ASCII art to image converter. ASCII art figures can be parsed and output as SVG, PNG, JPEG, PDF and more. This project provides a python package and a command line script.
Aardvark Shellutils
The Aardvark Shell Utils collection includes the following three utilities:
  • Realpath, implementation of the 'realpath' function for returning the canonicalized absolute pathname of an input path. This generates an absolute pathname with all symlinks resolved and all '.' and '..' characters removed. Many commands do not work well with relative paths or paths containing symlinks. Realpath resolves these absolute paths.
  • Filebase, returns the base portion of a filename, that is the filename with its extension (e.g. .txt) removed. It returns everything preceeding the last period in the input string. The period itself is not returned.
  • Fileext, returns the extension portion of a filename (e.g. txt). It returns everything following the last period in the input string. The period itself is not returned.
Aasm is an advanced assembler designed to support several target architectures and output file formats using plugins. It has been designed to be easily extended and, should be considered as a good alternative to monolithic assembler development for each new target CPUs and binary file formats.
Abc2ps is a typesetting program for ABC, a code for typsetting music that uses standard ASCII characters. It reads a file containing abc code and outputs the music to another file in Postscript. The music can then displayed (i.e. using ghostview) or printed on a Postscript printer.
'abcde' is a frontend to cdparanoia, wget, cd-discid, id3, and your favorite Ogg/MP3/Flac encoder (Oggenc is the default). With one comand, it grabs a CD, converts each track to Ogg/MP3/Flac, and comments or ID3-tags each file. It supports multiple output in a single CD read, volume normalization, gapless encoding (with Lame), parallelization, SMP, HTTP proxies, customizable filename organization and munging, playlist generation, and remote distributed encoding via distmp3.
'abclock' gives a spatial representation of time. It isn't tied to the design of a mechanical clock, but instead uses the natural properties of bitmaps: straight lines and rectangles. The clock uses ordinary hours and minutes. Placement and movement of objects is analogous to mechanical clocks. Time has a symmetrical property that is reflected in the way time changes in this clock. It is clear and exact up to parts of minutes, even when the bitmap is very small.
abcm2ps is a package that converts music tunes from ABC format to PostScript. Based on abc2ps version 1.2.5, it was developed mainly to print baroque organ scores that have independant voices played on one or more keyboards, and a pedal-board. It introduces many extensions to the ABC language that make it suitable for classical music.
'abcpp' is a simple yet powerful preprocessor designed for, but not limited to, ABC music files. It provides conditional output, macros, symbol renaming, and file inclusion. It was written to overcome incompatibilities between ABC packages, and to facilitate writing portable, and more readable ABC files.
Abook is a text-based addressbook program specifically designed to use with mutt mail client (although it can also be used independently). It has import filters for mutt, pine, and the Netscape addressbook, and export filters for mutt, pine, the Netscape addressbook, HTML, elm, plain text, spruce, and the GnomeCard addressbook.
Acct Heckert gnu.tiny.png
The GNU Accounting utilities `ac', `accton', `last', `lastcomm', and `sa' add login and process accounting support to GNU/Linux. "Login accounting" provides summaries of system resource usage based on connect time, and "process accounting" provides summaries based on the commands executed on the system.
ACOVEA (Analysis of Compiler Optimizations via an Evolutionary Algorithm) implements a genetic algorithm to find the "best" options for compiling programs with the GCC C and C++ compilers. "Best" is defined as those options that produce the fastest executable program from a given source code. Acovea can also be extended to test other programming languages and non-GCC compilers.
AcpiTool is a Linux ACPI client. It's a small command line application, intended to be a replacement for the apm tool. The primary target audience are laptop users, since these people are most interested in things like battery status, thermal status and the ability to suspend (sleep mode). The program simply accesses the /proc/acpi or /sysfs entries to get or set ACPI values. A computer running a Linux kernel from the 2.4.x or 2.6.x series with ACPI enabled is needed. It also supports various extensions for Toshiba, Asus, and IBM Thinkpad laptops.
Actim allows you to send and retrieve files, and to call command line programs on a target machine via emails. The application can handle both synchronous and asynchronous requests with basic security features. It has both command line and graphical user interfaces. This can be useful if, for example, your home PC does not have any access to your office workstation which is behind the company firewall.
Action Mailer
Action Mailer is a framework for designing email-service layers. These layers are used to consolidate code for sending out forgotten passwords, welcome wishes on signup, invoices for billing, and any other use case that requires a written notification to either a person or another system. Additionally, an Action Mailer class can be used to process incoming email, such as allowing a weblog to accept new posts from an email (which could even have been sent from a phone).
Action Query
jQuery and ActiveRecord, sitting in a tree...
'Active' creates a set of Web pages that lets Web surfers contribute to a shared calendar, groups listing, and multimedia news feed with discussion. It's designed to be easy to use, and easy to read the results. The program is under ongoing development as the backend for, and
Active Resources
Active Resource attempts to provide a coherent wrapper object-relational mapping for REST web services. It follows the same philosophy as Active Record, in that one of its prime aims is to reduce the amount of code needed to map to these resources.
Acts as Audited
acts_as_audited is an Active Record plugin that logs all modifications to your models in an audits table. It uses a polymorphic association to store an audit record for any of the model objects that you wish to have audited. The audit log stores the model that the change was on, the “action†(create, update, destroy), a serialzied hash of the changes, and optionally the user that performed the action.
Acts as fu
When you need a dash of ActiveRecord and nothing more. Now you have no excuse for not test-driving your ActiveRecord extending plugins.
AdaControl verifies that Ada software meets the requirements of a number of parameterizable rules. It is not intended to supplement checks made by the compiler, but rather to search for particular violations of good-practice rules, or to check that some rules are obeyed project-wide. This package also contains the following utilities:
  • pfni: Print Full Name Image - expands any identifier to a
fully-qualified name
  • ptree: Prints a graphic representation
of an ASIS tree with corresponding source
AdaDoc is a tool for Ada 95 developers. It creates an HTML file from a package specification for documentation purposes.
A combination of Portal and Sokoban, AdaGate is a great example of OpenGL programming using the Ada language. It is F.O.S., of course. While exploring a remote south-seas island you make a startling historical discovery. But before you can report your findings, an operational stargate transports you into a curious sequence of dungeons. Your escape will require the logical rearrangement of weird power cells, called Zero Point Modules (ZPMs), that can roll in only two directions. You can shoot your portal guns at the dungeon walls to define a wormhole. But, in order to activate it, all of the ZPMs must be bumped into their sockets. Now, you can only PUSH the ZPMs. That means you will fail if you roll one into a corner or against a wall. Escape each level and find your way back to a beautiful lake on the surface. The degree of difficulty is now selectable. Each game resumes at the beach but progress from previous games is tracked. Complete all 4 levels to access the lake epilog and reset the game. Uses fully modern OpenGL methods in Ada using textures, shaders and uniforms that achieves version 3.3 core profile contexts in a way that is sufficiently mainstream that it easily compiles and runs on Windows, GNU/Linux and Mac OS-X systems. This project serves as a testbed for learning the complexities of modern OpenGL and GLSL. Absolutely no coding efforts or compromises have been made to accomodate proprietary operating systems except for learning how to compile on OS-X. It relies on a thin SDL2 binding from Dan Vazquez, a thin OpenGL binding from "Lumen", a PNG reader by Stephen Sanguine, and SFML-Audio. If one defines "modern" OpenGL to mean version 3.3 or beyond, then this may be the most functionally advanced demonstration of "modern" OpenGL using Ada to be found. The code itself is far from elegant, but serves as a working example, with focus on learning OpenGL. The Ada bindings used are thin, so the relationship to C++ methodology is quite transparent. Developers should note that these Ada bindings are usable as a standalone library for most any OpenGL project. Media Files Note: The particular choices of sound, image, and shader files (*.fs) delivered are not essential to the function of the game and are easily replaced. This software is primarily intended as a tutorial example of modern OpenGL game assembly methods. The only requirements are that sounds be in WAV format, images be in PNG format, and shaders be updated to GLSL 330 specifications.
AdaVenture is a kid-friendly retro point & click game, essentially intended to be a minimal extension to 3D of the original 2D Atari game named "Adventure". Set in ancient Persia, it begins outside the castle of the young King Xerxes, who inherited a golden chalice from his father, Darius the Great. Coveted by Greek foes King Leonidas of Sparta and King Minos of Crete, the chalice has been stolen. Your quest is to seek and return the royal chalice to its pedestal within the castle of Xerxes...a stealth mission to avoid open hostilities. But, there will be obstacles to overcome. You must find the keys to various realms, defend yourself against dragons and the Minotaur, avoid snakes and pesky bats who steal things only to drop them in random locations, and survive the maze of the green mamba.
AdacURL is an Ada95 binding to the popular curl library for fetching files over various protocols such as HTTP, FTP, or TELNET.
Adcd is a CD player for GNU/Linux with a ncurses (text mode) interface. It features all the functions expected in a compact disc player, including playing selected tracks, random playing and loop mode. Also features a non-interactive mode for those who want to play their CDs while using the console for something else.
'Addendat' is a blogging program that accepts updates from either a CGI interface or a shell interface. It stores additions as HTML, so you can edit both entries and design in any ordinary text editor. It is configured using a simple HTML-like config file format and supports multiple blogs, even on the same page. It does not require Java or JavaScript and can publicize additions on a central hub, so users can easily find recently-updated blogs. It supports comments and archiving, can post entries to LiveJournal, and features configurable comment spam countermeasures.
This program gives you raw access to the kernel time variables. For a machine connected to the Internet, or equipped with a precision oscillator or radio clock, the best way to keep the system clock correct is with xntpd. However, for a standalone intermittently connected machine, you may use adjtimex instead to at least correct for systematic drift. Adjtimex can optionally adjust the system clock using the CMOS clock as a reference, and can log times for long-term estimation of the drift rates.
'adtool' is a *nix command line utility for Active Directory administration. Its features include user and group creation, deletion, modification, password setting, directory query, and search capabilities.
Aegis is a transaction-based software management system. It provides a framework within which developers work on changes independently, and coordinates integrating those changes back into the master source code. The program supports geographically distributed development. Aegis supports distributed and multiple repositories, change sets, multiple lines of development, multiple simultaneous active branches, and branching to any depth. It enforces a development process which requires that change sets "work" (they must build successfuly and optionally include and pass tests) before being integrated into the project baseline. It also ensures that code reviews have been performed. The program also supports long transactions, which allows appropriately created changes to be treated as if they were projects and therefore to have changes made to them. This allows a hierarchy of changes within changes, to any depth. Each project is a separate repository, with separately configurable policies.
aenig4 emulates the Enigma M4 cipher machine used by the U-boot division of the German Navy during World War II. It can be used as well to emulate the Enigma I machine (M1, M2, M3).
'afick' is a multi-platform file integrity checker. It works by first creating a database that represents a snapshot of the essential parts of your computer system. You then run the script to discover all modifications made since the snapshot was taken (i.e. files added, changed, or removed). It shows new, deleted and changed files (rights, owner, size, content).
'aircrack' is a set of tools for auditing wirelessnetworks. It consists of: airodump (an 802.11 packet capture program), aireplay (an 802.11 packet injection program), aircrack (static WEP and WPA-PSK cracking), and airdecap (decrypts WEP/WPA capture files).
'AKFQuiz' lets you make your own quiz games, learning exercises or psychotests. These can be used with grquiz in a graphical environment, or with scrquiz on the text-console. There is also a line oriented variant, linequiz, which can be used as a backend. A CGI-variant, cgiquiz, can be installed on a Web server to offer exercises via Internet or a local network. Or you can use mkquiz, which generates an HTML-file for to use with JavaScript. Those can then be published using any web-space provider.
The Assembly Language Debugger (ALD) differs from GDB in that it is specifically designed to debug programs at the assembly level. It is often difficult and frustrating for assembly programmers to use GDB to debug their work. ALD aims to provide everything an assembly programmer needs to debug their code.
Aldo is a Morse code tutor with three kinds of exercises: Classic exercise, the Koch method, and exercises read from files. In classic exercise, you must guess some random strings of characters that Aldo plays in Morse code. The package has 6 skills; speed can be selected in cpm or wpm.
Alexis FTP (aftp)
aftp is an FTP library and a background FTP tool. The aftp tool is a good example on how to use the library. You need FTP functionality in your software? Use the aftp library!
Alexis Makes (amake)
AMake is a make tool which uses powerful pattern transformation enabling a single makefile to automatically handle the compilation of any level of directory hierachy and have the possibility to add files in a project without having to modify even a character of the makefile thus saving a lot of time.
Alfandega Firewall
Alfandega Firewall is a collection of Perl modules that helps users to implement iptables-based firewalls for two interfaces. It provides local and remote blacklists, spoofing checks, packet forwarding, ICMP control, service configuration, and more.
Algol 68 Genie
Algol68G (Algol 68 Genie) is an Algol 68 implementation. Its front-end parses an entire Algol 68 source program. If parsing is successful, the syntax tree (that serves as an intermediate program representation) is interpreted by Algol68G's back-end. The interpreter performs many runtime checks.
'alien' converts between the rpm, deb, Stampede slp, and Slackware tgz file formats. If you want to use a package from a distribution different from the one installed on your system, 'alien' will convert it to your preferred package format and install it. However, 'alien' should not be used to replace important system packages, like sysvinit, shared libraries, or other things that are essential for the functioning of your system. Many of these packages are set up differently by Debian and Red Hat, and packages from the different distributions cannot be used interchangably.
'align' is a general-purpose text filter tool that helps vertically align columns in string-separated tables of input text. It also includes width, another general-purpose text filter tool that helps you work with the printing width or length of lines of input text.
Allegro is multi-platform game programming library for C/C++ developers distributed freely, that provides many functions for graphics, sounds, player input (keyboard, mouse and joystick) and timers. It also provides fixed and floating point mathematical functions, 3d functions, file management functions, compressed datafile and a GUI. It can also be used for other types of multimedia programming.
Alleyoop is a graphical front-end to the increasingly popular Valgrind memory checker for x86 GNU/ Linux using the Gtk+ widget set and other GNOME libraries for the X-Windows environment. Features include a right-click context menu to intelligently suppress errors or launch an editor on the source file/jumping to the exact line of the error condition. A searchbar at the top of the viewer can be used to limit the viewable errors to those that match the regex criteria entered. Also included is a fully functional Suppressions editor.
This is a candidate for deletion: 1. No files/source found 'Almclk' lets you set an alarm on your terminal. It sends a message to your terminal when the alarm goes off, and pops up a window if possible. If you are not logged in at the time, it sends you a customizable e-mail message which is also printed. Also, a 5-minute warning is sent to your terminal and popped up as a window if possible. If you wish to kill the alarm, a script is created for you to do so.
Alpine3D is a spatially distributed (surface), three dimensional (atmospheric) model for analyzing and predicting dynamics of snow-dominated surface processes in mountainous topography. It includes models for snow cover (SNOWPACK), vegetation and soil, snow transport, radiation transfer and runoff which can be enabled or disabled on demand.
AlsaPlayer is a PCM player written with the ALSA sound system in mind. It also includes support for JACK, OSS, NAS, and ESD. It makes extensive use of multi-threading and supports OGG, MP3, WAV, CDDA (CD Digital Audio), MOD, S3M, IT, and many other input types. Features include a real- time effects stream, variable speed/pitch control, multiple active visual scopes, command line mode, playlists, plugin architecture, low-latency mode, and more.
Alterparagraphs is an ongoing effort for providing a family of paragraph implementations, each to be used as a replacement for the regular and only paragraph flowable inside the ReportLab package. The idea behind this collection of paragraphs is to provide simple implementations that can be more easily understood and extended than the monolithic paragraph implementation as implemented by ReportLab. Note that many of the paragraph classes in alterparagraphs are not finished in the sense that they are directly ready for production (this is especially true for the XMLParagraph, the development of which has barely started). You must test yourself if they are suitable for your purpose. In any case it should be much easier to tweak them to make them do what you need compared to the standard ReportLab implementation.
AMANDA, the Advanced Maryland Automatic Network Disk Archiver, is a backup system that allows the administrator of a LAN to set up a single master backup server to back up multiple hosts to a single large capacity tape drive. AMANDA uses native dump and/or GNU tar facilities and can back up a large number of workstations running multiple versions of Unix. Recent versions also support SAMBA.
'amber' aims to be an easy-to-use granular synthesis tool for GNU/Linux to assist composers and electronic musicians in creating interesting and complex sounds. More information on the theory and application of granular synthesis techniques can be found at
1. AMBCALC a Perl script that prints out channel values for a given azimuth and elevation. Should work on any platform with Perl installed, thusfar tested on Linux. 2. AMBINFO a Perl script that reads WAVEX header (same comment regarding platforms as ambcalc). 3. AMBMAN a Perl collection of utilities for manipulating, converting etc. ambisonic files. 4. WAV2AMB a Perl script that 'corrects' the headers on Wave Format Extensible files (same comment regarding platforms as ambcalc ).
Hopefully with Amnesia you'll know exactly whats happening with memory when it comes to memcached. Its always nice to have some statistics to see how everything is performing within your stack. Memcached seems to be a mystery box that people don't really pay alot of attention to. Amnesia tells you how your application is performing, when it misses, when it is running sweet, when you're about to run out of memcached and (perhaps) fall down in a screaming heap.
An Gramadoir
An Gramadóir is intended as a platform for the development of sophisticated natural language processing tools for languages with limited computational resources. It is currently implemented for the Irish language (Gaeilge); this is, to the best of my knowledge, the first grammar checker developed for any minority language. Ports for Afrikaans, Cornish, Esperanto, Walloon, and Welsh are currently underway. The grammar checker can be called from emacs, vim, or OpenOffice. Various components of the engine can be bootstrapped using statistical methods based on text corpora.
And-httpd is an HTTP server that maps URLs to files. In other words, in can take an incoming URL and map it to a file in a number of ways (for example, according to content type or language). It can also do authentication or IP based ACLs. It cannot do CGI or other kinds of code execution. It cannot even dynamically create directory listings (although it comes with external tools to do so automatically, and to create a "status page"). It currently has a $2000 "security guarantee" against remote attacks.
'andatool' displays in real time how often regular expressions match with the lines written to a logfile. This shows (for example) which firewall rules get triggered the most.
Animail is a multiserver POP3/APOP/IMAP4 (with or without SSL) mail retrieval utility. It has an advanced filtering system based on blacklisting, whitelisting, or a combination of both, and can send an autoresponse which prompts people to reply and add themselves to the 'autoaccept' file. It also allows filters based on regular expressions which match against email headers. (If a message is filtered, only the header is downloaded, not the entire body.) users can also combine external filtering programs (e.g. SpamAssassin or Bogofilter) as message post-download plugins, which extends filtering capabilities in an unlimited way. Delivery options include mailbox, maildir, local SMTP, and pipe to a command.
Anontwi - is a tool for OAuth2 applications (such as: GNUSocial, Twitter...) that provides different layers of encryption and privacy methods.
'ansiprint' is a utility for printing text files (or stdin) from remote terminals using ANSI telnet escape sequences. Output is to either stdout (default) or /dev/tty (in case something is trapping stdout). The program prints a form-feed character to separate multiple file; it can also print a form feed after all pages/files are printed (both of these functions can be optionally disabled). The user can specify the size of the read/write buffer. The program is based on 'pine' but has been completely re-written in C++.
Ant is a Java based build tool, similar to make, but with better support for the cross platform issues involved with developing Java applications. Instead of a model where the tool is extended with shell based commands, it is extended using Java classes. Instead of writing shell commands, the configuration files are XML based calling out a target tree where various tasks get executed. Each task is run by an object which implements a particular Task interface.
ANT is a desktop ISDN telephony application written for GNU/Linux. It supports OSS (Open Sound System) and I4L (ISDN4Linux). Its user interface was made for GTK+ 2.x (GIMP toolkit). It directly interfaces OSS and ISDN devices, so there is no need to install extra software or hardware like PBX or telephony cards, if you've got direct access to an audio capable ISDN card and a full duplex soundcard or two sound devices.
'AntiExploit' scans for well known exploit files. It currently recognizes over 1700 suspicious files, and the database is updated weekly. It is not meant to be a IDS or high-profile security-application, but rather an extension to other security checks. 'aexpl' was developed for a freeshell-server to track script-kiddies.
Antidote is an open source implementation of the IEEE 11073-20601 standard. It also contains the implementation of a D-Bus based 11073 manager service.
antiparser is a fuzz testing and fault injection API. Fuzz testing has application as a security research methodology and for software quality assurance purposes. The purpose of antiparser is to provide an API that can be used to model network protocols and file formats by their composite data types. Once a model has been created, the antiparser has various methods for creating random sets of data that deviates in ways that will ideally trigger software bugs or security vulnerabilities.
Anubis Heckert gnu.tiny.png
Anubis is 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. The built-in configuration language used for defining sets of changes allows for considerable flexibility and is easily extensible. GNU Anubis can edit outgoing mail headers, encrypt and/or sign mail with the GNU Privacy Guard, build secure SMTP tunnels (Simple Mail Transport Protocol) using the TLS/SSL encryption even if your mail user agent doesn't support it, or tunnel a connection through a SOCKS proxy server.
Apache AxKit
Apache AxKit is an XML Application Server for Apache. It provides on-the-fly conversion from XML to any format, such as HTML, WAP or text using either W3C standard techniques, or flexible custom code. AxKit also uses a built-in Perl interpreter to provide some amazingly powerful techniques for XML transformation.
Apache CouchDB
Apache CouchDB is a distributed, fault-tolerant and schema-free document-oriented database accessible via a RESTful HTTP/JSON API. Among other features, it provides robust, incremental replication with bi-directional conflict detection and resolution, and is queryable and indexable using a table-oriented view engine with JavaScript acting as the default view definition language. CouchDB is written in Erlang, but can be easily accessed from any environment that provides means to make HTTP requests. There are a multitude of third-party client libraries that make this even easier for a variety of programming languages and environments.
Apache Session
Apache::Session is a persistence framework designed to provide session management to web developers. It is intended to work with Apache and mod_perl, but it does not depend on them and will work with any web server. This module provides a set of classes that give the developer maximum functionality. Session data can be stored in a database, flat files, or shared memory.
Apertium is a machine translation platform. Data for a language pair can be used to translate text in various formats from one language to another.
'App' is a C++ preprocessor for that accepts as input arbitrary C++ code that may contain embedded constructs for specifying algebraic data types and associated pattern matching operations, and produces as output the same code with all such constructs translated to normal C++. 'app' provides for C++ the same capabilities that functional languages have regarding algebraic types. 'Applib' is the associated runtime library that supports the core run time requirements of the translated code, and which provides additional utilities.
The AppTools project includes a set of packages that Enthought has found useful in creating a number of applications. They implement functionality that is commonly needed by many applications
  • enthought.appscripting: Framework for scripting applications.
  • Provides a plugin for displaying documents and examples and running demos in Envisage Workbench applications.
  • Provides an abstraction for files and folders in a file system.
  • enthought.naming: Manages naming contexts, supporting non-string data types and scoped preferences.
  • enthought.permissions: Supports limiting access to parts of an application unless the user is appropriately authorised (not full-blown security).
  • enthought.persistence: Supports pickling the state of a Python object to a dictionary, which can then be flexibly applied in restoring the state of the object.
  • enthought.preferences: Manages application preferences.
  • enthought.resource: Manages application resources such as images and sounds.
  • enthought.scripting: A framework for automatic recording of Python scripts.
  • enthought.sweet_pickle: Handles class-level versioning, to support loading of saved data that exist over several generations of internal class structures.
  • enthought.template: Supports creating templatizable object hierarchies.
  • enthought.type_manager: Manages type extensions, including factories to generate adapters, and hooks for methods and functions.
  • enthought.undo: Supports undoing and scripting application commands.
Apparix enables fast file system navigation by bookmarking directories and later jumping to them using the mark. The contributed bash completion code allows one to complete on bookmarks and on subdirectories of the target directory.
Appctl is a framework for virtually any server software. It provides a central script called "ctl" which allows you to start, stop, restart, maintain, or query the current status of an application. It is meant as a completely generic replacement for application-specific startup/stop scripts. The project also supplies generic monitoring scripts for clusters, which can dramatically decrease clustering costs.
Apsfilter is a magic print filter with automatic file type recognition. It features on-the-fly decompression and conversion, and works on both PostScript and non-PostScript (via Ghostscript) graphical printers. This package makes printing many file formats much easier. Among the supported formats are: gzip, bzip2, compress, freeze, pack, ASCII, BMP, data (PCL, etc.), DVI, FBM, FIG, FITS, GIF, Group 3 fax, HTML, IFF ILBM, JPEG, Kodak Photo CD, MGR, MIFF, PBM/PGM/PNM/PPM, PDF, PNG, PostScript, RLE, SGI, Sketch, Sun raster, Targa, TIFF, troff, WPG, X pixmap, XCF. Note that actual support depends on the installed filter programs.
'apvsys' is a wrapper designed to manage different versions of applications (engineering tools, compilers, debuggers, etc.). It is not a source-code version control system like CVS or RCS. Users need only one path to access all versions of all tools; they can access a default version without any setting. The application settings needed to start a tool properly are centralized by the ApVSys administrator, so there is NO setting needed for the users. Hence, all the users share exactly the same environment, which greatly reduces the support needed.
'Ara' is a command-line utility for querying the Debian package database. It has a query syntax allowing you to search for boolean combinations of regular expressions. It includes a simple syntax and line-editing. A graphical interface, xara, is also provided.
Administration of Chess Tournaments has been monopolized by non-free software. The lack of free tools makes it very difficult for an arbiter to use GNU/Linux. Arbitools is born to become a colection of utilities for the most common tasks. It is desgined to make it easy to extend. It has been written in python in order to make multiplatform support easy. FEATURES:
  • Different types of files supported.
  • Updating data in different types of tournament database files.
  • Adding lists of players to already created files.
  • Getting standings from tournament database files.
  • Add custom tiebreaks to tournament database files.
  • Get tournament report files.
Archimedes Heckert gnu.tiny.png
Archimedes is for semiconductor device simulations. It is intended to assist engineers in designing and simulating submicron and mesoscopic semiconductor devices based on the Ensemble Monte Carlo method. It is able to handle a wide variety of materials and structures, which are described through simple scripts. It is a 2D Monte Carlo simulator which can take into account all the relevant quantum effects by means of Bohm effective potential. The description of the device is very general and made by means of a simple script language, which makes GNU Archimedes a powerful tool for the simulation of quite general 2D semiconductor devices. Some very interesting results have been obtained and they will be put, as soon as possible, on the web page (some results are already available in the documentation).
archives2git is a shell script that recreates a poor-man’s Git history from the release archives of a project.
'Archmbox' parses regular BSD mailbox files and archives all messages older than a specified date. The date to identify if a message is old or not is specified with either a standard iso format date (yyy-mm-dd) or an offset in days. The program supports regular expression based archiving rules as well as recursion. Archmbox can also be used on a whole tree of mailboxes.
'arfg,' originally intended to generate Fortran code, is a simple pipelined meta-language. Its power comes from the tools it employs: GNU m4 for macro expansion, a diversion filter for accumulation and re-location of text blocks, and the embedded Perl interpreter eperl.
Arg_parser is an argument parser that follows POSIX and GNU conventions for command line arguments. The C++ version is implemented as a C++ class, while the C version is implemented as a single struct plus associated functions. Both are simpler, easier to use, and safer that `getopt_long'.
Aris Heckert gnu.tiny.png
A sequential proof program, designed to assist anyone interested in solving logical proofs. Aris supports both propositional and predicate logic, as well as Boolean algebra and arithmetical logic in the form of abstract sequences. It uses a predefined set of both inference and equivalence rules, however gives the user options to use older proofs as lemmas, including Isabelle's Isar proofs.
'arpalert' listens on a network interface, catches all conversations of MAC address to IP request, and compares the MAc addresses it detected with a pre-configured list of authorized addresses. If the address is not on this list, arpalert launches an alert script with the MAC address and IP address as parameters. 'arpalert' can run in daemon mode and is very fast (low CPU and memory consumption). It responds at signal SIGHUP (configuration reload) and at signals SIGTERM, SIGINT, SIGQUIT and SIGABRT (Kwhere it stops itself).
Arping is an ARP level ping utility. It's good for finding out if an IP is taken before you have routing to that subnet. It can also ping MAC addresses directly.
'ascii' takes a command line argument, recognizes in it any of the synonyms for an ASCII character and prints all the others. Synonyms include decimal, octal and hex numerical values, ASCII mnemonics, ISO code points and official names, HTML/SGML style entities, and slang names ranging from common to obscure. It is also a handy base converter for values in the range 0-255.
'Ascii2Binary' reads textual representations of numbers separated by whitespace and produces the binary equivalents as output. Users select the type and size/precision of the binary output with command line flags. The program is useful for generating test data and linking programs that generate textual output to programs that require binary input. The number formats supported are those supported by strtod(3), strtoll(3), and strtoull(3).
AsciiDoc is a text document format for writing short documents, articles, books and UNIX man pages. AsciiDoc files can be translated to HTML and DocBook markups using the asciidoc(1) command. AsciiDoc is highly configurable: both the AsciiDoc source file syntax and the backend output markups (which can be almost any type of SGML/XML markup) can be customized and extended by the user.
'AsmEdit' is an editor and IDE written in assembler. It includes source highlighting and support for external helper programs for compiling and debugging. It contains word processing features such as paragraphing and spelling in a binary of less than 20,000 bytes.
'AsmRef' includes a menu system and search function to display data on the Linux kernel and most topics associated with x86 assembler development on GNU/Linux systems.
Aspell Heckert gnu.tiny.png
GNU Aspell is a spell checker that can be used either as a library or as an independent spell checker. It does a much better job of coming up with possible suggestions than other English language spell checkers. Other technical enhancements over Ispell include shared memory for dictionaries and intelligent handling of personal dictionaries when more than one Aspell process is open.
Asset Trip
Asset Trip bundles JavaScript and CSS files at deploy time. The assets are then served from a Git-esque object store in the application’s public directory.
Association Freezer
Freeze an Active Record belongs_to association to ignore any future changes.
Astroconst makes header files in C, Fortran, Perl, IDL, Java, and GNUplot defining many astrophysical constants useful for scientific programming. A single modifiable data file automatically generates these header files, so you can add new constants to the data file and generate new header files in all appropriate languages without fiddling with each header file individually.
Artistic Style is a fast and small reindenter and reformatter of C, C++ and Java source codes. Using a series of filters, astyle takes code written in one editor and automatically reindents and reformats the source code files to eliminate unneeded spaces and tabs and standardize the look of the code.
'Asymptote' is a script-based vector graphics language for technical drawing, inspired by MetaPost but with an improved C++-like syntax. It provides for figures the same high-quality level of typesetting that LaTeX does for scientific text. It is a programming language, not just a graphics program, so it can use the best features of both scripts and GUIs. High-level graphics commands are implemented in the language itself, so they can be tailored to specific applications. Labels and equations are typeset with LaTeX for high-quality PostScript output.
When the atchange program is running, it watches one or more files. When any of those files changes, the program will wake up and do any actions you want. Tasks such as modifying and compiling a program, modifying a data file and using it, or editing atext and typresetting it can be automated with a single typed command such as: atchange myprogram "compile program" By setting up 'atchange' once before starting a repetitive task, one can avoid hundreds of mouse movements.
Atheism is a multi purpose Perl script for X-Chat. Its main features include auto-away functions with message logging, announcement of away reason and coming back, announcement of songs playing in XMMS on selected channels, a user-friendly interface, detailed documentation, the ability to automatically save configuration in a file, and more.
'atkins' examines variables, tables, and linked lists in the running kernel. Subcommands can be entered to show formatted kernel administration of processes, open files, incore inodes, page cache buffers, sockets, etc. Memory dumps can be shown using virtual or physical addresses, or using addresses within user space of a particular process. Furthermore stack backtraces can be printed e.g. to determine the reason why a particular process is currently in a wait-state. Note that atkins requires a certain level of knowledge about the Linux kernel.
'atlc' (Arbitrary Transmission Line Calculator) is a computer aided design (CAD) package for designing and analysing electrical transmission lines and directional couplers of totally arbitrary cross section, with an arbitrary number of different dielectrics. The analysis programs in 'atlc' lets users find the electrical properties of a transmission line or coupler whose physical dimensions are known. The design programs lets users physically realise a transmission line or coupler with certain given electrical properties. The package supports multiple CPUs, as some parts are CPU intensive. It is most likely to be useful to radio amateurs.
atool manages file archives (tar, tar+gzip, zip, etc). 'aunpack' extracts files from an archive, andt overcomes the dreaded "multiple files in archive root" problem by first extracting to a unique subdirectory, and then moving back the files if possible. aunpack also prevents local files from being overwritten by mistake. Other commands provided are apack (for creating archives), als (for listing files in archives), and acat (for extracting files to stdout).
Atop is an ASCII full-screen performance monitor similar to the 'top' command. For a given interval, it shows system-level activity related to the CPU, memory, swap, disks and network layers, and for every active process it shows the CPU utilization in system and user mode, the virtual and resident memory growth, priority, username, state, and exit code. It also shows process level activity for processes which finished during the last interval. Atop shows only the active system-resources and processes, and only the deviations since the previous interval. Unfortunately, the standard kernel does not maintain counters about the number of disk and network accesses issued per process. Kernel patches will be made available to add these counters; the current version of atop can already display them.
Atrack is a ntrack / Bittorrent tracker designed from the ground up to run on Google's App Engine grid. Its main goals are:
  • As small codebase as possible.
  • As fast as possible.
  • As low bandwidth usage as possible.
  • As low memory usage as possible.
  • For this it relies heavily (and almost completely) on memcached, no data is stored anywhere, and it lets memcached do most of the lifecycle management. Atrack also aims to respect your privacy: other than what is needed for the most basic tracking (hashes/keys and ip/ports) atrack gathers no information whatsoever. Beyond that no aggregate statistics are kept of anything (at least once the testing/debugging phase is over), and nothing is stored permanently anywhere, not even hashes and ip/ports, they are kept in memory until they are expired by memcached and never written to disk or any other kind of permanent storage.
'atsar' detects performance bottlenecks on GNU/Linux systems. It is similar to 'sar' on other *NIX platforms. Atsar shows what is happening on the system at a given moment by supplying an interval as command-line argument; however, it also keeps track of the past system load by maintaining history files from which users can extract information. The package gathers statistics about CPU utilization, disks and disk partitions, memory and swap, tty's, TCP/IP (v4/v6), NFS, and FTP/HTTP traffic.
aubio is a library for audio labeling. Its features include segmenting a sound file before each of its attacks, performing pitch detection, tapping the beat and producing midi streams from live audio. The name aubio comes from 'audio' with a typo: several transcription errors are likely to be found in the results too. The aim of this project is to provide these automatic labeling features to other audio softwares. Functions can be used off-line in sound editors and software samplers, or online in audio effects and virtual instruments.
Auctex Heckert gnu.tiny.png
AUCTeX is an integrated environment for producing TeX documents in Emacs. It allows many different standard TeX macros to be inserted with simple keystrokes or menu selection. It offers an interface to external programs, enabling you to compile or view your documents from within Emacs. AUCTeX also features the ability to place inline previews of complex TeX statements such as mathematical formulae. AUCTeX provides by far the most wide-spread and sophisticated environment for editing LaTeX, TeX, ConTeXt and Texinfo documents with Emacs or XEmacs. Combined with packages like RefTeX, Flyspell and others it is pretty much without peer as a comprehensive authoring solution for a large variety of operating system platforms and TeX distributions.
AuctionGallery is a terminal script that creates picture galleries for the purpose of putting them into auctions like eBay or Yahoo! Auctions. It can also be used to automatically generate HTML templates for auction descriptions. It is aimed at power-sellers who have hundreds of products listed every day and need an efficient way of generating galleries and organizing pictures in a coherent directory structure.
Audio Utils
A collection of bash and perl scripts that help convert audio files.
  • aac2ogg - a quick and dirty AAC to OGG Vorbis converter.
  • wma2ogg - simple bash script that uses mplayer to convert ugly WMA files to OGG Vorbis.
  • reencode - a simple bash script that lets you re-encode MP3 files to higher/lower bitrates. Useful when the resulting MP3 file is going to be on a low-memory device (ie. "MP3" players).
Audio codec 2
'Audio codec' is part of the LAME project, which is the source code for a fully GPL'd MP3 encoder. The project's goal is to improve the psychoacoustics, noise shaping and speed of MP3.
audio convert is a script that converts between WAV, Ogg, MP3, MPC, FLAC, APE, and WMA files. It has an easy-to-use interface that makes it possible to fill in the tags for a few formats and choose the quality of compression. The script was initially designed for the Nautilus file browser and can be easily installed into Nautilus by copying it to the nautilus-scripts directory. You can then right-click on files and choose "audio-convert" from the "scripts" menu. The script is also known to work on rox or directly from a shell.
Aumix is a program for adjusting audio mixers from the command line or scripts, or interactively at the console or a terminal with a full-screen, ncurses-based interface or a GTK-based X interface.
Detects network and SSH server availability, mounts registered accesses and maintains them mounted accross network changes and interruptions.
'authfail' is a tool for adding IP addresses to an ACL when entities from those addresses attempt to log into a system, but cause authentication failures in auth.log. It reads data from auth.log in real time and adds the IP into netfilter with a DROP/REJECT policy.
'authz-tools' is a set of tools to manipulate authz files (as used by mod_authz_svn). It currently contains two utilities:
authz-tool -- extracts and modifies information in a authz file from command line authz-admin -- a cgi when you have numerous repositories served with help of SVNParentPath directive (see mod_dav_svn module documentation)
'auto-autofs' searches block devices (via /proc) and disk partitions (via fdisk) and generates an automounter map. It can also work as an automounter program. It also generates an HTML file for easy access to the devices, so users can mount (and umount) partitions by clicking on a link.
AutoCodeGenerator is a tool which is able to generate other programs that insert, delete, or update database records for a number of different database programs. Programs can be generated in Python, bash, ksh, Java, C, or other languages; the package also generates code for various database servers via a plain text file.
AutoConvert is an intelligent Chinese Encoding converter. It uses built-in functions to judge the type of the input file's Chinese Encoding (such as GB/Big5/HZ), then converts the input file to any type of Chinese Encoding you want. You can use autoconvert to automatically convert incoming e-mail messages. It can also optionally handle the UNI/UTF7/UTF8 encoding.
If you are a broadband or dial-up user who doesn't have a firewall script, you need to get one to protect yourself. AutoFW is intended to help you do that with no hassles. Many people when connecting to the internet need a firewall script made for them so they can surf the net without being susceptible to various attacks. Most, if not all (until now :-), of the existing scripts are written for a large range of requirements and require some tweaking to make them work for a specific user. However many users do not know which parameters to fill in the script config file. AutoFW intends to provide a simple firewall script that you just need to fire and forget. You make sure to run it on computer start-up or just before connecting to the net, and it will detect network condition and setup appropriate firewall rules for you. In order to be "smart" AutoFW has to be limited, the current scope of AutoFW are standard broadband connections, it will also cover dial-up users and stand-alone servers.
AutoScrapbook helps automate the creation and maintenance of an online photo gallery. It creates the thumbnails and Web pages for you by asking you for descriptions of the pictures. It works best when run within X (for picture viewing), but you could use it through only a terminal and a separate browser.
AutoUpdate is a simple Perl script which performs a task similar to Red Hat's up2date or autorpm. It can be used to automatically download and upgrade RPMs from different FTP sites. Moreover, it can also be used to keep a server with a customized (Red Hat) distribution plus all clients up to date. The program should work with any rpm based distribution. It's designed to run from a cron job and keep output to a minimum. It will try to resolve dependencies and pick the right architecture.
Autobench is a collection of scripts to automate the benchmarking a web server (or for conducting a comparative test of two different web servers). It is a wrapper for httperf. Autobench runs httperf repeatedly against each host, increasing the number of requested connections per second each time. It extracts the significant data from the httperf output, and delivers a CSV or TSV file which can be imported directly into a spreadsheet for analysis or GNUplotted using the included bench2graph script.
'Autobuild' processes output from building software, primarily focused on packages using Autoconf and Automake, and generates HTML summaries. The output includes project name, version, build host types, build host name, and indication of success or failure. The output is indexed in many ways to simplify browsing.
AutoClass solves the problem of automatic discovery of classes in data (sometimes called clustering or unsupervised learning), as distinct from the generation of class descriptions from labeled examples (called supervised learning). It aims to discover the 'natural' classes in the data. AutoClass is applicable to observations of things that can be described by a set of attributes, without referring to other things. The data values corresponding to each attribute are limited to be either numbers or the elements of a fixed set of symbols. With numeric data, a measurement error must be provided.
Autoconf Heckert gnu.tiny.png
Extensible package of m4 macros that produce portable shell scripts to automatically configure software source code packages. These scripts can adapt the packages to many kinds of UNIX-like systems with minimal manual user intervention. Autoconf requires GNU M4. You must install GNU M4 1.4.5 or later before configuring Autoconf, so that Autoconf's configure script can find it. The configuration scripts produced by Autoconf are self-contained, so their users do not need to have Autoconf or GNU M4 installed.
'Autodist' is a source distribution management system that lets users define what is included in and excluded from a distribution and what license is used. It is especially targeted at large software projects that create multiple distributions from a source tree. Autodist supports distribution management in directory, file, and file content level, and automatic relicensing of a distribution. Please note that Autodist is not a binary packaging system. It is specifically used to create source distributions. A binary packaging system, however can be hooked to the distribution creation process, if needed.
This is a candidate for deletion: 1.Not found. 'Autofiler' is an automatic server-side mail filer application based on Bayesian text classification. In combination with an IMAP server, autofiler files messages in folders automatically and with complete transparency.
Autogen Heckert gnu.tiny.png
'AutoGen' generates program files that contain repetitive text with varied substitutions. It simplifies the maintenance of programs with large amounts of repetitive text, which is useful if several blocks of such text must be synchronized. It includes:
  • AutoOpts - automates the handling of command line, environment and config file options, including usage text, man pages, and the invoking section of an info doc
  • getdefs - extracts AutoGen definitions from stylized comments embedded in source code
  • columns - tabularizes lists for improved output appearance
  • AutoXDR - NFSv4 specifies that its remote procedure calls be batched. AutoGen generates the code for marshalling and unmarshalling the arguments on both sides of the RPC request
  • AutoFSM - produces a transition table and prototype finite state machine where it is possible to determine a state transition type (token code) without reference to the current state
  • xml2ag - lets AutoGen use any XML file as if it were a set of AutoGen definitions
Autojump: a cd command that learns One of the most used shell commands is "cd". A quick survey among my friends revealed that between 10 and 20% of all commands they type are actually cd commands! Unfortunately, jumping from one part of your system to another with cd requires to enter almost the full path, which isn't very practical and requires a lot of keystrokes. autojump is a faster way to navigate your filesystem. It works by maintaining a database of the directories you use the most from the command line. The jstat command shows you the current contents of the database. You need to work a little bit before the database becomes useable. Once your database is reasonably complete, you can "jump" to a directory by typing: j dirspec where dirspec is a few characters of the directory you want to jump to. It will jump to the most used directory whose name matches the pattern given in dirspec. Autojump supports tab-completion. Try it!
'autolame' automatically encodes your .wav files. Put them in the "in" directory, wait a bit, and you'll find your .mp3 files in the "out" directory. No further user interaction is required, but you do need an external encoder program is needed.
Automake Heckert gnu.tiny.png
'Automake' automatically generates make files compliant with the GNU coding standards. It was inspired by the 4.4 BSD make and include files, but aims to be portable and to conform to the GNU standards for Make file variables and targets. The input files are called; the output files are called They are intended for use with autoconf. Automake requires certain things to be done in your This package also includes the "aclocal' program, which generates an 'aclocal.m4' based on the contents of '' It is useful as an extensible, maintainable mechanism for augmenting autoconf.
'autopackage' builds packages that will run on different distros. These packages support both graphical and terminal frontends, support dependency checking and resolution, and use deep desktop integration. Tools to enhance the packaged software such as binreloc and relaytool are also included . By providing an autopackage, developers ensure that users always have an easy way of installing the latest release of their software.
Autopoweroff is a script that shuts down a computer at a set time if set conditions are met. It works well on home router/firewalls where the machine can be switched off every night and powered back up in the morning, and can be configured to not shut down until all other computers on the network fail to respond to pings.
autoproject interviews the user, then creates a source package for a new program which follows the GNU programming standards. The new package uses autoconf to configure itself, and automake to create the Makefile. `make distcheck' succeeds. . The idea is that you execute autoproject just once when you start a new project. It will ask a few questions, then create a new directory and populate it with standard files, customized for the new project. . Optionally, the new package will use a command line parser generator. Currently, autoproject supports two parser generators: clig by Harald Kirsch ( (see, and autogen by Bruce Korb ( (see
Autotrace is a program which converts bitmap images to vector images. It can import images in BMP, TGA, PNM, PPM, PGM, PBM and those supported by ImageMagick, and can output Postscript, svg, xfig, swf, pstoedit, emf, dxf, cgm, mif, p2e and sk
The avdbtools package (short for aviation database tools) is a collection of software designed to help create and maintain databases for aviation applications. This release of avdbtools is a single application that converts the National Airspace Data files distributed by the Aeronautical Information Systems Division of the Federal Aviation Administration into formats that other aviation related applications can use.
Arbitrary performance test between avro and thrift.
'avsomat' is a framework for automating the scheduling of variable star observations, identification and photometry of variable stars on CCD images, and the reporting, management, and verification of results. It uses electronic charts of the star fields in which variable stars appear, and maintains a view of the current results in the form of a collection of interlinked Web pages.
Awesome (node.js)
A Redis implementation in node.js.
'Anti-Web httpd' is a single-process Web server that relies on its inherent simplicity to be robust and secure. It has support for virtual hosts, CGI, IPv6, and more. In its default mode, though, it is easy to launch and requires no configuration files. It implements the bare minimum of HTTP 1.1 necessary to be a productive web server. It doesn't support certain requests like HEAD (anymore), but normal users will never notice the difference. POST request support is in the works, as is HTTPS/SSL support.
Axiom is a general purpose Computer Algebra system. It was originally created under the name Scratchpad and has seen development at companies such as IBM and NAG. Axiom provides a mature, powerful, strongly typed environment designed to enable research into mathematical algorithms and theory. It is also useful for engineering or scientific purposes.
BASH Debugger
BASH Debugger provides a patched BASH that enables better debugging support as well as improved error reporting. It also contains the most comprehensive source code debugger for BASH that has been written. It can be used as a springboard for other experimental features (such as adding hashtables), since development is maintained openly and developers are encouraged to participate.
BASM is a user friendly and easy to use assembler for The Basic Computer, capable of creating the object, list and hex file and giving detailed error reports. It's more of academic use for students who wish to understand how does The Basic Computer actually work.
jQuery plugin for working with BBC programme data
Using a simple array as input, a 2-dimensional Fast Fourier Transform consists of two one-dimensional FFTs performed (for instance) on each line first, and on each column next. An important limitation in FFT computer applications dealing with large arrays is the fact that the algorithm is not well suited to parallelization, due to the huge amount of data that has to be transfered between computers. Since the transfers are proportional to the number of operations, network time soon becomes prominent when the number of processors is high. This program uses vectorization as an alternative to parallelization methods.
Biabam Is A Bash Attachment Mailer. In other words, BIABAM lets users send email attachments from the command line. It is similar to using Mutt to send attachments on the command line, but without the overhead of a complete email client.
BINS is a valid HTML 4.0 photo album generator that supports internationalization, EXIF, and customizable charset encoding, including UTF-8 (Unicode). Albums can contains other sub-albums. Albums can be customized globally, per picture, or per album/subalbum by using template and configuration variables. The number and size of scaled pictures can be chosen in pixels or percentage of the original image. Several description fields (date, location, etc.) can be associated with the pictures; you can add additional description fields. A command line utility can set or edit description fields. BINS uses the EXIF data structure found in some pictures to automatically fill some fields (most notably, date and time) and to produce a page providing all information available on the picture, as well as the DigiCam settings when the photo was taken. All image meta-data are stored in XML files.
BIRD is a dynamic routing daemon for UNIX-like systems. It should support all routing protocols used in the contemporary Internet, such as BGP, OSPF, RIP, and their IPv6 variants. It also has a very flexible configuration mechanism, and a route filtering language.
The BLAS (Basic Linear Algebra Subprograms) are routines that provide standard building blocks for performing basic vector and matrix operations. The Level 1 BLAS perform scalar, vector and vector-vector operations, the Level 2 BLAS perform matrix-vector operations, and the Level 3 BLAS perform matrix-matrix operations. Because the BLAS are efficient, portable, and widely available, they are commonly used in the development of high quality linear algebra software, LAPACK for example.
BRL-CAD includes an interactive geometry editor, parallel ray-tracing support for rendering and geometric analysis, path-tracing for realistic image synthesis, network distributed framebuffer support, image-processing and signal-processing tools.
'BSFlite' is a minimalistic, line-based AIM client. It is designed with simplicity and efficiency in mind and thus utilises as little RAM and CPU time as possible in order to be friendly to multiuser systems. It uses the OSCAR protocol to communicate with the AIM service. Instead of having a full screen console interface, BSFlite uses a command shell interface that lets you type without needlessly sifting through windows. It supports most standard AIM features, except chat rooms and block lists.
BW whois 2
BW whois is a whois client that works as a command line tool or as a Web application. It includes configurable with self-detecting CGI support, multiple security options in the CGI mode, a mature TLD table, database caching (using MySQL), and many more options and features.
BWidget Toolkit
The BWidget Toolkit is a high-level widget set for Tcl/Tk that uses native Tcl/Tk 8.x namespaces. They feature a professional look and feel and don't require a compiled extension library. Tools included are XLFDfont, assert, clonename, focus, get3dcolor, getname, grab, lreorder, parsetext, and place.
'Byld' helps you build a GNU/Linux distribution on a single floppy disk to use as you want (net client, rescue disk...). It is not a complete distribution: it was made only to build a mini distribution on a floppy. You can use it however you want as is (follow quick installation instruction below) but its best use is to configure and build your own floppy distribution.
'Backroute' is a lightweight shell script, that monitors a primary router, and switches to a backup router and back as the primary router comes back online. Backroute is useful if you want to have automatic router failover to a backup router, but want to avoid the complexities of dynamic routing daemons.
Backup Manager
Backup Manager is a small and basic tool for generating archives. It is designed for those who don't want an obfuscated tool for making tarballs. It can make tar, tar.gz,, and zip archives. It can be run in a parallel mode with different configuration files. Archives are kept for a given number of days. Its upload system can use ftp or scp to transfer the generated archives to a list of remote hosts .Automatically burning archives to removable media such as CD or DVD is also possible. The configuration file is very simple and basic.
Backup Shell
'bksh' is a simple program designed to be a shell for SSH. It copies its input to a given backup file. Its goal is to allow administrators to create backup-only accounts. It works for either tape only or file & tape backups, and works as a shell so clients have very limited server access.
'backup2l' generates, maintains, and restores backups on a mountable file system. The main design goals are low maintenance effort, efficiency, transparency, and robustness. In a default installation, backups are created autonomously by a cron script. It supports hierarchical differential backups with a user- specified number of levels and backups per level. This means the number of archives that must be stored only increases logarithmically with the number of differential backups since the last full backup. Hence, small incremental backups can be generated at short intervals while time- and space-heavy full backups are only run as needed.
'Backuper' makes backups on CD-R or DVD-R media. It uses cdrtools or dvd +rw-tools and some standard *nix utilities and detects most failures and abnormal situations.
Backupninja allows you to coordinate system backup by dropping a few simple configuration files into /etc/backup.d/. Most programs you might use for making backups don't have their own configuration file format. Backupninja provides a centralized way to configure and schedule many different backup utilities. It allows for secure, remote, incremental filesytem backup (via rdiff-backup), compressed incremental data, backup system and hardware info, encrypted remote backups (via duplicity), safe backup of MySQL/PostgreSQL databases, subversion or trac repositories, burn CD/DVDs or create ISOs, incremental rsync with hardlinking.
Bacon is a small RSpec clone weighing less than 350 LoC but nevertheless providing all essential features.
Bacula is a set of programs that allow you to manage the backup, recovery, and verification of computer data across a network of different computers. It is based on a client/server architecture and is efficient and relatively easy to use, while offering many advanced storage management features that make it easy to find and recover lost or damaged files.
Balance is a simple but powerful generic TCP proxy with round-robin load balancing and failover mechanisms. Its behaviour can be controlled at runtime using a simple command line syntax.
BannerKiller is a very simple HTTP proxy that lets you filter pages by forbiding pages whose URLs match some pattern. It can be used for censorship or to filter ads, and is particularly valuable for people with slow connections who normally have to wait for banner ads to download before they can view a page. The software is no longer currently being developed; the authors suggests the program SwiftSurf in place of bannerkiller.
bar stands for Backup And Restore. This programme has been designed for a user who desires to backup his Home folder each week or day using cron or a similar programme and transferring those backups at the end each month to another medium for safer storage.
'barcat' is just like 'cat' but displays an ASCII progress bar.
Barcode Heckert gnu.tiny.png
GNU barcode is a tool to convert text strings to printed bars. It supports a variety of standard code to represent the strings and creates postscript output. Features include:
  • available as both a library and a command line frontend (so you can include barcode printing in your application)
  • supports UPC, EAN, ISBN, CODE39, and other encoding standards
  • Postscript and encapsulated postscript output (other backends can be added as needed)
  • Accepts sizes and positions as inches, millimeters, and centimeters
  • Can create tables of barcodes (to print labels on sticker pages)
Barista is very, very similar to bistro_car (infact, credit where credit is due - it shares similar code / is almost a fork). The main difference being, it lets you use coffee as you would javascript. Simply put, Write coffee and place it in app/coffeescripts and Barista will automatically serve it as if it was placed in public/javascripts.
bas55 is an editor and interpreter for the Minimal BASIC programming language, as defined by the ECMA-55 standard.
'basE91' is an advanced method for encoding binary data as ASCII characters. It is similar to UUencode or base64, but is more efficient. The overhead produced by basE91 depends on the input data. It amounts at most to 23% (versus 33% for base64) and can range down to 14%, which typically occurs on 0-byte blocks. This makes basE91 very useful for transferring larger files over binary insecure connections like e-mail or terminal lines.
Bash Heckert gnu.tiny.png
Bash is the shell, or command-line interpreter, of the GNU system. It is compatible with the Bourne Shell, but it also integrates useful features from the Korn Shell and the C Shell and new improvements of its own. It allows command-line editing, unlimited command history, shell functions and aliases, and job control while still allowing most sh scripts to be run without modification.
Bash Blogger
Bash Blogger is a shell script that generates CSS styled XHTML 1.1 static Web pages.
Bash.Diff is a patch against Bash that incorporates many features from Awk, Python, Zsh, Ksh, and others. In the main core, it adds the following: new brace expansion {a..b}; new parameter expansion ${var Pipe.png...}; new command substitution $(=...); string concatenation (+=); extended for, while, and until loops; extended case statement; and new try-block with integer exception. As builtin commands, it adds the following: sscanf(3) wrapper; extensive array and regex(3) operations; GDBM, SQLite, PostgreSQL, and MySQL database interfaces; and an HTML template engine (BASP).
BashBurn (Previously Magma) is a bash script designed to make CD burning at the console easier. Currently BashBurn can:
  • Burn data CDs/DVDs (Including CDRWs)
  • Burn music CDs
  • Burn CD/DVD-images
  • Rip data/music CDs
  • Manipulate ISO-files
  • and probably more…
This is a candidate for deletion: The wayback machine doesn't have the source code and I can't find the project elsewhere on the Web Bash.Diff is a patch against Bash shell. In the main core, it adds the following syntax: {a..b}; ${var Pipe.png...}; then-else-fi to for/while/until/case statements; try-block with string exception. As builtins, it provides adds the following: sscanf(3), ctype.h wrappers; array, regex(3), stack, queue operations; GDBM, SQLite, PostgreSQL, MySQL database interfaces; HTML template engine (BASP); Expat XML parser interface; x-y char plot; DOS, CSV, Awk support; Libwebserver interface; RPN calculator with <math.h> functions; and, GTK+2 interface for GUI dialog.
Basic File Splitter ( bfsplit )
Basic File Splitter (bfsplit) is a command line program which allow you to split a file into separated pieces and then rebuild the original file from parts. It can be used for example to split a big file in order to put it on several floppies. bfsplit is very small and easy to use.
'Batchput' transfers files from a local directory, matching a specified regex, to an FTP server. It is mainly for transfering "incoming" files continually to another host by being called regularly from crontab or similar. It does this safely and efficiently by using per-directory locking to avoid collisions between different batchput processes, allowing configuration of notification in case of error, and moving transferred files to a local backup location where they can be archived or deleted.
Bayonne Heckert gnu.tiny.png
Bayonne is the telephony server of the GNU project. Based on the ACS project, it offers a multi-line interactive voice response telephony server which may be scripted and telephony plug-ins for runtime driver configuration directly extended thru modular plugins. Bayonne also features "TGI" for making Perl applications "telephony aware". Support has been extended to include XML parsing and support has been started on VoIP integration to support next generation telephone networks. The project is not fully completed but is moving steadily towards producing a finished project that may be used to build telephony based system administration, home automation, automated attendant, v-commerce, and voice messaging systems.
Bazaar Heckert gnu.tiny.png
Bazaar (``bzr``) is a decentralized revision control system, designed to be easy for developers and end users alike. It supports both a distributed workflow as well as the classic centralized workflow. This package is part of the GNU project, and a project of Canonical.
BBDB is the Insidious Big Brother Database for GNU Emacs. It provides an address book for email and snail mail addresses, phone numbers and the like. It can be linked with various Emacs mail clients (Rmail, Gnus, VM, mu4e). BBDB is fully customizable. BBDB recently went through a major re-write which has been released as BBDB 3. BBDB 3 is fully compatible with GNU Emacs 23 and 24 (but not with older versions of GNU Emacs nor -so far- with Xemacs).
bbe is a sed-like editor for binary files. bbe performs basic byte operations on blocks of input stream. bbe is command line tools developed in GNU/Linux environment.Features include:
  • Non-interactive command-line tool.
  • Reads input stream in arbitrary blocks, not as lines as sed.
  • Input blocks can be defined as offset and length, just length, or using start and stop strings.
  • Basic commands: insert, delete, change, replace and convert data.
  • Commands can be given in command line or read from script-file.
  • Blocks can be written either to standard output or file.
Bc Heckert gnu.tiny.png
'Bc' is an arbitrary precision numeric processing language. Its syntax is similar to C, but differs in many substantial areas. It supports interactive execution of statements. 'Bc' is a utility included in the POSIX P1003.2/D11 draft standard. This version does not use the historical method of having bc be a compiler for the dc calculator (the POSIX document doesn't specify how bc must be implemented). This version has a single executable that both compiles the language and runs the resulting 'byte code.' The byte code is not the dc language.
Bcaml is a set of tools dedicated to B formal specifications processing. The distributions is provided as a set of (OCaml) 'modules' Each module implements a tool and/or a library.
Bcfg2 allows you to describe and deploy complex configurations across pools of GNU/Linux and Unix systems, leading to a consistent, reproducible, and verifiable description of your environment. Bcfg2's visualization and reporting tools aid in your day-to-day administrative tasks. Its unique analysis features help you cope with the ever-increasing complexity of your networks.
'bchunk' converts CD images in the raw BIN/CUE format to a set of tracks in ISO 9660 format, which can be then written on a CD-R using cdrecord. Audio tracks are written in CDR (native CD audio) or WAV format.
Beancounter enables stockmarket data analysis and performance evaluation. Its first mode is data gathering - both current data (e.g. closing prices, high, low, volume etc.) and historical price data can be retrieved efficiently using multiple securities per requests, and stored in an SQL database via the command line. Its second mode is data analysis, based on the previously stored data. This includes performance reports and a Value-at-Risk analysis. It supports stock markets in North America, Europe, and Asia, foreign exchange rates, US mutual funds, and US options.
Beautiful Soup
Beautiful Soup is a Python HTML/XML parser designed for quick turnaround projects like screen-scraping. Three features make it powerful:
  • 1. Beautiful Soup won't choke if you give it bad markup. It yields a parse tree that makes approximately as much sense as your original document. This is usually good enough to collect the data you need and run away.
  • 2. Beautiful Soup provides a few simple methods and Pythonic idioms for navigating, searching, and modifying a parse tree: a toolkit for dissecting a document and extracting what you need. You don't have to create a custom parser for each application.
  • 3. Beautiful Soup automatically converts incoming documents to Unicode and outgoing documents to UTF-8. You don't have to think about encodings, unless the document doesn't specify an encoding and Beautiful Soup can't autodetect one. Then you just have to specify the original encoding.
  • Beautiful Soup parses anything you give it, and does the tree traversal stuff for you. You can tell it "Find all the links", or "Find all the links of class externalLink", or "Find all the links whose urls match "", or "Find the table heading that's got bold text, then give me that text." Valuable data that was once locked up in poorly-designed websites is now within your reach. Projects that would have taken hours take only minutes with Beautiful Soup.
Beep lets you control pitch, duration, and repetitions unlike printf("\a"). It lives inside shell/Perl scripts and allow more granularity than you would have otherwise. It is controlled completely through command line options. It's not complex, but it makes system monitoring (or whatever else it gets hacked onto) that much more informative.
The Benchmark::Timer class allows you to time portions of code conveniently, as well as benchmark code by allowing timings of repeated trials. It is perfect for when you need more precise information about the running time of portions of your code than the Benchmark module will give you, but don't want to go all out and profile your code.
Berkeley Database
The Berkeley Database is an embedded database system. Its access methods include B+tree, Extended Linear Hashing, fixed and variable-length records, and Persistent Queues. Berkeley DB provides full transactional support, database recovery, online backups, and separate access to locking, logging and shared memory caching subsystems. The program supports C, C++, Java, Tcl, Perl, and Python APIs.
Bestfit is a small program to determine which files that should be put on a CD (or other media), so that as little space as possible is wasted. It is very easy to use: you specify files on the command line, and bestfit prints the names of those that were selected. Alternatively, bestfit can execute a command for each selected file (eg. to move them to a different directory).
Beyond The Titanic
Adventure awaits you onboard the RMS Titanic. Can you survive the sinking and make it home to San Francisco?
bff is a relatively fast (due to slight optimizations) Brainf*ck language interpreter written in portable C.
bfloop is an interpreter for the BLooP and FLooP programming languages described in the book Gödel, Escher, Bach by Douglas Hofstadter. BLooP is a language that has only bounded loops, in other words before you enter a loop you have to give a fixed upper limit on the number of times to run the body, and you can’t change the limit while in the loop. It is impossible for a BLooP program to run forever; it always quits with an output in some finite time, an upper limit for which is predictable in advance. Functions that BLooP can compute are called primitive recursive functions, and it turns out that not all functions are primitive recursive. The FLooP language is the same as BLooP with the addition of an unbounded loop (MU-LOOP). FLooP can calculate anything your computer can calculate, but you cannot say in general whether a FLooP program will eventually terminate.
'bfr' maintains a buffer of data collected from stdin, emitting the data to stdout. It will both read and write at the speed each stream can handle, and allows you to set thresholds of when to start outputting and inputting again (after reaching a full buffer), the size of the buffer, as well as monitor content/throughput with an optional progress-bar. It also includes bfp, a variant especially written to play audio data using /dev/dsp.
BHL is an Emacs mode that lets you convert plain TXT files into HTML, LaTeX, and SGML (Linuxdoc) files. The BHL mode handles common font-styles, three levels of sections, footnotes, and any kind of lists, tables, URLs and horizontal rules. It also handles a table of contents: you can browse the toc, insert the toc where you want, and update the sections' numbers with one keystroke.
'bib2xhtml' is a program that converts BibTeX files into HTML (specifically, XHTML 1.0). The conversion is mostly done by specialized BibTeX style files, derived from a converted bibliography style template. This ensures that the original BibTeX styles are faithfully reproduced. Some post-processing is performed by Perl code. This is an update of the bib2html program written by David Hull in 1996 and maintained by him until 1998.
'BidMonkey' automatically places a bid on an eBay auction at the last minute. It will run in the foreground or background, and requires only basic information from the user, such as username, password, item number, and the maximum bid to place. Its most unique feature is that it will automatically determine the auction ending time. All you have to do is tell it how long before the end of the auction you would like to place your bid. Bid Monkey will work internationally ( for example) due to the fact that any item number can be viewed through any eBay site.
bigFORTH is a native code Forth for x86 processors. It is 32 bit and complies fully with ANS Forth. Tools include a multitasker; source-able decompiler; source level debugger (even using optimized macros) with single step and trace, and as many breakpoints as you want; post mortem dump and return stack trace; and a Pentium-MMX-assembler/disassembler. MINOS is a portable GUI library, written in object oriented Forth, and includes the GUI development editor Theseus. It is on a separate release schedule from bigFORTH; 0.9.8 beta of MINOS was released 2002-06-23.
The 'BigText' command prints big text using X11 fonts. It is similar to many other banner(1) commands, except that it can draw with all of the X11 fonts.
Bigloo is an implementation of the Scheme programming language. It relies on an optimizing compiler from Scheme to C. Bigloo enables connections between Scheme code and C code. It proposes many extensions to Scheme such as a regular parser compiler, an lalr parser compiler, pattern matching, an object layer, etc.
<bigwig> is a high-level programming language for developing interactive Web services. The goal of the <bigwig> project is to remove many of the obstacles that face current developers of Web services to lower cost while increasing functionality and reliability, compared to CGI/Perl scripts, ASP, or PHP based solutions. The <bigwig> language is a descendant of the Mawl project, inheriting the concepts of sessions and document templates.
BinClock is a program which shows the system time in a binary format. It supports showing the time with seven different colors, and it can run a loop that prints the time every second. It supports the colors blue, white, black, red, green, yellow, magenta and cyan.
'binfind' searches files for a byte sequence. The pattern can be given on the command line in ASCII or hex, read from a file, or a combination of the above. It uses the Boyer-Moore algorithm and can search large files without using a lot of memory. For each occurrence of the pattern, 'binfind' prints a line containing the offset of the occurrence in the searched file. If the user specifies more than one file, binfind prints the filename and a colon before the offset.
Binutils Heckert gnu.tiny.png
Binutils includes tools capable of creating and managing binary program files, including handling object files, libraries, profile data, and assembly source code.
Bison Heckert gnu.tiny.png
Bison is a general-purpose parser generator that converts an annotated context-free grammar into an LALR(1) or GLR parser for that grammar. Once you are proficient with Bison, you can use it to develop a wide range of language parsers, from those used in simple desk calculators to complex programming languages. Bison is upward compatible with Yacc: all properly-written Yacc grammars ought to work with Bison with no change. Anyone familiar with Yacc should be able to use Bison with little trouble. You need to be fluent in C or C++ programming in order to use Bison.
Bit Vector
Bit::Vector is a (stand-alone) C library and an object-oriented Perl module (with overloaded operators) which allows you to handle bit vectors, sets (of integers), "big integer arithmetic" (e.g. for cryptography), and boolean matrices (all of arbitrary size) very efficiently. The package also includes an object-oriented Perl module for accessing the C library from Perl (the library can also be used by itself, without Perl). Optionally, it features overloaded operators for maximum ease of use.
This program (and Python module) will decode a value as per a bitfield definition. This is very useful for hardware registers that have meanings to parts of the bits.
An IRC server which can forward what you say to people on other chat networks: Jabber, ICQ, AIM, MSN and Yahoo.
BitPacket is a Python module to represent bit field structures in an easy object-oriented way. BitPacket provides three classes: BitField, BitStructure and BitVariableStructure which represent simple bit fields, and fixed and variable structures of bit fields respectively. BitStructure and BitVariableStructure are BitField themselves and all of them can be used together in order to build packets. That is, we can add any BitField subclass into a BitStructure or BitVariableStructure.
Black Hole
Blackhole stops spam and prevents unwanted senders from sending you email. It is put in the .qmail file and will divert spam and viruses to separate files which can be checked with an IMAP client if configured to do so. It not only uses the RBL type servers, but also checks against your own list of good/bad domains/users. You can also block email that is sent to an address that is not specified in a list of addresses to use for emailing you. Blackhole can log and keep the email it blocks, and can be configured to either reply with a message of your choice or make it look like you don't exist on the system. You can also add relays to the list of relays that the script skips. It also has subject line checking with ^ and $ matching lines, and includes a virus checking server program.
Blackjack basic strategy calculator
bsc finds the Blackjack strategy through the Monte Carlo method. It analyzes each situation with adaptive depth, and is generally optimized for speed. The rules are hard coded for the author's local casino; adding others or changing them is left for others to do. It seems to find the correct strategy, but the house edge appears a bit wrong.
'Blame' displays the last modification for each line in an RCS file. It is the RCS equivalent of CVS's "annotate" command. An annotated RCS file describes the revision and date in which each line was added to the file, and the author of each line.
'blinkensim' is the Blinkenlights project's simulator. Using blinkensim you can receive the Blinkenlights Protocol as it is being sent by the Blinkenlights Chaos Control Center to the Matrix Control Units (the computers that take care of controlling the lamps). 'blinkensim' has graphic backends for DirectFB and GTK+ 2.0. It should run on all GNU/Linux systems using one of these backends.
'blinkentools' is a set of utilities related to Blinkenlights. It includes b2b, a converter for blinkenmovies that can apply some simple effects, b2mng, which creates MNG animations from blinkenmovies, and bsend, which sends movies over the net using the Blinkenlights network protocol.
'Bloat' is a Perl script which analyses an archive's filename, and extracts it using a suitable extractor. It also supports several other features, such as "subdirectory detection", MIME-type checking (via 'file'), and extraction of non-trivial archive types.
BlockIt monitors the Snort alert file and creates either IPTables, IPChains, IPFWADM, or Checkpoint Firewall rules. This version is only for GNU/Linux. BlockIt has built-in CIDR support for multiple target IPs and whitelist support. Additional features include MySQL logging and email logging.
For writing chiptune-style songs in c or ruby. you know: the sounds of ataris, gameboys and the like.
Blossoc is a linkage disequilibrium association mapping tool that attempts to build (perfect) genealogies for each site in the input, score these according to non-random clustering of affected individuals, and judge high-scoring areas as likely candidates for containing disease affecting variation. Building the local genealogy trees is based on a number of heuristics that are not guaranteed to build true trees, but have the advantage over more sophisticated methods of being extremely fast. Blossoc can therefore handle much larger data sets than more sophisticated tools, but at the cost of sacrificing some accuracy.
'Blosxom' is a lightweight yet feature-packed Weblog application designed from the ground up with simplicity, usability, and interoperability in mind. It relies on the file system, folders, and files as its content database. Users can create, edit, rename, and delete entries on the command-line, via FTP, WebDAV, or anything else they might use to manipulate their files.
'blq' is a script that queries various databases that list known spammers one to determine if a particular host is listed.
'BlueDot' is a CGI tracking and Web site activity measurement script which generates Apache combined style access log files. These log files can be analyzed with most standard log analysis tools to track a site's popularity, referrers, hosts, etc. The logging is based on inserting a small piece of JavaScript or SSI code into every Web page. This code requests a very small blue dot image from a server where the call is logged. Blue dot can also be configured to set and log session and persistent cookies. This can be used, for example, to track pay-per-click search engine ROI.
The Bluetooth wireless technology is a worldwide specification for a small-form factor, low-cost radio solution that provides links between mobile computers, mobile phones, other portable handheld devices, and connectivity to the Internet. The specification is developed, published and promoted by the Bluetooth Special Interest Group. BlueZ provides support for the core Bluetooth layers and protocols. It is flexible, efficient and uses a modular implementation. It has many interesting features:
  • Complete modular implementation
  • Symmetric multi processing safe
  • Multithreaded data processing
  • Support for multiple Bluetooth devices
  • Real hardware abstraction
  • Standard socket interface to all layers
  • Device and service level security support
Currently BlueZ consists of many separate modules:
  • Bluetooth kernel subsystem core
  • L2CAP and SCO audio kernel layers
  • RFCOMM, BNEP, CMTP and HIDP kernel implementations
  • HCI UART, USB, PCMCIA and virtual device drivers
  • General Bluetooth and SDP libraries and daemons
  • Configuration and testing utilities
  • Protocol decoding and analysis tools
A high-performance Web server for UNIX-like computers
Bochs-Tools is a collection of scripts and programs to be used together with the Bochs emulator. The main goal is to provide a more Unix-like interface to the emulator and to enable access to Bochs disk images from outside of Bochs. This project makes it very simple to copy an existing OS installation to a Bochs image.
Bogofilter is a Bayesian spam filter. It takes an email message or other text on standard input, does a statistical check against lists of "good" and "bad" words, and returns a status code indicating whether or not the message is spam. It is designed with fast algorithms (including Berkeley DB system), and tuned for speed, so it can be used for production by sites that process a lot of mail.
'bonddb' is an object orientated wrapper for PostgreSQL. It's a fast data abstraction layer C/C++ applications, to allow easy access to class objects. You can use existing PostgreSQL databases without any modification or additional tables needed in the backend. "bonddb' easily modifies rows in database fields without you having to construct sql statements or worry about refreshing existing datasets. It also lets you easily map your tables together in object to object relationships. Method calls aren't supported yet but they are being worked on.
Bonsai Ruby
Bonsai builds dynamic web sites that run anywhere. Perfect for portfolios, catalogues and other image-heavy sites. There’s no database or admin interface - just templates for the HTML, YML files for the content, and the file system defines the hierarchy. Upload the results and you’re away. It’s not aimed at blogs or text-heavy sites, but those where simple, well-defined hierarchies are the focus. Bonsai is designed to keep a clear separation between content and templates, following best web practices. It has been built with an emphasis on simplicity of use.
It takes one or several series of photos and videos, and automatically builds static Web pages to browse them, creating thumbnails, etc. It features automatic rotation of portrait images, support for videos, preloading, sub-albums support, themability, a powerful GUI for editing, and more.
Bookland is a Python program that generates ISBN bar code symbols (Bookland EAN-13 + 5-digit add-on) in EPS format. Includes UPC-A and EAN-13 classes, so it may be useful in a broader context. You can create a bar code even withou the full ISBN number as bookland will calculate the check digit for you. The program also creates the EAN13 number and check digit and determines the parity patterns and bit encodings.
Bool Heckert gnu.tiny.png
Bool is a utility for finding files that match a boolean expression. It supports AND, OR and NOT as well as the NEAR operator for locating two expressions within a short distance from each other. The program has separate text processing and HTML processing algorithms; the former separates patterns separated by newlines or words separated by hyphens. The latter understands many features of the HTML 4.01 standard.
The bootstrapper program creates a customized bootstrap script by scanning the autoconf macros in a project's file and using them to determine which programs need to be used to create a usable configure script. It then creates a bootstrap script which is custom tailored to your project's configuration. The resulting bootstrap script is useful for rebuilding the configure script and files, particularly for a project which may be downloaded off of a cvs server. By including a bootstrap script in a cvs repository, all auto generated files related to configure can be excluded from the cvs repository. It is also useful for a developer importing a new project onto a cvs repository. Running `make distclean' then `./bootstrap --clean' removes all auto-generated files, instead of removing them by hand.
bosh takes the output of the specified command and displays it using a simple ncurses interface. Actions can be configured and run using the currently selected line of the output as part of the action. An example is to use ps as the main command and kill as an action. Then, using bosh, the ps output can be browsed to find a particular process, which is then killed.
BOTEC is a simple astrophysical and orbital mechanics calculator, including a database of all named Solar System objects. BOTEC is intended as a simple but useful calculator to assist with making astrophysical, orbital mechanics, and space navigation calculations. As the origin of the acronym applies, BOTEC is more of a "back-of-the-envelope calculator" rather than an industrial-strength calculator, although this may change in the future.
Bots EDI-connects your company with your EDI trading partners. EDI is the exchange of electronic business data between companies. Bots takes care of all the needed communications, translations, protocols and standards.
Examples of EDI:
  • Retail: a buyer orders every day by EDI. The supplier send invoices to this retailer by EDI.
  • Automotive: just-in-time deliveries are send to the suppliers.
Bottle is a fast and simple WSGI web-framework for Python packed into a single file with no external dependencies.
Brag collects and assembles multipart binary attachements from newsgroups. It is best suited to run as a cron job. It supports for uuencode, MIME base64, and yenc encodings, NNTP authentication, non-default NNTP ports, and message filtering with accept/reject patterns. It can combine parts from different newsgroups or even different servers, and optionally saves message subjects.
Bras is a rules-based command execution system, a la 'make'. It helps to keep targets (usually, but not neccessarily, files) , up-to-date with respect to a set of dependencies. For every target, a (freely definable) rule describes what it means for the target to be out-of-date and what has to be done to refresh it. Bras can follow targets into other directories. It acts there according to the local brasfile to update the target and then reports the result back. Because no recursive execution of bras is necessary, the result of the reasoning for that other directory is not lost. Bras is implemented in Tcl. Rules can be mixed with procedural parts. In particular control structures can be used to automatically collect lists of targets, find out platform specifics or selectively activate rules. 'Bras' normally runs from the command line, but its rule eveluation functionality is available as a TCL module and can be used in a GUI application implemented in Tcl/tk.
Braze is a program for managing ALSA MIDI connections. It evaluates a Lua script and reconfigures the ALSA MIDI connections based on actions taken by the script. It can also listen for changes to the ALSA MIDI ports and reconfigure the connections accordingly.
'breeze' aims to be a fast and powerful CD Digital-Audio Player. It may run as either a console app or as a daemon. It can control a cdrom that is playing live, can change track to the next or previous one, jcan jump backward or forward, and set a playlist and your information about cdda.
'Brinance' is a financial planning and tracking program, hoping to be a functional replacement for something more complicated like GnuCash for those who prefer the command line. It has a few advanced features, such as scheduling transactions in the future and having as many accounts as one might want.
BUGS is the Big and Useful Great Security key encryption algorithm and applications. It is easy to use, and includes sample applications and documentation. The cryptography library can also be used with your own programs. Features include:
  • Private key algorithm
  • Dynamic cryptography algorithm
  • Source code can be made public without making the algorithm weak
  • Infinite key lengths
  • Bilateral bits swwapping with various windows
  • Bilateral Pseudo randomly binary operations
  • Random number added to key
  • Random number generator using the ISAAC algorithm
  • Possibility of generating your own RNG seed
  • Five different cryptography levels, for the best possible
  • combination of efficiency and speed
  • Seed and shuffle functions
  • A clear text can be crypted using its own data
  • Two methods of execution: direct disk access or memory cache
  • Strong key generator
Buildtool is a set of integrated utilities which make programs more portable and easier to build on any kind of *nix-like system. It simplifies the build process of a program from user's point of view, by automatically configuring the source code with specific details of the host system; it also makes developer's work easier because all Makefile complexity is hidden and behavior is homogenized.
buku is a powerful bookmark management utility written in Python3 and SQLite3. It is a cmdline solution with a private, portable, merge-able database and browser integration. buku fetches the title of a bookmarked web page and stores it along with any additional comments and tags. With multiple options to search bookmarks, including regex and a deep scan mode (particularly for URLs), finding a bookmark is very easy. Multiple search results can be opened in the browser at once. Though a terminal utility, it's possible to add bookmarks to buku without touching the terminal! Refer to the documentation on GUI integration. If you prefer the terminal, thanks to the shell completion scripts, you don't need to memorize any of the options. There's an Easter egg to revisit random forgotten bookmarks too. buku is too busy to track you - no history, obsolete records, usage analytics or homing.
Bulldog Firewall
This is a candidate for deletion: URLs on this page do not work. I could not find "Bulldog Firewall" anywhere online. Drw (talk) 09:00, 18 July 2018 (EDT) 'Bulldog' is a powerful but lightweight firewall for heavy use systems. It allows dynamic and static rules sets for maximum protection and has several advanced features. Be prepared to spend some time setting this up. If you are looking for a "quick fix", then you are on the wrong site. BullDog is NOT a quick fix, but rather one step in a complete security policy.
Bundler is a tool that manages gem dependencies for your ruby application. It takes a gem manifest file and is able to fetch, download, and install the gems and all child dependencies specified in this manifest. It can manage any update to the gem manifest file and update the bundled gems accordingly. It also lets you run any ruby code in context of the bundled gem environment.
Bunny the Fuzzer
* " IMPORTANT: This project (Bunny the Fuzzer) is superseded by American Fuzzy Lop " A closed loop, high-performance, general purpose protocol-blind fuzzer for C programs. Uses compiler-level integration to seamlessly inject precise and reliable instrumentation hooks into the traced program. These hooks enable the fuzzer to receive real-time feedback on changes to the function call path, call parameters, and return values in response to variations in input data. This architecture makes it possible to significantly improve the coverage of the testing process without a noticeable performance impact usually associated with other attempts to peek into run-time internals. Bunny is currently known to support GNU/Linux, FreeBSD, OpenBSD, and Cygwin on IA32 and IA64 systems.
'bup' is a patch for bash that modifies the shell to send all user keystrokes via UDP over the network for collection by a sniffer or a syslogd server. It does not depend on syslogd to send the packets.
‘burn’ is a command-line tool to create audio discs from MP3, Ogg Vorbis, or WAV files, to backup data files, to create discs from ISO-9660 images, and to copy discs on-the-fly. It performs any of its functions in a single command, without requiring preparatory filesystem creation, etc. The program can compute if there is necessary free space for temporary files (images and audio files), warn if size is bigger than disc capacity, and manage multisession discs.
'burnCDDA' is a console frontend to cdrdao, cdrecord, mpg123, oggdec, mppdec, normalize, and mp3_check. It can be used to create audio CDs from an M3U playlist (the playlist format of XMMS). It supports MP3, OGG Vorbis, Musepack, and WAV files, and it might be the easiest way to copy an audio CD.
This is a candidate for deletion: Unclear licensing, potentially non-free. Source code files do not mention GPL in their headers, just state "Copyright(c) 2000-2005 Alexandre Janon". A copy of the GPLv2 is included with the program. Majority of links on the project's website return 404. Drw (talk) 09:26, 18 July 2018 (EDT) 'burncenter' is a very easy-to-use text-based interface to the standard CD-burning tools for UNIX (cdrecord, cdda2wav, and mkisofs). It features an easy-to-use text interface, multi-session support, audio CD support, and CDRW support with fast and complete blanking.
Business Integration Engine
BIE is an free software integration system that makes it easy for organizations to exchange data with external trading partners regardless of their native applications. It is truly cross-platform since it written in Java.
Busted is a tool for gathering and reporting information about a broken gem.
BusyBox combines tiny versions of many common UNIX utilites into a single small executable. It provides minimalist replacements for most of the utlities you usually find in GNU coreutils. The utilites in BusyBox generally have fewer options than their full-featured GNU cousins. This package is widely used for rescue and embedded systems. It also provides more compact alternatives to other common utilities such as bzip2, dhcp, diffutils, e2fsprogs, file, findutils, gawk, grep, inetutils, less, modutils, net-tools, procps, sed, shadow, sysklogd, sysvinit, tar, util-linux, and vim.
This is a candidate for deletion: Marked as decommissioned. Drw (talk) 09:01, 18 July 2018 (EDT) 'busynode' is a simple host reservation system, primarily designed for cluster installations. It lets users communicate with others on what hosts they currently use, or plan to use in the near future. Reservation information is stored as text files on a shared filesystem (such as an NFS mount). When executed without any options, busynode behaves as an enhanced ruptime tool.
For each byte of the input ByteName prints a line consisting of the byte offset, the byte in hex, octal, binary, and decimal, and its description in a selected single-byte encoding. A command line flag suppresses printing of lines corresponding to ASCII characters, which is useful for locating stray non-ASCII codes. It can also generate a chart for a specified encoding or, for a specified codepoint, generate descriptions in all known encodings. More than 50 encodings are supported.
C ElementTree
* " cElementTree is included with Python 2.5 and later, as xml.etree.cElementTree. " The cElementTree module is a C implementation of the ElementTree API, optimized for fast parsing and low memory use. On typical documents, cElementTree is 15-20 times faster than the Python version of ElementTree, and uses 2-5 times less memory. On modern hardware, that means that documents in the 50-100 megabyte range can be manipulated in memory, and that documents in the 0-1 megabyte range load in zero time (0.0 seconds). This allows you to drastically simplify many kinds of XML applications.
C to C++ converter
This packages is a set of Python scripts that perform each stage of code conversion from C to C++. First, header files are converted into classes and declarations become members. Then, references to variables and functions are transformed into references to attributes and methods of classes. Additional tools provided include a generator/updater of header files, and a trans-directory mover with update of include statements.
'c2hs' is an interface generator that simplifies the development of Haskell bindings to C libraries. It processes existing C header files that determine data layout and function signatures on the C side in conjunction with Haskell modules that specify Haskell-side type signatures and marshaling details. Hooks embedded in the Haskell code signal access to C structures and functions; they are expanded by the interfacing tool in dependence on information from the corresponding C header file.
'C2html' is a program which converts C source files to highlighted html files. The produced file can be used for creating technical manuals. A highlighted source code listing is usually much easier to read.
A generic and fairly complete cellular automata simulation engine. CAGE is a fairy generic and complete cellular automaton simulation engine in Python. It supports both 1D and 2D automata, a variety of prepackaged rules, and the concept of "agents" which can move about independently on the map for implementing agent behavior. CAGE comes with numerous examples of fully-functional CA systems, including Conway's Game of Life, Langton's self-reproducing automaton, Langton's "vants," and 1D automata rule explorers. It also comes with simple displayers (including a curses interface for 2D automata). Also included is a unique implementation of a finite state machine (
CDimg tools is a set of command line tools to manipulate CD/DVD images of certain formats.
CGI_UTILS is a set of three C++ classes: CGI, Template, and Session. CGI wraps the CGI protocol. Template provides an easy way to use templates in your CGI applications. It knows about variables and datasets (tables). Session provides the ability to pass data between your programs through shared memory.
CGKit (Python Computer Graphics Kit)
The Python Computer Graphics Kit is a collection of Python modules that contain the basic types and functions to be able to create 3D computer graphics images (focusing on Pixar's RenderMan interface).
CI Joe
CI Joe is a Continuous Integration server that'll run your tests on demand and report their pass/fail status. Because knowing is half the battle.
'CLHelp' is a set of HEP (High Energy Physics)-specific foundation and utility classes such as random generators, physics vectors, geometry, and linear algebra.
CMUCL is a free, high performance implementation of the Common Lisp programming language which runs on most major Unix platforms. It mainly conforms to the ANSI Common Lisp standard. CMUCL provides a sophisticated native code compiler; a powerful foreign function interface; an implementation of CLOS, the Common Lisp Object System; which includes multimethods and a metaobject protocol; a source-level debugger and code profiler; and an Emacs-like editor implemented in Common Lisp.
CMUSphinx- PocketSphinx
Sphinx is a speaker-independent large vocabulary continuous speech recognizer. It is also a collection of free and open source tools and resources that allows researchers and developers to build speech recognition systems. The packages that the CMU Sphinx Group is releasing are a set of reasonably mature, world-class speech components that provide a basic level of technology to anyone interested in creating speech-using applications without the once-prohibitive initial investment cost in research and development; the same components are open to peer review by all researchers in the field, and are used for linguistic research as well. PocketSphinx is CMU's fastest speech recognition system. It uses Hidden Markov Models (HMM) with semi-continuous output probability density functions (PDF). Even though it is not as accurate as Sphinx-3 or Sphinx-4, it runs at real time, and therefore it is a good choice for live applications. You can find further documentation about PocketSphinx in the release documentation, or at the online documentation.
CMUSphinx- Training
Sphinx is a speaker-independent large vocabulary continuous speech recognizer. It is also a collection of free and open source tools and resources that allows researchers and developers to build speech recognition systems. The packages that the CMU Sphinx Group is releasing are a set of reasonably mature, world-class speech components that provide a basic level of technology to anyone interested in creating speech-using applications without the once-prohibitive initial investment cost in research and development; the same components are open to peer review by all researchers in the field, and are used for linguistic research as well. SphinxTrain is CMU Sphinx's training package. It trains models in Sphinx-3 format, which is also used by PocketSphinx. The Sphinx-2 format can also be converted to Sphinx-2 format under some conditions related to Sphinx-2's limitations. At this point, Sphinx-4 uses Sphinx-3 models.
Sphinx is a speaker-independent large vocabulary continuous speech recognizer. It is also a collection of free and open source tools and resources that allows researchers and developers to build speech recognition systems. The packages that the CMU Sphinx Group is releasing are a set of reasonably mature, world-class speech components that provide a basic level of technology to anyone interested in creating speech-using applications without the once-prohibitive initial investment cost in research and development; the same components are open to peer review by all researchers in the field, and are used for linguistic research as well. Sphinx-2 is a fast speech recognition system, the predecessor of PocketSphinx. It is not being actively developed at this time, but is still widely used in interactive applications. It uses Hidden Markov Models (HMM) with semi-continuous output probability density functions (PDF). Even though it is not as accurate as Sphinx-3 or Sphinx-4, it runs at real time, and therefore it is a good choice for live applications. You can find further documentation about Sphinx-2 in the release documentation, or at the online documentation.
Sphinx is a speaker-independent large vocabulary continuous speech recognizer. It is also a collection of free and open source tools and resources that allows researchers and developers to build speech recognition systems. The packages that the CMU Sphinx Group is releasing are a set of reasonably mature, world-class speech components that provide a basic level of technology to anyone interested in creating speech-using applications without the once-prohibitive initial investment cost in research and development; the same components are open to peer review by all researchers in the field, and are used for linguistic research as well. Sphinx-3 is CMU's state-of-the-art large vocabulary speech recognition system. It uses Hidden Markov Models (HMM) with continuous output probability density functions (PDF). It supports several modes of operation. The more accurate mode, known as the "flat decoder", is descended from the original Sphinx-3 release (still available for reference purposes at The faster mode, known as the "tree decoder", was developed separately. The two decoders were merged in Sphinx 3.5, though the flat decoder was not fully functional until Sphinx 3.7. Further documentation can be found in the release documentation, or at the online documentation.
CMake is a cross-platform build system. It is used to control the software compilation process using simple platform and compiler independent configuration files. It generates native Makefiles and workspaces that can be used in the compiler environment of your choice. CMake is quite sophisticated: it is possible to support complex environments requiring system configuration, pre-processor generation, and code generation.
CP: Cerebral Procreation
CP (Cerebral Procreation) is a BF (BrainF***) interpreter and compiler. It is different from other compilers in that instead of trying to understand the BF code, it simply transfers it to Perl code, which it then evaluates using the handy eval() function. It can also translate to C code, for easy compilation into a stand-alone binary.
CPG is an integrated development environment application for creating parsers for conventional compiler implementation, special application compilers, and data structure parsers for message and record set processing. It has both complete GUI and command line interfaces for performing automaton calculations and parser code generation including regular expression, SLR(1), LALR(1), LR(1), conflict resolution, essential error entry calculation and configuration, unit rule elimination optimization, grammar rule code and parser driver code editing, C++ parser driver and table interfaces, and graphical parser simulation displays.
'CRM114' is a Controllable Regex Mutilator and Smart Filter, designed for easy creation of filters for things like incoming email redirection, spam filtering, system logs, or monitoring processes. Filtering rules can be either hard-coded (such as regexes), soft-coded (calculated at runtime or read from an external file or process), or learned dynamically by phrase matching (by SBPH hashing). This makes it possible to create very accurate filters over (99.9%) with very little actual work.
Load, parse and cascade CSS rule sets in Ruby.
CSSPool is a CSS parser. CSSPool provides a SAC interface for parsing CSS as well as a document oriented interface for parsing CSS.
CT Sim
Computed Tomography is the technique of estimating the interior of objects from the measurements of radiation projected through the object. That radiation can be transmitted through the object such as in X-ray computed tomography or emitted from internal radiation sources as in nuclear medicine scans. CTSim simulates the transmission of X-rays through phantom objects. These X-ray data are called projections; CTSim reconstructs the original phantom image from the projections using a variety of algorithms. The program also has a wide array of image analysis and image processing functions.
CUPS is a printing system that uses the Internet Printing Protocol (IPP). It provides System V and BSD command-line interfaces, as well as a Web interface and a C programming interface to manage printers and print jobs. It supports printing to both local (parallel, serial, USB) and networked printers, and printers can be shared from one computer to another. Internally, CUPS uses PostScript Printer Description (PPD) files to describe printer capabilities and features and a wide variety of generic and device-specific programs to convert and print many types of files.
curl offers a busload of useful tricks like proxy support, user authentication, ftp upload, HTTP post, SSL (https:) connections, cookies, file transfer resume and more. As you will see below, the amount of features will make your head spin! You can specify any amount of URLs on the command line. Urls can be fetched in a sequential manner in a specified order. If you specify URL without protocol:// prefix, curl will attempt to guess what protocol you might want. It will then default to HTTP but try other protocols based on often-used host name prefixes. For example, for host names starting with "ftp." curl will assume you want to speak FTP. Curl will attempt to re-use connections for multiple file transfers, so that getting many files from the same server will not do multiple connects / handshakes. This improves speed. Of course this is only done on files specified on a single command line and cannot be used between separate curl invokes.
CvsGraph is a utility to make a graphical representation of all revisions and branches of a file in a CVS/RCS repository.
CVSTrac implements a low-ceremony Web-based bug and patch-set tracking system for use with CVS. Features include automatic changelog generation, repository change history browsing, user-defined bug database queries, Wiki pages, and Web-based administration of the CVSROOT/passwd file. CVSTrac operates either as CGI or as its own Web server. It automatically generates a patch-set log from CVS check-in comments, and includes a built-in repository browser. It is simple to setup and has minimal memory, disk and CPU requirements, so it runs effectively on old hardware. Access permissions are separately configurable for each user, and anonymous users are allowed. Since the program uses a built-in SQL database engine (SQLite), no external RDBMS is required.
CVSps is a program for generating 'patchset' information from a CVS repository. A patchset is defined as a set of changes made to a collection of files, and all committed at the same time (using a single 'cvs commit' command). This helps you see the big picture of the evolution of a cvs project. You can see the history of committed patchsets, restrict by author, date range, files affected, branches affected. The program can also generate a diff of a given patchset. It essentially gives you the equivalent of tagging before and after each commit.
a Ruby network manager.
Cache Money
A Write-Through Cacheing Library for ActiveRecord.
This is a candidate for deletion: I cannot confirm any facts about this project. The URLs on this page link to web pages which do not work without running JavaScript which does not have any licence notice. I have been unable to download the program, suggesting it might be dead. Drw (talk) 09:37, 18 July 2018 (EDT) CacheIt is a PHP class to facilitate caching. You subclass Cachable and implement the get method of Cachable, and you instantiate it as well as instantiate CacheIt with arguments of the instance of your subclass of Cachable. Then both the path (ending in a trailing slash) to the directory that cached data will be kept, and the number of seconds that a cached entry can be kept before expiring. Then, just call the get method of the instance of CacheIt and caching happens automatically. CacheIt doesn't do LRU--if you're concerned about the cache directory getting too large, have a cron job scan it occasionally and delete the oldest files.
Cachet is an HTTP Reverse Cache Proxy written in Scala. It is comparable to Varnish or Rack::Cache. It implements the RFC2616 specification (at this time, only the Expiration model, but the Validation model is forthcoming) obeying Cache-Control headers and the like. It is very configurable so that you can use custom databases (Ehcache and Memcached are supported by default), and custom expiry strategies, and so on. It is designed so that you can layer on things like authentication, authorization, rate limiting, and arbitrary service composition strategies (e.g., Edge-Side Includes)--which is is, I think, something novel in a free reverse proxy.
Caching library to simplify and organize caching.
  • I18n (seperate caches by locale / expires all locales)
  • Generation based (your able expire all caches of one type)
  • Simultanouse caching (handle multiple processes trying to write same expensive cache at once)
  • Dependent caches (x caches result of cache z+y -> z changes -> x changes)
  • Hashed keys (optional -> short/unreadable)
  • Global cache_version (expire everything Cachy cached, but not e.g. sessions)
  • works out of the box with Rails
  • works with pure Memcache and Moneta(-> Tokyo Cabinet / CouchDB / S3 / Berkeley DB / DataMapper / Memory store)
'cadaver' is a command-line WebDAV client. It supports resource upload/download/display, namespace operations (copy/move), collection deletion/creation, property manipulation, and locking operations.
cage is a replacement for the chroot(8) utility. Like chroot, cage changes its root directory to the one specified and then executes your application. Before execing, however, cage drops all privileges that would let the program escape its jail.
Calamaris parses the logfiles of a variety of Web proxy servers (see the program's home page for a list of supported servers) and generates reports about peak-usage, request-methods, status-report of incoming and outgoing requests, second and top-level destinations, content-types, and performance.
Calcurse is a text-based personal organizer which helps keep track of events and everyday tasks. It has a calendar and a "todo" list, and puts your appointments in order. The user interface is configurable, and you can choose between different color schemes and layouts. All of the commands are documented within an online help system.
Calendar Maker
Rails plugin to build a simple calendar scaffold, with events signified by class names added to the day. Putting a calendar on a web page is easy now. Also, you can add events to a calendar, which are denoted by adding a custom class name to that day, allowing you to style it differently, or even define behavior for that day via unobtrusive Javascript.
Calibre is an e-book manager that can view, convert, edit and catalog e-books in all of the major e-book formats. It's a complete e-library solution that includes library management, e-book format conversion, newsfeed to e-book conversion, integrated e-book viewer, and synchronization with e-reader devices.
A tool for printing call graphs.
'calltree' is a static call tree generator for C programs. It parses a collection of input files and builds a graph that represents the static call structure of the files.
This is a candidate for deletion: URLs both lead to 404. does exist, but no mention of cals2tiff on that site. Drw (talk) 09:02, 18 July 2018 (EDT) This program is used to convert .cal files (US NAVY CALS raster file Type 1) into .tiff files (baseline TIFF bilevel images). All it really does is change the header. CALS only support compressed data, and only through CCITT group 4 algorithm (T6). Tiff revision 6.0 can support this same compression schem (among others), and therefore there is no need to change the data to convert from one format to the other.
Camorama is a small utility to view and save images from a webcam or any other Video4Linux device. It can apply a number of image filters and make remote captures.
CanCan is an authorization solution for Ruby on Rails. This restricts what a given user is allowed to access throughout the application. It is completely decoupled from any role based implementation and focuses on keeping permission logic in a single location (the Ability class) so it is not duplicated across controllers, views, and database queries. This assumes you already have authentication (such as Authlogic or Devise) that provides a current_user method which CanCan relies on. See Changing Defaults if you need different behavior.
Candela is a simple shell-building system that uses python and curses to help developers create customized command line interfaces. It has a simple interface, is well documented, and allows developers to take command-based tools to the next level of complexity and usability. Features Commands are 100% python and can run aribtrary code Commands can run code in secondary threads for asynchronous operation Customizable tab completion hooks for command arguments Customizable key event callbacks for reacting to each keypress event Responsive layout for smaller terminals Numerous built-in command templates Simple command syntax and help system "stickers" allow persistent information display Automatically generated command validation Up/Down arrows cycle through history Copy/Paste, insert text mode Easy transitions between menus Supports both named and positional command arguments
Candygram is a Python implementation of Erlang concurrency primitives. This package emulates those facilities as closely as possible in Python. It lets developers send and receive messages between threads using semantics nearly identical to those in the Erlang language, which is widely respected for its elegant built-in facilities for concurrent programming.
Capybara aims to simplify the process of integration testing Rack applications, such as Rails, Sinatra or Merb. It is inspired by and aims to replace Webrat as a DSL for interacting with a webapplication. It is agnostic about the driver running your tests and currently comes bundled with rack-test, Culerity, Celerity and Selenium support built in.
Cardfile is a simple flatfile database with a curses interface, that emulates a library's card catalog. It's useful for cataloging your library, downloaded software, or your Pokemon collection.
'Carp::Clan' reports errors from the perspective of the caller of a "clan" of modules, similar to "" itself. But instead of giving it a number of levels to skip on the calling stack, you give it a pattern to characterize the package names of the "clan" of modules which will never be blamed for any error. So these modules stick together like a "clan"; any error will be blamed on the "outsider" script or modules not belonging to the "clan".
carrot is an AMQP messaging queue framework. AMQP is the Advanced Message Queuing Protocol, an open standard protocol for message orientation, queuing, routing, reliability and security. The aim of carrot is to make messaging in Python as easy as possible by providing a high-level interface for producing and consuming messages. At the same time it is a goal to re-use what is already available as much as possible. carrot has pluggable messaging back-ends, so it is possible to support several messaging systems. At the time of release, the py-amqplib based backend is considered suitable for production use. Several AMQP message broker implementations exists, including RabbitMQ, ZeroMQ and Apache ActiveMQ. You'll need to have one of these installed, personally we've been using RabbitMQ. Before you start playing with carrot, you should probably read up on AMQP, and you could start with the excellent article about using RabbitMQ under Python, Rabbits and warrens. For more detailed information, you can refer to the Wikipedia article about AMQP.
'Caspar' offers Makefile snippets for tasks like installing files maintained using a version control system, or typesetting documents in certain markup languages. If you need to maintain and distribute lots of files, you will probably find 'Caspar' useful. It can also automate typesetting if you write documents in a markup language like LaTeX, DocBook XML, DocBook SGML or POD.
castget is a simple, command line-based RSS enclosure downloader. It is primarily intended for automatic, unattended downloading of podcasts.
Castle Game Engine
Castle Game Engine is a cross-platform 3D and 2D game engine for Object Pascal (FPC and Lazarus). - It supports many formats for game assets, including X3D, VRML, Collada, Spine JSON, MD3 and others. - Many graphic effects are possible, including bump mapping, shadows, shaders, mirrors, screen effects. - Animation, collision detection, 3D sound and more features are available. - An extensible system of 3D objects can be used, with out-of-the-box levels, items, intelligent creatures and more. - The engine is portable -- for desktop, mobile, web plugin. The engine is also used to develop view3dscene - a full-featured X3D / VRML browser and a viewer for many other 3D and 2D game formats.
Cat IMproved
Cat IMproved is an improved version of the UNIX program cat.
Catase is a catalog server which serves documents in response to queries. The queries can contain thematic, temporal, and spatial (geometry) constraints. It uses OGC standards. The documents are currently ISO 19115 in XML and the query language is CQL.
The program extracts text from Word files while preserving as many special characters as possible. It does not try to preserve Word formatting, but does extract readable text. A Tcl/Tk graphical viewer is included as well, and versions 0.91.2 and above include an Excel file converter.
'cbMySQL' is a PHP class for creating, modifying MySQL databases and tables. For backup issues, you can export CSV data directly with only one class method. The MySQL object is easier to handle than PHP's built in functions, and you need not install anything like PEAR.
'Ccache' is a fast compiler cache. It acts as a caching pre-processor to C/C++ compilers, using the -E compiler switch and a hash to detect when a compilation can be satisfied from cache. When the same code is compiled again the cached output is used, giving a significant speedup (typically 5x). You can also create symbolic links from your compiler's name to ccache; this lets you use ccache without any changes to your build system. 'Ccache' produces the same output that the real compiler would, including the same object files and compiler warnings that the real compiler would produce. The only way to tell you are using ccache is the speed.
'ccbuild' is like a dynamic Makefile: it finds all programs in the current directory (containing "int main") and compiles them. To do this, it reads the C++ sources and looks at all local and global includes. All C++ files around local includes are considered objects for the main program. The global includes lead to extra compiler arguments using a configuration file. ccbuild splits these arguments for compilation and linking, keeping the linking arguments back for later use. It should allow development without any scripting and only simple reusable configuration. 'ccbuild' can also create simple Makefiles and graph dependencies using DOT (graphviz) graphs.
Ccd2cue Heckert gnu.tiny.png
The program ccd2cue is a CCD sheet to CUE sheet converter for the GNU Operating System. It supports the full extent of CUE sheet format expressiveness, including mixed-mode discs and CD-Text meta-data. It plays an important role for those who need to use optical disc data which is only available in the proprietary sheet format CCD, but don’t want to surrender their freedom. It fills an important gap in the free software world because before its conception it was impossible to use complex forms of optical disc data laid out by CCD sheets in a whole/holy free operating system.
ccollect does (pseudo) incremental full backups with different exclude lists, using hard links and rsync.
Ccrtp Heckert gnu.tiny.png
GNU ccRTP is a high performance threadsafe C++ RTP (Real-Time Transport Protocol) stack. It can be used to build both client and server applications for audio and visual conferencing over the Internet, for streaming of realtime data, and for next generation IP based telephony systems.
'ccrypt' is a utility for encrypting and decrypting files and streams. It was designed to replace the standard Unix 'crypt' utility, which is notorious for using a very weak encryption algorithm. 'ccrypt' is based on the Rijndael cipher, which is the U.S. government's chosen candidate for the Advanced Encryption Standard (AES). This cipher is believed to provide very strong security. Unlike unix crypt, the algorithm provided by ccrypt is not symmetric (one must specify whether to encrypt or decrypt). Encryption and decryption depend on a user-supplied keyword (key phrase). Keywords can be any number of characters; all characters are significant (although ccrypt internally hashes the key to 256 bits). Longer keywords provide better security, since they are less likely to be discovered by exhaustive search.
Ccscript Heckert gnu.tiny.png
GNU ccScript is a C++ class framework for creating a virtual machine execution system for use with and as a scripting/assembler language for state-transition driven realtime systems. It is the core of the scripting engine found in GNU Bayonne. It is meant to be used where step execution is important, and where each step is in response to a callback event or a state machine transition. It offers deterministic execution and low overhead so that many concurrent instances can run together. However, in addition to offering step machine execution, GNU ccScript loads all scripts into an active image at once. This is for performance, as all operations in the script system, to assure deterministic execution, are in memory. GNU ccScript also offers the ability to load new scripts en masse. Existing active sessions operate on the currently loaded scripts, and new sessions are offered the new script. When the last active session on an old script set completes, the entire script set is flushed from memory, so you can operate scripted servers without downtime for rebuilding script images in memory.
'ccvssh' is an external program called by cvs (via the :ext: method) which connects to remote CVS pservers through an SSL connection to a stunnel daemon. It is a reimplementation of 'cvssh' in C, and is fast and easy to use.
'cdargs' adds a bookmark feature and a simple filebrowser to the builtin shell command `cd'. This lets you jump to various places throughout the filesystem with just a few keystrokes. It is intended for heavy shell users.
cdcd is a CLI CD player designed to incorporate all the features of the X and curses based CD players without having to use a clunky push button interface or having a console hogged with a curses-based CD player. cdcd can accept commands directly from the command line, or in a query mode similar to telnet or ftp. CDDBP and HTTP mode CDDB support is inlcuded, and now CD Index support as well. cdcd also supports CD-ROM changers on GNU/Linux 2.1 or 2.2 systems. You can run cdcd with a command as the argument (eg cdcd play), which is a great way to use cdcd and cron together to make a CD alarm clock. If you run cdcd without arguments you will be given the cdcd command prompt.
Cdparanoia is a Compact Disc Digital Audio (CDDA) extraction tool, commonly known as a 'ripper'. It is built on top of the Paranoia library (included in the cdparanoia source distribution). The cdparanoia package reads audio from the CDROM directly as data, with no analog step between, and writes the data to a file or pipe in WAV, AIFC or raw 16 bit linear PCM. 'cdparanoia' contains few-to-no 'extra' features; it concentrates on the ripping process and knowing as much as possible about the hardware performing it. Cdparanoia will read correct audio data from inexpensive drives prone to misalignment, frame jitter and loss of streaming during atomic reads, and can read and repair data from damaged CDs. It has no compile time configuration, and will autodetect the CDROM, its type, its interface and other aspects of the ripping process at runtime.
'cdrdao' creates audio or mixed mode CD-Rs in disk-at-once (DAO) mode driven by a description file. In DAO mode, users can create non standard track pre-gaps with lengths other than 2 seconds and contain nonzero audio data. This lets users divide live recordings into tracks where 2 second gaps would be irritating and create hidden tracks or track intros as found on commercial CDs.
Cdrom is a small/lightweight CD-ROM/DVD-ROM drive controlling utility. It supports several features like automatic mounting/unmounting (if needed), speed control, drive capability, CD status, and more. The author notes that cdrom was programmed under Linux 2.4, and has not been tested with newer kernel versions, including the 2.6 branch.
!!!WARNING!!!! This download probably has serious licence issues. For saver options look at the details tab. cdrtools (formerly cdrecord) creates home-burned CDs with a CDR/CDRW recorder. It works as a burn engine for several applications. It supports CD recorders from many different vendors; all SCSI-3/mmc- and ATAPI/mmc-compliant drives should also work. Supported features include IDE/ATAPI, parallel port, and SCSI drives, audio CDs, data CDs, and mixed CDs, full multi-session support, CDRWs (rewritable), TAO, DAO, RAW, and human-readable error messages. cdrtools includes remote SCSI support and can access local or remote CD writers.
Cdrtools DVD Extensions
DVD extensions for cdrtools 2.0 is a free software extension to add DVD support to Jörg Schilling's cdrtools package. A patch for cdrtools-2.0 is created and is actually a translation of a patch which can be found on That patch is based upon cdrtools 1.11. The patch given here is based upon cdrtools-2.00.tar.gz. The objective is to give cdrtools dvd extensions without imposed limits, and also to have a free software solution to burn dvd's. Currently DVD-R(W) support is added.DVD functionality has been expanded with DVD+RW and DVD+R DL burning, with the release of cdrtools-2.01.01a01-ossdvd.patch.bz2.
Cedar Backup
'Cedar Backup' supports backups of files on local and remote hosts to CD-R or CD-RW media over a secure network connection. It also includes extensions that understand how to back up MySQL databases and Subversion repositories, and can be easily extended to support other data sources. It is focused around weekly backups to a single disc, with the expectation that the disc will be changed or overwritten at the beginning of each week. With appropriate hardware, Cedar Backup can also write multisession discs.
Celebrat is a very easy-to-use, non-interactive, text-mode calendar application. It reads a data file in ASCII format, and prints on stdout a human-language summary of what events will take place up to ten days from now. It also includes a small daemon which announces events that are due by putting a message on every registered terminal, or by integrating the announcement in the bottom line of GNU screen sessions.
'cereal' is an emulation framework able to emulate 8051-compatible CPUs and connected devices, designed to allow easy addition of other (application-specific) devices to emulate.
CERTI is an HLA RTI. HLA (High-Level Architecture) is a general purpose architecture for distributed computer simulation systems. In HLA systems, the RTI (RunTime Infrastructure) manages data exchange between simulations. CERTI focuses on HLA 1.3 specification and its C++ API (IEEE 1516 will be supported too).
The C Framework for OpenCL, cf4ocl, is a cross-platform pure C object-oriented framework for developing and benchmarking OpenCL projects. It aims to:
  • Promote the rapid development of OpenCL host programs in C (with support for C++) and avoid the tedious and error-prone boilerplate code usually required.
  • Assist in the benchmarking of OpenCL events, such as kernel execution and data transfers. Profiling comes for free with cf4ocl.
  • Simplify the analysis of the OpenCL environment and of kernel requirements.
  • Allow for all levels of integration with existing OpenCL code: use as much or as few of cf4ocl required for your project, with full access to the underlying OpenCL objects and functions at all times.
  • Object-oriented interface to the OpenCL API
* New/destroy functions, no direct memory alloc/free * Easy (and extensible) device selection * Simple event dependency mechanism * User-friendly error management
  • OpenCL version and platform independent
  • Integrated profiling
  • Advanced device query utility
  • Offline kernel compiler and linker
Intended for sys admins, CFEngine is a tool for setting up and maintaining BSD and System 5-like operating systems optionally attached to a TCP/IP network. The program focuses on a few key areas that scripts tend to mishandle. From a single configuration files (or set of files) you specify, using classes, your network configuration; cfengine then parses the file and carries out the instructions, warning you about errors (or fixing them) as it goes. You can think of cfengine as a very high level language, higher than Perl or shell. A single command can result in many hundreds of operations being performed on multiple hosts. You can also use it as a net-wide front end for 'cron.'
Cfengine (non-GNU)
Intended for sys admins, CFEngine is a tool for setting up and maintaining BSD and System 5-like operating systems optionally attached to a TCP/IP network. The program focuses on a few key areas that scripts tend to mishandle. From a single configuration files (or set of files) you specify, using classes, your network configuration; cfengine then parses the file and carries out the instructions, warning you about errors (or fixing them) as it goes. You can think of cfengine as a very high level language, higher than Perl or shell. A single command can result in many hundreds of operations being performed on multiple hosts. You can also use it as a net-wide front end for 'cron.'
Cflow Heckert gnu.tiny.png
'GNU cflow' analyzes a collection of C source files and prints a graph charting control flow within the program. It can produce both direct and inverted flowgraphs for C sources, or optionally generate a cross-reference listing. It implements either POSIX or GNU (extended) output formats. Input files can optionally be preprocessed before analyzing. The package also provides an Emacs major mode, so users can examine the produced flowcharts in Emacs.
Cflow2vcg convert the result of the cflow utility in a VCG format. So, it offers the ability to display graphically the call-graph of sources, and import it in documentation.
GNU cfs-el is a frontend for using CFS (Cryptographic File System - wrote by Matt Blaze) from GNU Emacs.
'cfv' both tests and creates .sfv (Simple File Verify), .csv, .crc, .md5(sfv style), md5sum, and BSD md5 checksum verification files. It also includes test-only support for .par and .par2 files. These files are commonly used to ensure the correct retrieval or storage of data.
Cgicc Heckert gnu.tiny.png
GNU cgicc is an ANSI C++ compliant class library that greatly simplifies the creation of CGI applications for the World Wide Web by doing the following:
  • Parses GET and POST form data transparently.
  • Provides string, integer, floating-point and single- and multiple-choice retrieval methods for form data.
  • Provides methods for saving and restoring CGI environments to aid in application debugging.
  • Provides full on-the-fly web-authoring generation capabilities, with support for cookies.
  • Supports web-authoring file upload.
Chaco is a software for partitioning graphs mainly intended for parallel computing and scientific simulations. It implements a set of algorithms for this task ranging from a generalization of KL/FM with weighted graphs support to the premiere multilevel algorithms which combine high quality partitioning schemes and low computational costs.
Chafa is a command-line utility that converts all kinds of images, including animated GIFs, into ANSI/Unicode character output that can be displayed in a terminal. It is highly configurable, with support for alpha transparency and multiple color modes and color spaces, combining selectable ranges of Unicode characters to produce the desired output. The core functionality is provided by a C library with a public, well-documented API.
Challis is a lightweight markup language along the lines of Markdown and Textile. It focuses on a simple implementation while still being friendly to authors.
'Change' is a non-interactive text editor that is similar to 'sed' but easier to use. It substitutes a specified target pattern in the source text with another specified text pattern. It can operate on multiple files specified on the command line, or on stdin/stdout in filter mode.
Change Suffix
'chsuf' changes the suffix of file and/or directory names. It also can be used to add or remove a suffix to/from a list of files. chsuf can be useful for changing DOS-style three character extensions to more readable variations (e.g. from .htm to .html), or for adding an extension to filenames for use on platforms which depend on filename extensions.
'changedfiles' is a framework for filesystem replication, security monitoring, and/or automatic file transformations--anything where you'd poll files or directories and then do something to them or send them somewhere else (or both). The difference is, the kernel tells you when they change, instead of you having to poll. It is also an easy real time FTP push mirror to one or multiple sites. 'changedfiles' has a kernel module (works with Linux kernel version 2.4) which reports to a device whenever a file on the filesystem changes, and a daemon which runs in user space and can be configured to do almost anything when a change to a file matching one of the patterns it looks for is reported.
Changetrack is a program to monitor changes to system files. If files are modified one day, and the system starts working incorrectly a few days later, changetrack can provide information on which files were modified and help locate the problem. Changetrack will also allow recovery of the files at any stage. Changes to each file can be mailed to a list of email addresses or presented in a Web-based form or as a text file. The program makes human-readable output, and uses RCS to allow recovery of the files from any stage.
charities.cron is a cron script in the gawk language to visit the charity sites affiliated with These sites let Web users donate food, health care, and other goods simply by clicking on a link. The sites generally count one click per IP address per day; by making this a daily cron job, thousands of dollars will be donated to charity each year.
Charlemagne is a genetic programming application that includes both a commandline client and an interactive console mode. It is written in Python and Lisp, and is user extensible to some degree in both languages. It features built-in input-output mapping support and provides the ability to define complex fitness calculations in Lisp or Python.
Chart is stock market charting program. It downloads and displays market daily data and current price quotes in various styles and with many standard technical analysis indicators and averages. Data is obtained from several sources, including Barchart and Yahoo Finance (which covers most major world exchanges). Alert levels, notes, and free-form trend lines can be added to charts. Chart is at "personal project" level, which means the features are those things which interest the author, but the aims are serious. Chart is written in GNU Guile and perl, and customizations and extensions can be added using Scheme code. The main interface is the Guile Gtk GUI. An Emacs interface is included too, for viewing price quotes within Emacs, including importing into the Simple Emacs Spreadsheet (and other uses).
Check is a unit test framework for C. It features a simple interface for defining unit tests, putting little in the way of the developer. Tests are run in a separate address space, so Check can catch both assertion failures and code errors that cause segmentation faults or other signals. The output from unit tests can be used within source code editors and IDEs.
Check Postgres
check_postgres is a script for monitoring various attributes of your database. It is designed to work with Nagios, MRTG, or in standalone scripts.
Check modbus
This is Nagios plugin for Modbus TCP and RTU. This checker has many useful features: - support of IPv6 / IPv4 - support of DNS names - serial port connections (RS232 and RS485) with Modbus RTU (when compiled with libmodbus >= 3.0.0) - support of many data formats (unsigned/signed int16_t, int32_t, float, double) - support of several data orders (LSB, MSB and some others) - retries can be sent to get reliable answer - supports performance data - supports creation dump of the registers in different formats (binary, hexadecimal, decimal) - support binary dump as an input source for data (useful for off-line data) - separate lock files for input and output
'CheckInstall' keeps track of all files installed by a "make install" or equivalent, creates a Slackware, RPM, or Debian package with those files, and adds it to the installed packages database, allowing for easy package removal or distribution.
CheckUPS checks United Parcel Service's Web site (via crontab) for the status of a shipped package. If a package status changes, CheckUPS notifies any email addresses the user supplies (email, ICQ, pager, phone, etc). It logs all status check attempts, results, and the last notice sent out.
Reads a sendmail aliases file and reports problems in it, such as syntax errors, pipes to missing programs, local users who don't exist, include files that can't be read, files with wrong permissions, duplicate alias names, etc. newaliases.el is GNU Emacs Lisp code to make editing and checking an aliases file easier. It can automatically run checkaliases and newaliases after saving the aliases file.
Checker is a debugging tool suite which is used to find memory errors at runtime. 'Checker' can help find bugs that standard tools cannot always find. The best example is memory leaks. A memory leak is a zone of memory, allocated with malloc that is not used anymore. So the memory allocated is lost. This means you program needs more memory and runs slower, since your OS might have to start swapping. It detects bad memory accesses such as: reading uninitialized memory, writing in a freed zone, writing or reading outside of a memory block, and using NULL pointers. This is particularly useful for big programs with many functions. Checker maintains bitmaps to keep track of the status of each byte of memory. The status can be writable, readable, both, or none. When memory is allocated, the new memory becomes write-only: you are not allowed to read it because it has not been initialized. But when you you write to this new block, those bytes become readable and writable. When the block is freed, the bytes become unreadable and unwritable. Red zones are unreadable and unwritable memory, so that each access to a red zone produces a warning.
Checkmate checks mp3s. It scans the file to see if the frames are where they are supposed to be, if the frame headers are correct and if the headers are consistent throughout the file. It gives some statistics on the file like bitrate and length, and a conclusion whether the file is good or bad.
Checkstyle is a development tool to help programmers write Java code that adheres to a coding standard. It automates the process of checking Java code to spare humans this boring (but important) task. This makes it ideal for projects that want to enforce a coding standard. Checkstyle is highly configurable and can be made to support almost any coding standard. An example configuration file is supplied supporting the Sun Code Conventions. As well, other sample configuration files are supplied for other well known conventions. Checkstyle can check many aspects of your source code. Historically it's main functionality has been to check code layout issues, but since the internal architecture was changed in version 3, more and more checks for other purposes have been added. Now Checkstyle provides checks that find class design problems, duplicate code, or bug patterns like double checked locking.
'checksuite' is a suite of programs that provide notification and assistance with day-to-day system administration tasks. These programs monitor system resources as well as some security aspects on a system. There are several options that can be passed to the command line, and a full listing can be shown by passing a -h to each program.
'checkurls' is a program to help people who are interested in multiple files on Internet and want to spend less time checking for updates. It takes a list of URLs, downloads the files at these URLs, compares these with the old files, and if something has changed it sends an email to the user with a patch.
Chestnut Package Manager
Chestnut Package Manager is a utility to handle executables and resource files in a transparent, platform independent and relocatable way. Its concept is similar to Apple bundles and Java archives. It is implemented in Python. The application consists of a Python library and three executables:
  • a runner, cnrun, which runs executables identified by the package name, the version and the entry point
  • a path resolver, cnpath, which returns the absolute path of a resource given the same identification as above
  • a lister, cnls, which provides a list of the packages available, and detailed information about their contents
'chgrep' searches the input files (or standard input if no files are named) for oldpattern and changes them to newpattern (grep doesn't support this). You can use .lock files (or another extend). It is useful in (but not limited to) mail servers.
Chicago is a collection of runtime and test extensions and helpers that makes some common tasks a little bit easier.
CHICKEN is a simple Scheme-to-C compiler supporting the language features as defined in the 'Revised^5 Report on Scheme'. It supports full tail-recursion and first-class continuations. The code it generates is quite portable; compiled files generated by it (including itself) should work with either no or minor changes on other systems. Linking to C modules and C library functions is straightforward, and compiled programs can easily be embedded into existing C code. The package includes many extra libraries.
ChkTeX checks for various syntactic, semantic and typographical errors in LaTeX documents, and helps the writer stay focused on the content rather than presentation or syntax of commands.
chkrootkit is a tool to locally check for signs of a rootkit. It contains programs to check for modified system binaries, signs of LKM trojans and more. It currently detects 60 rootkits, worms and LKMs.
"Choones" is a jQuery plugin, with a little markup and some styles that mimics Growl's "Music video" theme (pop up, from the bottom.) Sending messages back to the user is often something that uses some strange design pattern of adding a box to the top of a page, that pushes down the content or, even worse, thrown into a 'lightbox'. Choones is something that I've implemented a number of times, finally recognising this pattern I thought it was worth sharing.
Choose is a program that computes permutations and choose functions. It does so quickly and effectively. Choose falls into the category of programs that are simple but are useful and for some reason do not exist.
'chpox' provides transparent checkpointing and restarting of processes on Linux clusters. It was originally designed for recovery of jobs with a long execution time in case of system crashes, power failures, etc. It works with openMosix, is SMP safe, works as a kernel module, does not require kernel patches or program recompiling/relinking, and supports virtual memory, regular open files, pipes, *nix domain sockets, current directory, termios, and child processes.
Chrootbin is a tool which will help you make basic a chroot environment. It lets you skip the boring parts of making a chroot from scratch. It also helps you to install any other classic executables like strace or find.
'chrpath' allows you to modify the dynamic library load path (rpath and runpath) of compiled programs and libraries.
This module allows simple experimentation with the lambda calculus, first developed by Church. It understands the different types of lambda expressions, can extract lists of variables (both free and bound) and subterms, and can simplify complicated by expression by means of application.
Cilk is designed for general purpose parallel programming, but it is especially effective for exploiting dynamic asynchronous, parallelism. The current release runs on symmetric multiprocessor machines that support Posix threads, GNU make, and gcc. You can also run Cilk on uniprocessor machines, which is useful for development and debugging, although you won't get any parallel speedup. According to cilk, a programmer should structure a program to expose parallelism and exploit locality, leaving the runtime system to schedule the computation to run efficiently. Thus, the runtime system handles details like load balancing, paging, and communication protocols. Unlike other multithreaded languages, however, cilk is algorithmic in that the runtime system guarantees efficient and predictable performance.
For years some people have wanted a way to edit their audio and video in one place as fluidly as writing text. Cinelerra tries to be a single location for all audio and video editing needs: it can capture composite, and edit audio and video. All the recording, editing, and playback are handled here. It can be used as an audio player. It can be used to record audio or video. It can even be used as a photo retoucher.
CISH is a configuration shell for Linux machines that are used as network routers. It provides configuration commands that handle network devices, access control, and routing. The command syntax and CLI closely mimic the behaviour of Cisco network devices.
Citadel is an advanced client/server BBS program for operating highly interactive sites, both on the Internet and over dialup. Users can connect to Citadel/UX by telnet, WWW, or client software. Features supported include public and private message rooms, e-mail, real-time chat, message forums,and paging. The server is multithreaded and can easily support a large number of concurrent users without arbitrary limits of messages per room, rooms per system, etc limited by the size of data structures. Both POP3 and SMTP servers are built in for easy connection to Internet mail. Citadel/UX is both robust and mature, as it has been developed over the past twelve years.
Cjukebox is a management system for audio files and play lists which relies solely on directory structures instead of a database. When available, database records can be used to improve the presentation. Playback is handled by the Musicus tool, which directly uses xmms plug-ins, so Cjukebox can play all music formats supported by xmms (wav, ogg, mp3, mpc, etc.). It works with the remote controls suppported by lirc, and provides hotkeys for immediate playback of up to 10 playlists. It also supports an external info script hook for conveying information about the song currently playing, a "badlist" (suppresses songs you don't want played), and a "goodlist" (adds the current song to this list with one keystroke so the user can come back to it later).
'cko' (Colored Kernel Output) is a Linux 2.4 and 2.6 kernel patch that colors kernel messages in the BSD style. If you don't like the default color (brown), you can change the value of the "color" variable and set it to whatever color you like.
'ksfv' (Check SFV) creates simple file verification (.sfv) listings and tests existing .sfv files. It uses the crc32 checksum.
'cl2html' converts a CVS log into chronological HTML output to give an overview of the CVS activities in a project. HTML output can include links to sources and patches, using viewcvs.cgi.
Class Date
Class::Date provides a date datatype for Perl. You can create new Class::Date objects with a constructor from different scalar formats, array refs, and hash refs, and then you can easily manipulate it by the builtin "+" and "-" operators (e.g., $date=date([2001,03,15])+'3Y 1s'). Relative date types also available.
Class XPath
Class::XPath is a Perl module which adds XPath-style matching to your object trees. This means that you can find nodes using an XPath-esque query with match() from anywhere in the tree. Also, the xpath() method returns a unique path to a given node which can be used as an identifier.
The cleanlinks program searches the directory tree descended from the current directory for symbolic links whose targets do not exist, and removes them. It then removes all empty directories in that directory tree. It is useful for cleaning up a shadow link tree created with 'lndir' after files have been removed from the real directory.
cleansweep is a set of scripts that help you clean duplicated files from your system. gathers information on files in a directory. gathers information on files in multiple directories. processes the data and generates information on file duplicates, filename duplicates, and unique files. cleans the files.
Rails authentication with email & password. Clearance is a Rails engine. It works with versions of Rails greater than 2.3.
A library of common command-line options and some quick tools to make extensible command-line interfaces using sprinkles.
ClientTable is a Python module for generic HTML table parsing. It is most useful when used in conjunction with other parsers (htmllib or HTMLParser, regular expressions, etc.), to divide up the parsing work between your own code and ClientTable.
Clisp Heckert gnu.tiny.png
ANSI Common Lisp is a high-level, general-purpose programming language. GNU CLISP is a Common Lisp implementation by Bruno Haible of Karlsruhe University and Michael Stoll of Munich University, both in Germany. It mostly supports the Lisp described in the ANSI Common Lisp standard. It runs on most GNU and Unix systems (GNU/Linux, GNU/Hurd, FreeBSD, NetBSD, OpenBSD, Solaris, Tru64, HP-UX, BeOS, IRIX, AIX, Mac OS X and others) and on other systems and needs only 4 MB of RAM. The user interface comes in English, German, French, Spanish, Dutch, Russian and Danish, and can be changed during run time. GNU CLISP includes an interpreter, a compiler, a debugger, CLOS, MOP, a foreign language interface, a socket interface, i18n, fast bignums, arbitrary precision floats and more. An X11 interface is available through CLX, Garnet, CLUE/CLIO. GNU CLISP runs Maxima, ACL2 and many other Common Lisp packages.
Cloudgizer is a tool for building web applications as Apache modules in C language enhanced with simple markup, with emphasis on performance, small-footprint, and more productive and safer programming in C. It combines the ease of scripting with the power of C, improving the resource utilization for cloud applications. The programmer writes simple markup language mixed with C code, which is then translated entirely into C code and compiled natively as Apache module. The resulting application is fast and takes less memory, as there are no interpreters or virtual machines. Features include easy markups to use MariaDB database, HTML input parameters, cookies, simpler outputting of web pages, files storage and manipulation, encryption, encoding, program execution, web calls, safer and easier string manipulation etc. - the list is too long to place in one sentence. Overall Cloudgizer does a lot of stuff for you that you'd otherwise need to do yourself. A memory garbage collection system and memory overwrite/underwrite detection comes in handy for program stability. The same goes for string and memory handling markups to help write applications that won't crash. Also included is an application packaging system and an automated application installer. This makes rollout of products and release cycle more manageable. Cloudgizer source files have extension .v. Cloudgizer pre-compiler (cld program) will turn your .v files into .c files, ready for compilation as pure C programs. Then, your program will be compiled and linked with Apache web server on RH/Centos systems. It links with Apache as an Apache module in a "prefork" configuration. It does the work of communicating with Apache, and it makes it easier to write high-performance/small-footprint web programs in C. Cloudgizer is not designed to be thread-safe as it works in a "prefork" configuration of Apache. You can also build command-line programs. The same program can serve as both command-line utility and a web program linked with Apache. Cloudgizer works with RedHat/Centos 7 operating system, Apache web server and mariaDB database.
'ClusterIt' is a suite of software to allow easy maintenance of large groups of machines. It does not provide a parallel programing environment, but is used to managing one, or to manage massive server farms. Its features include parallel rsh, parallel copy, parallel virtual xterminals (xterms), and job scheduling facilities for performing parallel compiling. It also has programs to allow barrier syncing in shell scripts.
Cluster SSH opens xterm windows with connections to specified hosts and an administration console. Any text typed into the administration console is replicated to all other connected and active windows. It is intended for, but not limited to, cluster administration where the same configuration or commands must be run on each node within the cluster. Performing these commands all at once with ClusterSSH keeps all nodes in sync.
'cmdftp' is a command line FTP client with shell-like functions which uses passive mode only, works in local and remote mode transparently, tries to keep the connection alive, and supports multiple and recursive file transfers.
'cn' is a counterpart for rm, which moves files into the trashcan. It is meant to be used instead of rm, such that one's fingers get into "good habits", and thus avoid accidentally rm-ing the wrong thing. 'cn' will confirm once, by default (even for directories), but can be made silent. It attempts to autodetect the location of the trash if KDE/GNOME are running. It can also handles perverse cases, such as trashing a file which is already in the trash, or deleting multiple files with the same name.
'CoaSim' is a tool for simulating the coalescent process with recombination and gene conversion under the assumption of exponential population growth. It constructs the ancestral recombination graph for a given number of individuals and uses this to simulate samples of SNP and micro-satellite haplotypes/genotypes. The generated sample can afterwards be separated in cases and controls, depending on states of selected individual markers. The tool can accordingly also be used to construct cases and control data sets for association studies.
The Caldera Open Administration System project is designed to improve the way users administer their GNU/Linux systems. It will be a collection of tools, each of which will include multiple user interfaces. The system will also let users choose the tools they want to use.
This is a candidate for deletion: 1. No files/source found code-fu is a flatfile pastebin written in PHP and HTML. By using GeSHi (Generic Syntax Highlighter), you can color your output to suit pretty much any kind of code.
'code2html' converts source code to syntax highlighted HTML. It may be called from the command line or as a CGI script. It can also handle include commands in HTML files. Currently supports: Ada 95, C, C++, diff files, gpasm, HTML, Java, JavaScript, Lisp, Makefile, Pascal, Perl, Python, shell, SQL, AWK, M4, and Groff.
CodeWorker is a scripting language designed to produce reusable, tailor-made, evolving, and reliable IT systems with a high level of automation. An extended BNF syntax lets users define new domain-specific languages or parse existing formats, and a template-based syntax lets users write patterns for generating code. The code generation knows how to preserve protected areas with hand-typed code and offers code expansion, source-to-source translation, and program transformation. These tasks are executed in a straightforward process, with no binding to an external programming language and with no translation of requirements specification in a constraining format.
Coffee Script Lab
CoffeeScript Lab is a frivolous little environment for playing with CoffeeScript in the browser, providing both a REPL and a place to type out longer scripts.
CoffeeScript is a little language that compiles into JavaScript. Think of it as JavaScript's less ostentatious kid brother — the same genes, roughly the same height, but a different sense of style. Apart from a handful of bonus goodies, statements in CoffeeScript correspond one-to-one with their equivalent in JavaScript, it's just another way of saying it.
ColdStore is a gigabyte-scale persistent object store which maps objects into a file (for persistence), can allocate objects in a minimal working-set of pages (for speed), permits library versions to change without a rebuild of the store, and permits application checkpoint/restart. Coldstore might be used to replace a database, cache highly structured objects, act as an OODB, make STL persistent, act as a Document Store for XML/SGML/HTML, create a MUD. Future projects include a virtual machine toolkit, ports of several languages, VW and byte-interpretive language workbench.
ColorDiff is a wrapper for diff that produces the same output as diff, but with coloured syntax highlighting at the command line to improve readability. The output is similar to a diff-generated patch in Vim or Emacs with the appropriate syntax highlighting options enabled. The colour schemes can be read from a central configuration file or from a local user ~/.colordiffrc file. 'colordiff' makes use of ANSI colours and therefore will only work when ANSI colours can be used.
Colorifer is a set of utilities that colors output of other processes, e.g. command line utilites or compilers. They make output more readable by using different colors for the significant pieces of the text. These programs can work like colorgcc perl script, and also for other programs. You only need to create a new config - set of the patterns (regular expressions) and the colors you want. 'CSed' is a color stream editor. It works like sed, but doesn't edit the stream and makes color substitutions instead. It is a simple filter that can be used to colorize the output of any program. CSed commands looks like sed commands. 'Colorifer' is a wrapper that runs a program and colorizes its output.
Comanche Server
Comanche is an extremely simple HTTP (web) server written entirely in Python. It does not use any of the many Python standard library modules related to HTTP serving, as it was initially written as a learning exercise. At present it does not support CGI or SSL and uses a simple fork-on-demand architecture, but is being actively improved.
Combine Heckert gnu.tiny.png
Pronounced COMbine, like the farm implement, combine matches any number of files to a file, set of files, or input stream. When built on a system with Guile available, it uses Guile to provide extensibility for filtering and data transformation. Additional features include hierarchy handling, a Guile module adapted from the Emacs calendar for performing date arithmetic, and outer joins on either or both sides of a match.
'comfigure' simplifies the './configure'ing of packages. It remembers the 'configure' options for each one, and uses them automatically if called without options. 'comfigure' automatically recognizes the package name and version from the directory from which it was called. If the stored version is not equal to the current one, 'comfigure' calculates an MD5 digest sum over the output of './configure --help' to see if the available options have changed. If they have, the program asks the user what to do.
Command Line Progress Bar
Command Line Progress Bar is a simple command line tool to display information about a data transfer stream. It will display the number of bytes transfered, the speed of the transfer, and if the size of the data stream is known it will display the ETA, percent complete, and a progress bar.
Command Line Trash
  • Command line interface compatible with the rm command. You can alias rm with trash.
  • Remembers original path, deletion time and file permissions of each trashed file.
  • Compatible with the KDE trash.
  • Implements the Trash Specification
  • Works with volume other than the home volume (e.g. USB pen or another partition).
Common Lisp SQL
'CLSQL' is an SQL database interface for Common Lisp. It provides object-oriented and functional access methods to the underlying database, which can be one of MySQL, ODBC, PostgreSQL, or SQLite. It uses the Unified Foreign Function Interface (UFFI) and thus supports the CMU Common Lisp, Steel Bank Common Lisp, Allegro Common Lisp, OpenMCL, and Lispworks implementations.
The package provides means to handle compacting of filepaths. Compacting of filepaths may be useful in gui programming for example where filepaths of arbitrary length have to be displayed in widgets with limited visual space. The package is designed so you can use it as from everywhere. No need to install it to site-packages, in case you want to include it in a project. It comes equipped with a wrapper for labels to handle filepaths of arbitrary length in qt4.
'Compare' is similar to cmp (in the 'diffutils' package) but faster and with better readable output. It examines one file and standard in (or two files on a byte by byte basis) and prints the file position of the first difference it finds, first in decimal and then in hexadecimal, followed by the differing byte content in hexadecimal and a quoted character.
'Compilercache' is a wrapperscript around your C and C++ compilers. Each time you compile something, it puts the result into a cache. If you compile the same thing again, the result will be picked from the cache instead of being recompiled. The same applies if you change your compiler options: the old compilation is picked up from the cache, which speeds things up considerably. No Makefiles, no cleaning up dependencies, and no recompilation if you switch compiler options. Additionally, if you download an updated version of a package already on your system and compile it using compilercache, only the changed sources will be recompiled.
This is a candidate for deletion: 1. No files sources found. Complete helps you start a new project the right way. Its template creates a clean structure with hooks for common testing (via setuptools/distribute's test_suite) and documentation (via Sphinx) needs. Once complete is installed, simply call paster: $ paster create -t ``complete`` MyProject The template only asks you about the project version, leaving you to fill in the rest of the package metadata at your leisure. When you're ready, see lib/MyProject/
Complex Form Examples
This master branch is a simple solution for the multi-model form problem using the latest accepts_nested_attributes_for available in Rails 2.3.
Complexity Heckert gnu.tiny.png
Complexity may be used to analyze the degree of complexity of functions in a C program. It estimates the difficulty that a human might have in understanding or testing the code. This software attempts to integrate more information than other, similar programs, in order to derive a more accurate estimate of complexity.
Composer is a tool for dependency management in PHP. It allows you to declare the libraries your project depends on and it will manage (install/update) them for you. Composer is not a package manager in the same sense as Yum or Apt are. Yes, it deals with "packages" or libraries, but it manages them on a per-project basis, installing them in a directory (e.g. vendor) inside your project. By default it does not install anything globally. Thus, it is a dependency manager. It does however support a "global" project for convenience via the global command. This idea is not new and Composer is strongly inspired by node's npm and ruby's bundler.
Conc is a serial console concentrator package. It features remote maintenance of systems over IP, and concurrent connections to consoles. It can pool serial lines on multiple machines into one system, which lets you manage a virtually unlimited number of consoles- ideal for large server farms, clusters or off-site server rooms.
Condenser is a tool for finding and removing duplicated Java code. Unlike tools that only locate duplicated code, Condenser is also able to automatically remove duplicated code where it is safe to do so.
Cone (COnsole Newsreader And Emailer) is a text-based mail client based, in part, on Courier libraries. It seamlessly handles multiple POP3 and IMAP accounts and local mail folders. It is also a simple newsreader. It is designed to be foolproof enough to be used by inexperienced users, but also offers advanced features for power users.
Config General
With Config::General you can read and write config files and access the parsed contents from a hash structure. The format of config files supported by Config::General is inspired by the Apache config format (and is 100% compatible with Apache configs). It also supports some enhancements such as here-documents, C-style comments, and multiline options.
A python module for ultra simple handling of configuration files. Also useful for human readable data persistence. Flexible and simple. ConfigObj is a simple but powerful config file reader and writer: an ini file round tripper. Its main feature is that it is very easy to use, with a straightforward programmer's interface and a simple syntax for config files.
Configgy was a library for handling config files and logging for a scala daemon. The idea was that it should be simple and straightforward, allowing you to plug it in and get started quickly.
Confix is a build tool for source code packages, on top of GNU Automake. It inspects the package's source code, tracks inter package dependencies, propagates checks across package boundaries, and finally writes Automake input files for the maintainer.
'confstore' is a configuration backup utility. It scans a system for all recognised configuration files and then stores them in a simple archive. It knows what to scan for by reading a definitions file. Confstore can also restore configuration from backup archives it has previously created, upload them to a FTP server, and mail them to an email account.
Connection Monitor is a connection and bandwidth monitoring program with console (ncurses) and X (GTK) based user interfaces. It displays a list of open TCP and UDP connections with transfer rate (in bytes per second) for each connection. ConnMon uses the GNU adns library to make asynchronous DNS lookups.
CONS is a replacement for GNU Make. It is not compatible with make, but it offers features not found in make or other build tools including:
  • integrated dependency analysis (no more "make depend" to generate static lists of .h files)
  • complete, non-recursive dependency analysis across multiple directories;
  • multiple side-by-side variant builds;
  • compilation from MD5 signatures instead of time stamps for determining whether a file is up-to-date
  • extensibility via Perl.
CONS is implemented in Perl. You don't need to know Perl to use CONS, although you can use it more powerfully if you do.
'Conserver' provides remote access to serial port consoles and logs all data to a central host. It supports both local and network serial connections, and can replay the server console history from the console app even if the server is down. Multiple users can connect to a single serial connection.
Convert From SSI
Server-Side Includes (SSIs) can rapidly speed up the development of dynamic websites. Overall stylistic changes can be made in minutes, without manually updating each page. However, SSIs can dramatically slow down a webserver, and some hosts do not support SSI funtionality. The 'Convert From SSI' script reads in .shtml files (files with SSI statements in them) that the user specifies (by putting them into one directory) and converts #include SSI statements into regular HTML that does not require a webserver that supports SSI.
'ConvertFS' is a very simple but extremely powerful toolset which allows users to convert one file system to another. It creates a sparse image of a block device, mkfs a secondary filesystem on it, mounts it, moves files from the primary filesystem to the mounted image and then maps the image to the device. It works for converting virtually any filesystem type to virtually any one as long as they are both block-oriented and supported by GNU/Linux for read/write, and as long as primary filesystem supports sparse files.
'convmv' converts filenames (not file content), directories, and even whole filesystems to a different encoding. This comes in very handy if, for example, one switches from an 8-bit locale to an UTF-8 locale. It has some smart features: it automagically recognises if a file is already UTF-8 encoded (thus partly converted filesystems can be fully moved to UTF-8) and it also takes care of symlinks. It can also convert from normalization form C (UTF-8 NFC) to NFD and vice-versa.
Cook is a tool for constructing files. It is given a set of files to create, and recipes of how to create them. In any non-trivial program there will be prerequisites to performing the actions necessary to creating any file, such as include files. Cook provides a mechanism to define these. When a program is being developed or maintained, the programmer will typically change one file of several which comprise the program. Ccok examines the last-modified times of the files to see when the prerquisites of a file have changed, implying that the file needs to be recreated as it is logically out of date.
'cool3s' is a smart snippet system designed to make a snippet library available in cooledit, a snippet being a reusable, or a generated on the spot piece of text. Written in Bash shell script command language it is multi functional and can be used for other applications or in the shell. It presents you with a menu of your snippets which it then enters in the application that called it or echos it to your screen. There are also configuration options that can bypass the selection menu and retrieve the snippet of your choice at once. 'cool3s' runs on any system that runs bash as a shell.
CopyQ is a rich, graphical clipboard manager.
  • Store text, HTML, images and any other custom format.
  • Customize tray menu.
  • Save items in tabs or tree.
  • Quickly browse through items (fast navigation, filtering with matched text highlighting).
  • Sort items, create new, edit, remove, copy/paste to different tab.
  • Variety of system-wide shortcuts (e.g. show main window or tray, edit clipboard, copy next/previous, paste as plain text).
  • Immediately paste to focused window from tray or main window.
  • Fully customizable appearance (colors, fonts, transparency).
  • Advanced command-line interface and scripting.
  • Ignore clipboard copied from some windows or containing some text.
  • Apply custom commands on selected items or automatically when new matching clipboard content is available.
A proof done with Coq is mechanically checked by the machine. In particular, Coq allows:
  • to define functions or predicates,
  • to state mathematical theorems and software specifications,
  • to develop interactively formal proofs of these theorems,
  • to check these proofs by a relatively small certification "kernel".
'core-restart' is a process checkpointing and restarting system. It does not require the executables to be linked with a library, so processes can be checkpointed without being changed. Also, the restarted process and the restoration code are in independent address spaces which simplifies the mechanism of restoring the stack and register state of the checkpointed process. The system runs only on user-level code and requires no modifications to the kernel.
Coreutils Heckert gnu.tiny.png
Coreutils includes all of the basic command-line tools that are expected in a POSIX system. These provide the basic file, shell and text manipulation functions of the GNU system. Most of these tools offer extended functionality beyond that which is outlined in the POSIX standard.
'corkscrew' is a small program for tunneling SSH through HTTP proxies. It features easy configuration and support for several Unix variants. It has been tested with the following HTTP proxies: Gauntlet, CacheFlow, JunkBuster, Squid , Apache's mod_proxy
This is a Python FUSE module for CouchDB. It allows CouchDB document attachments to be mounted on a virtual filesystem and edited directly. Use Cases
  • This is a great time-saver if you want to edit HTML, JavaScript, CSS or even image files directly using your favourite editor.
  • Uploading large numbers of files repetitively through Futon or even via a Python prompt becomes tedious very quickly: drag'n'drop or cp * is the way forward!
CouchDB is a document oriented database. This is is a framework to allow your Python application to use CouchDB.
CouchQL speeds up the creation of CouchDB views by automatically generating them based on a simple SQL-like query.
This is a Python library for CouchDB. It provides a convenient high level interface for the CouchDB server. This package currently encompasses four primary modules:
  • couchdb.client: the basic client library
  • management of design documents
  • couchdb.schema: a higher-lever API for mapping between CouchDB documents and Python objects
  • couchdb.view: a CouchDB view server that allows writing view functions in Python
'Count' is a fast replacement for the standard 'wc' utility. It has the additional features of counting the visible line length and a fast -stat option to quickly determine file sizes.
A rails plugin to make sure all files are required and show up in the code coverage report. (Untouched files are excluded and can thus inflate the overall code coverage.) If you forget to test a new library or module, it may not show up on the report, and thus you won't see that the coverage for that file is low.
Cowbell is tightly integrated with using its free SOAP service. Cowbell employs this service not only to fetch album cover images, as most tag editors do, but also in combination with intelligent algorithms to "guess" the appropriate song information from song titles. It can also cache these cover images in the same directory where that album resides. Going above and beyond the call of tagging, Cowbell also can rename your files based upon a user-configurable pattern (More detail on how to use this feature is covered in the Advanced Guide) and also export a M3U/PLS playlist of your songs in album-order. For you console junkies, Cowbell also offers a command-line based batch tagger which can tag and "guess" a whole collection of music with just a few keystrokes. And, to top it all off, Cowbell is fully internationalized and has been translated into German, French, Portuguese, Spanish, Norwegian and Swedish.
The cowloop-driver is a copy-on-write loop driver (block device) which can be used on top of any other block driver. It shields the lower driver from any write access and diverts all write-accesses to an arbitrary regular file, called the cowfile. When a modified block is read again later on, the cowloop-driver gets the block from the cowfile, while non-modified blocks are obtained from the original read-only device. This lets block-devices be used in a read-write fashion without modifying the underlying block-device itself.
Classpath tools is a collection of tools for GNU Classpath including a documentation generation system for java source files (gjdoc) and a "doclet" for converting comments into GNU Texinfo source (texidoclet), etc. This project has been integrated into the main GNU Classpath project.
Cpio Heckert gnu.tiny.png
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 the following archive formats: binary, old ASCII, new ASCII, crc, HPUX binary, HPUX old ASCII, old tar, and POSIX.1 tar. The tar format is provided for compatibility with the tar program. By default, cpio creates binary format archives for compatibility with older cpio programs. When extracting from archives, cpio automatically recognizes which kind of archive it is reading and can read archives created on machines with a different byte-order.
'cplay' is a curses frontend for various audio players. It aims to provide a power-user-friendly interface with simple filelist and playlist control. Since cplay' is written in Python, it can use either pyncurses or the standard curses module. The program currently supports ogg123, mpg123, mpg321, splay, madplay, and mikmod, xmp, and sox.
'cpp2latex' converts C++ into LaTeX either for including into existing LaTeX documents or as standalone documents. The current version (2.0) supports syntax highlighting.
'cpphs' is a simplified Haskell re-implementation of cpp, the C pre-processor, in Haskell. The C pre-processor is widely used in Haskell source code, but a true cpp is not often available on some systems, and the common cpp provided by the gcc 3.x series is changing in ways that are incompatible with Haskell's syntax. This includes problems with, for instance, string gaps, and prime characters in identifiers. This project attempts to provide an alternative to cpp that is more compatible with Haskell and can be distributed with compilers.
Cppi Heckert gnu.tiny.png
GNU cppi is a cpp directive indenter. It indents C preprocessor directives to reflect their nesting, among other regularizations.
'cpre' is a supplement to the normal cp. It takes a list of file names and a regular expression substitution pattern, performs the substitution on the file names, and then copies each file to the new name that resulted from the substitution.
cpulimit is a simple program that attempts to limit the CPU usage of a process (expressed in percentage, not in CPU time). This is useful to control batch jobs when you don't want they eat too much CPU. It does not act on the nice value or other scheduling priority details, but on the real CPU usage. Also, it is able to adapt itself to the overall system load, dynamically and quickly.
A password checking library.
Createusers adds users in bulk. It also sets up new users' home directories for personal Web space with Apache. The companion program, removeusers, eliminates users from the system. The latest release includes a graphical user interface, based on Tcl/tk.
Crenshaw Compiler
A simple compiler based on Jack W. Crenshaw's "Let's make a compiler!" tutorial. His version was in Turbo Pascal and output 68k asm, mine is in Ruby and outputs x86 asm.
'crip' is a terminal-based ripper/encoder/tagger tool for creating Ogg Vorbis/FLAC/MP3 files under UNIX/Linux. It is well-suited for someone seeking to make a lot of files from CDs and have them all properly labeled and professional-quality with a minimum of hassle and yet still have flexibility and full control over everything. Current versions of crip support only Ogg Vorbis and FLAC; if you want to make MP3 files you must use crip-1.0.
'CrocoPat' is a tool for querying and manipulating relations. It is easy to use because of its simple query and manipulation language based on predicate calculus and its simple file format for relations. It is efficient because it internally represents relations as binary decision diagrams, a data structure that is well-known as a compact representation of large relations. CrocoPat is general, because it manipulates not only graphs (i.e. binary relations), but n-ary relations.
Background-only application which launches and runs other applications, or opens documents, at specified dates and times.
'cronolog' is a filter program that reads log file entries from standard input and writes each entry to the output file specified by a filename template and the current date and time. When the expanded filename changes, the current file closes and a new one opens. 'cronolog' is meant to be used in conjunction with a Web server, such as Apache, to split the access log into daily or monthly logs.
'cronwrap' is a utility that offers more control over the execution of a cron job than the standard cron daemon allows. It can ensure and report that the job completes within a specified time period. It can email and/or log any output produced from the job. It reports on the exit status of the job.
Crossroads Load Balancer
Crossroads is a load balance and failover utility for TCP-based services. It is a daemon program running in userspace and features extensive configurability, polling of backends using "wakeup calls", detailed status reporting, "hooks" for special actions when backend calls fail, and more. It is service-independent; it is usable for HTTP(S), SSH, SMTP, DNS, etc.
Crucible provides a powerful, flexible backend for building automated testing systems. It allows for conducting tests on multiple machines (via NFS), including patching, rebuilding, and booting new kernels, libraries, and services. Configuration and customization can be done through simple config files and bash scripts. It is suitable for performing tests of GUI applications, services, libraries, and kernel patches.
How to Use Usage: crun < No of Times > < Time Interval > < Program Namge > [Program Parameters] crun would come handy when you need to execute certain command over and over again with several time intervals in between those executions. For example, let's say you want to run netstat -na command 20 times with a time interval of 1 second. Then you can use crun with following arguments: crun 20 1 netstat -na crun won't return until final process is executed and returned.
cryptmount assists system administrators in setting up encrypted filesystems based on the device mapper (dm-crypt) of GNU/Linux systems using a 2.6-series kernel. After initial setup, it allows any user to mount or unmount filesystems on demand, solely by providing the decryption password, with any system devices needed to access the filing system being configured automatically. A wide variety of encryption schemes (provided by the kernel and libgcrypt library) can be used to protect both the filing system and the access key. The protected filing systems can reside in either ordinary files or disk partitions.
Set of multiplatform cryptographic-related applications to be run from batch, console or GUI, without installation.
- fmac: calculate Message Autentication Code using TEA and XTEA in OMAC mode
- fsaber: encrypt/decrypt files, compatible with classic CipherSaber-1 and -2, features also a secure deletion mode
- fstegano: simple steganographic tool to hide/extract a file in less significant bits of another file
Cssc Heckert gnu.tiny.png
CSSC is the GNU project's replacement for the traditional Unix SCCS suite. It aims for full compatibility (including precise nuances of behaviour, support for all command-line options, and in most cases bug-for-bug compatibility) and comes with an extensive automated test suite. If you currently use SCCS for version control, you should be able to just drop in CSSC, even if you have a large number of shell scripts which are layered on top of SCCS and depend on it. This will let you to develop on and for GNU/Linux if your source code exists only in an SCCS repository. CSSC also lets you migrate to a more modern version control system.
'cssmerge' extracts selected blocks of CSS from input stylesheets, and merges them into a single coherent output stylesheet, with optional comments on where they came from, and warnings about conflicting styles. Whole blocks can be chosen by selector or partial blocks which contain a particular property may be generated. You can match selectors completely or by element, class, or ID; properties can be matched completely or partially. The output is a valid CSS file, sorted to make it easy to find what you are looking for.
'csv2latex' is a file format converter that converts a well formed CSV file (like the ones exported from to the LaTeX document format.
Read multiple comma separated value files, such as exported from a spreadsheet or a database, and combine the output into a single file. Options are available to limit the columns included and to semi-intelligently skip headers.
Transformation utilities for csv (or csv-like) generated rows. The standard csv module is very useful for parsing tabular data in CSV format. Typically though, one or more transformations need to be applied to the generated rows before being ready to be used; for instance "convert the 3rd column to int, the 5th to float and ignore all the rest". This module provides an easy way to specify such transformations upfront instead of coding them every time by hand. Two classes are currently available, SequenceTransformer and MappingTransformer, that represent each row as a list (like csv.reader) or dict (like csv.DictReader), respectively.
Exuberant Ctags is a multilanguage reimplementation of the *nix ctags program. It generates an index of source code object definitions which editors and tools use to instantly locate the definitions. Exuberant Ctags currently supports 41 different computer languages.
ctools is a set of useful tools for C programs including a resource database, a tiny interpreter, a set of utilities that extend clib, powersets of integers and chars, long-period random numbers, and Wirth's P4 compiler. It also contains Tinker, a Tcl-like interpreter that is small, easy to embed into a program, but not particularly fast (two out of three ain't bad!) If you want an extension or scripting language for your program, and don't want the whole Tcl package, Tinker will be a welcome tool.
'ctypes' is a ffi (Foreign Function Interface) package for Python. It lets you call functions from dlls/shared libraries and has facilities to create, access and manipulate simple and complicated C data types transparently from Python - in other words: wrap libraries in pure Python.
'cuetools' is a set of utilities for working with cue files and TOC files. It includes programs for conversion between the formats (cueconvert), file renaming based on cue/TOC information (cuebreakpoints), and track breakpoint printing (cueprint).
Curl is a command line tool and library for transferring data with URLs. The both do transfers using Internet protocols, including DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMTP, SMTPS, Telnet and TFTP. Curl also supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies, HTTP/2, cookies, user+password authentication (Basic, Plain, Digest, CRAM-MD5, NTLM, Negotiate and Kerberos), file transfer resume, proxy tunneling and more.
Cursynth Heckert gnu.tiny.png
Cursynth is a polyphonic music synthesizer that runs graphically inside your terminal. You can play Cursynth as a standalone soft-synth with your computer keyboard or MIDI keyboard.
'cutmp3' is a small command line MP3 editor. It lets you select sections of an MP3 interactively or via a timetable and save them to separate files without quality loss. Silence and ID3 tag searching are also possible. For playback it uses mpg123. The program works with VBR files and files bigger than 2GB.
'Cutter' lets network administrators close TCP/IP connections running over an iptables firewall. It closes the connection in such a way as to lead both ends (client and server) to believe that it was aborted by the other.
Version control system and important component of Source Configuration Management (SCM). Lets you record the history of source files and documents. It's similar to the free software RCS, PRCS, and Aegis programs, but has the following significant advantages over RCS:
  • runs user scripts to log operations or enforce site-specific policies
  • lets separatedevelopers operate as a team
  • vendor branches keep versions separate, but also merge them if needed
  • unreserved checkouts let developers work simultaneously on the same files
  • flexible modules database maps names to the components of a larger database
  • runs on most Unix variants; clients for Windows 95/NT, OS/2, and VMS available
'Cvs-Brancher' establishes a tagged branch in a CVS module and schedules a merge and build to occur at a later date/time. It might be used to roll out Website changes at odd hours, such as posting a press release in time for the start of the business day on the east coast, or to roll out cfengine changes to a data center during the night, to minimize the impact of downtime.
cvs2cl produces a GNU-style ChangeLog for CVS-controlled sources, by running "cvs log" and parsing the output. Duplicate log messages get unified in the Right Way.
Perl program to transform the 'cvs log' output to HTML. The HTML output shows the revision log history and differences between versions, and can be configured to show the amount of information the user like to see from the CVS repository. cvs2html can be used for any type of cvs archive. The program can be used on any type of cvs archive, but since it invokes cvs itself, it must be run onn a machine with a local checked out copy of the archive and access to the repsitory.
'cvsdelta' works with a CVS project, producing a list of the local files that have been changed. It lists the number of lines of code that have been added, removed, and deleted. It can also execute the "add" and "remove" commands for the appropriate files. It detects files that have been added and removed, and of existing files it counts the number of lines that have been added, deleted, and changed. It filters project changes by using .cvsignore files, both system-wide and locally. Via the --execute option, cvsdelta can also perform the related operations with CVS, that is, it can add and remove the appropriate files. Again, .cvsignore files are honored. Thus, "cvsdelta --execute" will add all new files to the CVS project.
cvsfs is an attempt to let a user mount a CVS project like any file system. It allows you to navigate and browse through a project tree. No preparations are required on the CVS server It allows to view the versioned files as like they were ordinary files on a disk. There is also a possibility to check in/out some files for editing
Cvsplot is a Perl script which analyses the history of a CVS-managed project. The script executes on a set of files, analyses their history, and automatically generates graphs that plot lines of code and number of files against time. This project used to be known as cvsstat, but since an unrelated script with the same name already existed, the name was changed to cvsplot.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.

The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.