From 219a6dab8995aad9ac4860cc1a84d6f3509a03a4 Mon Sep 17 00:00:00 2001 From: wbx Date: Sun, 17 May 2009 14:41:34 +0200 Subject: Initial import --- package/miau/Config.in | 12 + package/miau/Makefile | 35 +++ package/miau/files/miau.init | 28 ++ package/miau/files/miaurc | 587 +++++++++++++++++++++++++++++++++++++++ package/miau/ipkg/miau.conffiles | 1 + package/miau/ipkg/miau.control | 6 + package/miau/ipkg/miau.postinst | 4 + 7 files changed, 673 insertions(+) create mode 100644 package/miau/Config.in create mode 100644 package/miau/Makefile create mode 100755 package/miau/files/miau.init create mode 100644 package/miau/files/miaurc create mode 100644 package/miau/ipkg/miau.conffiles create mode 100644 package/miau/ipkg/miau.control create mode 100644 package/miau/ipkg/miau.postinst (limited to 'package/miau') diff --git a/package/miau/Config.in b/package/miau/Config.in new file mode 100644 index 000000000..4ab17bcad --- /dev/null +++ b/package/miau/Config.in @@ -0,0 +1,12 @@ +config ADK_PACKAGE_MIAU + prompt "miau.............................. Another IRC-bouncer/proxy" + tristate + default n + help + In short, miau is an IRC-bouncer/proxy. + Being more verbose, miau is small but quite featured + IRC-bouncer - a service bit like HTTP-proxy, but + for IRC-networks. + + http://sourceforge.net/projects/miau/ + diff --git a/package/miau/Makefile b/package/miau/Makefile new file mode 100644 index 000000000..55543a03b --- /dev/null +++ b/package/miau/Makefile @@ -0,0 +1,35 @@ +# $Id$ +#- +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include ${TOPDIR}/rules.mk + +PKG_NAME:= miau +PKG_VERSION:= 0.6.0.2 +PKG_RELEASE:= 6 +PKG_MD5SUM:= 1b78d219a03655399c165eeb021cddd8 +MASTER_SITES:= ${MASTER_SITE_SOURCEFORGE:=miau/} + +include ${TOPDIR}/mk/package.mk + +$(eval $(call PKG_template,MIAU,miau,${PKG_VERSION}-${PKG_RELEASE},${ARCH})) + +CONFIGURE_STYLE:= gnu +CONFIGURE_ENV+= ac_cv_func_malloc_0_nonnull=yes \ + ac_cv_func_realloc_0_nonnull=yes +CONFIGURE_ARGS+= --enable-automode \ + --enable-releasenick \ + --enable-uptime \ + --enable-privlog \ + --enable-onconnect +INSTALL_STYLE:= auto + +post-install: + ${INSTALL_DIR} ${IDIR_MIAU}/usr/bin + ${INSTALL_DIR} ${IDIR_MIAU}/etc/{init.d,miau} + ${INSTALL_BIN} ${WRKINST}/usr/bin/${PKG_NAME} ${IDIR_MIAU}/usr/bin/ + ${INSTALL_BIN} ./files/miau.init ${IDIR_MIAU}/etc/init.d/miau + ${INSTALL_DATA} ./files/miaurc ${IDIR_MIAU}/etc/miau/ + +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/miau/files/miau.init b/package/miau/files/miau.init new file mode 100755 index 000000000..ae22a32fe --- /dev/null +++ b/package/miau/files/miau.init @@ -0,0 +1,28 @@ +#!/bin/sh +#FWINIT 70 +. /etc/rc.conf + +case $1 in +autostop) ;; +autostart) + test x"${miau:-NO}" = x"NO" && exit 0 + exec sh $0 start + ;; +start) + [ -d /var/run ] || mkdir -p /var/run + [ -d /var/log/miau ] || mkdir -p /var/log/miau + /usr/bin/miau -f -d /etc/miau > /var/log/miau/miau.log 2> /var/log/miau/error.log & + ;; +stop) + [ -f /var/run/miau.pid ] && kill $(cat /var/run/miau.pid) >/dev/null 2>&1 && rm /var/run/miau.pid + ;; +restart) + sh $0 stop + sh $0 start + ;; +*) + echo "Usage: $0 {start | stop | restart}" + exit 1 + ;; +esac +exit $? diff --git a/package/miau/files/miaurc b/package/miau/files/miaurc new file mode 100644 index 000000000..c12e4ff11 --- /dev/null +++ b/package/miau/files/miaurc @@ -0,0 +1,587 @@ +# +# miau 0.5.3 configuration file example +# (C) 2003-2004 Tommi Saviranta +# + +# About structure of this configuration file: +# +# - All parameters are written inside quotes (for example, "foobar") +# +# - Options are defined like: option = "parameter1"[:"parameter2"] ... +# +# - When entering multiparameter options, certain parameters have default +# values and can be left out. +# +# - When entering multiparameter options and, for example, user doesn't want +# to set parameter2 at all but he needs to set parameter3, parameter2 can +# be skipped with column (':') like: "parameter1"::"parameter3". +# +# - Empty lines and characters after '#' (hash) are ignored. +# +# - When setting permissions, switched etc. (switches (booleans) are described +# as "state"), everything beginning with "t", "r" and "1" are concidered as +# "true" or "yes" (positive). Everything else is "false" or "no" (negative). + + + +# Required settings +################################################################################ + + +# nicknames = { "nick" }: Your nickname (and secondary nicknames) on IRC. +# If the primary nick (first nick on the list) is already on use, +# miau will try the others on the list. +# +# Default: no default +# +# Example: +#nicknames = { +# "zak" +# "zakh" +#} + + +# realname = "realname": Your "real" name on IRC. +# +# Default: no default +# +# Example: +#realname = "Prokhor Zakharov" + + +# username = "username": Your ident (matters only if you don't have identd +# running). +# +# Default: no default +# +# Example: +#username = "zak" + + +# password = "password": The password miau will expect to receive from client +# when it's registering with nick. If this is 13 characters long, +# miau assumed it's crypted. +# +# If miau is compiled with ENABLE_MKPASSWD, miau can generate password-hashes +# (from command line) with -c -switch. +# +# Default: no default +# +# Example: +#password = "foobar" + + +# listenport = "port": The port miau will wait for incoming connections. +# +# Default: no default +# +# Example: +#listenport = "4096" + + +# servers = { "server":"port":"password":"timeout" }: miau's IRC-server-list. +# Each line represents one server, where timeout is delay in +# seconds before connectiong attempt times out. Only "server" +# parameter is required. +# +# Default: no default +# +# Example: +#servers = { +# "irc.net" +# "irc.foo.bar":"6662" +# "localhost"::"foobar" +# "127.0.0.1":"6670"::"5" +#} + + +# connhosts = { "host":"permitted" }: List of hosts that are allowed (or denied) +# to connect to miau. When boolean-value is left unset, it is +# assumed to be "true". This list will be processed as a chain +# which means latter rules can override previous ones. +# +# Default: no default +# +# Example: +#connhosts = { +# "*":"yes" +# "client*.evil.net":"no" +#} + + + +# Optional settings +################################################################################ + + +# listenhost = "host": Host miau uses to listen on. +# +# If you are compiled with IPV6 and need this to listen on an IPV4 port, you +# must use an IP in the form ::FFFF:127.0.0.1 +# +# Default: no default +# +# Example: +#listenhost = "127.0.0.1" + + +# bind = "host": Host/IP miau uses for outgoing connections. +# +# Default: none +# +# Example: +#bind = "172.16.1.1" + + +# maxclients = "number": Maximum number of clients connected to miau +# concurrently. Set to zero for unlimited clients. +# +# Default: 3 +# +#Example: +#maxclients = "1" + + +# stonedtimeout = "seconds": Time (in seconds) with no data from the server +# before it is declared stoned and being disconnected. Although +# minimum value is 30, this value has no upper limit. Watch out, +# though, if this value is set too high, death of servers may stay +# undetected for a very long time if you are idle. +# +# Default: 90 +# +# Example: +#stonedtimeout = "150" + + +# connecttimeout = "seconds": Time (in seconds) before connection attampt will +# time out. Note that while connecting to the server miau will not +# respond to clients. Minimum value is 5, and many systems define +# maximum value. +# +# Default: 30 +# +# Example: +#connecttimeout = "60" + + +# channels = { "channel":"keyword" }: List of channels to join. +# +# Default: none +# +# Example: +#channels = { +# "#foobar" +# "#miau":"cats" +#} + + +# rejoin = "state": Rejoin channels after disconnecting from the server. +# If rejoin is set to true, channels defined in "channels" are +# also joined when client first time connects to miau. +# +# Default: true +# +# Example: +#rejoin = "false" + + +# leave = "state": Leave channels when all clients have detached from miau. +# If "leave" is set to "false" and "rejoin" is set to "true", +# channels defined at "channels" will be joined at miau startup. +# If both "leave" and "rejoin" is set to "true", channels that +# are left at client detach, are rejoined when client attached +# back to miau. +# +# Default: false +# +# Example: +#leave = "false" + + +# leavemsg = "message": Message miau will either use as PART-message or as an +# ACTION when all clients have detached from miau. If unset or +# set to empty, no message will be shown. Note that many people +# dislike event-based messages (which happens when "leave" is set +# to "false" and "leavemsg" is set). Also see usequitmsg. +# +# Note: Note that commenting this option out and rehashing after leavemsg was +# set, this option is _not_ reverted. To disable leavemsg afterwards you +# need to write an empty string here and rehash. +# +# Default: none +# +# Example: +#leavemsg = "doh" + + +# awaymsg = "message": Text that will be set to miau's away-reason when all +# clients have detached from miau. If unset or set to empty, +# AWAY-status will be left untouched. When any client attaches +# back to miau, AWAY-status will be reset. Also see usequitmsg. +# +# Note: If user sets him/herself away, miau will not touch away-status nor +# message neither when connecting to or disconnecting from miau. +# +# Note: Note that commenting this option out and rehashing after awaymsg was +# set, this option is _not_ reverted. To disable awaymsg afterwards you +# need to write an empty string here and rehash. +# +# Default: none +# +# Example: +#awaymsg = "bouncing around - all private messages will be logged" + + +# usequitmsg = "state": Use last quit-reason as away-reason and/or leave-message +# (if respective options are enabled) when all clients have +# disconnected from miau. If quit-reason is empty, default values +# of awaymsg and leavemsg will be used, otherwise most recent +# quit-message overrides values in miaurc. +# +# Default: true +# +# Example: +# usequitmsg = "false" + + +# getnick = "selection": miau can try to reclaim your primary nick when it is +# lost. This option may be one of the following: "never", +# "detached", "attached", or "always". +# "never" ....... miau will not try to get your nick back. +# "detached" .... miau will try to get your nick when no +# clients are attached. +# "attached" .... miau will try to get your nick when +# there are one or more clients attached. +# "always" ...... miau will try to get your nick +# +# Note: Do _not_ use options "attached" and "always" with clients (like +# irc-II EPIC) that automatically change your nick when they receive +# NICKINUSE from the server - you might end up chaning your nick until +# server drops your connection due excess flood. +# +# Default: detached +# +# Example: +#getnick = "always" + + +# getnickinterval = "seconds": Time between tries (in seconds) to obtain +# currently (possibly) lost primary nick. Don't set it too low +# or you might get kicked out the server due to excess flood. +# +# Default: 60 +# +# Example: +#getnickinterval = "30" + + +# antiidle = "minutes": Time between idle-timer resets in minutes. Set to 0 to +# disable. +# +# Default: 0 +# +# Example: +#antiidle = "300" + + +# qloglength = "minutes": Age of oldest line in quicklog in minutes. Set to zero +# to disable quicklog. +# +# This option might not be compiled in. +# +# Default: 30 +# +# Example: +#qloglength = "30" + + +# timestamp = "option": Location of timestamp in quicklog events. This option +# may be one of the following "beginning", "end", or "none". +# +# This option might not be compiled in. +# +# Default: none +# +# Example: +#timestamp = "beginning" + + +# flushqlog = "state": If set to true, quicklog will be written only when no +# clients are connected and quicklog will be erased when client +# connects to miau. If you are running a single client, you +# probably want to leave this to "false. +# +# This option might not be compiled in. +# +# Default: true +# +# Example: +#flushqlog = "true" + + +# inbox = "state": Enables logging private messages when no clients are +# connected to miau. +# +# This option might not be compiled in. +# +# Default: true +# +# Example: +#inbox = "true" + + +# nevergiveup = "state": If set to true, miau will reset "working"-status of +# servers to working when all are set to dysfunctional. +# Respectively, if set to false, miau will quit when all servers +# on the list have been set to dysfunctional. +# +# Default: true +# +# Example: +#nevergiveup = "false" + + +# norestricted = "state": If set to true, miau will not stay on server that +# forces user to have restricted-status (+r). +# +# Default: true +# +# Example: +#norestricted = "false" + + +# reconnectdelay = "seconds": Time (in seconds) between connection attempts. +# Minumun value is set to 1. +# +# Default: 10 +# +# Example: +#reconnectdelay = "30" + + +# nickfillchar = "fill character": Character used to modify your primary nick +# when all defined nicks are already occupied. Note character is +# a single octet (byte) and if longer string is fed, only the +# first character is used. +# +# Example: When nickfillchar is set to '_', primary nick is "zak" and all +# defined nicks are occupied, next nicks tried are "zak_", "zak__", +# "zak___" and so on. When nick has grown too long, it will be shifted +# one characted to right (where shift is cyclic) - this means +# "zak______" will become "_zak_____", which, again, will become +# "__zak____". +# +# Default: _ +# +# Example: +#nickfillchar = "^" + + +# maxnicklen = "length": Maximum nick length, used with nickfillchar. +# +# Default: 9 +# +# Example: +#maxnicklen = 11 + + +# usermode = "usermode(s)": Usermode that miau will request (if no clients are +# attached at the moment) from the server when connection to the +# server is established. Leave unset or set to empty to disable +# this feature. +# +# Default: none +# +# Example: +#usermode = "+i" + + +# forwardmsg = "command": miau can collect the (private) messages within three +# (3) minutes and pipe them into the program specified. Leave this +# unset or set to empty to disable this feature. +# +# Default: none +# +# Example: +#forwardmsg = "mail user@host" + + +# ignore = { "mask":"ignored" }: List of users whose private messages (PRIVMSG) +# and noticies (NOTICE) are ignored when no clients are attached +# to miau. When "ignored" is left undefined, it is assumed to be +# "true". Setting "ignored" to "false" means that this user will +# _not_ be ignored. This list is processed as a chain. +# +# Default: none +# +# Example: +#ignore = { +# "*@localhost":"yes" +# "zak*":"no" +#} + + +# privlog = "mode": Whatever private messages should be logged in nick-specific +# files. Can be one of "never", "detached", "attached", and +# "always". +# +# This option might not be compiled in. +# +# Default: never +# +# Example: +#privlog = "always" + + +# chanlog = { "channel(s)":"options":"logfile" }: List of channel logfiles. +# +# When channel is set to "*", line represents global log. When logging, +# if channel doesn't have entry of it's own in this list, it will use settings +# of global log and write log to it's own file. When defining global log, +# "logfile" is ignored. Each line can have multiple channels +# (like "#foobar,#miau"). +# +# If logfile is left undefined, logfile will be named after the channel with +# possible postfix (see logpostfix). All lofiles are written in miau's work +# directory. +# +# Options consist of abritary set of following possibilities: +# j: log joins +# e: log parts (exits) +# q: log quits +# m: log messages (privmsg/notice) +# c: log mode changes (changes) +# n: log nick changes +# o: log misc events (other) +# b: log messages from miau (bouncer) +# a: log all of above +# A: log when a client is attached +# D: log when a client is detached +# C: log continuously (status of clients doesn't matter) +# +# This option might not be compiled in. +# +# Default: none +# +# Example: +#chanlog = { +# "#foobar":"a" # log everything on #foobar +# "#miau":"aD":"foo.log" # log everything to file "foo.log" when +# all clients are detached +# "*":"mjeq" # log only messages, joins, parts and quits +# by default +#} + + +# logpostfix = "postfix": When writing log to undefined logfile, each logfile +# consists of channel name followed by postfix. Postfix can be +# defined here. +# +# This option might not be compiled in. +# +# Default: no postfix +# +# Example: +#logpostfix = ".log" + + +# onconnect = { "mode":"target/data"(:"data") }: When miau connects and +# registers user to server, miau can send pre-defined messages. +# User can define miau to send normal messages (PRIVMSG), notices +# (NOTICE) or arbitrary messages. +# +# Mode can be one of the following: +# p: private message (PRIVMSG). +# n: notice (NOTICE). Should be used with services and automatons, but +# unfortunately some network services can't cope with notices. +# r: "raw" message. This means user must provide complete message to send +# to the server. Using raw message user has complete control over what +# is being sent. If you don't know what this is, you don't need this. +# When using modes "p" or "n", user must provide both message and target where +# as with raw messages only one parameter in addition to type should be given. +# +# This option might not be compiled in. +# +# Default: none +# +# Example: +#onconnect = { +# "p":"nickserv":"identify foobar" +# "n":"nickserv@services.host.net":"id raboof" +# "r":"OPER foo bar" +#} + + +# automodes = { "mask":"privilegded" }: List of people who are automatically +# given certain privilege on channel. Mask is given in form of +# "mode:nick!username@host/#channel" (where "mode" is a single +# character) and list is processed as a chain. +# +# This option might not be compiled in. +# +# Default: none +# +# Example: +#automodes = { +# "o:zak*!zak@client*-myisp.com/#channel":"yes" +# "o:zak*!*@evil.impersonator.net/#foobar":"no" +# "v:newbie*!*@ircnet.com/#newbie":"yes" +#} + + +# automodedelay = "seconds": Time (in seconds) after first queued mode change +# would take effect. During this period of time miau can collect +# more than one mode change and commit up to three at a time. +# Other situation reasonaly big value (like 30) here could prove +# useful is channel where there are stupid "auto-oping" bots. +# (Stupid bots do mode changes even if someone else did that +# already.) +# +# This option might not be compiled in. +# +# Default: 30 +# +# Example: +#automodedelay = "60" + + +# cmdpasswd = "password": Password for remote commands. If this is 13 characters +# long, miau assumes it's crypted. Comment this out or leave it +# empty to disable remote commands. When sending miau a remote +# command, password _always_ begins with column (':') (if +# cmdpasswd is set to "foobar" (or hash of it), you need to send +# miau a message beginning with ":foobar" to issue a remote +# command). +# +# This feature might not be compiled in. +# +# If miau is compiled with ENABLE_MKPASSWD, miau can generate password-hashes +# (from command line) with -c -switch. +# +# Default: disabled +# +# Example: +#cmdpasswd = "" + + +# dccbounce = "state": miau can bounce DCCs. Set to true to enable bouncing. +# You probably don't need this. +# +# This option might not be compiled in. +# +# Default: false +# +# Example: +#dccbounce = "true" + + +# dccbindhost = "host": If miau has separate IPs for IRC-network and clients, +# you should enter IP for clients here. +# +# This option might not be compiled in. +# +# Default: no default +# +# Example: +#dccbindhost = "10.0.0.1" diff --git a/package/miau/ipkg/miau.conffiles b/package/miau/ipkg/miau.conffiles new file mode 100644 index 000000000..d51f8e83e --- /dev/null +++ b/package/miau/ipkg/miau.conffiles @@ -0,0 +1 @@ +/etc/miau/miaurc diff --git a/package/miau/ipkg/miau.control b/package/miau/ipkg/miau.control new file mode 100644 index 000000000..3637d33e6 --- /dev/null +++ b/package/miau/ipkg/miau.control @@ -0,0 +1,6 @@ +Package: miau +Version: 1 +Architecture: mipsel +Priority: optional +Section: net +Description: miau is an IRC-bouncer/proxy diff --git a/package/miau/ipkg/miau.postinst b/package/miau/ipkg/miau.postinst new file mode 100644 index 000000000..b66242cff --- /dev/null +++ b/package/miau/ipkg/miau.postinst @@ -0,0 +1,4 @@ +#!/bin/sh +. $IPKG_INSTROOT/etc/functions.sh +add_rcconf miau + -- cgit v1.2.3