light weight
Cheetah web browser 0.10
Cheetah web browser has been started to create a fully functional. more>> The cheetah web browser is a project that has been started to create a fully functional, light-weight, bloat-free web browser for Linux (and other free unix clones) that is not dependant on KDE, GNOME or Mozilla.
Why another web browser?
There are a lot of web browsers available for Unix and all of them that I have tried are great. However, I have yet to find one that truly satisfies my needs.
This is what I require in a web browser:
* It must not require another more developed web browser, such as mozilla, to operate. It can certainly use code from another web browser (providing the applications authors permit that), but the code must be included natively in its source, or in a shared library that comes with the browser. For example, I do not want to have mozilla installed to use my browser. I am using my browser not mozilla.
* It must not depend on an entire desktop suite. For example, if I use icewm I should not have to install kde to use my web browser.
* It must be extremely fast and provide an enjoyable browsing experience (duh).
* It must provide only the ability to surf the internet and download files through http and ftp. I do not want my web browser to provide the means to send/receive e-mail, compose web pages, chat on irc etcetera. I have other programs to do that.
When will Cheetah be usable?
I dont have a roadmap layed out yet. I wont have one for awhile. It all depends upon how many people are willing and have the time to contribute.<<less
Aurora-Imetal-Light 0.2
Aurora-Imetal-Light 0.2 provides you with a nice GTK theme for GNOME users, based on the Aurora engine. more>>
GNOME is an international effort to build a complete desktop environment the graphical user interface which sits on top of a computer operating system entirely from free software. This goal covers creating software development frameworks, selecting application software for the desktop, and working on the programs which manage application launching, file handling, and window and task management.
GNOME is part of the GNU Project and can be used with different Unix-like operating systems, most notably Linux, and as part of Java Desktop System in Solaris.
Enhancements:
- 2 x gtk themes 1 x emerald
- Includes a second panel.bg for those who use global menu!
- Standard is non global menu.
Requirements:
- Aurora Gtk Engine

Advanced Human Light 1.0
Advanced Human Light is a GTK theme that uses the Murrine, Aurora, and, Clearlooks engines. more>>
Advanced Human Light 1.0 is yet another beautiful theme for Gnome users. It is actually a GTK theme that uses the Murrine, Aurora, and, Clearlooks engines.
This supports rgba* in the main window while leaving buttons, tabs, and text areas opaque so as to enhance readability and usability without sacrificing eye candy.
GNOME is an international effort to build a complete desktop environment-the graphical user interface which sits on top of a computer operating system-entirely from free software. This goal includes creating software development frameworks, selecting application software for the desktop, and working on the programs which manage application launching, file handling, and window and task management.
GNOME is part of the GNU Project and can be used with various Unix-like operating systems, most notably Linux, and as part of Java Desktop System in Solaris.
The name originally stood for GNU Network Object Model Environment, though this acronym is deprecated. The GNOME project puts heavy emphasis on simplicity, usability, and making things "just work".
Requirements:
- GTK 2.x
- GNOME 2.x
Arena Scripting Language 0.9.12
Arena Scripting Language is a light-weight scripting language. more>>
Main features:
- syntax similar to ANSI C
- standard library similar to ANSI C
- automatic memory management
- runtime polymorphism
- support for exceptions
- support for anonymous functions
Enhancements:
- This release changes the system() library function to return the raw exit status as given by the operating system.
Distributed Access Control System 1.4.20
Distributed Access Control System is a complete, light-weight, single sign-on and role-based access control system. more>>
- extended authentication and role-based access control capabilities for Apache-based web services, CGI programs, and virtually any program or script;
- a wide array of flexible, modular, and efficient authentication methods, including two-factor authentication and hardware tokens;
- powerful, rule-based authorization checking that can be applied transparently to any resource or activity (such as web services, web content, and program features) by Apache-based web services and CGI programs, or virtually any program or script;
- an Apache 2.0/2.2 module, suite of CGI programs, and collection of command line tools for Unix-type platforms, such as Linux, FreeBSD, and Solaris.
Enhancements:
- This release includes an important bugfix to local_passwd_authenticate that prevents invalid passwords from being accepted.
- Some minor bugs have also been addressed, including some problems with dacs.quick(7).
ZXID 0.19
ZXID aims at full stack implementation of all federated identity management and identity web services protocols. more>>
ZXID is light weight, has small foot print, and is implemented in C.
ZXID is suitable for both high perrformance and embedded applications. Scripting languages are supported using SWIG, including Perl and PHP. The "full stack" nature of ZXID means its self contained and has minimal external library dependencies, the main one being OpenSSL.
Targeted Federated Identity Standards:
SAML 2.0
SAML 1.1
Liberty ID-FF 1.2
WS-Federation 1.0 Basic Profile
Targeted ID Web Services Standards:
Liberty ID-WSF 1.1
Liberty ID-WSF 2.0
Scam-protect 1.0.0
Scam-protect is a milter which restricts the use of your domain address in emails. more>>
Main features:
- Reject mail with your domain name in the mail from envelope
- Reject mail with your domain name in the From header
Performance
Scam-protect milter was designed to be light-weight and use minimal resources.
Whitelist
Scam-protect has a configurable whitelist of IP addresses or a range of IP addresses (CIDR). This feature can be used to allow which hosts can use your domain name in email addresses..
Accept mail from users
Users should configure their mail clients (MS Outlook, Eudora, Mozilla Thunderbird) to use the port 587 (MSA) instead of the SMTP port to send mail through the mail server running Scam-protect.
Scam-protect will accept mail if the connection was authenticated through SMTP AUTH.
Openbox 3.4.4
Openbox is a standards compliant, fast, light-weight, extensible window manager. more>>
Openbox works with your applications, and makes your desktop easier to manage. This is because the approach to its development was the opposite of what seems to be the general case for window managers. Openbox was written first to comply with standards and to work properly. Only when that was in place did the team turn to the visual interface.
Openbox is fully functional as a stand-alone working environment, or can be used as a drop-in replacement for the default window manager in the GNOME or KDE desktop environments.
Openbox 3 is a completely new breed of window manager. It is not based upon any existing code base, although the visual appearance has been based upon that of Blackbox. Openbox 2 was based on the Blackbox 0.65.0 codebase.
Openbox is free software, and is distributed under the terms of the GNU General Public License
Main features:
- ICCCM and EWMH compliance!
- Fast as f$%k!
- Chainable key bindings!
- Customizable mouse actions!
- Window resistance!
- Multi-head Xinerama support!
- Pipe menus!
MyJgui 0.5.5.1
MyJgui is a light-weight graphical user interface for MySQL databases. more>>
Motivation:
After the MySQL Front project went commercial, there was no light weight, feature rich and free mysql gui application that I considered worth running.
So I got stuck to the mysql binary and console front end. After awhile I realised that there is too much typing involved, and that many of the tasks could be automated and quickened only if a free mysql front application could be run.
I like the phpMyAdmin project, but first - its not always available, and because of the need to install it on every server, I dont consider it lightweight.
Java was chosen as the programming language because of its portability.
As a programmer I try to enhance the gui with the application development in mind, so many features added in the furure will be driven towards application development, even though many administration features are going to be included as well.
Main features:
- Automaticaly expanded database tree showing all the databases.
- The middle right pane shows the output of show table status when clicked on the database in the tree
- The middle right pane automaticaly moves to the results of sql command when a command is triggered
- SQL command textarea supports triggering of marked commands
- Detailed sql command details and history at the bottom of the right pane as well as showing of all the possible errors and response values
- Clearing of the sql command history
The Squirrel programming language 2.1.2
The Squirrel programming language is a light-weight scripting language. more>>
- Open Source zlib/libpng licence
- dynamic typing
- delegation
- higher order functions
- generators
- cooperative threads(coroutines)
- tail recursion
- exception handling
- automatic memory management (CPU bursts free; mixed approach ref counting/GC)
- both compiler and virtual machine fit together in about 6k lines of C++ code.
- optional 16bits characters strings
Squirrel is inspired by languages like Python,Javascript and expecially Lua(The API is very similar and the table code is based on the Lua one).
squirrels syntax is similar to C/C++/Java etc... but the language has a very dynamic nature like python/Lua etc...
local array=[1,2,3,{a=10,b="string"}];
foreach (i,val in array)
{
::print("the type of val is"+typeof val);
}
Entity<<less
SVGGraph 0.07
SVGGraph is a Perl extension for creating SVG Graphs / Diagrams / Charts / Plots. more>>
SYNOPSIS
use SVGGraph;
my @a = (1, 2, 3, 4);
my @b = (3, 4, 3.5, 6.33);
print "Content-type: image/svg-xmlnn";
my $SVGGraph = new SVGGraph;
print SVGGraph->CreateGraph(
{title => Financial Results Q1 2002},
[@a, @b, Staplers, red]
);
This module converts sets of arrays with coordinates into graphs, much like GNUplot would. It creates the graphs in the SVG (Scalable Vector Graphics) format. It has two styles, verticalbars and spline. It is designed to be light-weight.
If your internet browser cannot display SVG, try downloading a plugin at adobe.com.
EXAMPLES
For examples see: http://pearlshed.nl/svggraph/1.png and http://pearlshed.nl/svggraph/2.png
Long code example:
#!/usr/bin/perl -w -I.
use strict;
use SVGGraph;
### Array with x-values
my @a = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20);
### Arrays with y-values
my @b = (-5, 2, 1, 5, 8, 8, 9, 5, 4, 10, 2, 1, 5, 8, 8, 9, 5, 4, 10, 5);
my @c = (6, -4, 2, 1, 5, 8, 8, 9, 5, 4, 10, 2, 1, 5, 8, 8, 9, 5, 4, 10);
my @d = (1, 2, 3, 4, 9, 8, 7, 6, 5, 12, 30, 23, 12, 17, 13, 23, 12, 10, 20, 11);
my @e = (3, 1, 2, -3, -4, -9, -8, -7, 6, 5, 12, 30, 23, 12, 17, 13, 23, 12, 10, 20);
### Initialise
my $SVGGraph = new SVGGraph;
### Print the elusive content-type so the browser knows what mime type to expect
print "Content-type: image/svg-xmlnn";
### Print the graph
print $SVGGraph->CreateGraph( {
graphtype => verticalbars, ### verticalbars or spline
imageheight => 300, ### The total height of the whole svg image
barwidth => 8, ### Width of the bar or dot in pixels
horiunitdistance => 20, ### This is the distance in pixels between 1 x-unit
title => Financial Results Q1 2002,
titlestyle => font-size:24;fill:#FF0000;,
xlabel => Week,
xlabelstyle => font-size:16;fill:darkblue,
ylabel => Revenue (x1000 USD),
ylabelstyle => font-size:16;fill:brown,
legendoffset => 10, 10 ### In pixels from top left corner
},
[@a, @b, Bananas, #FF0000],
[@a, @c, Apples, #006699],
[@a, @d, Strawberries, #FF9933],
[@a, @e, Melons, green]
);
Encaps Gallery 1.7.12
Encaps Gallery is photo album software which supports different skins (html-templates). more>>
Main features:
- MySQL database installer
- create unlimited categories
- upload unlimited media files (images,mov,swf)
- automatic thumbnails creation (optional)
- easy to install and use
- web-admin (back-end)
- large number of images is splitted by pages
- PayPal shopping cart (optional, can be enabled/disabled from back-end)
Encaps Gallery photo album software is trying to provide a free, light weight & flexible to customize web application for online digital photo album creating. That allows you to create a custom photo album on your web page. Encaps Gallery photo album software may be run stand-alone or embedded within another web page. PHP photo gallery helps you to create your custom photo album. Encaps photo Gallery is fully functional ready-to-go image hosting system written in PHP.
Photo album scripts come with an Admin panel to manage your photo galleries and images, completely customizable using HTML templates. You can easily create and manage photo albums, using http/ftp image upload and admin back-end.
HA-JDBC 2.0
HA-JDBC is a JDBC driver implementation that provides light-weight. more>>
Main features:
- Supports any database accessible via JDBC.
- High-availability - Database cluster can lose a node without failing the current transaction.
- Improves performance of concurrent read-access by distributing load across individual nodes.
- Support for full JDBC 3.0 (Java 1.4) feature set.
- Compatible with JDBC RowSet implementations found in Java 1.5.
- Out-of-the-box database-independent strategies for synchronizing a failed cluster node.
- Exposes JMX management interface to allow administration of database clusters.
- Open source (LGPL).
Lire - Lucene Image REtrieval 0.5.4
Lire is a simple way to create a Lucene index of image features for content based image retrieval. more>>
The used features are taken from the MPEG-7 Standard: ScalableColor, ColorLayout and EdgeHistogram. Furthermore methods for searching the index are provided.
The LIRE library is part of the Caliph & Emir project and aims to provide the CBIR features of Caliph & Emir to other Java projects in an easy and light weight way.
Creating an Index
Use DocumentBuilderFactory to create a DocumentBuilder, which will create Lucene Documents from images. Add this documents to an index like this:
System.out.println(">> Indexing " + images.size() + " files.");
DocumentBuilder builder = DocumentBuilderFactory.getExtensiveDocumentBuilder();
IndexWriter iw = new IndexWriter(indexPath, new SimpleAnalyzer(), true);
int count = 0;
long time = System.currentTimeMillis();
for (String identifier : images) {
Document doc = builder.createDocument(new FileInputStream(identifier), identifier);
iw.addDocument(doc);
count ++;
if (count % 25 == 0) System.out.println(count + " files indexed.");
}
long timeTaken = (System.currentTimeMillis() - time);
float sec = ((float) timeTaken) / 1000f;
System.out.println(sec + " seconds taken, " + (timeTaken / count) + " ms per image.");
iw.optimize();
iw.close();
Searching in an Index
Use the ImageSearcherFactory for creating an ImageSearcher, which will retrieve the images for you from the index.
IndexReader reader = IndexReader.open(indexPath);
ImageSearcher searcher = ImageSearcherFactory.createDefaultSearcher();
FileInputStream imageStream = new FileInputStream("image.jpg");
BufferedImage bimg = ImageIO.read(imageStream);
// searching for an image:
ImageSearchHits hits = null;
hits = searcher.search(bimg, reader);
for (int i = 0; i < 5; i++) {
System.out.println(hits.score(i) + ": " + hits.doc(i).getField(DocumentBuilder.FIELD_NAME_IDENTIFIER).stringValue());
}
// searching for a document:
Document document = hits.doc(0);
hits = searcher.search(document, reader);
for (int i = 0; i < 5; i++) {
System.out.println(hits.score(i) + ": " + hits.doc(i).getField(DocumentBuilder.FIELD_NAME_IDENTIFIER).stringValue());
}
Enhancements:
- An issue where the scalable color descriptor (color histogram) was not compliant to the MPEG-7 standard was fixed.
- The color only search was changed to use the color layout descriptor and a bug in the edge histogram descriptor was hunted down.
- The LireDemo GUI application has also been updated: A new function for creating image mosaics has been introduced and the indexing of digital photos is now faster than ever as only the EXIF thumbnails - if available - are used instead of the whole image.
LLVM 2.0
LLVM is a compiler infrastructure designed for compile-time, link-time, runtime, and more>>
There is a demonstration front end, Stacker, which provides a simple forth-like language. Work is currently under way to provide a Java class file front-end, as well as other significant improvements.
- A compilation strategy designed to enable effective program optimization across the entire lifetime of a program. LLVM supports effective optimization at compile time, link-time (particularly interprocedural), run-time and offline (i.e., after software is installed), while remaining transparent to developers and maintaining compatibility with existing build scripts.
- A virtual instruction set - LLVM is a low-level object code representation that uses simple RISC-like instructions, but provides rich, language-independent, type information and dataflow (SSA) information about operands. This combination enables sophisticated transformations on object code, while remaining light-weight enough to be attached to the executable. This combination is key to allowing link-time, run-time, and offline transformations.
- A compiler infrastructure - LLVM is also a collection of source code that implements the language and compilation strategy. The primary components of the LLVM infrastructure are a GCC-based C & C++ front-end, a link-time optimization framework with a growing set of global and interprocedural analyses and transformations, static back-ends for the X86, PowerPC, IA-64, Alpha, & SPARC V9 architectures, a back-end which emits portable C code, and a Just-In-Time compiler for X86, PowerPC, and SPARC V9 processors.
LLVM does not imply things that you would expect from a high-level virtual machine. It does not require garbage collection or run-time code generation (In fact, LLVM makes a great static compiler!). Note that optional LLVM components can be used to build high-level virtual machines and other systems that need these services.
LLVM is a robust system, particularly well suited for developing new mid-level language-independent analyses and optimizations of all sorts, including those that require extensive interprocedural analysis.
LLVM is also a great target for front-end development for conventional or research programming languages, including those which require compile-time, link-time, or run-time optimization for effective implementation, proper tail calls or garbage collection.
We have an incomplete list of projects which have used LLVM for various purposes, showing that you can get up-and-running quickly with LLVM, giving time to do interesting things, even if you only have a semester in a University course. We also have a list of ideas for projects in LLVM.
Enhancements:
- In this version, the ARM backend is stable and fully supported, x86 backend supports MMX and PIC, and an MSIL (.NET) backend was added.
- A new loop rotation pass was added, and PassManager and loop strength reduction pass were improved.
- Integer types are now signless and can support arbitrary bitwidths.
- Support for software floating point was added, and inline assembly support is improved.
- Improved DWARF debug information and support for zero-cost DWARF exception handling are now available.
- There are major changes in the API and the bytecode format.