GCC-MELT is a high-level domain specific language that eases the development of plugin-like extensions for GCC, the Gnu Compiler Collection. These extensions can analyze or modify GCC internal representations, and can be used for static source code analysis, refactoring, specific warnings, optimizations, etc. The MELT language provides high-level features. Notably, MELT code is translated to C or C++, and can even contain C or C++ code. It includes powerful pattern matching facilities and can manipulate dynamically typed values and raw GCC structures. It enables functional/applicative, object-oriented, reflective programming styles and has a familiar Lisp-like syntax.
Debian packaging utilities for Truecrypt source helps to get Truecrypt running with a minimum of effort under Debian-based Linux systems (Debian and Ubuntu are officially supported). Truecrypt is an open source disk encryption software which uses a concept of containers to store encrypted data. The containers (or volumes) can be read transparently under Linux and Windows. The utilities create installable *.deb packages from the sources and those debs can be used in turn to install the encryption software.
Wnotes are small, self-contained text notes for X Window System desktops. You can create, type, cut-and-paste, and save notes in any combination you like. Wnotes let you store notes and their window configurations using any database which accepts input from the Unix shell. It is compatible with most Linux and Unix desktops. The source code package includes sdb, a simple note database written as a bash script, and other examples of how to use Wnotes.
YAGAC is a library that when linked to your C program, allows you to conveniently track or trash memory leaks within your application while it is still running. You can have multiple garbage collectors according the code part you are in. It tracks memory assigned by your code only, and does not monitor third part libraries. Tracking can be activated by updating a debug flag without restarting your application. It is intended for use with daemon-type programs.
StaticPython is a statically linked version of the Python 2.x (currently 2.7.1) and Stackless Python 2.x interpreters and their standard modules for 32-bit (i686, i386, x86) Linux, Mac OS X, and FreeBSD systems. It is distributed as single, statically linked 32-bit executable binaries, which contain the Python scripting engine, the interactive interpreter with command editing (readline), the Python debugger (pdb), most standard Python modules (including pure Python modules and C extensions), coroutine support using greenlet, and multithreading support. The binary contains both the pure Python modules and the C extensions, so no additional .py or .so files are needed to run it. It also works in a chroot environment. The binary uses uClibc, so it supports username lookups and DNS lookups as well (without NSS).
uevalrun is a self-contained computation sandbox for Linux, using User-mode Linux for both compilation and execution of the program to be sandboxed. The program can be written in C, C++, Python, Ruby, Perl, or PHP. uevanrun enforces memory limits, timeouts, and output size limits in the sandbox. The primary use case for uevalrun is evaluation of solution programs submitted by contestants of programming contests: uevalrun compiles the solution, runs it with the test input, compares its output against the expected output, and writes a status report.
ftracer is a simple user space implementation of a Linux kernel style function tracer. It allows you to trace every call in instrumented user applications. It is useful for debugging and performance analysis due to its fine grained time stamp. This allows you to do control flow oriented debugging without any special instrumentation. So if the program does something unexpected, it's easily possible to look at the function calls before that, and use that to deduce the cause of the problem. ftracer relies on gcc generating a call on top of every function call. The tracing slows every function call down (about 3x). The tracing is per thread and does not create a global bottleneck. It supports a dump function in C, directly callable by the program or on exit, and a gdb function to dump from gdb.