Rename project to uirc3
This commit is contained in:
parent
950f052d1b
commit
37fa19f4c9
|
@ -3,7 +3,7 @@
|
||||||
|
|
||||||
# Qt Creator files
|
# Qt Creator files
|
||||||
/CMakeLists.txt.user*
|
/CMakeLists.txt.user*
|
||||||
/ZyklonB.config
|
/uirc3.config
|
||||||
/ZyklonB.files
|
/uirc3.files
|
||||||
/ZyklonB.creator*
|
/uirc3.creator*
|
||||||
/ZyklonB.includes
|
/uirc3.includes
|
||||||
|
|
|
@ -10,8 +10,8 @@ env:
|
||||||
addons:
|
addons:
|
||||||
coverity_scan:
|
coverity_scan:
|
||||||
project:
|
project:
|
||||||
name: "pjanouch/ZyklonB"
|
name: "pjanouch/uirc3"
|
||||||
description: "Experimental IRC bot & daemon"
|
description: "Experimental IRC client, daemon and bot"
|
||||||
notification_email: p.janouch@gmail.com
|
notification_email: p.janouch@gmail.com
|
||||||
build_command_prepend: "cmake .. -DCMAKE_BUILD_TYPE=Release"
|
build_command_prepend: "cmake .. -DCMAKE_BUILD_TYPE=Release"
|
||||||
build_command: "make"
|
build_command: "make"
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
project (ZyklonB C)
|
project (uirc3 C)
|
||||||
cmake_minimum_required (VERSION 2.8.5)
|
cmake_minimum_required (VERSION 2.8.5)
|
||||||
|
|
||||||
# Moar warnings
|
# Moar warnings
|
||||||
|
@ -100,7 +100,7 @@ foreach (page ${project_MAN_PAGES})
|
||||||
endforeach (page)
|
endforeach (page)
|
||||||
|
|
||||||
# CPack
|
# CPack
|
||||||
set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "Experimental IRC bot, client and daemon")
|
set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "Experimental IRC client, daemon and bot")
|
||||||
set (CPACK_PACKAGE_VERSION ${project_VERSION})
|
set (CPACK_PACKAGE_VERSION ${project_VERSION})
|
||||||
set (CPACK_PACKAGE_VENDOR "Premysl Janouch")
|
set (CPACK_PACKAGE_VENDOR "Premysl Janouch")
|
||||||
set (CPACK_PACKAGE_CONTACT "Přemysl Janouch <p.janouch@gmail.com>")
|
set (CPACK_PACKAGE_CONTACT "Přemysl Janouch <p.janouch@gmail.com>")
|
||||||
|
|
77
README
77
README
|
@ -1,43 +1,58 @@
|
||||||
ZyklonB
|
uirc3
|
||||||
=======
|
=====
|
||||||
|
The unethical IRC trinity. This project consists of an experimental IRC client,
|
||||||
|
daemon, and bot. It's all you're ever going to need for chatting.
|
||||||
|
|
||||||
`ZyklonB' is an experimental IRC bot, building upon the concept of my other
|
All of them have these potentially interesting properties:
|
||||||
VitaminA IRC bot. The main characteristic of these two bots is that they run
|
- full IPv6 support
|
||||||
plugins as coprocesses, which allows for enhanced reliability and programming
|
- SSL/TLS support, including client certificates
|
||||||
language freedom.
|
- minimal dependencies
|
||||||
|
- very compact and easy to hack on
|
||||||
|
|
||||||
|
degesch
|
||||||
|
-------
|
||||||
|
The IRC client. I thought it would be interesting to build an IRC client on
|
||||||
|
top of libreadline. At least it's way simpler than doing it in ncurses.
|
||||||
|
The interface should feel familiar for weechat users.
|
||||||
|
|
||||||
|
It's the youngest and largest of them all and currently under heavy development.
|
||||||
|
|
||||||
|
kike
|
||||||
|
----
|
||||||
|
The IRC daemon. It mostly follows RFCs but it can't form networks consisting
|
||||||
|
of multiple servers, or use any services packages, such as Atheme. (Mostly due
|
||||||
|
to the protocol being incredibly ugly and tricky to implement correctly, with
|
||||||
|
the poor quality of the RFCs not helping much). It is designed to be used as
|
||||||
|
a regular user application rather than a system daemon.
|
||||||
|
|
||||||
|
It is complete enough to be useful but there are still some things that need to
|
||||||
|
be resolved before I can consider it stable.
|
||||||
|
|
||||||
|
Notable features:
|
||||||
|
- SSL/TLS autodetection (why doesn't everyone have this?)
|
||||||
|
- IRCop authentication through SSL/TLS client certificates
|
||||||
|
- epoll support on Linux; it should be able to handle quite a number of users
|
||||||
|
|
||||||
|
ZyklonB
|
||||||
|
-------
|
||||||
|
The IRC bot. It builds upon the concept of my other VitaminA IRC bot. The main
|
||||||
|
characteristic of these two bots is that they run plugins as coprocesses, which
|
||||||
|
allows for enhanced reliability and programming language freedom.
|
||||||
|
|
||||||
While originally intended to be a simple C99 rewrite of the original bot, which
|
While originally intended to be a simple C99 rewrite of the original bot, which
|
||||||
was written in the GNU dialect of AWK, it fairly quickly became a playground
|
was written in the GNU dialect of AWK, it fairly quickly became a playground
|
||||||
where I added everything that seemed nice.
|
where I added everything that seemed nice.
|
||||||
|
|
||||||
kike
|
Notable features:
|
||||||
----
|
- resilient against crashes, server disconnects and timeouts
|
||||||
Also included is a simple IRC daemon that mostly follows the RFC's but is
|
- SOCKS support (even though socksify can add that easily to any program)
|
||||||
limited to single-server networks, due to the protocol being incredibly ugly and
|
|
||||||
tricky to implement correctly (the poor quality of the RFC's doesn't help). It
|
|
||||||
is designed for use as a regular user application rather than a system daemon.
|
|
||||||
|
|
||||||
It is complete enough to be useful but there are still some things that need to
|
|
||||||
be resolved before I can consider it stable.
|
|
||||||
|
|
||||||
Some interesting features:
|
|
||||||
- SSL/TLS autodetection
|
|
||||||
- IRCop authentication through SSL/TLS client certificates
|
|
||||||
- epoll support on Linux
|
|
||||||
- superfast build time, small memory footprint
|
|
||||||
|
|
||||||
degesch
|
|
||||||
-------
|
|
||||||
To complete it all, I've also started working on an IRC client. I thought it
|
|
||||||
would be interesting to build an IRC client on top of libreadline. Also way
|
|
||||||
simpler than doing it in ncurses.
|
|
||||||
|
|
||||||
Building
|
Building
|
||||||
--------
|
--------
|
||||||
Build dependencies: CMake, pkg-config, help2man, awk, sh, liberty (included)
|
Build dependencies: CMake, pkg-config, help2man, awk, sh, liberty (included)
|
||||||
Runtime dependencies: openssl, ncursesw (degesch), readline (degesch)
|
Runtime dependencies: openssl, curses (degesch), readline (degesch)
|
||||||
|
|
||||||
$ git clone https://github.com/pjanouch/ZyklonB.git
|
$ git clone https://github.com/pjanouch/uirc3.git
|
||||||
$ git submodule init
|
$ git submodule init
|
||||||
$ git submodule update
|
$ git submodule update
|
||||||
$ mkdir build
|
$ mkdir build
|
||||||
|
@ -50,7 +65,7 @@ To install the application, you can do either the usual:
|
||||||
|
|
||||||
Or you can try telling CMake to make a package for you. For Debian it is:
|
Or you can try telling CMake to make a package for you. For Debian it is:
|
||||||
$ cpack -G DEB
|
$ cpack -G DEB
|
||||||
# dpkg -i ZyklonB-*.deb
|
# dpkg -i uirc3-*.deb
|
||||||
|
|
||||||
Note that for versions of CMake before 2.8.9, you need to prefix cpack with
|
Note that for versions of CMake before 2.8.9, you need to prefix cpack with
|
||||||
`fakeroot' or file ownership will end up wrong.
|
`fakeroot' or file ownership will end up wrong.
|
||||||
|
@ -83,7 +98,7 @@ And no, I'm not going to change the names.
|
||||||
|
|
||||||
License
|
License
|
||||||
-------
|
-------
|
||||||
`ZyklonB' is written by Přemysl Janouch <p.janouch@gmail.com>.
|
`uirc3' is written by Přemysl Janouch <p.janouch@gmail.com>.
|
||||||
|
|
||||||
You may use the software under the terms of the ISC license, the text of which
|
You may use the software under the terms of the ISC license, the text of which
|
||||||
is included within the package, or, at your option, you may relicense the work
|
is included within the package, or, at your option, you may relicense the work
|
||||||
|
|
|
@ -1,9 +1,7 @@
|
||||||
#ifndef CONFIG_H
|
#ifndef CONFIG_H
|
||||||
#define CONFIG_H
|
#define CONFIG_H
|
||||||
|
|
||||||
#define PROGRAM_NAME "${CMAKE_PROJECT_NAME}"
|
|
||||||
#define PROGRAM_VERSION "${project_VERSION}"
|
#define PROGRAM_VERSION "${project_VERSION}"
|
||||||
|
|
||||||
#define PLUGIN_DIR "${CMAKE_INSTALL_PREFIX}/${plugin_dir}"
|
#define PLUGIN_DIR "${CMAKE_INSTALL_PREFIX}/${plugin_dir}"
|
||||||
|
|
||||||
#endif // ! CONFIG_H
|
#endif // ! CONFIG_H
|
||||||
|
|
|
@ -48,7 +48,6 @@ enum
|
||||||
#define print_warning_data ((void *) ATTR_WARNING)
|
#define print_warning_data ((void *) ATTR_WARNING)
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
#undef PROGRAM_NAME
|
|
||||||
#define PROGRAM_NAME "degesch"
|
#define PROGRAM_NAME "degesch"
|
||||||
|
|
||||||
#include "common.c"
|
#include "common.c"
|
||||||
|
|
1
kike.c
1
kike.c
|
@ -19,7 +19,6 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
#undef PROGRAM_NAME
|
|
||||||
#define PROGRAM_NAME "kike"
|
#define PROGRAM_NAME "kike"
|
||||||
|
|
||||||
#define WANT_SYSLOG_LOGGING
|
#define WANT_SYSLOG_LOGGING
|
||||||
|
|
|
@ -19,6 +19,8 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
|
#define PROGRAM_NAME "ZyklonB"
|
||||||
|
|
||||||
#include "common.c"
|
#include "common.c"
|
||||||
|
|
||||||
// --- Configuration (application-specific) ------------------------------------
|
// --- Configuration (application-specific) ------------------------------------
|
||||||
|
|
Loading…
Reference in New Issue