summaryrefslogtreecommitdiff
path: root/irc/ratbox-services/files
diff options
context:
space:
mode:
Diffstat (limited to 'irc/ratbox-services/files')
-rw-r--r--irc/ratbox-services/files/patch-Makefile.in29
-rw-r--r--irc/ratbox-services/files/patch-help_Makefile.in15
-rw-r--r--irc/ratbox-services/files/patch-include_config.h17
-rw-r--r--irc/ratbox-services/files/pkg-install.in126
-rw-r--r--irc/ratbox-services/files/pkg-message.in12
-rw-r--r--irc/ratbox-services/files/ratbox-services.sh.in35
6 files changed, 234 insertions, 0 deletions
diff --git a/irc/ratbox-services/files/patch-Makefile.in b/irc/ratbox-services/files/patch-Makefile.in
new file mode 100644
index 000000000000..d5bbdf94849a
--- /dev/null
+++ b/irc/ratbox-services/files/patch-Makefile.in
@@ -0,0 +1,29 @@
+--- Makefile.in.orig Wed May 18 00:33:18 2005
++++ Makefile.in Sat Jan 28 22:58:12 2006
+@@ -6,7 +6,7 @@
+ LIBS=@LIBS@
+ LDFLAGS=@LDFLAGS@
+
+-SUBDIRS=@SQLITE_SUBDIR@ src help
++SUBDIRS=src help
+
+ prefix=@prefix@
+ exec_prefix=@prefix@
+@@ -36,17 +36,6 @@
+ done
+
+ install: build
+- $(INSTALL) -m 750 -d $(DESTDIR)$(prefix)
+- $(INSTALL) -m 750 -d $(DESTDIR)$(bindir)
+- $(INSTALL) -m 750 -d $(DESTDIR)$(sbindir)
+- $(INSTALL) -m 750 -d $(DESTDIR)$(sysconfdir)
+- $(INSTALL) -m 750 -d $(DESTDIR)$(logdir)
+- $(INSTALL) -m 750 -d $(DESTDIR)$(rundir)
+- $(INSTALL) -m 750 -d $(DESTDIR)$(helpdir)
+- $(INSTALL) -m 750 tools/ircd-shortcut.pl $(DESTDIR)$(bindir)
+- $(INSTALL) -m 750 src/$(BIN) $(DESTDIR)$(sbindir)
+- $(INSTALL) -m 640 doc/example.conf $(DESTDIR)$(sysconfdir)
+- $(INSTALL) -m 640 doc/schema.txt $(DESTDIR)$(sysconfdir)
+ @for i in $(SUBDIRS); do \
+ echo "install -> $$i"; \
+ cd $$i; \
diff --git a/irc/ratbox-services/files/patch-help_Makefile.in b/irc/ratbox-services/files/patch-help_Makefile.in
new file mode 100644
index 000000000000..d49a8a82ba6f
--- /dev/null
+++ b/irc/ratbox-services/files/patch-help_Makefile.in
@@ -0,0 +1,15 @@
+--- help/Makefile.in.orig Wed Jun 15 15:21:39 2005
++++ help/Makefile.in Sat Jan 28 23:15:11 2006
+@@ -10,10 +10,10 @@
+ SUBDIRS=alis main operbot chanserv userserv jupeserv operserv nickserv global banserv
+
+ install:
+- $(INSTALL) -m 750 -d $(DESTDIR)$(helpdir)
++ $(INSTALL) -d $(DESTDIR)$(helpdir)
+
+ @for i in $(SUBDIRS); do \
+- $(INSTALL) -m 750 -d $(DESTDIR)$(helpdir)/$$i; \
++ $(INSTALL) -d $(DESTDIR)$(helpdir)/$$i; \
+ for j in $$i/*; do \
+ if [ -f $$j ]; then \
+ $(INSTALL_DATA) $$j $(DESTDIR)$(helpdir)/$$i; \
diff --git a/irc/ratbox-services/files/patch-include_config.h b/irc/ratbox-services/files/patch-include_config.h
new file mode 100644
index 000000000000..95134485d26c
--- /dev/null
+++ b/irc/ratbox-services/files/patch-include_config.h
@@ -0,0 +1,17 @@
+--- include/config.h.orig Tue Aug 23 20:41:19 2005
++++ include/config.h Sat Jan 28 22:08:14 2006
+@@ -5,11 +5,13 @@
+ * IMPORTANT: if you alter the directories these files go to,
+ * you must create those paths yourself.
+ */
++#define DBDIR "%%DBDIR%%"
++
+ #define CONF_PATH SYSCONFDIR "/ratbox-services.conf"
+ #define PID_PATH RUNDIR "/ratbox-services.pid"
+ #define LOG_PATH LOGDIR "/ratbox-services.log"
+ #define HELP_PATH HELPDIR
+-#define DB_PATH SYSCONFDIR "/ratbox-services.db"
++#define DB_PATH DBDIR "/ratbox-services.db"
+
+ /* SMALL_NETWORK
+ * If your network is fairly small, enable this to save some memory.
diff --git a/irc/ratbox-services/files/pkg-install.in b/irc/ratbox-services/files/pkg-install.in
new file mode 100644
index 000000000000..5aec496c1d8e
--- /dev/null
+++ b/irc/ratbox-services/files/pkg-install.in
@@ -0,0 +1,126 @@
+#!/bin/sh
+#
+# Adapted from irc/ircd-hybrid's script
+#
+
+ask() {
+ local question default answer
+
+ question=$1
+ default=$2
+ if [ -z "${PACKAGE_BUILDING}" ]; then
+ read -p "${question} [${default}]? " answer
+ fi
+ if [ x${answer} = x ]; then
+ answer=${default}
+ fi
+ echo ${answer}
+}
+
+yesno() {
+ local dflt question answer
+
+ question=$1
+ dflt=$2
+ while :; do
+ answer=$(ask "${question}" "${dflt}")
+ case "${answer}" in
+ [Yy]*) return 0;;
+ [Nn]*) return 1;;
+ esac
+ echo "Please answer yes or no."
+ done
+}
+
+#-----------------------------------------------------------------------
+if [ "x$2" = "xPRE-INSTALL" ]; then
+#-----------------------------------------------------------------------
+
+if which -s pw ; then
+ :
+else
+ cat <<EOF
+Your system does not include the "pw" utility. You should upgrade
+to a newer version of FreeBSD. Without "pw" this script will not
+run.
+EOF
+ exit 1
+fi
+
+echo ""
+if pw groupshow ircservices 2> /dev/null ; then
+ echo "You already have a group \"ircservices\", so I will use it."
+else
+ if pw groupshow 73 2> /dev/null ; then
+ echo "You already have a gid \"73\". Please create a user \"ircservices\""
+ echo "with a default group of \"ircservices\"."
+ exit 1
+ fi
+ echo "You need a group \"ircservices\"."
+ if which -s pw && yesno "Would you like me to create it" y; then
+ pw groupadd ircservices -g 73 || exit
+ echo "Done."
+ else
+ echo "Please create it, and try again."
+ if ! pw usershow ircservices 2> /dev/null ; then
+ echo "While you're at it, please create a user \"ircservices\""
+ echo 'too, with a default group of "ircservices".'
+ fi
+ exit 1
+ fi
+fi
+
+if pw usershow ircservices 2> /dev/null ; then
+ echo "You already have a user \"ircservices\", so I will use it."
+else
+ if pw usershow 73 2> /dev/null ; then
+ echo "You already have a uid \"73\". Please create a user \"irc
+d\""
+ echo "with a default group of \"ircservices\"."
+ exit 1
+ fi
+ echo "You need a user \"ircservices\"."
+ if which -s pw && yesno "Would you like me to create it" y; then
+ pw useradd ircservices -g ircservices -u 73 -h - -d /nonexistent \
+ -s /nonexistent -c "IRC services" || exit
+ echo "Done."
+ else
+ echo "Please create it, and try again."
+ exit 1
+ fi
+fi
+
+#-----------------------------------------------------------------------
+elif [ "x$2" = "xPOST-INSTALL" ]; then
+#-----------------------------------------------------------------------
+
+lf="%%LOGDIR%%/ratbox-services.log"
+
+touch $lf \
+&& chown ircservices:ircservices $lf \
+&& chmod 640 $lf
+
+mkdir -p %%DBDIR%%
+
+db="%%DBDIR%%/ratbox-services.db"
+
+if [ ! -f $db ]; then
+ echo "Initialising services database..."
+ %%LOCALBASE%%/bin/sqlite $db < %%DATADIR%%/schema.sql
+fi
+
+# Secure permissions if we think this is a fresh install
+
+if [ ! -f ${PKG_PREFIX}/ratbox-services.conf ]; then
+ chown -R ircservices:ircservices %%DBDIR%%
+ chown ircservices:ircservices ${PKG_PREFIX}/etc/ratbox-services.conf.sample
+ chmod 750 %%DBDIR%%
+ chmod 640 $db
+ chmod 640 ${PKG_PREFIX}/etc/ratbox-services.conf.sample
+fi
+
+#-----------------------------------------------------------------------
+fi
+#-----------------------------------------------------------------------
+
+exit 0
diff --git a/irc/ratbox-services/files/pkg-message.in b/irc/ratbox-services/files/pkg-message.in
new file mode 100644
index 000000000000..197977db07e5
--- /dev/null
+++ b/irc/ratbox-services/files/pkg-message.in
@@ -0,0 +1,12 @@
+------------------------------------------------------------------------
+ratbox-services has been successfully installed.
+
+You should now copy %%PREFIX%%/etc/ratbox-services.conf.sample to
+%%PREFIX%%/etc/ratbox-services.conf, and edit it as per the ratbox-services
+documentation. This file is required to start the server.
+
+Once you have added ratbox_services_enable="YES" to /etc/rc.conf, the
+server can be started by running:
+
+ %%PREFIX%%/etc/rc.d/ratbox-services.sh start
+------------------------------------------------------------------------
diff --git a/irc/ratbox-services/files/ratbox-services.sh.in b/irc/ratbox-services/files/ratbox-services.sh.in
new file mode 100644
index 000000000000..321384a3d0f8
--- /dev/null
+++ b/irc/ratbox-services/files/ratbox-services.sh.in
@@ -0,0 +1,35 @@
+#!/bin/sh
+
+# PROVIDE: ratbox-services
+# REQUIRE: DAEMON
+# BEFORE: LOGIN
+
+. %%RC_SUBR%%
+
+name="ratbox_services"
+rcvar=`set_rcvar`
+load_rc_config $name
+
+ratbox_services_enable=${ratbox_services_enable:-"NO"}
+ratbox_services_user=${ratbox_services_user:-"ircservices"}
+ratbox_services_group=${ratbox_services_group:-"ircservices"}
+
+command="%%PREFIX%%/sbin/ratbox-services"
+pidfile=%%RUNDIR%%/ratbox-services.pid
+required_files="%%PREFIX%%/etc/ratbox-services.conf"
+
+start_precmd=prestart
+stop_precmd=prestop
+
+prestart()
+{
+ touch $pidfile
+ chown $ratbox_services_user:$ratbox_services_group $pidfile
+}
+
+prestop()
+{
+ rm -f $pidfile
+}
+
+run_rc_command "$1"