summaryrefslogtreecommitdiff
path: root/bin/ii-connect
diff options
context:
space:
mode:
Diffstat (limited to 'bin/ii-connect')
-rwxr-xr-xbin/ii-connect31
1 files changed, 31 insertions, 0 deletions
diff --git a/bin/ii-connect b/bin/ii-connect
new file mode 100755
index 0000000..5c38367
--- /dev/null
+++ b/bin/ii-connect
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+# run and handle the irc client
+
+# shellcheck source=conf/default.conf
+. "${0%/*}/../conf/default.conf"
+
+# start ii if it is not running
+if ! pgrep -x ii > /dev/null; then
+ rm -rf --one-file-system "${irc_dir}"
+ screen -d -m ii -f buildmaster -n buildmaster
+ sleep 10
+fi
+
+# register if not yet done
+if tail -n1 "${irc_dir}/nickserv/out" 2> /dev/null | \
+ grep -qF 'This nickname is registered. Please choose a different nickname'; then
+ printf 'identify %s\n' "${irc_password}" > \
+ "${irc_dir}/nickserv/in"
+fi
+
+# join #archlinux-ports if not yet done
+if ! grep ' buildmaster\.archlinux32\.org .* buildmaster$' "${irc_dir}/out" | \
+ tail -n1 | \
+ grep -q ' #archlinux-ports '; then
+ {
+ echo '/j #archlinux-ports'
+ echo '/WHO buildmaster'
+ } > \
+ "${irc_dir}/in"
+fi