remove unused dockerfiles

This commit is contained in:
Cadey Ratio 2017-05-24 15:50:49 -07:00
parent 1a2b0b4759
commit 2d58c23e31
52 changed files with 0 additions and 5719 deletions

View File

@ -1,8 +0,0 @@
FROM nordaaker/convos
ENV CONVOS_ARCHIVE_DIR /data/convos/archive
ENV CONVOS_ORGANIZATION_NAME XeServ
ENV CONVOS_REDIS_URL redis://10.0.0.5:6379/2
ENV VIRTUAL_HOST shout.xeserv.us
ENV CONVOS_INVITE_CODE faggot
ENV MOJO_REVERSE_PROXY 1

View File

@ -1,8 +0,0 @@
FROM alpine:edge
RUN apk add -U --no-cache -X http://dl-cdn.alpinelinux.org/alpine/edge/testing diod
EXPOSE 564
VOLUME /data
CMD diod -e /data --nwthreads 4 -f $DIOD_OPTIONS

View File

@ -1,14 +0,0 @@
FROM openjdk:7-jre-alpine
RUN mkdir /var/dynamodb_wd
RUN mkdir /var/dynamodb_local
WORKDIR /var/dynamodb_wd
RUN wget -q http://dynamodb-local.s3-website-us-west-2.amazonaws.com/dynamodb_local_latest.tar.gz && \
tar zxf dynamodb_local_latest.tar.gz && rm dynamodb_local_latest.tar.gz
EXPOSE 8000
VOLUME /var/dynamodb_wd
ENTRYPOINT ["java", "-Djava.library.path=.", "-jar", "DynamoDBLocal.jar", "-port", "8000"]

1
net/gogs/.gitignore vendored
View File

@ -1 +0,0 @@
/data

View File

@ -1,19 +0,0 @@
FROM flitter/init
RUN apt-get update && apt-get install -y openssh-server sqlite3 libsqlite3-0 git wget unzip &&\
mkdir /gogs && cd /gogs && mkdir dl && cd dl &&\
wget http://gogs.dn.qbox.me/gogs_v0.5.11_linux_amd64.zip -O /gogs/dl/gogs.zip &&\
cd /gogs && unzip /gogs/dl/gogs.zip && mv gogs install &&\
mkdir /gogs/data/repos -p && useradd git --create-home &&\
echo 'git:user' | chpasswd && chown -R git /gogs/data && chmod 777 /gogs/data/repos &&\
mkdir -p /var/run/sshd
ADD runit/ /etc/service
ADD gogs/ /gogs/install
RUN chown -R git /gogs/install
EXPOSE 3000
EXPOSE 22
CMD /sbin/my_init

View File

@ -1,5 +0,0 @@
build:
docker build -t gogs .
run:
docker run --rm -it -v `pwd`/data:/gogs/data gogs

View File

@ -1 +0,0 @@
# Gogs in Docker

View File

@ -1,272 +0,0 @@
; App name that shows on every page title
APP_NAME = Gogs: Go Git Service
; Change it if you run locally
RUN_USER = git
; Either "dev", "prod" or "test", default is "dev"
RUN_MODE = dev
[repository]
ROOT = /gogs/data/repos
SCRIPT_TYPE = bash
[server]
PROTOCOL = http
DOMAIN = localhost
ROOT_URL = %(PROTOCOL)s://%(DOMAIN)s:%(HTTP_PORT)s/
HTTP_ADDR =
HTTP_PORT = 3000
SSH_PORT = 22
; Disable CDN even in "prod" mode
OFFLINE_MODE = false
DISABLE_ROUTER_LOG = false
; Generate steps:
; $ cd path/to/gogs/custom/https
; $ ./gogs cert -ca=true -duration=8760h0m0s -host=myhost.example.com
;
; Or from a .pfx file exported from the Windows certificate store (do
; not forget to export the private key):
; $ openssl pkcs12 -in cert.pfx -out cert.pem -nokeys
; $ openssl pkcs12 -in cert.pfx -out key.pem -nocerts -nodes
CERT_FILE = custom/https/cert.pem
KEY_FILE = custom/https/key.pem
; Upper level of template and static file path
; default is the path where Gogs is executed
STATIC_ROOT_PATH =
; Application level GZIP support
ENABLE_GZIP = false
; Landing page for non-logged users, can be "home" or "explore"
LANDING_PAGE = home
[database]
; Either "mysql", "postgres" or "sqlite3", it's your choice
DB_TYPE = sqlite3
PATH = /gogs/data/gogs.db
[admin]
[security]
INSTALL_LOCK = false
; !!CHANGE THIS TO KEEP YOUR USER DATA SAFE!!
SECRET_KEY = !#@FDEWREWR&*(
; Auto-login remember days
LOGIN_REMEMBER_DAYS = 7
COOKIE_USERNAME = gogs_awesome
COOKIE_REMEMBER_NAME = gogs_incredible
; Reverse proxy authentication header name of user name
REVERSE_PROXY_AUTHENTICATION_USER = X-WEBAUTH-USER
[service]
ACTIVE_CODE_LIVE_MINUTES = 180
RESET_PASSWD_CODE_LIVE_MINUTES = 180
; User need to confirm e-mail for registration
REGISTER_EMAIL_CONFIRM = false
; Does not allow register and admin create account only
DISABLE_REGISTRATION = false
; User must sign in to view anything.
REQUIRE_SIGNIN_VIEW = false
; Cache avatar as picture
ENABLE_CACHE_AVATAR = false
; Mail notification
ENABLE_NOTIFY_MAIL = false
; More detail: https://github.com/gogits/gogs/issues/165
ENABLE_REVERSE_PROXY_AUTHENTICATION = false
ENABLE_REVERSE_PROXY_AUTO_REGISTERATION = false
[webhook]
; Cron task interval in minutes
TASK_INTERVAL = 1
; Deliver timeout in seconds
DELIVER_TIMEOUT = 5
[mailer]
ENABLED = false
; Buffer length of channel, keep it as it is if you don't know what it is.
SEND_BUFFER_LEN = 10
; Name displayed in mail title
SUBJECT = %(APP_NAME)s
; Mail server
; Gmail: smtp.gmail.com:587
; QQ: smtp.qq.com:25
; Note, if the port ends with "465", SMTPS will be used. Using STARTTLS on port 587 is recommended per RFC 6409. If the server supports STARTTLS it will always be used.
HOST =
; Do not verify the certificate of the server. Only use this for self-signed certificates
SKIP_VERIFY =
; Mail from address, RFC 5322. This can be just an email address, or the "Name" <email@example.com> format
FROM =
; Mailer user name and password
USER =
PASSWD =
[oauth]
ENABLED = false
[oauth.github]
ENABLED = false
CLIENT_ID =
CLIENT_SECRET =
SCOPES = https://api.github.com/user
AUTH_URL = https://github.com/login/oauth/authorize
TOKEN_URL = https://github.com/login/oauth/access_token
; Get client id and secret from
; https://console.developers.google.com/project
[oauth.google]
ENABLED = false
CLIENT_ID =
CLIENT_SECRET =
SCOPES = https://www.googleapis.com/auth/userinfo.email https://www.googleapis.com/auth/userinfo.profile
AUTH_URL = https://accounts.google.com/o/oauth2/auth
TOKEN_URL = https://accounts.google.com/o/oauth2/token
[oauth.qq]
ENABLED = false
CLIENT_ID =
CLIENT_SECRET =
SCOPES = get_user_info
; QQ 互联
AUTH_URL = https://graph.qq.com/oauth2.0/authorize
TOKEN_URL = https://graph.qq.com/oauth2.0/token
[oauth.weibo]
ENABLED = false
CLIENT_ID =
CLIENT_SECRET =
SCOPES = all
AUTH_URL = https://api.weibo.com/oauth2/authorize
TOKEN_URL = https://api.weibo.com/oauth2/access_token
[cache]
; Either "memory", "redis", or "memcache", default is "memory"
ADAPTER = memory
; For "memory" only, GC interval in seconds, default is 60
INTERVAL = 60
; For "redis" and "memcache", connection host address
; redis: `:6039`
; memcache: `127.0.0.1:11211`
HOST =
[session]
; Either "memory", "file", "redis" or "mysql", default is "memory"
PROVIDER = memory
; Provider config options
; memory: not have any config yet
; file: session file path, e.g. `data/sessions`
; redis: config like redis server addr, poolSize, password, e.g. `127.0.0.1:6379,100,gogs`
; mysql: go-sql-driver/mysql dsn config string, e.g. `root:password@/session_table`
PROVIDER_CONFIG = data/sessions
; Session cookie name
COOKIE_NAME = i_like_gogits
; If you use session in https only, default is false
COOKIE_SECURE = false
; Enable set cookie, default is true
ENABLE_SET_COOKIE = true
; Session GC time interval, default is 86400
GC_INTERVAL_TIME = 86400
; Session life time, default is 86400
SESSION_LIFE_TIME = 86400
[picture]
; The place to picture data, either "server" or "qiniu", default is "server"
SERVICE = server
AVATAR_UPLOAD_PATH = data/avatars
; Chinese users can choose "duoshuo"
GRAVATAR_SOURCE = gravatar
DISABLE_GRAVATAR = false
[attachment]
; Whether attachments are enabled. Defaults to `true`
ENABLE = true
; Path for attachments. Defaults to `data/attachments`
PATH = data/attachments
; One or more allowed types, e.g. image/jpeg|image/png
ALLOWED_TYPES = image/jpeg|image/png
; Max size of each file. Defaults to 32MB
MAX_SIZE = 32
; Max number of files per upload. Defaults to 10
MAX_FILES = 10
[time]
; Specifies the format for fully outputed dates. Defaults to RFC1123
; Special supported values are ANSIC, UnixDate, RubyDate, RFC822, RFC822Z, RFC850, RFC1123, RFC1123Z, RFC3339, RFC3339Nano, Kitchen, Stamp, StampMilli, StampMicro and StampNano
; For more information about the format see http://golang.org/pkg/time/#pkg-constants
FORMAT =
[log]
ROOT_PATH =
; Either "console", "file", "conn", "smtp" or "database", default is "console"
; Use comma to separate multiple modes, e.g. "console, file"
MODE = console
; Buffer length of channel, keep it as it is if you don't know what it is.
BUFFER_LEN = 10000
; Either "Trace", "Debug", "Info", "Warn", "Error", "Critical", default is "Trace"
LEVEL = Trace
; For "console" mode only
[log.console]
LEVEL =
; For "file" mode only
[log.file]
LEVEL =
; This enables automated log rotate(switch of following options), default is true
LOG_ROTATE = true
; Max line number of single file, default is 1000000
MAX_LINES = 1000000
; Max size shift of single file, default is 28 means 1 << 28, 256MB
MAX_SIZE_SHIFT = 28
; Segment log daily, default is true
DAILY_ROTATE = true
; Expired days of log file(delete after max days), default is 7
MAX_DAYS = 7
; For "conn" mode only
[log.conn]
LEVEL =
; Reconnect host for every single message, default is false
RECONNECT_ON_MSG = false
; Try to reconnect when connection is lost, default is false
RECONNECT = false
; Either "tcp", "unix" or "udp", default is "tcp"
PROTOCOL = tcp
; Host address
ADDR =
; For "smtp" mode only
[log.smtp]
LEVEL =
; Name displayed in mail title, default is "Diagnostic message from serve"
SUBJECT = Diagnostic message from serve
; Mail server
HOST =
; Mailer user name and password
USER =
PASSWD =
; Receivers, can be one or more, e.g. ["1@example.com","2@example.com"]
RECEIVERS =
; For "database" mode only
[log.database]
LEVEL =
; Either "mysql" or "postgres"
DRIVER =
; Based on xorm, e.g.: root:root@localhost/gogs?charset=utf8
CONN =
[git]
MAX_GIT_DIFF_LINES = 10000
; Arguments for command 'git gc', e.g.: "--aggressive --auto"
; see more on http://git-scm.com/docs/git-gc/1.7.5
GC_ARGS =
; Git health check.
[git.fsck]
ENABLE = true
; Execution interval in hours. Default is 24.
INTERVAL = 24
; Arguments for command 'git fsck', e.g.: "--unreachable --tags"
; see more on http://git-scm.com/docs/git-fsck/1.7.5
ARGS =
[i18n]
LANGS = en-US,zh-CN,zh-HK,de-DE,fr-CA,nl-NL,lv-LV
NAMES = English,简体中文,繁體中文,Deutsch,Français,Nederlands,Latviešu

View File

@ -1,4 +0,0 @@
#!/bin/sh
cd /gogs/install
setuser git ./gogs web

View File

@ -1,3 +0,0 @@
#!/bin/sh
set -e
exec /usr/sbin/sshd -D

View File

@ -1,13 +0,0 @@
FROM flitter/init
RUN apt-get update && apt-get install -y golang git mercurial --no-install-recommends && mkdir /go
ENV GOPATH /go
RUN go get github.com/mrwilson/helixdns
ADD helixdns /etc/service
EXPOSE 53/udp
ENTRYPOINT /sbin/my_init

View File

@ -1,6 +0,0 @@
#!/bin/sh
export HOST={ETCD_PORT_4001_TCP_ADDR:-$HOST}
export ETCDADDR="http://$HOST:4001"
/go/bin/helixdns -etcd-address $ETCDADDR -port 53 -forward 8.8.8.8

View File

@ -1,32 +0,0 @@
FROM ubuntu:14.04
RUN apt-get update # ba393330-1508-11e4-8c21-0800200c9a66
RUN apt-get -qqy upgrade # c4da4cc0-1508-11e4-8c21-0800200c9a66
RUN apt-get build-dep -qqy znc-python # 3e582310-1509-11e4-8c21-0800200c9a66
RUN apt-get install -qqy wget # 0501f510-150d-11e4-8c21-0800200c9a66
RUN apt-get install -qqy libssl-dev # 4b7d79b0-150d-11e4-8c21-0800200c9a66
RUN apt-get install -qqy git automake autoconf # 3bc47ee0-1514-11e4-8c21-0800200c9a66
RUN adduser znc --disabled-password
RUN cd /home/znc; mkdir src; cd src; git clone https://github.com/znc/znc; cd znc; bash ./autogen.sh ; bash ./configure --enable-openssl --prefix=/home/znc/znc --enable-python; make; make install # 79751510-150a-11e4-8c21-0800200c9a66
ADD znc.conf /home/znc/.znc/configs/znc.conf
ADD athemesasl.py /home/znc/znc/lib/znc/
ADD athemeauth.py /home/znc/znc/lib/znc/
RUN chmod -R 777 /home/znc
USER znc
EXPOSE 6667
EXPOSE 6697
EXPOSE 8080
ENV HOME /home/znc
RUN /home/znc/znc/bin/znc -p
CMD /home/znc/znc/bin/znc -f

View File

@ -1,103 +0,0 @@
from xmlrpc.client import ServerProxy, Fault
import znc
class Atheme:
def __init__(self, url):
self.url = url
self.proxy = ServerProxy(url)
self.cookie = "*"
self.username = "*"
self._privset = None
def login(self, username, password):
self.username = username
self.cookie = self.proxy.atheme.login(username, password)
self.privs()
def privs(self):
if self._privset is not None:
return self._privset
self._privset = self.proxy.atheme.privset(self.cookie, self.username).split()
return self._privset
class athemeauth(znc.Module):
module_types = [znc.CModInfo.GlobalModule]
def __init__(self):
pass
def OnLoginAttempt(self, auth):
username = auth.GetUsername()
password = auth.GetPassword()
atheme = Atheme("http://173.10.70.249:8069/xmlrpc")
user = znc.CZNC.Get().FindUser(username)
if user != None:
if user.GetPass() != "::":
#Allow normal ZNC accounts to log in
return znc.CONTINUE
try:
atheme.login(username, password)
except Fault:
return znc.CONTINUE
if user == None:
myuser = znc.CUser(username)
auth.GetSocket().Write(":bnc.yolo-swag.com NOTICE * :*** Creating account for %s...\r\n" % username)
auth.GetSocket().Write(":bnc.yolo-swag.com NOTICE * :*** Thank you for supporting ShadowNET!\r\n")
baseuser = znc.CZNC.Get().FindUser("scrub")
baseuser.thisown = 0
s = znc.String()
s.thisown = 0
if not myuser.Clone(baseuser, s, False):
print("WTF?", s)
return znc.CONTINUE
if not znc.CZNC.Get().AddUser(myuser, s):
print("WTF?", s)
return znc.CONTINUE
user = myuser
user.SetPass("::", znc.CUser.HASH_MD5, "::")
#this is a new user, set up stuff
user.SetNick(username)
user.SetAltNick(username + "`")
user.SetIdent(username[:8])
user.SetRealName("ShadowNET hosted bnc user %s" % username)
user.SetDenySetBindHost(True)
user.SetQuitMsg("Shutting down!")
user.SetMaxNetworks(1)
user.SetAdmin(False)
#They are going to want a network to talk on.
user.AddNetwork("ShadowNET", s)
network = user.FindNetwork("ShadowNET")
network.AddServer("cyka.yolo-swag.com +6697")
network.AddChan("#lobby", True)
network.AddChan("#bnc", True)
network.JoinChans()
fout = open("/tmp/znc-cookie-%s" % username, "w")
fout.write(atheme.cookie)
fout.close()
znc.CZNC.Get().WriteConfig()
auth.GetSocket().Write(":bnc.yolo-swag.com NOTICE * :*** Welcome to the ShadowNET BNC %s!\r\n" % username)
auth.GetSocket().Write(":bnc.yolo-swag.com NOTICE * :*** Your IP address is %s and may be checked for proxies.\r\n" % auth.GetRemoteIP())
auth.AcceptLogin(user)
user.thisown = 0
return znc.HALT

View File

@ -1,31 +0,0 @@
import base64
import znc
class athemesasl(znc.Module):
module_types = [znc.CModInfo.UserModule]
def __init__(self):
self.description = "Atheme SASL"
def OnServerCapAvailable(self, scap):
self.cookie = self.getCookie()
self.username = self.GetUser().GetUserName()
return scap == "sasl"
def OnServerCapResult(self, scap, success):
if scap == "sasl":
if success:
self.PutIRC("AUTHENTICATE AUTHCOOKIE")
self.PutIRC("AUTHENTICATE " +
self.makeSaslAuthString(self.username, self.cookie))
self.PutUser(":bnc.yolo-swag.com NOTICE * :*** Authenticated over Atheme XMLRPC")
def makeSaslAuthString(self, username, cookie):
return (base64.b64encode(bytes("%s\0%s\0%s" %
(username, username, cookie), "utf-8"))).decode("utf-8")
def getCookie(self):
with open("/tmp/znc-cookie-%s" %
self.GetUser().GetUserName(), "r") as fin:
return fin.readline()

View File

@ -1,116 +0,0 @@
// WARNING
//
// Do NOT edit this file while ZNC is running!
// Use webadmin or *controlpanel instead.
//
// Altering this file by hand will forfeit all support.
//
// But if you feel risky, you might want to read help on /znc saveconfig and /znc rehash.
// Also check http://en.znc.in/wiki/Configuration
AnonIPLimit = 10
ConnectDelay = 5
LoadModule = modpython
LoadModule = webadmin
LoadModule = athemeauth
MaxBufferSize = 500
ProtectWebSessions = true
ServerThrottle = 5
Skin = _default_
StatusPrefix = *
Version = 1.4
<Listener listener0>
AllowIRC = true
AllowWeb = true
IPv4 = true
IPv6 = true
Port = 6697
SSL = true
</Listener>
<Listener listener1>
AllowIRC = true
AllowWeb = true
IPv4 = true
IPv6 = true
Port = 6667
SSL = false
</Listener>
<Listener listener2>
AllowIRC = false
AllowWeb = true
IPv4 = true
IPv6 = true
Port = 8080
SSL = false
</Listener>
<User admin>
Admin = true
AltNick = admin_
AppendTimestamp = false
AutoClearChanBuffer = true
Buffer = 50
ChanModes = +stn
DenyLoadMod = false
DenySetBindHost = false
Ident = admin
JoinTries = 10
LoadModule = webadmin
LoadModule = controlpanel
MaxJoins = 0
MaxNetworks = 1
MultiClients = true
Nick = admin
PrependTimestamp = true
QuitMsg = ZNC - http://znc.in
RealName = Got ZNC?
TimestampFormat = [%H:%M:%S]
<Network ShadowNET>
AltNick = admin2
FloodBurst = 4
FloodRate = 1.00
IRCConnectEnabled = true
Nick = admin
RealName = ZNC Admin
Server = cyka.yolo-swag.com +6697
</Network>
<Pass password>
Method = sha256
Hash = e05a4fe1776a4ef8051d627d3bd24520dde448be810506a839502d28c795931d
Salt = ZpDUio3z5aDSk5uw5KUN
</Pass>
</User>
<User scrub>
Admin = false
Allow = *
AltNick = scrub
AppendTimestamp = false
AutoClearChanBuffer = true
Buffer = 50
DenyLoadMod = true
DenySetBindHost = false
Ident = scrub
JoinTries = 0
LoadModule = athemesasl
LoadModule = missingmotd
MaxJoins = 0
MaxNetworks = 0
MultiClients = true
Nick = scrub
PrependTimestamp = false
QuitMsg = ZNC - http://znc.in
RealName = scrub
TimestampFormat = [%H:%M:%S]
<Pass password>
Hash = 1e129e4686588e8cf26006b95cb9cb3c16b38a569c82cfc2cc34d40fb7459392
Method = SHA256
Salt = 8xXjCYN5;)3;l1?jiu25
</Pass>
</User>

View File

@ -1,12 +0,0 @@
FROM flitter/init
RUN apt-add-repository ppa:i2p-maintainers/i2p
RUN apt-get update &&\
apt-get install i2p -y
RUN useradd --create-home i2p
USER i2p
ENV HOME /home/i2p
CMD /usr/bin/i2prouter console

View File

@ -1,8 +0,0 @@
FROM irssi
USER root
RUN apt-get update && apt-get install git
USER user
# I use tmux in 256 color mode. Too bad if you don't.
ENV TERM screen-256color

View File

@ -1,10 +0,0 @@
FROM xena/irssi
RUN git clone https://github.com/ronilaukkarinen/weed ~/.irssi
# Prune
RUN cd ~/.irssi/scripts &&\
rm nicklist.pl
RUN cd ~/.irssi && mkdir autorun && mv scripts/*.pl autorun &&\
mv autorun scripts

View File

@ -1,224 +0,0 @@
music_directory "~/music" # Can keep commented if XDG music dir.
playlist_directory "~/.mpd/playlists"
db_file "~/.mpd/database"
log_file "~/.mpd/log"
pid_file "~/.mpd/pid"
state_file "~/.mpd/state"
sticker_file "~/.mpd/sticker.sql"
user "xena"
bind_to_address "0.0.0.0"
port "6600"
auto_update "yes"
#Zeroconf
zeroconf_enabled "yes"
zeroconf_name "Music Player"
input {
plugin "curl"
# proxy "proxy.isp.com:8080"
# proxy_user "user"
# proxy_password "password"
}
#audio_output {
# type "shout"
# encoding "ogg" # optional
# name "My Shout Stream"
# host "localhost"
# port "8000"
# mount "/mpd.ogg"
# password "hackme"
# quality "5.0"
# bitrate "128"
# format "44100:16:1"
# protocol "icecast2" # optional
# user "source" # optional
# description "My Stream Description" # optional
# genre "jazz" # optional
# public "no" # optional
# timeout "2" # optional
#}
#Pulseaudio
audio_output {
type "pulse"
name "My Pulse Output"
# server "remote_server" # optional
# sink "remote_server_sink" # optional
}
#
## Example "pipe" output:
#
#audio_output {
# type "pipe"
# name "my pipe"
# command "aplay -f cd 2>/dev/null"
## Or if you're want to use AudioCompress
# command "AudioCompress -m | aplay -f cd 2>/dev/null"
## Or to send raw PCM stream through PCM:
# command "nc example.org 8765"
# format "44100:16:2"
#}
#
## An example of a null output (for no audio output):
#
#audio_output {
# type "null"
# name "My Null Output"
#}
#
# This setting will change all decoded audio to be converted to the specified
# format before being passed to the audio outputs. By default, this setting is
# disabled.
#
audio_output {
type "httpd"
name "My HTTP Stream"
encoder "vorbis" # optional, vorbis or lame
port "8000"
# quality "5.0" # do not define if bitrate is defined
bitrate "128" # do not define if quality is defined
format "44100:16:2"
}
#audio_output_format "44100:16:2"
#
# If MPD has been compiled with libsamplerate support, this setting specifies
# the sample rate converter to use. Possible values can be found in the
# mpd.conf man page or the libsamplerate documentation. By default, this is
# setting is disabled.
#
#samplerate_converter "Fastest Sinc Interpolator"
#
###############################################################################
# Volume control mixer ########################################################
#
# These are the global volume control settings. By default, this setting will
# be detected to the available audio output device, with preference going to
# hardware mixing. Hardware and software mixers for individual audio_output
# sections cannot yet be mixed.
#
# An example for controlling an ALSA, OSS or Pulseaudio mixer; If this
# setting is used other sound applications will be affected by the volume
# being controlled by MPD.
#
#mixer_type "hardware"
#
# An example for controlling all mixers through software. This will control
# all controls, even if the mixer is not supported by the device and will not
# affect any other sound producing applications.
#
#mixer_type "software"
#
# This example will not allow MPD to touch the mixer at all and will disable
# all volume controls.
#
#mixer_type "disabled"
#
###############################################################################
# Normalization automatic volume adjustments ##################################
#
# This setting specifies the type of ReplayGain to use. This setting can have
# the argument "album" or "track". See <http://www.replaygain.org> for more
# details. This setting is disabled by default.
#
#replaygain "album"
#
# This setting sets the pre-amp used for files that have ReplayGain tags. By
# default this setting is disabled.
#
#replaygain_preamp "0"
#
# This setting enables on-the-fly normalization volume adjustment. This will
# result in the volume of all playing audio to be adjusted so the output has
# equal "loudness". This setting is disabled by default.
#
#volume_normalization "no"
#
###############################################################################
# MPD Internal Buffering ######################################################
#
# This setting adjusts the size of internal decoded audio buffering. Changing
# this may have undesired effects. Don't change this if you don't know what you
# are doing.
#
#audio_buffer_size "2048"
#
# This setting controls the percentage of the buffer which is filled before
# beginning to play. Increasing this reduces the chance of audio file skipping,
# at the cost of increased time prior to audio playback.
#
#buffer_before_play "10%"
#
###############################################################################
# Resource Limitations ########################################################
#
# These settings are various limitations to prevent MPD from using too many
# resources. Generally, these settings should be minimized to prevent security
# risks, depending on the operating resources.
#
#connection_timeout "60"
#max_connections "10"
#max_playlist_length "16384"
#max_command_list_size "2048"
#max_output_buffer_size "8192"
#
###############################################################################
# Character Encoding ##########################################################
#
# If file or directory names do not display correctly for your locale then you
# may need to modify this setting. After modification of this setting mpd
# --create-db must be run to change the database.
#
filesystem_charset "UTF-8"
#
# This setting controls the encoding that ID3v1 tags should be converted from.
#
id3v1_encoding "UTF-8"
#
###############################################################################
# SIDPlay decoder #############################################################
#
# songlength_database:
# Location of your songlengths file, as distributed with the HVSC.
# The sidplay plugin checks this for matching MD5 fingerprints.
# See http://www.c64.org/HVSC/DOCUMENTS/Songlengths.faq
#
# default_songlength:
# This is the default playing time in seconds for songs not in the
# songlength database, or in case you're not using a database.
# A value of 0 means play indefinitely.
#
# filter:
# Turns the SID filter emulation on or off.
#
#decoder {
# plugin "sidplay"
# songlength_database "/media/C64Music/DOCUMENTS/Songlengths.txt"
# default_songlength "120"
# filter "true"
#}
#
###############################################################################
audio_output {
type "fifo"
name "my_fifo"
path "/tmp/mpd.fifo"
format "44100:16:2"
}

View File

@ -1,9 +0,0 @@
FROM xena/alpine
RUN apk --no-cache add mpd && mkdir -p /.mpd/playlists
ADD mpd.conf /etc/mpd.conf
ENV BACKPLANE_PROXY_URL http://127.0.0.1:7034
ADD run.sh /run.sh
CMD /run.sh

View File

@ -1,216 +0,0 @@
music_directory "/music" # Can keep commented if XDG music dir.
playlist_directory "/.mpd/playlists"
db_file "/.mpd/database"
log_file "/.mpd/log"
pid_file "/.mpd/pid"
state_file "/.mpd/state"
sticker_file "/.mpd/sticker.sql"
user "root"
bind_to_address "0.0.0.0"
port "6600"
auto_update "yes"
#Zeroconf
zeroconf_enabled "yes"
zeroconf_name "Music Player"
input {
plugin "curl"
# proxy "proxy.isp.com:8080"
# proxy_user "user"
# proxy_password "password"
}
#audio_output {
# type "shout"
# encoding "ogg" # optional
# name "My Shout Stream"
# host "localhost"
# port "8000"
# mount "/mpd.ogg"
# password "hackme"
# quality "5.0"
# bitrate "128"
# format "44100:16:1"
# protocol "icecast2" # optional
# user "source" # optional
# description "My Stream Description" # optional
# genre "jazz" # optional
# public "no" # optional
# timeout "2" # optional
#}
## Example "pipe" output:
#
#audio_output {
# type "pipe"
# name "my pipe"
# command "aplay -f cd 2>/dev/null"
## Or if you're want to use AudioCompress
# command "AudioCompress -m | aplay -f cd 2>/dev/null"
## Or to send raw PCM stream through PCM:
# command "nc example.org 8765"
# format "44100:16:2"
#}
#
## An example of a null output (for no audio output):
#
#audio_output {
# type "null"
# name "My Null Output"
#}
#
# This setting will change all decoded audio to be converted to the specified
# format before being passed to the audio outputs. By default, this setting is
# disabled.
#
audio_output {
type "httpd"
name "My HTTP Stream"
encoder "vorbis" # optional, vorbis or lame
port "7034"
# quality "5.0" # do not define if bitrate is defined
bitrate "128" # do not define if quality is defined
format "44100:16:2"
}
#audio_output_format "44100:16:2"
#
# If MPD has been compiled with libsamplerate support, this setting specifies
# the sample rate converter to use. Possible values can be found in the
# mpd.conf man page or the libsamplerate documentation. By default, this is
# setting is disabled.
#
#samplerate_converter "Fastest Sinc Interpolator"
#
###############################################################################
# Volume control mixer ########################################################
#
# These are the global volume control settings. By default, this setting will
# be detected to the available audio output device, with preference going to
# hardware mixing. Hardware and software mixers for individual audio_output
# sections cannot yet be mixed.
#
# An example for controlling an ALSA, OSS or Pulseaudio mixer; If this
# setting is used other sound applications will be affected by the volume
# being controlled by MPD.
#
#mixer_type "hardware"
#
# An example for controlling all mixers through software. This will control
# all controls, even if the mixer is not supported by the device and will not
# affect any other sound producing applications.
#
#mixer_type "software"
#
# This example will not allow MPD to touch the mixer at all and will disable
# all volume controls.
#
#mixer_type "disabled"
#
###############################################################################
# Normalization automatic volume adjustments ##################################
#
# This setting specifies the type of ReplayGain to use. This setting can have
# the argument "album" or "track". See <http://www.replaygain.org> for more
# details. This setting is disabled by default.
#
#replaygain "album"
#
# This setting sets the pre-amp used for files that have ReplayGain tags. By
# default this setting is disabled.
#
#replaygain_preamp "0"
#
# This setting enables on-the-fly normalization volume adjustment. This will
# result in the volume of all playing audio to be adjusted so the output has
# equal "loudness". This setting is disabled by default.
#
#volume_normalization "no"
#
###############################################################################
# MPD Internal Buffering ######################################################
#
# This setting adjusts the size of internal decoded audio buffering. Changing
# this may have undesired effects. Don't change this if you don't know what you
# are doing.
#
#audio_buffer_size "2048"
#
# This setting controls the percentage of the buffer which is filled before
# beginning to play. Increasing this reduces the chance of audio file skipping,
# at the cost of increased time prior to audio playback.
#
#buffer_before_play "10%"
#
###############################################################################
# Resource Limitations ########################################################
#
# These settings are various limitations to prevent MPD from using too many
# resources. Generally, these settings should be minimized to prevent security
# risks, depending on the operating resources.
#
#connection_timeout "60"
#max_connections "10"
#max_playlist_length "16384"
#max_command_list_size "2048"
#max_output_buffer_size "8192"
#
###############################################################################
# Character Encoding ##########################################################
#
# If file or directory names do not display correctly for your locale then you
# may need to modify this setting. After modification of this setting mpd
# --create-db must be run to change the database.
#
filesystem_charset "UTF-8"
#
# This setting controls the encoding that ID3v1 tags should be converted from.
#
id3v1_encoding "UTF-8"
#
###############################################################################
# SIDPlay decoder #############################################################
#
# songlength_database:
# Location of your songlengths file, as distributed with the HVSC.
# The sidplay plugin checks this for matching MD5 fingerprints.
# See http://www.c64.org/HVSC/DOCUMENTS/Songlengths.faq
#
# default_songlength:
# This is the default playing time in seconds for songs not in the
# songlength database, or in case you're not using a database.
# A value of 0 means play indefinitely.
#
# filter:
# Turns the SID filter emulation on or off.
#
#decoder {
# plugin "sidplay"
# songlength_database "/media/C64Music/DOCUMENTS/Songlengths.txt"
# default_songlength "120"
# filter "true"
#}
#
###############################################################################
audio_output {
type "fifo"
name "my_fifo"
path "/tmp/mpd.fifo"
format "44100:16:2"
}

View File

@ -1,3 +0,0 @@
#!/bin/sh
mpd --no-daemon --stderr

View File

@ -1,15 +0,0 @@
FROM flitter/init
RUN apt-get update && apt-get install -y --no-install-recommends build-essential make golang &&\
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* &&\
mkdir /oleg/src -p &&\
wget https://github.com/infoforcefeed/OlegDB/archive/v.0.1.5.tar.gz -O /oleg/src/oleg.tar.gz &&\
cd /oleg/src && tar xf oleg.tar.gz &&\
cd OlegDB-v.0.1.5 && make && make install
ADD olegdb.conf /oleg/db.conf
ADD runit/ /etc/service
EXPOSE 38080
CMD /sbin/my_init

View File

@ -1,10 +0,0 @@
{
"listen": "0.0.0.0:38080",
"datadir": "/oleg/data",
"usehttps": false,
"certfile": "",
"pkeyfile": "",
"lz4enabled": true,
"aolenabled": true,
"splaytreeenabled": true
}

View File

@ -1,4 +0,0 @@
#!/bin/sh
cd /oleg
/usr/local/bin/olegdb -config /oleg/db.conf

View File

@ -1,18 +0,0 @@
FROM xena/alpine
ENV CC gcc
RUN apk add --no-cache alpine-sdk \
&& mkdir -p /src \
&& cd /src \
&& git clone https://github.com/qpfiffer/Printer-Facts-API /src/app \
&& git clone https://github.com/qpfiffer/38-Moths.git /src/38moths \
&& (cd /src/38moths && make && make install) \
&& cd /src/app \
&& make \
&& apk del alpine-sdk
ENV BACKPLANE_PROXY_URL http://127.0.0.1:8666
WORKDIR /src/app
CMD "./printer-facts"

View File

@ -1,13 +0,0 @@
FROM flitter/init
ENV GOPATH /go
ENV PATH $PATH:/go/bin
RUN apt-get update && apt-get -y install build-essential golang sqlite3 libsqlite3-dev git mercurial --no-install-recommends &&\
mkdir /rqlite /go && go get github.com/otoolep/rqlite
EXPOSE 4001
ADD rqlite /etc/service/rqlite/run
CMD /sbin/my_init

View File

@ -1,3 +0,0 @@
#!/bin/bash
rqlite -loglevel DEBUG /rqlite

View File

@ -1,17 +0,0 @@
FROM alpine:3.3
RUN apk update
RUN apk add rtorrent rsync openssh
RUN adduser torrent -D -s /bin/sh
RUN echo "torrent:torrent" | chpasswd
RUN mkdir /torrents
RUN chown torrent /torrents
RUN chmod 777 /torrents
ADD rtorrent.rc /home/torrent/.rtorrent.rc
USER torrent
VOLUME /torrents

View File

@ -1,106 +0,0 @@
# Maximum and minimum number of peers to connect to per torrent.
min_peers = 40
max_peers = 100
# Same as above but for seeding completed torrents (-1 = same as downloading)
min_peers_seed = 10
max_peers_seed = 50
# Maximum number of simultanious uploads per torrent.
max_uploads = 5
# Global upload and download rate in KiB. "0" for unlimited.
download_rate = 0
upload_rate = 0
# Default directory to save the downloaded torrents.
#directory = ./
directory = /torrents
# Default session directory. Make sure you don't run multiple instance
# of rtorrent using the same session directory. Perhaps using a
# relative path?
session = /torrents/session
# Watch a directory for new torrents, and stop those that have been
# deleted.
schedule = watch_directory,5,5,load_start=/torrents/seed/*.torrent
schedule = untied_directory,5,5,stop_untied=
# Close torrents when diskspace is low.
schedule = low_diskspace,5,60,close_low_diskspace=100M
# Stop torrents when reaching upload ratio in percent,
# when also reaching total upload in bytes, or when
# reaching final upload ratio in percent.
# example: stop at ratio 2.0 with at least 200 MB uploaded, or else ratio 20.0
# schedule = ratio,60,60,stop_on_ratio=110,200M,200
# The ip address reported to the tracker.
#ip = 127.0.0.1
#ip = rakshasa.no
# The ip address the listening socket and outgoing connections is
# bound to.
#bind = 127.0.0.1
#bind = rakshasa.no
# Port range to use for listening.
port_range = 6900-6999
# Start opening ports at a random position within the port range.
port_random = yes
# Check hash for finished torrents. Might be usefull until the bug is
# fixed that causes lack of diskspace not to be properly reported.
check_hash = yes
# Set whetever the client should try to connect to UDP trackers.
use_udp_trackers = yes
# Alternative calls to bind and ip that should handle dynamic ip's.
#schedule = ip_tick,0,1800,ip=rakshasa
#schedule = bind_tick,0,1800,bind=rakshasa
# Encryption options, set to none (default) or any combination of the following:
# allow_incoming, try_outgoing, require, require_RC4, enable_retry, prefer_plaintext
#
# The example value allows incoming encrypted connections, starts unencrypted
# outgoing connections but retries with encryption if they fail, preferring
# plaintext to RC4 encryption after the encrypted handshake
#
encryption = allow_incoming,enable_retry,prefer_plaintext
#
# Do not modify the following parameters unless you know what you're doing.
#
# Hash read-ahead controls how many MB to request the kernel to read
# ahead. If the value is too low the disk may not be fully utilized,
# while if too high the kernel might not be able to keep the read
# pages in memory thus end up trashing.
#hash_read_ahead = 10
# Interval between attempts to check the hash, in milliseconds.
#hash_interval = 100
# Number of attempts to check the hash while using the mincore status,
# before forcing. Overworked systems might need lower values to get a
# decent hash checking rate.
#hash_max_tries = 10
# Max number of files to keep open simultaniously.
#max_open_files = 128
# Number of sockets to simultaneously keep open.
#max_open_sockets = <no default>
# Example of scheduling commands: Switch between two ip's every 5
# seconds.
#schedule = "ip_tick1,5,10,ip=torretta"
#schedule = "ip_tick2,10,10,ip=lampedusa"
# Remove a scheduled event.
#schedule_remove = "ip_tick1"
#transmission-daemon is better for what it is worth

View File

@ -1,15 +0,0 @@
FROM node:4.0
RUN useradd --create-home shuo
RUN npm install -g shuo@0.54.2
ENV HOME /home/shuo
EXPOSE 9000
USER shuo
ADD . /home/shuo/.shuo
CMD shuo

View File

@ -1,301 +0,0 @@
module.exports = {
//
// Set the server mode.
// Public servers does not require authentication.
//
// Set to 'false' to enable users.
//
// @type boolean
// @default false
//
public: false,
//
// Allow connections from this host.
//
// @type string
// @default "0.0.0.0"
//
host: "0.0.0.0",
//
// Set the port to listen on.
//
// @type int
// @default 9000
//
port: 9000,
//
// Set the local IP to bind to.
//
// @type string
// @default "0.0.0.0"
//
bind: undefined,
//
// Set the default theme.
//
// @type string
// @default "themes/example.css"
//
theme: "themes/example.css",
//
// Autoload users
//
// When this setting is enabled, your 'users/' folder will be monitored. This is useful
// if you want to add/remove users while the server is running.
//
// @type boolean
// @default true
//
autoload: true,
//
// Prefetch URLs
//
// If enabled, Shout will try to load thumbnails and site descriptions from
// URLs posted in channels.
//
// @type boolean
// @default true
//
prefetch: true,
//
// Display network
//
// If set to false Shout will not expose network settings in login
// form, limiting client to connect to the configured network.
//
// @type boolean
// @default true
//
displayNetwork: true,
//
// Log settings
//
// Logging has to be enabled per user. If enabled, logs will be stored in
// the '/users/<user>/logs/' folder.
//
// @type object
// @default {}
//
logs: {
//
// Timestamp format
//
// @type string
// @default "YYYY-MM-DD HH:mm:ss"
//
format: "YYYY-MM-DD HH:mm:ss",
//
// Timezone
//
// @type string
// @default "UTC+00:00"
//
timezone: "UTC+00:00"
},
//
// Default values for the 'Connect' form.
//
// @type object
// @default {}
//
defaults: {
//
// Name
//
// @type string
// @default "Freenode"
//
name: "PonyChat",
//
// Host
//
// @type string
// @default "irc.freenode.org"
//
host: "irc.ponychat.net",
//
// Port
//
// @type int
// @default 6697
//
port: 6697,
//
// Password
//
// @type string
// @default ""
//
password: "",
//
// Enable TLS/SSL
//
// @type boolean
// @default true
//
tls: true,
//
// Nick
//
// @type string
// @default "shout-user"
//
nick: "shout-user",
//
// Username
//
// @type string
// @default "shout-user"
//
username: "shout-user",
//
// Real Name
//
// @type string
// @default "Shout User"
//
realname: "Shout User",
//
// Channels
//
// @type string
// @default "#foo, #shout-irc"
//
join: "#bnc, #ponychat, #geek"
},
//
// Set socket.io transports
//
// @type array
// @default ["polling', "websocket"]
//
transports: ["polling", "websocket"],
//
// Run Shout with HTTPS support.
//
// @type object
// @default {}
//
https: {
//
// Enable HTTPS support.
//
// @type boolean
// @default false
//
enable: false,
//
// Path to the key.
//
// @type string
// @example "sslcert/key.pem"
// @default ""
//
key: "",
//
// Path to the certificate.
//
// @type string
// @example "sslcert/key-cert.pem"
// @default ""
//
certificate: ""
},
//
// Run Shout with identd support.
//
// @type object
// @default {}
//
identd: {
//
// Run the identd daemon on server start.
//
// @type boolean
// @default false
//
enable: false,
//
// Port to listen for ident requests.
//
// @type int
// @default 113
//
port: 113
},
//
// Themes
//
// @type array
//
themes: [
//
// A theme
//
// @type object
//
{
//
// Name
//
// @type string
// @default "Default"
//
"name": "Default",
//
// Path to the theme CSS
//
// @type string
// @default ""
//
"path": "",
//
// Set the theme as default
//
// @type boolean
// @default false
//
"default": true
},
{
"name": "Morning",
"path": "themes/morning.css",
"default": false
},
{
"name": "Zenburn",
"path": "themes/zenburn.css",
"default": false
},
{
"name": "Crypto",
"path": "themes/crypto.css",
"default": false
}
],
};

View File

@ -1,13 +0,0 @@
[Unit]
Description=Shout IRC
Requires=docker.service
After=network.target
[Service]
ExecStartPre=-/usr/bin/docker kill shuo
ExecStartPre=-/usr/bin/docker rm shuo
ExecStart=/usr/bin/docker run --name shuo -v /data/sda/shout/users:/home/shuo/.shuo/users -v /data/sda/shout/logs:/home/shuo/.shuo/logs -e VIRTUAL_HOST=shuo.xeserv.us xena/shuo
ExecStop=/usr/bin/docker stop shuo
[Install]
WantedBy=multi-user.target

View File

@ -1,8 +0,0 @@
FROM golang:1.7.1
RUN go get github.com/tidwall/summitdb/cmd/summitdb-server
VOLUME /data
EXPOSE 7481
CMD summitdb-server -dir /data -p 7481

View File

@ -1,11 +0,0 @@
FROM nginx
ONBUILD ADD . /site
ONBUILD RUN cd /site && sw site && cp -vrf ./site.static /usr/share/nginx/html
ADD https://github.com/jroimartin/sw/archive/master.tar.gz /opt/sw.tar.gz
RUN cd /opt && tar vxf sw.tar.gz \
&& cd sw-master \
&& cp md2html.awk /usr/local/bin/md2html.awk \
&& cp sw /usr/local/bin/sw \
&& chmod a+x /usr/local/bin/*

View File

@ -1,14 +0,0 @@
build:
docker build -t hub hub
docker build -t leaf1 leaf1
docker build -t leaf2 leaf2
docker build -t services services
run:
docker run --name hub -dit -p 6067:6667 hub
docker run --name leaf1 -dit leaf1
docker run --name leaf2 -dit leaf2
docker run --name services -dit services
kill:
docker rm -f hub services leaf1 leaf2

View File

@ -1,3 +0,0 @@
FROM xena/elemental-ircd:6.6.2
ADD ircd.conf /home/ircd/run/etc/ircd.conf

View File

@ -1,585 +0,0 @@
/* doc/example.conf - brief example configuration file
*
* Copyright (C) 2000-2002 Hybrid Development Team
* Copyright (C) 2002-2005 ircd-ratbox development team
* Copyright (C) 2005-2006 charybdis development team
*
* $Id: example.conf 3582 2007-11-17 21:55:48Z jilles $
*
* See reference.conf for more information.
*/
/* Extensions */
#loadmodule "extensions/chm_adminonly.so";
loadmodule "extensions/chm_operonly.so";
#loadmodule "extensions/chm_sslonly.so";
#loadmodule "extensions/chm_operonly_compat.so";
#loadmodule "extensions/chm_quietunreg_compat.so";
#loadmodule "extensions/chm_sslonly_compat.so";
#loadmodule "extensions/createauthonly.so";
loadmodule "extensions/extb_account.so";
loadmodule "extensions/extb_canjoin.so";
loadmodule "extensions/extb_channel.so";
loadmodule "extensions/extb_extgecos.so";
loadmodule "extensions/extb_oper.so";
loadmodule "extensions/extb_realname.so";
#loadmodule "extensions/extb_server.so";
#loadmodule "extensions/extb_ssl.so";
#loadmodule "extensions/hurt.so";
loadmodule "extensions/ip_cloaking.so";
#loadmodule "extensions/m_findforwards.so";
loadmodule "extensions/m_identify.so";
loadmodule "extensions/m_mkpasswd.so";
loadmodule "extensions/m_webirc.so";
#loadmodule "extensions/m_cycle.so";
#loadmodule "extensions/m_oaccept.so";
#loadmodule "extensions/m_opme.so";
#loadmodule "extensions/m_ojoin.so";
#loadmodule "extensions/m_omode.so";
#loadmodule "extensions/m_olist.so";
#loadmodule "extensions/m_okick.so";
#loadmodule "extensions/m_force.so";
#loadmodule "extensions/m_roleplay.so";
#loadmodule "extensions/no_oper_invis.so";
loadmodule "extensions/sno_farconnect.so";
loadmodule "extensions/sno_globalkline.so";
loadmodule "extensions/sno_globaloper.so";
#loadmodule "extensions/sno_whois.so";
serverinfo {
name = "rarity.shadownet.int";
sid = "47G";
description = "Rarity >_<";
network_name = "ShadowNET";
network_desc = "Help I need muffin";
helpchan = "#help";
helpurl = "http://www.mynet.net/help";
hub = yes;
/* On multi-homed hosts you may need the following. These define
* the addresses we connect from to other servers. */
/* for IPv4 */
#vhost = "192.169.0.1";
/* for IPv6 */
#vhost6 = "3ffe:80e8:546::2";
/* ssl_private_key: our ssl private key */
ssl_private_key = "etc/ssl.key";
/* ssl_cert: certificate for our ssl server */
ssl_cert = "etc/ssl.cert";
/* ssl_dh_params: DH parameters, generate with openssl dhparam -out dh.pem 1024 */
ssl_dh_params = "etc/dh.pem";
/* ssld_count: number of ssld processes you want to start, if you
* have a really busy server, using N-1 where N is the number of
* cpu/cpu cores you have might be useful. A number greater than one
* can also be useful in case of bugs in ssld and because ssld needs
* two file descriptors per SSL connection.
*/
ssld_count = 1;
/* default max clients: the default maximum number of clients
* allowed to connect. This can be changed once ircd has started by
* issuing:
* /quote set maxclients <limit>
*/
default_max_clients = 1024;
};
admin {
name = "Lazy admin (lazya)";
description = "AthemeNET client server";
email = "nobody@127.0.0.1";
};
log {
fname_userlog = "logs/userlog";
#fname_fuserlog = "logs/fuserlog";
fname_operlog = "logs/operlog";
#fname_foperlog = "logs/foperlog";
fname_serverlog = "logs/serverlog";
#fname_klinelog = "logs/klinelog";
fname_killlog = "logs/killlog";
fname_operspylog = "logs/operspylog";
#fname_ioerrorlog = "logs/ioerror";
};
/* class {} blocks MUST be specified before anything that uses them. That
* means they must be defined before auth {} and before connect {}.
*/
class "users" {
ping_time = 2 minutes;
number_per_ident = 10;
number_per_ip = 10;
number_per_ip_global = 50;
cidr_ipv4_bitlen = 24;
cidr_ipv6_bitlen = 64;
number_per_cidr = 200;
max_number = 3000;
sendq = 400 kbytes;
};
class "opers" {
ping_time = 5 minutes;
number_per_ip = 10;
max_number = 1000;
sendq = 1 megabyte;
};
class "server" {
ping_time = 5 minutes;
connectfreq = 5 minutes;
max_number = 1;
sendq = 4 megabytes;
};
listen {
/* If you want to listen on a specific IP only, specify host.
* host definitions apply only to the following port line.
*/
#host = "192.169.0.1";
port = 5000, 6665 .. 6669;
sslport = 6697;
/* Listen on IPv6 (if you used host= above). */
#host = "3ffe:1234:a:b:c::d";
#port = 5000, 6665 .. 6669;
#sslport = 9999;
};
connect "services.int" {
host = "*";
send_password = "dev";
accept_password = "dev";
port = 6667;
flags = topicburst;
class = "server";
};
connect "tetra.int" {
host = "*";
send_password = "dev";
accept_password = "dev";
port = 6667;
flags = topicburst;
class = "server";
};
connect "ardreth.shadownet.int" {
host = "*";
send_password = "dev";
accept_password = "dev";
port = 6667;
flags = topicburst;
class = "server";
};
connect "janus.shadownet.int" {
host = "*";
send_password = "dev";
accept_password = "dev";
port = 6667;
class = "server";
hub_mask = "*";
};
/* auth {}: allow users to connect to the ircd (OLD I:)
* auth {} blocks MUST be specified in order of precedence. The first one
* that matches a user will be used. So place spoofs first, then specials,
* then general access, then restricted.
*/
auth {
/* user: the user@host allowed to connect. Multiple IPv4/IPv6 user
* lines are permitted per auth block. This is matched against the
* hostname and IP address (using :: shortening for IPv6 and
* prepending a 0 if it starts with a colon) and can also use CIDR
* masks.
*/
user = "*@172.16.0.0/12";
user = "*test@123D:B567:*";
/* auth_user: The username (authenticated via SASL or PASS) allowed
* to connect. You are able to put multiple auth_user lines. If people
* are authenticating via SASL in this way, it is recommended to comment
* out the password option below. You will also *NEED* to specify a user
* line above auth_user, this can safely be "*@*", however.
*/
auth_user = "jilles";
auth_user = "jdhore";
/* password: an optional password that is required to use this block.
* By default this is not encrypted, specify the flag "encrypted" in
* flags = ...; below if it is.
*/
password = "letmein";
/* spoof: fake the users user@host to be be this. You may either
* specify a host or a user@host to spoof to. This is free-form,
* just do everyone a favour and dont abuse it. (OLD I: = flag)
*/
spoof = "I.still.hate.packets";
/* autojoin: Channel (or channels, comma-seperated) to join users
* in this auth block to on connect. Note that this won't join
* the user through any bans or otherwise restrictive chmodes.
*/
autojoin = "#shadowircd,#test";
/* autojoin_opers : Channel (or channels, comma-seperated) to join
* opers to on oper-up.
*/
autojoin_opers = "#opers,#help";
/* Possible flags in auth:
*
* encrypted | password is encrypted with mkpasswd
* spoof_notice | give a notice when spoofing hosts
* exceed_limit (old > flag) | allow user to exceed class user limits
* kline_exempt (old ^ flag) | exempt this user from k/g/xlines&dnsbls
* dnsbl_exempt | exempt this user from dnsbls
* spambot_exempt | exempt this user from spambot checks
* shide_exempt | exempt this user from serverhiding
* jupe_exempt | exempt this user from generating
* warnings joining juped channels
* resv_exempt | exempt this user from resvs
* flood_exempt | exempt this user from flood limits
* USE WITH CAUTION.
* no_tilde (old - flag) | don't prefix ~ to username if no ident
* need_ident (old + flag) | require ident for user in this class
* need_ssl | require SSL/TLS for user in this class
* need_sasl | require SASL id for user in this class
*/
flags = kline_exempt, exceed_limit;
/* class: the class the user is placed in */
class = "opers";
};
/* Example WEBIRC authblock */
auth {
/* user: webirc@IP.OF.YOUR.WEBIRC . the webirc@ part is required */
user = "webirc@192.168.1.1";
/* password: password the webirc client sends in the WEBIRC command.
* You can use a encrypted password here (see above auth block).
*/
password = "<password>";
/* spoof: This is required to keep it what it is currently if you
* want the webirc client to show the users' real host as their
* host on IRC.
*/
spoof = "webirc.";
class = "users";
};
auth {
user = "*@*";
class = "users";
};
/* privset {} blocks MUST be specified before anything that uses them. That
* means they must be defined before operator {}.
*/
privset "local_op" {
privs = oper:local_kill, oper:operwall;
};
privset "server_bot" {
extends = "local_op";
privs = oper:kline, oper:remoteban, snomask:nick_changes;
};
privset "global_op" {
extends = "local_op";
privs = oper:global_kill, oper:routing, oper:kline, oper:unkline, oper:xline,
oper:resv, oper:mass_notice, oper:remoteban;
};
privset "admin" {
extends = "global_op";
privs = oper:admin, oper:die, oper:rehash, oper:spy, oper:override;
};
operator "god" {
/* name: the name of the oper must go above */
/* user: the user@host required for this operator. CIDR *is*
* supported now. auth{} spoofs work here, other spoofs do not.
* multiple user="" lines are supported.
*/
user = "*@*";
/* password: the password required to oper. Unless ~encrypted is
* contained in flags = ...; this will need to be encrypted using
* mkpasswd, MD5 is supported
*/
password = "test";
/* rsa key: the public key for this oper when using Challenge.
* A password should not be defined when this is used, see
* doc/challenge.txt for more information.
*/
#rsa_public_key_file = "/usr/local/ircd/etc/oper.pub";
/* umodes: the specific umodes this oper gets when they oper.
* If this is specified an oper will not be given oper_umodes
* These are described above oper_only_umodes in general {};
*/
#umodes = locops, servnotice, operwall, wallop;
/* fingerprint: if specified, the oper's client certificate
* fingerprint will be checked against the specified fingerprint
* below.
*/
#fingerprint = "c77106576abf7f9f90cca0f63874a60f2e40a64b";
/* snomask: specific server notice mask on oper up.
* If this is specified an oper will not be given oper_snomask.
*/
snomask = "+ZbFcfkrsuy";
/* vhost: defines the vhost that this oper will get on oper up.
* this must be a valid hostmask. If this is specified the oper
* will not be given default_operhost.
*/
vhost = "is.an.oper";
/* swhois: defines an additional line that will be displayed
* whenever someone does /whois on the oper in question.
*/
swhois = "is wearing pants.";
/* operstring: defines a custom operstring for this oper,
* which will be shown in whois instead of default_operstring
* or default_adminstring.
*/
operstring = "is a lazy IRC Operator";
/* flags: misc options for the operator. You may prefix an option
* with ~ to disable it, e.g. ~encrypted.
*
* Default flags are encrypted.
*
* Available options:
*
* encrypted: the password above is encrypted [DEFAULT]
* need_ssl: must be using SSL/TLS to oper up
*/
flags = ~encrypted;
/* privset: privileges set to grant */
privset = "admin";
};
service {
name = "services.int";
};
service {
name = "tetra.int";
};
cluster {
name = "*";
flags = kline, tkline, unkline, xline, txline, unxline, resv, tresv, unresv;
};
shared {
oper = "*@*", "*";
flags = all;
};
/* exempt {}: IPs that are exempt from Dlines and rejectcache. (OLD d:) */
exempt {
ip = "127.0.0.1";
};
channel {
disabledmodes = "G";
autochanmodes = "nt";
admin_on_channel_create = no;
exemptchanops = "NTc";
use_halfop = yes;
use_admin = yes;
use_knock = yes;
use_local_channels = yes;
knock_delay = 5 minutes;
knock_delay_channel = 1 minute;
max_chans_per_user = 15;
max_bans = 100;
max_bans_large = 500;
default_split_user_count = 0;
default_split_server_count = 0;
no_create_on_split = no;
no_join_on_split = no;
burst_topicwho = yes;
kick_on_split_riding = no;
only_ascii_channels = no;
cycle_host_change = yes;
host_in_topic = yes;
resv_forcepart = yes;
channel_target_change = yes;
};
serverhide {
flatten_links = yes;
links_delay = 5 minutes;
hidden = no;
disable_hidden = no;
};
alias "NickServ" {
target = "NickServ";
};
alias "ChanServ" {
target = "ChanServ";
};
alias "OperServ" {
target = "OperServ";
};
alias "MemoServ" {
target = "MemoServ";
};
alias "HostServ" {
target = "HostServ";
};
alias "BotServ" {
target = "BotServ";
};
alias "InfoServ" {
target = "InfoServ";
};
alias "GroupServ" {
target = "GroupServ";
};
alias "NS" {
target = "NickServ";
};
alias "CS" {
target = "ChanServ";
};
alias "OS" {
target = "OperServ";
};
alias "MS" {
target = "MemoServ";
};
alias "HS" {
target = "HostServ";
};
alias "BS" {
target = "BotServ";
};
alias "IS" {
target = "InfoServ";
};
alias "GS" {
target = "GroupServ";
};
general {
hide_error_messages = opers;
hide_spoof_ips = yes;
/*
* default umodes: umodes to set upon connection
* If you have enabled the ip_cloaking extension, and you wish for
* incoming clients to be cloaked upon connection, +x must be in
* the umode string below.
*/
default_umodes = "+ix";
default_operstring = "is an IRC Operator";
default_adminstring = "is a Server Administrator";
default_operhost = "yolo-swag.com";
#static_quit = "I like turtles!";
servicestring = "is a Network Service";
disable_fake_channels = no;
hide_channel_below_users = 3;
tkline_expire_notices = no;
default_floodcount = 10;
failed_oper_notice = yes;
dots_in_ident=2;
min_nonwildcard = 4;
min_nonwildcard_simple = 3;
max_accept = 100;
max_monitor = 100;
anti_nick_flood = yes;
max_nick_time = 20 seconds;
max_nick_changes = 5;
anti_spam_exit_message_time = 5 minutes;
use_part_messages = yes;
ts_warn_delta = 30 seconds;
ts_max_delta = 5 minutes;
client_exit = yes;
collision_fnc = yes;
global_snotices = yes;
dline_with_reason = yes;
kline_delay = 0 seconds;
kline_with_reason = yes;
kline_reason = "K-Lined";
identify_service = "NickServ@services.int";
identify_command = "IDENTIFY";
non_redundant_klines = yes;
warn_no_nline = yes;
use_propagated_bans = yes;
stats_e_disabled = no;
stats_c_oper_only=no;
stats_h_oper_only=no;
stats_y_oper_only=no;
stats_o_oper_only=yes;
stats_P_oper_only=no;
stats_i_oper_only=masked;
stats_k_oper_only=masked;
map_oper_only = no;
operspy_admin_only = no;
operspy_dont_care_user_info = no;
secret_channels_in_whois = no;
caller_id_wait = 1 minute;
pace_wait_simple = 1 second;
pace_wait = 10 seconds;
short_motd = no;
ping_cookie = no;
connect_timeout = 30 seconds;
default_ident_timeout = 5;
disable_auth = yes;
no_oper_flood = yes;
true_no_oper_flood = no;
max_targets = 4;
client_flood = 20;
use_whois_actually = no;
oper_only_umodes = operwall, locops, servnotice;
oper_umodes = locops, servnotice, operwall, wallop;
oper_snomask = "+s";
burst_away = yes;
nick_delay = 0 seconds; # 15 minutes if you want to enable this
reject_ban_time = 1 minute;
reject_after_count = 3;
reject_duration = 5 minutes;
throttle_duration = 60;
throttle_count = 5000;
expire_override_time = 5 minutes;
};
modules {
path = "modules";
path = "modules/autoload";
};

View File

@ -1,3 +0,0 @@
FROM xena/elemental-ircd:6.6.2
ADD ircd.conf /home/ircd/run/etc/ircd.conf

View File

@ -1,559 +0,0 @@
/* doc/example.conf - brief example configuration file
*
* Copyright (C) 2000-2002 Hybrid Development Team
* Copyright (C) 2002-2005 ircd-ratbox development team
* Copyright (C) 2005-2006 charybdis development team
*
* $Id: example.conf 3582 2007-11-17 21:55:48Z jilles $
*
* See reference.conf for more information.
*/
/* Extensions */
#loadmodule "extensions/chm_adminonly.so";
loadmodule "extensions/chm_operonly.so";
#loadmodule "extensions/chm_sslonly.so";
#loadmodule "extensions/chm_operonly_compat.so";
#loadmodule "extensions/chm_quietunreg_compat.so";
#loadmodule "extensions/chm_sslonly_compat.so";
#loadmodule "extensions/createauthonly.so";
loadmodule "extensions/extb_account.so";
loadmodule "extensions/extb_canjoin.so";
loadmodule "extensions/extb_channel.so";
loadmodule "extensions/extb_extgecos.so";
loadmodule "extensions/extb_oper.so";
loadmodule "extensions/extb_realname.so";
#loadmodule "extensions/extb_server.so";
#loadmodule "extensions/extb_ssl.so";
#loadmodule "extensions/hurt.so";
loadmodule "extensions/ip_cloaking.so";
#loadmodule "extensions/m_findforwards.so";
loadmodule "extensions/m_identify.so";
loadmodule "extensions/m_mkpasswd.so";
loadmodule "extensions/m_webirc.so";
#loadmodule "extensions/m_cycle.so";
#loadmodule "extensions/m_oaccept.so";
#loadmodule "extensions/m_opme.so";
#loadmodule "extensions/m_ojoin.so";
#loadmodule "extensions/m_omode.so";
#loadmodule "extensions/m_olist.so";
#loadmodule "extensions/m_okick.so";
#loadmodule "extensions/m_force.so";
#loadmodule "extensions/m_roleplay.so";
#loadmodule "extensions/no_oper_invis.so";
loadmodule "extensions/sno_farconnect.so";
loadmodule "extensions/sno_globalkline.so";
loadmodule "extensions/sno_globaloper.so";
#loadmodule "extensions/sno_whois.so";
serverinfo {
name = "ardreth.shadownet.int";
sid = "4RD";
description = "Ardreth the reaper of souls";
network_name = "ShadowNET";
network_desc = "Help I need muffin";
helpchan = "#help";
helpurl = "http://www.mynet.net/help";
hub = yes;
/* On multi-homed hosts you may need the following. These define
* the addresses we connect from to other servers. */
/* for IPv4 */
#vhost = "192.169.0.1";
/* for IPv6 */
#vhost6 = "3ffe:80e8:546::2";
/* ssl_private_key: our ssl private key */
ssl_private_key = "etc/ssl.key";
/* ssl_cert: certificate for our ssl server */
ssl_cert = "etc/ssl.cert";
/* ssl_dh_params: DH parameters, generate with openssl dhparam -out dh.pem 1024 */
ssl_dh_params = "etc/dh.pem";
/* ssld_count: number of ssld processes you want to start, if you
* have a really busy server, using N-1 where N is the number of
* cpu/cpu cores you have might be useful. A number greater than one
* can also be useful in case of bugs in ssld and because ssld needs
* two file descriptors per SSL connection.
*/
ssld_count = 1;
/* default max clients: the default maximum number of clients
* allowed to connect. This can be changed once ircd has started by
* issuing:
* /quote set maxclients <limit>
*/
default_max_clients = 1024;
};
admin {
name = "Lazy admin (lazya)";
description = "AthemeNET client server";
email = "nobody@127.0.0.1";
};
log {
fname_userlog = "logs/userlog";
#fname_fuserlog = "logs/fuserlog";
fname_operlog = "logs/operlog";
#fname_foperlog = "logs/foperlog";
fname_serverlog = "logs/serverlog";
#fname_klinelog = "logs/klinelog";
fname_killlog = "logs/killlog";
fname_operspylog = "logs/operspylog";
#fname_ioerrorlog = "logs/ioerror";
};
/* class {} blocks MUST be specified before anything that uses them. That
* means they must be defined before auth {} and before connect {}.
*/
class "users" {
ping_time = 2 minutes;
number_per_ident = 10;
number_per_ip = 10;
number_per_ip_global = 50;
cidr_ipv4_bitlen = 24;
cidr_ipv6_bitlen = 64;
number_per_cidr = 200;
max_number = 3000;
sendq = 400 kbytes;
};
class "opers" {
ping_time = 5 minutes;
number_per_ip = 10;
max_number = 1000;
sendq = 1 megabyte;
};
class "server" {
ping_time = 5 minutes;
connectfreq = 5 minutes;
max_number = 1;
sendq = 4 megabytes;
};
listen {
/* If you want to listen on a specific IP only, specify host.
* host definitions apply only to the following port line.
*/
#host = "192.169.0.1";
port = 5000, 6665 .. 6669;
sslport = 6697;
/* Listen on IPv6 (if you used host= above). */
#host = "3ffe:1234:a:b:c::d";
#port = 5000, 6665 .. 6669;
#sslport = 9999;
};
connect "rarity.shadownet.int" {
host = "172.17.42.1";
send_password = "dev";
accept_password = "dev";
port = 6067;
class = "server";
hub_mask = "*";
flags = autoconn;
};
/* auth {}: allow users to connect to the ircd (OLD I:)
* auth {} blocks MUST be specified in order of precedence. The first one
* that matches a user will be used. So place spoofs first, then specials,
* then general access, then restricted.
*/
auth {
/* user: the user@host allowed to connect. Multiple IPv4/IPv6 user
* lines are permitted per auth block. This is matched against the
* hostname and IP address (using :: shortening for IPv6 and
* prepending a 0 if it starts with a colon) and can also use CIDR
* masks.
*/
user = "*@172.16.0.0/12";
user = "*test@123D:B567:*";
/* auth_user: The username (authenticated via SASL or PASS) allowed
* to connect. You are able to put multiple auth_user lines. If people
* are authenticating via SASL in this way, it is recommended to comment
* out the password option below. You will also *NEED* to specify a user
* line above auth_user, this can safely be "*@*", however.
*/
auth_user = "jilles";
auth_user = "jdhore";
/* password: an optional password that is required to use this block.
* By default this is not encrypted, specify the flag "encrypted" in
* flags = ...; below if it is.
*/
password = "letmein";
/* spoof: fake the users user@host to be be this. You may either
* specify a host or a user@host to spoof to. This is free-form,
* just do everyone a favour and dont abuse it. (OLD I: = flag)
*/
spoof = "I.still.hate.packets";
/* autojoin: Channel (or channels, comma-seperated) to join users
* in this auth block to on connect. Note that this won't join
* the user through any bans or otherwise restrictive chmodes.
*/
autojoin = "#shadowircd,#test";
/* autojoin_opers : Channel (or channels, comma-seperated) to join
* opers to on oper-up.
*/
autojoin_opers = "#opers,#help";
/* Possible flags in auth:
*
* encrypted | password is encrypted with mkpasswd
* spoof_notice | give a notice when spoofing hosts
* exceed_limit (old > flag) | allow user to exceed class user limits
* kline_exempt (old ^ flag) | exempt this user from k/g/xlines&dnsbls
* dnsbl_exempt | exempt this user from dnsbls
* spambot_exempt | exempt this user from spambot checks
* shide_exempt | exempt this user from serverhiding
* jupe_exempt | exempt this user from generating
* warnings joining juped channels
* resv_exempt | exempt this user from resvs
* flood_exempt | exempt this user from flood limits
* USE WITH CAUTION.
* no_tilde (old - flag) | don't prefix ~ to username if no ident
* need_ident (old + flag) | require ident for user in this class
* need_ssl | require SSL/TLS for user in this class
* need_sasl | require SASL id for user in this class
*/
flags = kline_exempt, exceed_limit;
/* class: the class the user is placed in */
class = "opers";
};
/* Example WEBIRC authblock */
auth {
/* user: webirc@IP.OF.YOUR.WEBIRC . the webirc@ part is required */
user = "webirc@192.168.1.1";
/* password: password the webirc client sends in the WEBIRC command.
* You can use a encrypted password here (see above auth block).
*/
password = "<password>";
/* spoof: This is required to keep it what it is currently if you
* want the webirc client to show the users' real host as their
* host on IRC.
*/
spoof = "webirc.";
class = "users";
};
auth {
user = "*@*";
class = "users";
};
/* privset {} blocks MUST be specified before anything that uses them. That
* means they must be defined before operator {}.
*/
privset "local_op" {
privs = oper:local_kill, oper:operwall;
};
privset "server_bot" {
extends = "local_op";
privs = oper:kline, oper:remoteban, snomask:nick_changes;
};
privset "global_op" {
extends = "local_op";
privs = oper:global_kill, oper:routing, oper:kline, oper:unkline, oper:xline,
oper:resv, oper:mass_notice, oper:remoteban;
};
privset "admin" {
extends = "global_op";
privs = oper:admin, oper:die, oper:rehash, oper:spy, oper:override;
};
operator "god" {
/* name: the name of the oper must go above */
/* user: the user@host required for this operator. CIDR *is*
* supported now. auth{} spoofs work here, other spoofs do not.
* multiple user="" lines are supported.
*/
user = "*@*";
/* password: the password required to oper. Unless ~encrypted is
* contained in flags = ...; this will need to be encrypted using
* mkpasswd, MD5 is supported
*/
password = "test";
/* rsa key: the public key for this oper when using Challenge.
* A password should not be defined when this is used, see
* doc/challenge.txt for more information.
*/
#rsa_public_key_file = "/usr/local/ircd/etc/oper.pub";
/* umodes: the specific umodes this oper gets when they oper.
* If this is specified an oper will not be given oper_umodes
* These are described above oper_only_umodes in general {};
*/
#umodes = locops, servnotice, operwall, wallop;
/* fingerprint: if specified, the oper's client certificate
* fingerprint will be checked against the specified fingerprint
* below.
*/
#fingerprint = "c77106576abf7f9f90cca0f63874a60f2e40a64b";
/* snomask: specific server notice mask on oper up.
* If this is specified an oper will not be given oper_snomask.
*/
snomask = "+ZbFcfkrsuy";
/* vhost: defines the vhost that this oper will get on oper up.
* this must be a valid hostmask. If this is specified the oper
* will not be given default_operhost.
*/
vhost = "is.an.oper";
/* swhois: defines an additional line that will be displayed
* whenever someone does /whois on the oper in question.
*/
swhois = "is wearing pants.";
/* operstring: defines a custom operstring for this oper,
* which will be shown in whois instead of default_operstring
* or default_adminstring.
*/
operstring = "is a lazy IRC Operator";
/* flags: misc options for the operator. You may prefix an option
* with ~ to disable it, e.g. ~encrypted.
*
* Default flags are encrypted.
*
* Available options:
*
* encrypted: the password above is encrypted [DEFAULT]
* need_ssl: must be using SSL/TLS to oper up
*/
flags = ~encrypted;
/* privset: privileges set to grant */
privset = "admin";
};
service {
name = "services.int";
};
service {
name = "tetra.int";
};
cluster {
name = "*";
flags = kline, tkline, unkline, xline, txline, unxline, resv, tresv, unresv;
};
shared {
oper = "*@*", "*";
flags = all;
};
/* exempt {}: IPs that are exempt from Dlines and rejectcache. (OLD d:) */
exempt {
ip = "127.0.0.1";
};
channel {
disabledmodes = "G";
autochanmodes = "nt";
admin_on_channel_create = no;
exemptchanops = "NTc";
use_halfop = yes;
use_admin = yes;
use_knock = yes;
use_local_channels = yes;
knock_delay = 5 minutes;
knock_delay_channel = 1 minute;
max_chans_per_user = 15;
max_bans = 100;
max_bans_large = 500;
default_split_user_count = 0;
default_split_server_count = 0;
no_create_on_split = no;
no_join_on_split = no;
burst_topicwho = yes;
kick_on_split_riding = no;
only_ascii_channels = no;
cycle_host_change = yes;
host_in_topic = yes;
resv_forcepart = yes;
channel_target_change = yes;
};
serverhide {
flatten_links = yes;
links_delay = 5 minutes;
hidden = no;
disable_hidden = no;
};
alias "NickServ" {
target = "NickServ";
};
alias "ChanServ" {
target = "ChanServ";
};
alias "OperServ" {
target = "OperServ";
};
alias "MemoServ" {
target = "MemoServ";
};
alias "HostServ" {
target = "HostServ";
};
alias "BotServ" {
target = "BotServ";
};
alias "InfoServ" {
target = "InfoServ";
};
alias "GroupServ" {
target = "GroupServ";
};
alias "NS" {
target = "NickServ";
};
alias "CS" {
target = "ChanServ";
};
alias "OS" {
target = "OperServ";
};
alias "MS" {
target = "MemoServ";
};
alias "HS" {
target = "HostServ";
};
alias "BS" {
target = "BotServ";
};
alias "IS" {
target = "InfoServ";
};
alias "GS" {
target = "GroupServ";
};
general {
hide_error_messages = opers;
hide_spoof_ips = yes;
/*
* default umodes: umodes to set upon connection
* If you have enabled the ip_cloaking extension, and you wish for
* incoming clients to be cloaked upon connection, +x must be in
* the umode string below.
*/
default_umodes = "+ix";
default_operstring = "is an IRC Operator";
default_adminstring = "is a Server Administrator";
default_operhost = "yolo-swag.com";
#static_quit = "I like turtles!";
servicestring = "is a Network Service";
disable_fake_channels = no;
hide_channel_below_users = 3;
tkline_expire_notices = no;
default_floodcount = 10;
failed_oper_notice = yes;
dots_in_ident=2;
min_nonwildcard = 4;
min_nonwildcard_simple = 3;
max_accept = 100;
max_monitor = 100;
anti_nick_flood = yes;
max_nick_time = 20 seconds;
max_nick_changes = 5;
anti_spam_exit_message_time = 5 minutes;
use_part_messages = yes;
ts_warn_delta = 30 seconds;
ts_max_delta = 5 minutes;
client_exit = yes;
collision_fnc = yes;
global_snotices = yes;
dline_with_reason = yes;
kline_delay = 0 seconds;
kline_with_reason = yes;
kline_reason = "K-Lined";
identify_service = "NickServ@services.int";
identify_command = "IDENTIFY";
non_redundant_klines = yes;
warn_no_nline = yes;
use_propagated_bans = yes;
stats_e_disabled = no;
stats_c_oper_only=no;
stats_h_oper_only=no;
stats_y_oper_only=no;
stats_o_oper_only=yes;
stats_P_oper_only=no;
stats_i_oper_only=masked;
stats_k_oper_only=masked;
map_oper_only = no;
operspy_admin_only = no;
operspy_dont_care_user_info = no;
secret_channels_in_whois = no;
caller_id_wait = 1 minute;
pace_wait_simple = 1 second;
pace_wait = 10 seconds;
short_motd = no;
ping_cookie = no;
connect_timeout = 30 seconds;
default_ident_timeout = 5;
disable_auth = yes;
no_oper_flood = yes;
true_no_oper_flood = no;
max_targets = 4;
client_flood = 20;
use_whois_actually = no;
oper_only_umodes = operwall, locops, servnotice;
oper_umodes = locops, servnotice, operwall, wallop;
oper_snomask = "+s";
burst_away = yes;
nick_delay = 0 seconds; # 15 minutes if you want to enable this
reject_ban_time = 1 minute;
reject_after_count = 3;
reject_duration = 5 minutes;
throttle_duration = 60;
throttle_count = 5000;
expire_override_time = 5 minutes;
};
modules {
path = "modules";
path = "modules/autoload";
};

View File

@ -1,3 +0,0 @@
FROM xena/elemental-ircd:6.6.2
ADD ircd.conf /home/ircd/run/etc/ircd.conf

View File

@ -1,559 +0,0 @@
/* doc/example.conf - brief example configuration file
*
* Copyright (C) 2000-2002 Hybrid Development Team
* Copyright (C) 2002-2005 ircd-ratbox development team
* Copyright (C) 2005-2006 charybdis development team
*
* $Id: example.conf 3582 2007-11-17 21:55:48Z jilles $
*
* See reference.conf for more information.
*/
/* Extensions */
#loadmodule "extensions/chm_adminonly.so";
loadmodule "extensions/chm_operonly.so";
#loadmodule "extensions/chm_sslonly.so";
#loadmodule "extensions/chm_operonly_compat.so";
#loadmodule "extensions/chm_quietunreg_compat.so";
#loadmodule "extensions/chm_sslonly_compat.so";
#loadmodule "extensions/createauthonly.so";
loadmodule "extensions/extb_account.so";
loadmodule "extensions/extb_canjoin.so";
loadmodule "extensions/extb_channel.so";
loadmodule "extensions/extb_extgecos.so";
loadmodule "extensions/extb_oper.so";
loadmodule "extensions/extb_realname.so";
#loadmodule "extensions/extb_server.so";
#loadmodule "extensions/extb_ssl.so";
#loadmodule "extensions/hurt.so";
loadmodule "extensions/ip_cloaking.so";
#loadmodule "extensions/m_findforwards.so";
loadmodule "extensions/m_identify.so";
loadmodule "extensions/m_mkpasswd.so";
loadmodule "extensions/m_webirc.so";
#loadmodule "extensions/m_cycle.so";
#loadmodule "extensions/m_oaccept.so";
#loadmodule "extensions/m_opme.so";
#loadmodule "extensions/m_ojoin.so";
#loadmodule "extensions/m_omode.so";
#loadmodule "extensions/m_olist.so";
#loadmodule "extensions/m_okick.so";
#loadmodule "extensions/m_force.so";
#loadmodule "extensions/m_roleplay.so";
#loadmodule "extensions/no_oper_invis.so";
loadmodule "extensions/sno_farconnect.so";
loadmodule "extensions/sno_globalkline.so";
loadmodule "extensions/sno_globaloper.so";
#loadmodule "extensions/sno_whois.so";
serverinfo {
name = "janus.shadownet.int";
sid = "7AN";
description = "Janus the deliverer";
network_name = "ShadowNET";
network_desc = "Help I need muffin";
helpchan = "#help";
helpurl = "http://www.mynet.net/help";
hub = yes;
/* On multi-homed hosts you may need the following. These define
* the addresses we connect from to other servers. */
/* for IPv4 */
#vhost = "192.169.0.1";
/* for IPv6 */
#vhost6 = "3ffe:80e8:546::2";
/* ssl_private_key: our ssl private key */
ssl_private_key = "etc/ssl.key";
/* ssl_cert: certificate for our ssl server */
ssl_cert = "etc/ssl.cert";
/* ssl_dh_params: DH parameters, generate with openssl dhparam -out dh.pem 1024 */
ssl_dh_params = "etc/dh.pem";
/* ssld_count: number of ssld processes you want to start, if you
* have a really busy server, using N-1 where N is the number of
* cpu/cpu cores you have might be useful. A number greater than one
* can also be useful in case of bugs in ssld and because ssld needs
* two file descriptors per SSL connection.
*/
ssld_count = 1;
/* default max clients: the default maximum number of clients
* allowed to connect. This can be changed once ircd has started by
* issuing:
* /quote set maxclients <limit>
*/
default_max_clients = 1024;
};
admin {
name = "Lazy admin (lazya)";
description = "AthemeNET client server";
email = "nobody@127.0.0.1";
};
log {
fname_userlog = "logs/userlog";
#fname_fuserlog = "logs/fuserlog";
fname_operlog = "logs/operlog";
#fname_foperlog = "logs/foperlog";
fname_serverlog = "logs/serverlog";
#fname_klinelog = "logs/klinelog";
fname_killlog = "logs/killlog";
fname_operspylog = "logs/operspylog";
#fname_ioerrorlog = "logs/ioerror";
};
/* class {} blocks MUST be specified before anything that uses them. That
* means they must be defined before auth {} and before connect {}.
*/
class "users" {
ping_time = 2 minutes;
number_per_ident = 10;
number_per_ip = 10;
number_per_ip_global = 50;
cidr_ipv4_bitlen = 24;
cidr_ipv6_bitlen = 64;
number_per_cidr = 200;
max_number = 3000;
sendq = 400 kbytes;
};
class "opers" {
ping_time = 5 minutes;
number_per_ip = 10;
max_number = 1000;
sendq = 1 megabyte;
};
class "server" {
ping_time = 5 minutes;
connectfreq = 5 minutes;
max_number = 1;
sendq = 4 megabytes;
};
listen {
/* If you want to listen on a specific IP only, specify host.
* host definitions apply only to the following port line.
*/
#host = "192.169.0.1";
port = 5000, 6665 .. 6669;
sslport = 6697;
/* Listen on IPv6 (if you used host= above). */
#host = "3ffe:1234:a:b:c::d";
#port = 5000, 6665 .. 6669;
#sslport = 9999;
};
connect "rarity.shadownet.int" {
host = "172.17.42.1";
send_password = "dev";
accept_password = "dev";
port = 6067;
class = "server";
hub_mask = "*";
flags = autoconn;
};
/* auth {}: allow users to connect to the ircd (OLD I:)
* auth {} blocks MUST be specified in order of precedence. The first one
* that matches a user will be used. So place spoofs first, then specials,
* then general access, then restricted.
*/
auth {
/* user: the user@host allowed to connect. Multiple IPv4/IPv6 user
* lines are permitted per auth block. This is matched against the
* hostname and IP address (using :: shortening for IPv6 and
* prepending a 0 if it starts with a colon) and can also use CIDR
* masks.
*/
user = "*@172.16.0.0/12";
user = "*test@123D:B567:*";
/* auth_user: The username (authenticated via SASL or PASS) allowed
* to connect. You are able to put multiple auth_user lines. If people
* are authenticating via SASL in this way, it is recommended to comment
* out the password option below. You will also *NEED* to specify a user
* line above auth_user, this can safely be "*@*", however.
*/
auth_user = "jilles";
auth_user = "jdhore";
/* password: an optional password that is required to use this block.
* By default this is not encrypted, specify the flag "encrypted" in
* flags = ...; below if it is.
*/
password = "letmein";
/* spoof: fake the users user@host to be be this. You may either
* specify a host or a user@host to spoof to. This is free-form,
* just do everyone a favour and dont abuse it. (OLD I: = flag)
*/
spoof = "I.still.hate.packets";
/* autojoin: Channel (or channels, comma-seperated) to join users
* in this auth block to on connect. Note that this won't join
* the user through any bans or otherwise restrictive chmodes.
*/
autojoin = "#shadowircd,#test";
/* autojoin_opers : Channel (or channels, comma-seperated) to join
* opers to on oper-up.
*/
autojoin_opers = "#opers,#help";
/* Possible flags in auth:
*
* encrypted | password is encrypted with mkpasswd
* spoof_notice | give a notice when spoofing hosts
* exceed_limit (old > flag) | allow user to exceed class user limits
* kline_exempt (old ^ flag) | exempt this user from k/g/xlines&dnsbls
* dnsbl_exempt | exempt this user from dnsbls
* spambot_exempt | exempt this user from spambot checks
* shide_exempt | exempt this user from serverhiding
* jupe_exempt | exempt this user from generating
* warnings joining juped channels
* resv_exempt | exempt this user from resvs
* flood_exempt | exempt this user from flood limits
* USE WITH CAUTION.
* no_tilde (old - flag) | don't prefix ~ to username if no ident
* need_ident (old + flag) | require ident for user in this class
* need_ssl | require SSL/TLS for user in this class
* need_sasl | require SASL id for user in this class
*/
flags = kline_exempt, exceed_limit;
/* class: the class the user is placed in */
class = "opers";
};
/* Example WEBIRC authblock */
auth {
/* user: webirc@IP.OF.YOUR.WEBIRC . the webirc@ part is required */
user = "webirc@192.168.1.1";
/* password: password the webirc client sends in the WEBIRC command.
* You can use a encrypted password here (see above auth block).
*/
password = "<password>";
/* spoof: This is required to keep it what it is currently if you
* want the webirc client to show the users' real host as their
* host on IRC.
*/
spoof = "webirc.";
class = "users";
};
auth {
user = "*@*";
class = "users";
};
/* privset {} blocks MUST be specified before anything that uses them. That
* means they must be defined before operator {}.
*/
privset "local_op" {
privs = oper:local_kill, oper:operwall;
};
privset "server_bot" {
extends = "local_op";
privs = oper:kline, oper:remoteban, snomask:nick_changes;
};
privset "global_op" {
extends = "local_op";
privs = oper:global_kill, oper:routing, oper:kline, oper:unkline, oper:xline,
oper:resv, oper:mass_notice, oper:remoteban;
};
privset "admin" {
extends = "global_op";
privs = oper:admin, oper:die, oper:rehash, oper:spy, oper:override;
};
operator "god" {
/* name: the name of the oper must go above */
/* user: the user@host required for this operator. CIDR *is*
* supported now. auth{} spoofs work here, other spoofs do not.
* multiple user="" lines are supported.
*/
user = "*@*";
/* password: the password required to oper. Unless ~encrypted is
* contained in flags = ...; this will need to be encrypted using
* mkpasswd, MD5 is supported
*/
password = "test";
/* rsa key: the public key for this oper when using Challenge.
* A password should not be defined when this is used, see
* doc/challenge.txt for more information.
*/
#rsa_public_key_file = "/usr/local/ircd/etc/oper.pub";
/* umodes: the specific umodes this oper gets when they oper.
* If this is specified an oper will not be given oper_umodes
* These are described above oper_only_umodes in general {};
*/
#umodes = locops, servnotice, operwall, wallop;
/* fingerprint: if specified, the oper's client certificate
* fingerprint will be checked against the specified fingerprint
* below.
*/
#fingerprint = "c77106576abf7f9f90cca0f63874a60f2e40a64b";
/* snomask: specific server notice mask on oper up.
* If this is specified an oper will not be given oper_snomask.
*/
snomask = "+ZbFcfkrsuy";
/* vhost: defines the vhost that this oper will get on oper up.
* this must be a valid hostmask. If this is specified the oper
* will not be given default_operhost.
*/
vhost = "is.an.oper";
/* swhois: defines an additional line that will be displayed
* whenever someone does /whois on the oper in question.
*/
swhois = "is wearing pants.";
/* operstring: defines a custom operstring for this oper,
* which will be shown in whois instead of default_operstring
* or default_adminstring.
*/
operstring = "is a lazy IRC Operator";
/* flags: misc options for the operator. You may prefix an option
* with ~ to disable it, e.g. ~encrypted.
*
* Default flags are encrypted.
*
* Available options:
*
* encrypted: the password above is encrypted [DEFAULT]
* need_ssl: must be using SSL/TLS to oper up
*/
flags = ~encrypted;
/* privset: privileges set to grant */
privset = "admin";
};
service {
name = "services.int";
};
service {
name = "tetra.int";
};
cluster {
name = "*";
flags = kline, tkline, unkline, xline, txline, unxline, resv, tresv, unresv;
};
shared {
oper = "*@*", "*";
flags = all;
};
/* exempt {}: IPs that are exempt from Dlines and rejectcache. (OLD d:) */
exempt {
ip = "127.0.0.1";
};
channel {
disabledmodes = "G";
autochanmodes = "nt";
admin_on_channel_create = no;
exemptchanops = "NTc";
use_halfop = yes;
use_admin = yes;
use_knock = yes;
use_local_channels = yes;
knock_delay = 5 minutes;
knock_delay_channel = 1 minute;
max_chans_per_user = 15;
max_bans = 100;
max_bans_large = 500;
default_split_user_count = 0;
default_split_server_count = 0;
no_create_on_split = no;
no_join_on_split = no;
burst_topicwho = yes;
kick_on_split_riding = no;
only_ascii_channels = no;
cycle_host_change = yes;
host_in_topic = yes;
resv_forcepart = yes;
channel_target_change = yes;
};
serverhide {
flatten_links = yes;
links_delay = 5 minutes;
hidden = no;
disable_hidden = no;
};
alias "NickServ" {
target = "NickServ";
};
alias "ChanServ" {
target = "ChanServ";
};
alias "OperServ" {
target = "OperServ";
};
alias "MemoServ" {
target = "MemoServ";
};
alias "HostServ" {
target = "HostServ";
};
alias "BotServ" {
target = "BotServ";
};
alias "InfoServ" {
target = "InfoServ";
};
alias "GroupServ" {
target = "GroupServ";
};
alias "NS" {
target = "NickServ";
};
alias "CS" {
target = "ChanServ";
};
alias "OS" {
target = "OperServ";
};
alias "MS" {
target = "MemoServ";
};
alias "HS" {
target = "HostServ";
};
alias "BS" {
target = "BotServ";
};
alias "IS" {
target = "InfoServ";
};
alias "GS" {
target = "GroupServ";
};
general {
hide_error_messages = opers;
hide_spoof_ips = yes;
/*
* default umodes: umodes to set upon connection
* If you have enabled the ip_cloaking extension, and you wish for
* incoming clients to be cloaked upon connection, +x must be in
* the umode string below.
*/
default_umodes = "+ix";
default_operstring = "is an IRC Operator";
default_adminstring = "is a Server Administrator";
default_operhost = "yolo-swag.com";
#static_quit = "I like turtles!";
servicestring = "is a Network Service";
disable_fake_channels = no;
hide_channel_below_users = 3;
tkline_expire_notices = no;
default_floodcount = 10;
failed_oper_notice = yes;
dots_in_ident=2;
min_nonwildcard = 4;
min_nonwildcard_simple = 3;
max_accept = 100;
max_monitor = 100;
anti_nick_flood = yes;
max_nick_time = 20 seconds;
max_nick_changes = 5;
anti_spam_exit_message_time = 5 minutes;
use_part_messages = yes;
ts_warn_delta = 30 seconds;
ts_max_delta = 5 minutes;
client_exit = yes;
collision_fnc = yes;
global_snotices = yes;
dline_with_reason = yes;
kline_delay = 0 seconds;
kline_with_reason = yes;
kline_reason = "K-Lined";
identify_service = "NickServ@services.int";
identify_command = "IDENTIFY";
non_redundant_klines = yes;
warn_no_nline = yes;
use_propagated_bans = yes;
stats_e_disabled = no;
stats_c_oper_only=no;
stats_h_oper_only=no;
stats_y_oper_only=no;
stats_o_oper_only=yes;
stats_P_oper_only=no;
stats_i_oper_only=masked;
stats_k_oper_only=masked;
map_oper_only = no;
operspy_admin_only = no;
operspy_dont_care_user_info = no;
secret_channels_in_whois = no;
caller_id_wait = 1 minute;
pace_wait_simple = 1 second;
pace_wait = 10 seconds;
short_motd = no;
ping_cookie = no;
connect_timeout = 30 seconds;
default_ident_timeout = 5;
disable_auth = yes;
no_oper_flood = yes;
true_no_oper_flood = no;
max_targets = 4;
client_flood = 20;
use_whois_actually = no;
oper_only_umodes = operwall, locops, servnotice;
oper_umodes = locops, servnotice, operwall, wallop;
oper_snomask = "+s";
burst_away = yes;
nick_delay = 0 seconds; # 15 minutes if you want to enable this
reject_ban_time = 1 minute;
reject_after_count = 3;
reject_duration = 5 minutes;
throttle_duration = 60;
throttle_count = 5000;
expire_override_time = 5 minutes;
};
modules {
path = "modules";
path = "modules/autoload";
};

View File

@ -1,16 +0,0 @@
FROM flitter/init
RUN apt-get update && apt-get install -y build-essential libssl-dev git-core flex bison pkg-config && \
adduser --system --home /home/atheme atheme && mkdir /home/atheme/src && \
chmod 777 /home/atheme/src && cd /home/atheme/src && \
setuser atheme git clone https://github.com/atheme/atheme && cd atheme && \
setuser atheme git checkout 4d3c580077a295bad5528cf9df7b669e8209a739 && \
setuser atheme git submodule update --init && \
setuser atheme ./configure && setuser atheme make && setuser atheme make install || true
ADD atheme.conf /home/atheme/atheme/etc/
RUN chmod 777 /home/atheme/atheme/etc/*
ADD run /etc/service/atheme/run
CMD /sbin/my_init

File diff suppressed because it is too large Load Diff

View File

@ -1,3 +0,0 @@
#!/bin/bash
setuser atheme /home/atheme/atheme/bin/atheme-services -n

View File

@ -1,12 +0,0 @@
FROM ubuntu:14.04
ADD https://repo.tox.im/pubkey.gpg /tox.gpg
#remove old key
RUN apt-key update &&\
echo "deb https://repo.tox.im/ nightly main" > /etc/apt/sources.list.d/tox.list &&\
cat /tox.gpg | apt-key add - &&\
apt-get install -y apt-transport-https && apt-get update -qq &&\
apt-get install -y toxic
CMD toxic

View File

@ -1,15 +0,0 @@
FROM ubuntu:trusty
RUN echo "deb http://ppa.launchpad.net/nesthib/weechat-stable/ubuntu trusty main " >> /etc/apt/sources.list &&\
apt-get update && apt-get -y --force-yes install weechat &&\
useradd --create-home xena && echo 'xena:user' | chpasswd
ENV HOME /home/xena
ENV LANGUAGE en_US
ENV LC_ALL en_US.UTF-8
ENV LANG en_us.utf-8
ENV LC_CTYPE en_US.UTF-8
ENV TERM screen-256color
USER xena
CMD weechat

View File

@ -1,5 +0,0 @@
#!/bin/sh
export TERM=dvtm
dtach -A /tmp/weechat.dvtm -r winch dvtm 'weechat && killall dtach'

View File

@ -1,13 +0,0 @@
FROM flitter/init
RUN apt-get update && apt-get install cmake libmpdclient-dev git-core ca-certificates -y build-essential gcc make
RUN git clone https://github.com/notandy/ympd /app/src && \
cd /app/src && \
mkdir build && cd build && \
cmake .. -DCMAKE_INSTALL_PREFIX_PATH=/usr && make && make install
ADD ympd /etc/service/ympd/run
CMD /sbin/my_init
EXPOSE 8080

View File

@ -1,3 +0,0 @@
#!/bin/sh
ympd -h $MPD_PORT_6600_TCP_ADDR

View File

@ -1,30 +0,0 @@
FROM flitter/init
RUN apt-get update &&\
apt-get install -y \
libssl-dev \
libperl-dev \
libicu-dev \
pkg-config \
tcl8.5-dev \
libsasl2-dev \
build-essential \
g++ \
python3-dev &&\
useradd --create-home znc
USER znc
WORKDIR /home/znc
ENV ZNC_VERSION 1.6.1
RUN mkdir src &&\
cd src &&\
wget http://znc.in/releases/znc-1.6.1.tar.gz &&\
tar xf znc-1.6.1.tar.gz &&\
cd znc-1.6.1 &&\
./configure --enable-python --prefix /home/znc/run &&\
make -j4 &&\
make install