1.0.3
oa 1.0.3
oa is a toy I needed to experiment with some wave-forms. more>>
I like it so much I decided to release it ! even if it is only a toy. oa project works with Linux (for the sound) and X-Window (for the interface).
Yes, the window is very big (1024x868), yes I know, dont blame me. It was the size I needed.
You can use it very quickly, I think the interface is obvious. Try to have some wave-forms that will procude realistic "ooo" and "aaa" and send the oa data files to me !
You even can save what you do to a wav file. If you produce one, put it somewhere I could download it and send me a mail. You can do crazy things, really, like some people do with their wonderful "electro-acoustical music".
Enhancements:
- it now compiles with gcc 4.0.
myOS 1.0.3
myOS project is minimalistic GNU/Linux based system. more>>
It is bare bones Linux system, stripped down of everything, but core necessary files to compile and run OpenGL/C code. It has simplified directory structure and cleaned up internal cross referencing, it starts up with and in total has only a single script. Linux kernel is 2.6.20, compiled with only essential drivers.
Size can be reduced even more, read this for inspiration:
bbjd 1.0.3
bbjd project is an interactive strategy tables game. more>>
Its is the only game offered by casinos, where it is proven that players can beat the dealer on the long term.
Many books and articles have been published about this theme, however most of them are written to make you loose money.
The only way of having a moderate advantage over the dealer is to carefully analyze the remaining cards in the shoe, placing variable bets and deciding when to stay or buy, double or split.
bbjdis a tool to analyze the best strategy depending on the current card distribution in the shoe. It is distributed to work with a simple text-based interface and with a user-friendly web-based interface.
Enhancements:
- Some bugs in the user interface have been fixed. Thanks to Jiang Tang for reporting them.
- The web interface now also works with Lynx.
drun 1.0.3
drun 1.0.3 provides you with an outstanding and powerfulGTK run dialog box with tab completion and a simple ui, which supports common features as well as history, files, directories, urls, and more>>
Usage:
Type in a command, and press return to run it. Tab, up, and down can be used to cycle through possible completions for that command. Delete can be used to remove a completion from the list and history. Escape dismisses the completions or exits. Return runs a command, and Shift+Return runs a command in a terminal.
If you press tab on an empty entry, then you will get a list of recently run commands in the order that you last ran them. Otherwise, it will attempt to complete an executable, directory, or file. The completions will then be ordered by how many times they were previously run. A name beginning with an equals symbol will be expanded based on where it is located in the system path. If no completions are found, then your input will be manipulated based on spell checking to find any possible completions.
The programs used to run files, directories, and urls can be edited in ~/.drunrc:
- http-handler = firefox
- ssh-handler = xterm -e ssh
- file-handler = gnome-open
- directory-handler = nautilus
- terminal-handler = xterm -e
Normally, drun will run commands in the current directory it was launched in. If a single directory is passed in as a parameter, then it will run the command in that directory. If a non-directory or multiple files are passed in as a parameter, then it will run the command in the directory of the first parameter, and append the list of files to the end of the command.
Custom run actions can be added to thunars right-click menu by configuring them from thunars edit menu.
You can add the following commands to be able to run commands in a directory or on selections of files from a thunar window. Similar actions are possible from other file managers such as nautilus.
Major Features:
- Tab completion
- History
- Runs files, directories, urls, and executables
- Runs on thunar/nautilus file and directory selections
- Spelling correction
- Recursive directory completion
- Completions ordered using history
- Completes parameters from history
Enhancements:
- Run terminal on shift+return or control+return
- Run terminal in directory if shift+return or control+return is pressed with a path
- Modified reverse search behaviour
- Complete directories from history as well as file system
- Go to parent directory on alt+up, undo on alt+down
- Allow running of shortcuts and documents on Windows
- Allow * glob in input
Requirements: gtk+
gnuvd 1.0.3
gnuvd is a command-line client to the online Van Dale dictionary for the Dutch language. more>>
Installation:
tar xvfz gnuvd-1.0.2.tar.gz
$ cd gnuvd-1.0.2
$ ./configure
$ make
$ make install
Enhancements:
- Fixes for some memory related bugs.
- Now works on the merciless OpenBSD 3.8.
Mneme 1.0.3
Mneme provides an email reminder system. more>>
Mneme is a combination of Web application and shell scripts that are used to help people remember upcoming events or action that they need to take.
The Web application portion allows a user to add, edit, view, and delete reminders.
There are two shell scripts to choose from that generate emails when the reminders are due.
Main features:
- Fast and simple to use.
- Clear view of up-coming reminders.
bff 1.0.3.1
bff is a Brainfuck interpreter. more>>
Installation
To build with GNU tools run
make
To install in /usr/bin (not sure why youd be wanting this though)
make install
To clean up the build files
make clean
Enhancements:
- fixed a bug where programs starting with < or > command were not handled properly
userv 1.0.3
userv is a tool for system administrators. more>>
For example, my machines news system needs to scan my users newsrcs to ensure that the right newsgroups are fetched. Before userv that part of the news system had to run as root, and clumsily use `su.
It can be also a component for application authors. For example, imagine a version of `cron which didnt need to run as root, so that a security bug in cron would just mean that bad people could get cron jobs to run at the wrong times, rather than everyone on the system being able to break in completely. Imagine being able to do sophisticated mail filtering at delivery time without the mail transfer or delivery agents needing to be root.
Enhancements:
- Count -continued lines properly in error message line numbers.
- Fix lexing bugs with "-quoted strings and -continuation.
- Fix interpretation of n etc. in "-quoted strings.
- Fix bug which ignored erroneous read/write after ignore-fd/reject-fd.
mplib 1.0.3
mplib is a C library that enables programms to access ID3 tags in MP3 files. more>>
Mplib is written to be very easy to use, fast, cross-platform capable and small size when built with other applications. Its currently only able to handle common tag fields like artist, comment, etc. out of the box. Ill include support for more special Id3 fields in v2 tags from contributors if anyone sends me the nessecarry code. Im just to lazy to implement all the 70 frame types (type of informations you can include in a v2 tag) just on chance somebody could use some of them. If you think you need to store urgently a Musician credit list or Event timing codes write me and I will hack you the code if I have the time
for it.
And yeah, theres a allready a library written by the people who are responsible for the ID3 standard, consider to use id3lib if you dont like mplib :-P
You should start with a short introduction on the API and usage of mplib youll find in the download section of the sourceforge project page. As I wrote above, it was important for me that this libarary is easy to use, because I think the reading a artist name from a mp3 file should really not be a big deal.
Enhancements:
- tags can now be read directly from memory instead of files
- created oxygen style code comments
ELFIO 1.0.3
ELFIO is an ELF (Executable and Linkable Format) reader and producer. more>>
While the librarys implementation does make your work easier: a basic knowledge of the ELF binary format is required. Information about ELF is included in the TIS (Tool Interface Standards) documentation you received with the librarys source code.
The ELFIO library consists of two independent parts: ELF File Reader (IELFI) and ELF Producer (IELFO). Each is represented by its own set of interfaces. The library does not contain any classes that need to be explicitly instantiated. ELFIO itself provides the interfaces that are used to access the librarys functionality.
To make the program recognize all ELFIO interface classes, the ELFIO.h header file is needed. This header file defines all standard definitions from the TIS documentation.
#include < ELFIO.h >
This chapter will explain how to work with the reader component of the ELFIO library. The first step is to get a pointer onto the ELF File Reader:
IELFI* pReader;
ELFIO::GetInstance()->CreateELFI( &pReader );
Now, that there is a pointer on the IELFI interface: initialize the object by loading the ELF file:
char* filename = "file.o";
pReader->Load( filename );
From here, there is access to the ELF header. This makes it possible to request file parameters such as encoding, machine type, entry point, etc. To get the encoding of the file use:
unsigned char encoding = pReader->GetEncoding();
Please note: standard types and constants from the TIS document are defined in the ELFTypes.h header file. This file is included automatically into the project. For example: ELFDATA2LSB and ELFDATA2MSB constants define a value for little and big endian encoding.
ELF binary files consist of several sections. Each section has its own responsibility: some contain executable code; others describe program dependencies; others symbol tables and so on. See the TIS documentation for a full description of each section.
To see how many sections the ELF file contains, including their names and sizes, is demonstated in the following code:
int nSecNo = pReader->GetSectionsNum();
for ( int i = 0; i < nSecNo; ++i ) { // For all sections
const IELFISection* pSec = pReader->GetSection( i );
std::cout GetName() GetSection( .symtab );
Second, create a symbol section reader:
IELFISymbolTable* pSymTbl = 0;
pReader->CreateSectionReader( IELFI::ELFI_SYMBOL,
pSec,
(void**)&pSymTbl );
And finally, use the section reader to process all entries (print operations are omitted):
std::string name;
Elf32_Addr value;
Elf32_Word size;
unsigned char bind;
unsigned char type;
Elf32_Half section;
int nSymNo = pSymTbl->GetSymbolNum();
if ( 0 < nSymNo ) {
for ( int i = 0; i < nSymNo; ++i ) {
pSymTbl->GetSymbol( i, name, value, size,
bind, type, section );
}
}
pSymTbl->Release();
pSec->Release();
All interfaces from the ELFIO library should be freed after use. Each interface has a Release() function. It is not enough to only free the high level interface because one of the sections or readers will still be held and its resources will not be cleared.
The interfaces are freed immediately after their use, in this example we will free only the pReader object:
pReader->Release();
The source code for the ELF Dumping Utility can be found in the "Examples" directory; included there are more examples on how to use different ELFIO reader interfaces.
Enhancements:
- Fixes endian conversion in the ELFIRelocation and ELFINote sections adapters.
Shale 1.0.3
Shale is a modern web application framework, fundamentally based on JavaServer Faces. more>>
Shale provides additional functionality such as application event callbacks, dialogs with conversation-scoped state, a view technology called Clay, annotation-based functionality to reduce configuration requirements and support for remoting. Shale also provides integration links for other frameworks, to ease development when combinations of technologies are required.
Main features:
- View Controller - Convenient mechanism to associate a "backing" Java class with each JavaServer Faces view in an application, with predefined event handers for events significant to an application developer.
- Dialog Manager - Mechanism to define a "conversation" with a user that requires multiple HTTP requests to implement, modeled as a state diagram.
- Application Manager - Traditional application wide front controller features that should be applied to every request.
- Validation - Integration with the Jakarta Commons Validator Framework, supporting both client side and server side validations based on a single set of configured validation rules.
- Remoting - Server side support for applications that employ AJAX (Asynchronous JavaScript and XML) style interactions.
- Spring Integration - Integration with the Spring Framework, allowing the use of Springs dependency injection framework to create JavaServer Faces managed beans.
- Clay - An alternative to JSP where you define views in pure HTML, in a fashion similar to Tapestry and Facelets. An innovative sub-framework for supporting the configuration of reusable subtrees of JavaServer Faces components for customizable reuse.
- Test Framework - Set of mock objects and JUnit test case base classes suitable for testing both the framework classes themselves, as well as application components built on top of the framework.
- Tiger Extensions - Optional add-on library that adds additional ease-of-use features for Shale applications that run on Java Standard Edition 5 (popularly known by its code name during development, "tiger").
wmblob 1.0.3
wmblob shows some blobs moving around. more>>
Ill be honest with you. the truth is: wmblob is a totally useless program. But unlike other totally useless programs (I wont name them here, because theyre made by an enormous and rich company), it looks good and shows funny moving `blobs. Im sure youll like it.
Its a nice dockapp for WindowMaker (see `www.windowmaker.org), but its probably going to run just as well with any other window manager.
xtarot 1.0.3
xtarot is an application which plays Tarot cards. more>>
It tells your fortune with virtual Tarot cards. Three tarot spreads are available via a simple user interface.
xtarot is designed to be as flexable as possible.
For this reason I have now split it into two packages. This should be very good for people who want to keep up with the latest version because you now no longer need to download over 3 Meg of graphics every time there is a change to the code!
Lexter 1.0.3
Lexter is a real-time word puzzle for text terminals. more>>
If anyone would like to translate Lexter to another language Ill include any "po" files I receive in the next version.
Lexter project dynamically calculates word scores from the dictionary contents. The format is plain text with one "word" per line and can contain just about anything. They could be topical like place names or even famous number sequences. Although it might make for a very difficult game.
The Lexter archive also includes an RPM spec file. RPM users can build a binary package ready to install by running:
rpm -tb lexter-1.0.3.tar.gz
You will find the binary rpm under /usr/src/rpm/RPMS/i386 or /usr/src/redhat/RPMS/i386.