packages feed

esotericbot-0.0.4: esotericbot.cabal

Name:			esotericbot
Version:		0.0.4
License:		BSD3
License-File:		License
Author:			John Morrice <spoon@killersmurf.com>
Maintainer:		John Morrice <spoon@killersmurf.com>
Stability:		Experimental
Category:	 	Web	
Synopsis:		Esotericbot is a sophisticated, lightweight IRC bot.
Description:		
			Esotericbot is a sophisticated, lightweight IRC bot, written in Haskell.
			.
			Esotericbot launches sub-processes to respond to commands issued by users over IRC.
			.
			Why would you use esotericbot?
			.
			For lambdabot-4.2.2.1:
			.
			spoon@utensil:~/esotericbot$ ps e v
			.
			  PID TTY      STAT   TIME  MAJFL   TRS   DRS   RSS %MEM COMMAND
			.
			23433 pts/3    Sl+    0:00      0  8228 84855 33476  1.6 lambdabot
			.
			15040 pts/5    S+     0:00      0  2171 28804  3292  0.1 ./esotericbot
                        .
                        I'm not insinuating that lambdabot sucks in any way, ( lambdabot is most excellent ) however, my hope is that esotericbot could attain equal functionality through plugins, while maintaining its small memory footprint.
                        .
			Esotericbot is small ( for Haskell :), designed to run on a server with limited memory - typically running at under 5mb of private memory.
			.
			Features:
			.
			* Advanced memory and time management options, utilizing POSIX resource management.
			.
			For example, the memory used by all child processes, can be limited - commands be queued until the memory usage has dropped.
			.
			* Privileged channel operator commands ( Currently, can be disabled and enabled by channel operators, to prevent abuse. )
			.
			* Easy to add new plugins.  A C library is included to make writing new plugins/adapting programs to be plugins easy.
			.
			* Set up through a configuration file.
			.
			* Multiple channels.
			.
			* Multi-threaded
			.
			* Lightweight, typically running at under 5mb of private memory.
			.
			Cons:
			.
			* POSIX memory management, process forking, and chroot means that Esotericbot is POSIX only.
			.
			* Esotericbot is, due to the libraries and extensions used, restricted to being compiled by the Glorious Glasgow Haskell Compiler.
			.
			.
			Note: esotericbot comes with several plugins which will be installed into your cabal-bin, and libraries installed into your cabal-lib.  Check cabal-bin for 'brainfuck', 'unlambda' , 'malbolge', 'sk' and 'whirl'.  These will need libplugin and libplugin++ from your cabal-lib to function correctly.

Build-type:		Custom	

Homepage:		http://www.killersmurf.com/projects/esotericbot

Build-Depends:		base , bytestring , mtl , attoparsec , network , stream-fusion , stm , containers==0.2.0.0 , time , tuple , unix , directory 
Cabal-Version:		>= 1.6
Other-Modules:		Esotericbot.BSH 
          		Esotericbot.BSUtils 
			Esotericbot.Chanop 
			Esotericbot.Chroot 
			Esotericbot.Config 
			Esotericbot.Execution 
			Esotericbot.Help 
			Esotericbot.IRCCom 
			Esotericbot.Safely 
			Esotericbot.EBTypes

Extra-source-files:	c_plugins/*.c
			c_plugins/*.h
			c_plugins/*.cpp
			c_plugins/Makefile
			c_plugins/Makefile.am
			c_plugins/Makefile.in
			hs_plugins/*.hs
			hs_plugins/Makefile
			hs_plugins/Makefile.am
			hs_plugins/Makefile.in
			configure
			configure.ac
			Makefile.am
			Makefile.in
			install-sh
			config.sub
			config.guess
			libtool
			ltmain.sh
			m4/*.m4
			missing
			depcomp
			aclocal.m4
			doc/esotericbot.conf
			doc/README

GHC-OPTIONS:		-threaded
Executable:		esotericbot
Main-Is:		Esotericbot/Esotericbot.hs