diff --git a/Makefile b/Makefile index 30a0360..f999387 100644 --- a/Makefile +++ b/Makefile @@ -1,24 +1,48 @@ # Compiler CC=gcc # Flags -#CFLAGS=-lircclient -#CFLAGS=-static libircclient.a +# CFLAGS=-lircclient +# CFLAGS=-static libircclient.a MKDIR_P = mkdir -p +APP_NAME = loperIRCLogBot +SYSTEMD_DETECT = shell cat /proc/1/comm|grep systemd -all: lib loperIRCLogBot +all: lib $(APP_NAME) lib: - cp ./files/* ./libircclient-1.9/src/ + cp ./src/files/* ./src/libircclient-1.9/src/ # patch -p0 -i ./files/patchFile - $(MAKE) -C ./libircclient-1.9/src/ || exit 1; - cp -r ./libircclient-1.9/include/ ./libircclient - cp ./libircclient-1.9/src/libircclient.a . + $(MAKE) -C ./src/libircclient-1.9/src/ || exit 1; + cp -r ./src/libircclient-1.9/include/ ./src/libircclient + cp ./src/libircclient-1.9/src/libircclient.a ./src -loperIRCLogBot: loperIRCLogBot.c +loperIRCLogBot: ./src/$(APP_NAME).c $(MKDIR_P) ./bin -# $(CC) $(CFLAGS) loperIRCLogBot.c -o ./bin/loperIRCLogBot - $(CC) -std=gnu89 loperIRCLogBot.c libircclient.a -o ./bin/loperIRCLogBot +# $(CC) $(CFLAGS) $(APP_NAME).c -o ./bin/loperIRCLogBot + $(CC) -std=gnu89 ./src/$(APP_NAME).c ./src/libircclient.a -o ./bin/$(APP_NAME) clean: - rm -rf ./bin/*.o ./bin/loperIRCLogBot ./libircclient libircclient.a ./libircclient-1.9/src/libircclient.o ./libircclient-1.9/src/libircclient.a ./libircclient-1.9/src/config.h ./libircclient-1.9/src/Makefile + rm -rf ./bin/*.o \ + ./bin/loperIRCLogBot \ + ./src/libircclient \ + ./src/libircclient.a \ + ./src/libircclient-1.9/src/libircclient.o \ + ./src/libircclient-1.9/src/libircclient.a \ + ./src/libircclient-1.9/src/config.h \ + ./src/libircclient-1.9/src/Makefile +install: + install ./bin/loperIRCLogBot /usr/bin + $(MKDIR_P) /etc/$(APP_NAME) +ifeq ($(SYSTEMD_DETECT),'systemd') + cp ./src/files/loperIRCLogBot.service /etc/systemd/system/loperIRCLogBot.service +else + @echo "* Not a systemD distro. Skipping unit installation." +endif + +uninstall: + rm /usr/bin/loperIRCLogBot + rmdir /etc/$(APP_NAME) +ifeq ($(SYSTEMD_DETECT),'systemd') + rm -rf /etc/systemd/system/loperIRCLogBot.service +endif diff --git a/README b/README index f4898dd..9ea8f2f 100644 --- a/README +++ b/README @@ -1,40 +1,47 @@ -README that actually FAQ. +# loperIRCLogBot -What is it about? loperIRCLogBot is an IRC logging bot made for writing log-files. It could connect to one server and log one channel. -When someone says bot's name at the chat, the URL to logs could be published. +When someone says bot's name at the chat, the URL to logs web-storage could be published (or any message defined in configuration file). -Is it works for Windows™? -Nope +## Description -And if I compile it for Windows™? -It won't. +Works for linux. Need to be tested on other UNIX-like OS. -OS X? BSD? -I don't know. Give a try, let me know. +Key feachures and limitations: +* Could work as a daemon. +* Store configuration file in current folder (./bot.conf) or on /etc/loperIRCLogBot/bot.conf +* Only one channel and server supported for now. +* User can define folder to store files. +* Reconnect in ~6 minutes. Maybe earlier. +* Dumb flood-control +* Authorization only as: /nickserv IDENTIFY [password] -How to build? -Type 'make' +# License -It doesn't work and you don't provide ./configure, what should I do? Why is it happening? -Change Makfile and ./files/Makefile. They're simple as hell. I don't know much about ./configure, so there is no such option. Sorry. +Source code spreads under the GNU General Public License v.3. You can find it in LICENSE file or just visit www.gnu.org (it should be there for sure). +It also uses libircclient writted by George Yunaev, that is stored at ./src/libircclient-1.9. Libircclient is licensed under Lesser General Public License version 3 or higher. -I see some warnings during compilation. Is it ok? -Yeah, I hope so. I also saw them. When I find the time, I'll do something with this. +## Build & Deploy -Where is the executable? Where should I look for this and how to start? -$ ./bin/loperIRCLogBot +``` +$ make +# sudo make install +``` +# Uninstall +``` +make uninstall +``` -What about license? -Source code, which is actually 'loperIRCLogBot.c' file spreads under the GNU General Public License v.3 license. You can find it in LICENSE file or just visit www.gnu.org (it should be there for sure). It also uses libircclient writted by George Yunaev. Libircclient is licensed under Lesser General Public License version 3 or higher. +NOTES: +I believe you could change Makefile to let this app work with libircclien as a shared library. Now it's statically linked. +If you have bot.conf file at /etc/loperIRCLogBot folder it won't be deleted. So remember to delete it manually if needed. -Is it possible to let this app work with shared libraries of the libircclient that I already have in my distro? -Yes! Will update Makefile sooner or later. +## Configuration -Where is the application configuration should be set? How? -At the /etc/loperIRCLogBot/bot.conf OR ./bin/bot.conf file. You could generate template by passing -g option: './loperIRCLogBot -g'. +Application settings should be set on /etc/loperIRCLogBot/bot.conf OR ./bin/bot.conf file. You could generate template by passing -g option: './loperIRCLogBot -g'. Configuration file contains 15 lines, so make sure that you didn't define any sensetive information below these 15 lines. Here is an example: +``` server: irc.example.com channel: #channel port: 6667 @@ -47,31 +54,29 @@ logPath: 0 link: http://localhost:8080/logs/ reJoin: yes floodTimeOut: 10 - -'server' should be set as described. NO "irc://" or stuff like this allowed, no slashes and backslashes. -'channel' is the channel to log. Should be started by '#' symbol -'port' is server port. -'nick' is nick. Restricted by 'maxNickLength'. It means, that your nick shouldn't be greater then 'maxNickLength'. -'username' is username that defined as second parameter at your nick-on-server. Like nick!~[USERNAME]@ip_adress. -'realname' is realname. Don't ask, just set here something, ok? -'password' is a password for the nick. It goes to server as '/nickserv IDENTIFY [password]'. If '0' then no password needed, -'maxNickLength' is a maximum length of the nick. Various servers restrict the length of the nick. '30' should be enough. '128' is maximum, but I'm not sure that you have to set '128' in here, because if server doesn't support nicknames with such lenght, you could face to unforseen behavior in the application. -'logPath' is a path to 'logs' directory, where all your logs will be stored. If '0' then they will be stored at executable file folder. Pay attention, that logPath should be defined as full path. Not like ~/logs of ../../logs. -'link' is a link, that will be provided to anyone on the channel, who starts his/her message by your nick. If '0' then smile will be shown. -'reJoin'. If set to 'yes', then bot will be re-connect to channel after kick. If 'no' then it won't. -'floodTimeOut' is a time in seconds before answering on request sent to us. +``` -Is there any other options for this application? -Yes. When you start application, you could pass next options: - -d, --daemon Start application as daemon. Writes to /var/log/loperIRCLogBot.log and syslog. Stores PID number at /var/run/loperIRCLogBot.pid\n +Let's go deeper: + +* 'server' should be set as described. NO "irc://" or stuff like this allowed, no slashes and backslashes. +* 'channel' is the channel to log. Should be started by '#' symbol +* 'port' is server port. +* 'nick' is nick. Restricted by 'maxNickLength'. It means, that your nick shouldn't be greater then 'maxNickLength'. +* 'username' is username that defined as second parameter at your nick-on-server. Like nick!~[USERNAME]@ip_adress. +* 'realname' is realname. Don't ask, just set here something, ok? +* 'password' is a password for the nick. It goes to server as '/nickserv IDENTIFY [password]'. If '0' then no password needed. +* 'maxNickLength' is a maximum length of the nick. Various servers restrict the length of the nick. '30' should be enough. '128' is maximum, but I'm not sure that you have to set '128' in here, because if server doesn't support nicknames with such lenght, you could face to unforseen behavior inside the application. +* 'logPath' is a path to 'logs' directory, where all your logs will be stored. If '0' then they will be stored at executable file folder. Pay attention, that logPath should be defined as full path. Not like '~/logs' or '../../logs'. +* 'link' is a link, that will be provided to anyone on the channel, who starts his/her message by your nick. +* 'reJoin'. If set to 'yes', then bot will be re-connect to channel after kick. If 'no' then it won't. +* 'floodTimeOut' is a time in seconds before answering on next request sent to us. + +## Options & work modes + +When you start application, you could pass next options: + -d, --daemon Start application as daemon. Writes to /var/log/loperIRCLogBot.log and syslog. Stores PID number at /var/run/loperIRCLogBot.pid Also can interrupt correctly on SIGTERM, not so smooth on SIGINT and reopen log file directory on SIGHUP (used to handle logrotation). -g, --genconf Create configuration file template. Attention! It will overrite your existing configuration file. -s, --silent Silent mode. All program messages stores to the 'output.txt' file -v, --version Application version --help Show this message and terminate application - -Any chance to log more than one channel? -Nope. - -If connection is lost, could this bot re-connect? When he will do it? -In ~6 minutes. Maybe earlier. diff --git a/bin/loperIRCLogBot b/bin/loperIRCLogBot deleted file mode 100755 index 50df9d8..0000000 Binary files a/bin/loperIRCLogBot and /dev/null differ diff --git a/daemon.c b/src/daemon.c similarity index 100% rename from daemon.c rename to src/daemon.c diff --git a/defined_values.h b/src/defined_values.h similarity index 100% rename from defined_values.h rename to src/defined_values.h diff --git a/files/Makefile b/src/files/Makefile similarity index 100% rename from files/Makefile rename to src/files/Makefile diff --git a/files/config.h b/src/files/config.h similarity index 100% rename from files/config.h rename to src/files/config.h diff --git a/src/files/loperIRCLogBot.service b/src/files/loperIRCLogBot.service new file mode 100644 index 0000000..fb1d701 --- /dev/null +++ b/src/files/loperIRCLogBot.service @@ -0,0 +1,18 @@ +[Unit] +Description=IRC log bot +After=syslog.target network.target + +[Service] +Type=forking +PIDFile=/var/run/loperIRCLogBot.pid +OOMScoreAdjust=-100 +TimeoutSec=300 +Restart=always + +ExecStart=/usr/bin/loperIRCLogBot -d +ExecReload=/bin/kill -TERM $PIDFile && /usr/bin/loperIRCLogBot -d +ExecStop=/bin/kill -TERM $PIDFile + +[Install] +WantedBy=multi-user.target + diff --git a/libircclient-1.9/Changelog b/src/libircclient-1.9/Changelog similarity index 100% rename from libircclient-1.9/Changelog rename to src/libircclient-1.9/Changelog diff --git a/libircclient-1.9/Doxyfile b/src/libircclient-1.9/Doxyfile similarity index 100% rename from libircclient-1.9/Doxyfile rename to src/libircclient-1.9/Doxyfile diff --git a/libircclient-1.9/LICENSE b/src/libircclient-1.9/LICENSE similarity index 100% rename from libircclient-1.9/LICENSE rename to src/libircclient-1.9/LICENSE diff --git a/libircclient-1.9/Makefile b/src/libircclient-1.9/Makefile similarity index 100% rename from libircclient-1.9/Makefile rename to src/libircclient-1.9/Makefile diff --git a/libircclient-1.9/README b/src/libircclient-1.9/README similarity index 100% rename from libircclient-1.9/README rename to src/libircclient-1.9/README diff --git a/libircclient-1.9/THANKS b/src/libircclient-1.9/THANKS similarity index 100% rename from libircclient-1.9/THANKS rename to src/libircclient-1.9/THANKS diff --git a/libircclient-1.9/build-release.sh b/src/libircclient-1.9/build-release.sh similarity index 100% rename from libircclient-1.9/build-release.sh rename to src/libircclient-1.9/build-release.sh diff --git a/libircclient-1.9/cocoa/Classes/DDInvocationGrabber.h b/src/libircclient-1.9/cocoa/Classes/DDInvocationGrabber.h similarity index 100% rename from libircclient-1.9/cocoa/Classes/DDInvocationGrabber.h rename to src/libircclient-1.9/cocoa/Classes/DDInvocationGrabber.h diff --git a/libircclient-1.9/cocoa/Classes/DDInvocationGrabber.m b/src/libircclient-1.9/cocoa/Classes/DDInvocationGrabber.m similarity index 100% rename from libircclient-1.9/cocoa/Classes/DDInvocationGrabber.m rename to src/libircclient-1.9/cocoa/Classes/DDInvocationGrabber.m diff --git a/libircclient-1.9/cocoa/Classes/IRCClientChannel.h b/src/libircclient-1.9/cocoa/Classes/IRCClientChannel.h similarity index 100% rename from libircclient-1.9/cocoa/Classes/IRCClientChannel.h rename to src/libircclient-1.9/cocoa/Classes/IRCClientChannel.h diff --git a/libircclient-1.9/cocoa/Classes/IRCClientChannel.m b/src/libircclient-1.9/cocoa/Classes/IRCClientChannel.m similarity index 100% rename from libircclient-1.9/cocoa/Classes/IRCClientChannel.m rename to src/libircclient-1.9/cocoa/Classes/IRCClientChannel.m diff --git a/libircclient-1.9/cocoa/Classes/IRCClientChannelDelegate.h b/src/libircclient-1.9/cocoa/Classes/IRCClientChannelDelegate.h similarity index 100% rename from libircclient-1.9/cocoa/Classes/IRCClientChannelDelegate.h rename to src/libircclient-1.9/cocoa/Classes/IRCClientChannelDelegate.h diff --git a/libircclient-1.9/cocoa/Classes/IRCClientSession.h b/src/libircclient-1.9/cocoa/Classes/IRCClientSession.h similarity index 100% rename from libircclient-1.9/cocoa/Classes/IRCClientSession.h rename to src/libircclient-1.9/cocoa/Classes/IRCClientSession.h diff --git a/libircclient-1.9/cocoa/Classes/IRCClientSession.m b/src/libircclient-1.9/cocoa/Classes/IRCClientSession.m similarity index 100% rename from libircclient-1.9/cocoa/Classes/IRCClientSession.m rename to src/libircclient-1.9/cocoa/Classes/IRCClientSession.m diff --git a/libircclient-1.9/cocoa/Classes/IRCClientSessionDelegate.h b/src/libircclient-1.9/cocoa/Classes/IRCClientSessionDelegate.h similarity index 100% rename from libircclient-1.9/cocoa/Classes/IRCClientSessionDelegate.h rename to src/libircclient-1.9/cocoa/Classes/IRCClientSessionDelegate.h diff --git a/libircclient-1.9/cocoa/Classes/NSObject+DDExtensions.h b/src/libircclient-1.9/cocoa/Classes/NSObject+DDExtensions.h similarity index 100% rename from libircclient-1.9/cocoa/Classes/NSObject+DDExtensions.h rename to src/libircclient-1.9/cocoa/Classes/NSObject+DDExtensions.h diff --git a/libircclient-1.9/cocoa/Classes/NSObject+DDExtensions.m b/src/libircclient-1.9/cocoa/Classes/NSObject+DDExtensions.m similarity index 100% rename from libircclient-1.9/cocoa/Classes/NSObject+DDExtensions.m rename to src/libircclient-1.9/cocoa/Classes/NSObject+DDExtensions.m diff --git a/libircclient-1.9/cocoa/Doxyfile b/src/libircclient-1.9/cocoa/Doxyfile similarity index 100% rename from libircclient-1.9/cocoa/Doxyfile rename to src/libircclient-1.9/cocoa/Doxyfile diff --git a/libircclient-1.9/cocoa/English.lproj/InfoPlist.strings b/src/libircclient-1.9/cocoa/English.lproj/InfoPlist.strings similarity index 100% rename from libircclient-1.9/cocoa/English.lproj/InfoPlist.strings rename to src/libircclient-1.9/cocoa/English.lproj/InfoPlist.strings diff --git a/libircclient-1.9/cocoa/IRCClient.xcodeproj/TemplateIcon.icns b/src/libircclient-1.9/cocoa/IRCClient.xcodeproj/TemplateIcon.icns similarity index 100% rename from libircclient-1.9/cocoa/IRCClient.xcodeproj/TemplateIcon.icns rename to src/libircclient-1.9/cocoa/IRCClient.xcodeproj/TemplateIcon.icns diff --git a/libircclient-1.9/cocoa/IRCClient.xcodeproj/project.pbxproj b/src/libircclient-1.9/cocoa/IRCClient.xcodeproj/project.pbxproj similarity index 100% rename from libircclient-1.9/cocoa/IRCClient.xcodeproj/project.pbxproj rename to src/libircclient-1.9/cocoa/IRCClient.xcodeproj/project.pbxproj diff --git a/libircclient-1.9/cocoa/IRCClient_Prefix.pch b/src/libircclient-1.9/cocoa/IRCClient_Prefix.pch similarity index 100% rename from libircclient-1.9/cocoa/IRCClient_Prefix.pch rename to src/libircclient-1.9/cocoa/IRCClient_Prefix.pch diff --git a/libircclient-1.9/cocoa/Info.plist b/src/libircclient-1.9/cocoa/Info.plist similarity index 100% rename from libircclient-1.9/cocoa/Info.plist rename to src/libircclient-1.9/cocoa/Info.plist diff --git a/libircclient-1.9/cocoa/LICENSE b/src/libircclient-1.9/cocoa/LICENSE similarity index 100% rename from libircclient-1.9/cocoa/LICENSE rename to src/libircclient-1.9/cocoa/LICENSE diff --git a/libircclient-1.9/cocoa/README b/src/libircclient-1.9/cocoa/README similarity index 100% rename from libircclient-1.9/cocoa/README rename to src/libircclient-1.9/cocoa/README diff --git a/libircclient-1.9/cocoa/doc/html/_d_d_invocation_grabber_8h-source.html b/src/libircclient-1.9/cocoa/doc/html/_d_d_invocation_grabber_8h-source.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/_d_d_invocation_grabber_8h-source.html rename to src/libircclient-1.9/cocoa/doc/html/_d_d_invocation_grabber_8h-source.html diff --git a/libircclient-1.9/cocoa/doc/html/_i_r_c_client_channel_8h-source.html b/src/libircclient-1.9/cocoa/doc/html/_i_r_c_client_channel_8h-source.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/_i_r_c_client_channel_8h-source.html rename to src/libircclient-1.9/cocoa/doc/html/_i_r_c_client_channel_8h-source.html diff --git a/libircclient-1.9/cocoa/doc/html/_i_r_c_client_channel_8h.html b/src/libircclient-1.9/cocoa/doc/html/_i_r_c_client_channel_8h.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/_i_r_c_client_channel_8h.html rename to src/libircclient-1.9/cocoa/doc/html/_i_r_c_client_channel_8h.html diff --git a/libircclient-1.9/cocoa/doc/html/_i_r_c_client_channel_delegate_8h-source.html b/src/libircclient-1.9/cocoa/doc/html/_i_r_c_client_channel_delegate_8h-source.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/_i_r_c_client_channel_delegate_8h-source.html rename to src/libircclient-1.9/cocoa/doc/html/_i_r_c_client_channel_delegate_8h-source.html diff --git a/libircclient-1.9/cocoa/doc/html/_i_r_c_client_channel_delegate_8h.html b/src/libircclient-1.9/cocoa/doc/html/_i_r_c_client_channel_delegate_8h.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/_i_r_c_client_channel_delegate_8h.html rename to src/libircclient-1.9/cocoa/doc/html/_i_r_c_client_channel_delegate_8h.html diff --git a/libircclient-1.9/cocoa/doc/html/_i_r_c_client_session_8h-source.html b/src/libircclient-1.9/cocoa/doc/html/_i_r_c_client_session_8h-source.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/_i_r_c_client_session_8h-source.html rename to src/libircclient-1.9/cocoa/doc/html/_i_r_c_client_session_8h-source.html diff --git a/libircclient-1.9/cocoa/doc/html/_i_r_c_client_session_8h.html b/src/libircclient-1.9/cocoa/doc/html/_i_r_c_client_session_8h.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/_i_r_c_client_session_8h.html rename to src/libircclient-1.9/cocoa/doc/html/_i_r_c_client_session_8h.html diff --git a/libircclient-1.9/cocoa/doc/html/_i_r_c_client_session_delegate_8h-source.html b/src/libircclient-1.9/cocoa/doc/html/_i_r_c_client_session_delegate_8h-source.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/_i_r_c_client_session_delegate_8h-source.html rename to src/libircclient-1.9/cocoa/doc/html/_i_r_c_client_session_delegate_8h-source.html diff --git a/libircclient-1.9/cocoa/doc/html/_n_s_object_09_d_d_extensions_8h-source.html b/src/libircclient-1.9/cocoa/doc/html/_n_s_object_09_d_d_extensions_8h-source.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/_n_s_object_09_d_d_extensions_8h-source.html rename to src/libircclient-1.9/cocoa/doc/html/_n_s_object_09_d_d_extensions_8h-source.html diff --git a/libircclient-1.9/cocoa/doc/html/annotated.html b/src/libircclient-1.9/cocoa/doc/html/annotated.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/annotated.html rename to src/libircclient-1.9/cocoa/doc/html/annotated.html diff --git a/libircclient-1.9/cocoa/doc/html/class_i_r_c_client_channel-members.html b/src/libircclient-1.9/cocoa/doc/html/class_i_r_c_client_channel-members.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/class_i_r_c_client_channel-members.html rename to src/libircclient-1.9/cocoa/doc/html/class_i_r_c_client_channel-members.html diff --git a/libircclient-1.9/cocoa/doc/html/class_i_r_c_client_session-members.html b/src/libircclient-1.9/cocoa/doc/html/class_i_r_c_client_session-members.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/class_i_r_c_client_session-members.html rename to src/libircclient-1.9/cocoa/doc/html/class_i_r_c_client_session-members.html diff --git a/libircclient-1.9/cocoa/doc/html/class_n_s_object_07_i_r_c_client_channel_delegate_08-members.html b/src/libircclient-1.9/cocoa/doc/html/class_n_s_object_07_i_r_c_client_channel_delegate_08-members.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/class_n_s_object_07_i_r_c_client_channel_delegate_08-members.html rename to src/libircclient-1.9/cocoa/doc/html/class_n_s_object_07_i_r_c_client_channel_delegate_08-members.html diff --git a/libircclient-1.9/cocoa/doc/html/class_n_s_object_07_i_r_c_client_session_delegate_08-members.html b/src/libircclient-1.9/cocoa/doc/html/class_n_s_object_07_i_r_c_client_session_delegate_08-members.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/class_n_s_object_07_i_r_c_client_session_delegate_08-members.html rename to src/libircclient-1.9/cocoa/doc/html/class_n_s_object_07_i_r_c_client_session_delegate_08-members.html diff --git a/libircclient-1.9/cocoa/doc/html/classes.html b/src/libircclient-1.9/cocoa/doc/html/classes.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/classes.html rename to src/libircclient-1.9/cocoa/doc/html/classes.html diff --git a/libircclient-1.9/cocoa/doc/html/doxygen.css b/src/libircclient-1.9/cocoa/doc/html/doxygen.css similarity index 100% rename from libircclient-1.9/cocoa/doc/html/doxygen.css rename to src/libircclient-1.9/cocoa/doc/html/doxygen.css diff --git a/libircclient-1.9/cocoa/doc/html/doxygen.png b/src/libircclient-1.9/cocoa/doc/html/doxygen.png similarity index 100% rename from libircclient-1.9/cocoa/doc/html/doxygen.png rename to src/libircclient-1.9/cocoa/doc/html/doxygen.png diff --git a/libircclient-1.9/cocoa/doc/html/files.html b/src/libircclient-1.9/cocoa/doc/html/files.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/files.html rename to src/libircclient-1.9/cocoa/doc/html/files.html diff --git a/libircclient-1.9/cocoa/doc/html/functions.html b/src/libircclient-1.9/cocoa/doc/html/functions.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/functions.html rename to src/libircclient-1.9/cocoa/doc/html/functions.html diff --git a/libircclient-1.9/cocoa/doc/html/functions_func.html b/src/libircclient-1.9/cocoa/doc/html/functions_func.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/functions_func.html rename to src/libircclient-1.9/cocoa/doc/html/functions_func.html diff --git a/libircclient-1.9/cocoa/doc/html/functions_prop.html b/src/libircclient-1.9/cocoa/doc/html/functions_prop.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/functions_prop.html rename to src/libircclient-1.9/cocoa/doc/html/functions_prop.html diff --git a/libircclient-1.9/cocoa/doc/html/hierarchy.html b/src/libircclient-1.9/cocoa/doc/html/hierarchy.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/hierarchy.html rename to src/libircclient-1.9/cocoa/doc/html/hierarchy.html diff --git a/libircclient-1.9/cocoa/doc/html/index.html b/src/libircclient-1.9/cocoa/doc/html/index.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/index.html rename to src/libircclient-1.9/cocoa/doc/html/index.html diff --git a/libircclient-1.9/cocoa/doc/html/interface_i_r_c_client_channel.html b/src/libircclient-1.9/cocoa/doc/html/interface_i_r_c_client_channel.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/interface_i_r_c_client_channel.html rename to src/libircclient-1.9/cocoa/doc/html/interface_i_r_c_client_channel.html diff --git a/libircclient-1.9/cocoa/doc/html/interface_i_r_c_client_channel.png b/src/libircclient-1.9/cocoa/doc/html/interface_i_r_c_client_channel.png similarity index 100% rename from libircclient-1.9/cocoa/doc/html/interface_i_r_c_client_channel.png rename to src/libircclient-1.9/cocoa/doc/html/interface_i_r_c_client_channel.png diff --git a/libircclient-1.9/cocoa/doc/html/interface_i_r_c_client_session.html b/src/libircclient-1.9/cocoa/doc/html/interface_i_r_c_client_session.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/interface_i_r_c_client_session.html rename to src/libircclient-1.9/cocoa/doc/html/interface_i_r_c_client_session.html diff --git a/libircclient-1.9/cocoa/doc/html/interface_i_r_c_client_session.png b/src/libircclient-1.9/cocoa/doc/html/interface_i_r_c_client_session.png similarity index 100% rename from libircclient-1.9/cocoa/doc/html/interface_i_r_c_client_session.png rename to src/libircclient-1.9/cocoa/doc/html/interface_i_r_c_client_session.png diff --git a/libircclient-1.9/cocoa/doc/html/interface_n_s_object_07_i_r_c_client_channel_delegate_08.html b/src/libircclient-1.9/cocoa/doc/html/interface_n_s_object_07_i_r_c_client_channel_delegate_08.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/interface_n_s_object_07_i_r_c_client_channel_delegate_08.html rename to src/libircclient-1.9/cocoa/doc/html/interface_n_s_object_07_i_r_c_client_channel_delegate_08.html diff --git a/libircclient-1.9/cocoa/doc/html/interface_n_s_object_07_i_r_c_client_session_delegate_08.html b/src/libircclient-1.9/cocoa/doc/html/interface_n_s_object_07_i_r_c_client_session_delegate_08.html similarity index 100% rename from libircclient-1.9/cocoa/doc/html/interface_n_s_object_07_i_r_c_client_session_delegate_08.html rename to src/libircclient-1.9/cocoa/doc/html/interface_n_s_object_07_i_r_c_client_session_delegate_08.html diff --git a/libircclient-1.9/cocoa/doc/html/tab_b.gif b/src/libircclient-1.9/cocoa/doc/html/tab_b.gif similarity index 100% rename from libircclient-1.9/cocoa/doc/html/tab_b.gif rename to src/libircclient-1.9/cocoa/doc/html/tab_b.gif diff --git a/libircclient-1.9/cocoa/doc/html/tab_l.gif b/src/libircclient-1.9/cocoa/doc/html/tab_l.gif similarity index 100% rename from libircclient-1.9/cocoa/doc/html/tab_l.gif rename to src/libircclient-1.9/cocoa/doc/html/tab_l.gif diff --git a/libircclient-1.9/cocoa/doc/html/tab_r.gif b/src/libircclient-1.9/cocoa/doc/html/tab_r.gif similarity index 100% rename from libircclient-1.9/cocoa/doc/html/tab_r.gif rename to src/libircclient-1.9/cocoa/doc/html/tab_r.gif diff --git a/libircclient-1.9/cocoa/doc/html/tabs.css b/src/libircclient-1.9/cocoa/doc/html/tabs.css similarity index 100% rename from libircclient-1.9/cocoa/doc/html/tabs.css rename to src/libircclient-1.9/cocoa/doc/html/tabs.css diff --git a/libircclient-1.9/configure b/src/libircclient-1.9/configure similarity index 100% rename from libircclient-1.9/configure rename to src/libircclient-1.9/configure diff --git a/libircclient-1.9/configure.in b/src/libircclient-1.9/configure.in similarity index 100% rename from libircclient-1.9/configure.in rename to src/libircclient-1.9/configure.in diff --git a/libircclient-1.9/doc/Makefile b/src/libircclient-1.9/doc/Makefile similarity index 100% rename from libircclient-1.9/doc/Makefile rename to src/libircclient-1.9/doc/Makefile diff --git a/libircclient-1.9/doc/conf.py b/src/libircclient-1.9/doc/conf.py similarity index 100% rename from libircclient-1.9/doc/conf.py rename to src/libircclient-1.9/doc/conf.py diff --git a/libircclient-1.9/doc/index.rst b/src/libircclient-1.9/doc/index.rst similarity index 100% rename from libircclient-1.9/doc/index.rst rename to src/libircclient-1.9/doc/index.rst diff --git a/libircclient-1.9/doc/make.bat b/src/libircclient-1.9/doc/make.bat similarity index 100% rename from libircclient-1.9/doc/make.bat rename to src/libircclient-1.9/doc/make.bat diff --git a/libircclient-1.9/doc/sources/API_reference_callbacks.rst b/src/libircclient-1.9/doc/sources/API_reference_callbacks.rst similarity index 100% rename from libircclient-1.9/doc/sources/API_reference_callbacks.rst rename to src/libircclient-1.9/doc/sources/API_reference_callbacks.rst diff --git a/libircclient-1.9/doc/sources/API_reference_constants.rst b/src/libircclient-1.9/doc/sources/API_reference_constants.rst similarity index 100% rename from libircclient-1.9/doc/sources/API_reference_constants.rst rename to src/libircclient-1.9/doc/sources/API_reference_constants.rst diff --git a/libircclient-1.9/doc/sources/API_reference_functions.rst b/src/libircclient-1.9/doc/sources/API_reference_functions.rst similarity index 100% rename from libircclient-1.9/doc/sources/API_reference_functions.rst rename to src/libircclient-1.9/doc/sources/API_reference_functions.rst diff --git a/libircclient-1.9/doc/sources/API_reference_types.rst b/src/libircclient-1.9/doc/sources/API_reference_types.rst similarity index 100% rename from libircclient-1.9/doc/sources/API_reference_types.rst rename to src/libircclient-1.9/doc/sources/API_reference_types.rst diff --git a/libircclient-1.9/doc/sources/Appendix_FAQ.rst b/src/libircclient-1.9/doc/sources/Appendix_FAQ.rst similarity index 100% rename from libircclient-1.9/doc/sources/Appendix_FAQ.rst rename to src/libircclient-1.9/doc/sources/Appendix_FAQ.rst diff --git a/libircclient-1.9/doc/sources/Appendix_LGPL.rst b/src/libircclient-1.9/doc/sources/Appendix_LGPL.rst similarity index 100% rename from libircclient-1.9/doc/sources/Appendix_LGPL.rst rename to src/libircclient-1.9/doc/sources/Appendix_LGPL.rst diff --git a/libircclient-1.9/doc/sources/Introduction.rst b/src/libircclient-1.9/doc/sources/Introduction.rst similarity index 100% rename from libircclient-1.9/doc/sources/Introduction.rst rename to src/libircclient-1.9/doc/sources/Introduction.rst diff --git a/libircclient-1.9/doc/sources/Writing_code.rst b/src/libircclient-1.9/doc/sources/Writing_code.rst similarity index 100% rename from libircclient-1.9/doc/sources/Writing_code.rst rename to src/libircclient-1.9/doc/sources/Writing_code.rst diff --git a/libircclient-1.9/examples/Makefile.in b/src/libircclient-1.9/examples/Makefile.in similarity index 100% rename from libircclient-1.9/examples/Makefile.in rename to src/libircclient-1.9/examples/Makefile.in diff --git a/libircclient-1.9/examples/censor.cpp b/src/libircclient-1.9/examples/censor.cpp similarity index 100% rename from libircclient-1.9/examples/censor.cpp rename to src/libircclient-1.9/examples/censor.cpp diff --git a/libircclient-1.9/examples/colors.cpp b/src/libircclient-1.9/examples/colors.cpp similarity index 100% rename from libircclient-1.9/examples/colors.cpp rename to src/libircclient-1.9/examples/colors.cpp diff --git a/libircclient-1.9/examples/ircftp.cpp b/src/libircclient-1.9/examples/ircftp.cpp similarity index 100% rename from libircclient-1.9/examples/ircftp.cpp rename to src/libircclient-1.9/examples/ircftp.cpp diff --git a/libircclient-1.9/examples/irctest.c b/src/libircclient-1.9/examples/irctest.c similarity index 100% rename from libircclient-1.9/examples/irctest.c rename to src/libircclient-1.9/examples/irctest.c diff --git a/libircclient-1.9/examples/spammer.c b/src/libircclient-1.9/examples/spammer.c similarity index 100% rename from libircclient-1.9/examples/spammer.c rename to src/libircclient-1.9/examples/spammer.c diff --git a/libircclient-1.9/include/libirc_errors.h b/src/libircclient-1.9/include/libirc_errors.h similarity index 100% rename from libircclient-1.9/include/libirc_errors.h rename to src/libircclient-1.9/include/libirc_errors.h diff --git a/libircclient-1.9/include/libirc_events.h b/src/libircclient-1.9/include/libirc_events.h similarity index 100% rename from libircclient-1.9/include/libirc_events.h rename to src/libircclient-1.9/include/libirc_events.h diff --git a/libircclient-1.9/include/libirc_options.h b/src/libircclient-1.9/include/libirc_options.h similarity index 100% rename from libircclient-1.9/include/libirc_options.h rename to src/libircclient-1.9/include/libirc_options.h diff --git a/libircclient-1.9/include/libirc_rfcnumeric.h b/src/libircclient-1.9/include/libirc_rfcnumeric.h similarity index 100% rename from libircclient-1.9/include/libirc_rfcnumeric.h rename to src/libircclient-1.9/include/libirc_rfcnumeric.h diff --git a/libircclient-1.9/include/libircclient.h b/src/libircclient-1.9/include/libircclient.h similarity index 100% rename from libircclient-1.9/include/libircclient.h rename to src/libircclient-1.9/include/libircclient.h diff --git a/libircclient-1.9/man/libircclient.1 b/src/libircclient-1.9/man/libircclient.1 similarity index 100% rename from libircclient-1.9/man/libircclient.1 rename to src/libircclient-1.9/man/libircclient.1 diff --git a/libircclient-1.9/src/Makefile.in b/src/libircclient-1.9/src/Makefile.in similarity index 100% rename from libircclient-1.9/src/Makefile.in rename to src/libircclient-1.9/src/Makefile.in diff --git a/libircclient-1.9/src/colors.c b/src/libircclient-1.9/src/colors.c similarity index 100% rename from libircclient-1.9/src/colors.c rename to src/libircclient-1.9/src/colors.c diff --git a/libircclient-1.9/src/config.h.in b/src/libircclient-1.9/src/config.h.in similarity index 100% rename from libircclient-1.9/src/config.h.in rename to src/libircclient-1.9/src/config.h.in diff --git a/libircclient-1.9/src/dcc.c b/src/libircclient-1.9/src/dcc.c similarity index 100% rename from libircclient-1.9/src/dcc.c rename to src/libircclient-1.9/src/dcc.c diff --git a/libircclient-1.9/src/dcc.h b/src/libircclient-1.9/src/dcc.h similarity index 100% rename from libircclient-1.9/src/dcc.h rename to src/libircclient-1.9/src/dcc.h diff --git a/libircclient-1.9/src/errors.c b/src/libircclient-1.9/src/errors.c similarity index 100% rename from libircclient-1.9/src/errors.c rename to src/libircclient-1.9/src/errors.c diff --git a/libircclient-1.9/src/libircclient.c b/src/libircclient-1.9/src/libircclient.c similarity index 100% rename from libircclient-1.9/src/libircclient.c rename to src/libircclient-1.9/src/libircclient.c diff --git a/libircclient-1.9/src/libircclient.def b/src/libircclient-1.9/src/libircclient.def similarity index 100% rename from libircclient-1.9/src/libircclient.def rename to src/libircclient-1.9/src/libircclient.def diff --git a/src/libircclient-1.9/src/loperIRCLogBot.service b/src/libircclient-1.9/src/loperIRCLogBot.service new file mode 100644 index 0000000..fb1d701 --- /dev/null +++ b/src/libircclient-1.9/src/loperIRCLogBot.service @@ -0,0 +1,18 @@ +[Unit] +Description=IRC log bot +After=syslog.target network.target + +[Service] +Type=forking +PIDFile=/var/run/loperIRCLogBot.pid +OOMScoreAdjust=-100 +TimeoutSec=300 +Restart=always + +ExecStart=/usr/bin/loperIRCLogBot -d +ExecReload=/bin/kill -TERM $PIDFile && /usr/bin/loperIRCLogBot -d +ExecStop=/bin/kill -TERM $PIDFile + +[Install] +WantedBy=multi-user.target + diff --git a/libircclient-1.9/src/params.h b/src/libircclient-1.9/src/params.h similarity index 100% rename from libircclient-1.9/src/params.h rename to src/libircclient-1.9/src/params.h diff --git a/libircclient-1.9/src/portable.c b/src/libircclient-1.9/src/portable.c similarity index 100% rename from libircclient-1.9/src/portable.c rename to src/libircclient-1.9/src/portable.c diff --git a/libircclient-1.9/src/session.h b/src/libircclient-1.9/src/session.h similarity index 100% rename from libircclient-1.9/src/session.h rename to src/libircclient-1.9/src/session.h diff --git a/libircclient-1.9/src/sockets.c b/src/libircclient-1.9/src/sockets.c similarity index 100% rename from libircclient-1.9/src/sockets.c rename to src/libircclient-1.9/src/sockets.c diff --git a/libircclient-1.9/src/ssl.c b/src/libircclient-1.9/src/ssl.c similarity index 100% rename from libircclient-1.9/src/ssl.c rename to src/libircclient-1.9/src/ssl.c diff --git a/libircclient-1.9/src/utils.c b/src/libircclient-1.9/src/utils.c similarity index 100% rename from libircclient-1.9/src/utils.c rename to src/libircclient-1.9/src/utils.c diff --git a/loperIRCLogBot.c b/src/loperIRCLogBot.c similarity index 100% rename from loperIRCLogBot.c rename to src/loperIRCLogBot.c