aboutsummaryrefslogtreecommitdiff
path: root/network/icbm
diff options
context:
space:
mode:
authorB. Watson <urchlay@slackware.uk>2023-09-23 09:13:45 +0700
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2023-09-23 09:13:45 +0700
commit5ac8bb1d9541ea297fa4055b7e86a8ed0270f4e3 (patch)
tree8095a9b4cc085afd1aa9ae0da342854d118d8b17 /network/icbm
parente053c87889bd6db39d2562e75c094eb5daae9615 (diff)
network/icbm: Added (extensible threaded ICB client in Perl).
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'network/icbm')
-rw-r--r--network/icbm/README15
-rw-r--r--network/icbm/doinst.sh11
-rw-r--r--network/icbm/icbm.SlackBuild78
-rw-r--r--network/icbm/icbm.info10
-rw-r--r--network/icbm/slack-desc19
5 files changed, 133 insertions, 0 deletions
diff --git a/network/icbm/README b/network/icbm/README
new file mode 100644
index 0000000000000..d6ee3dff87746
--- /dev/null
+++ b/network/icbm/README
@@ -0,0 +1,15 @@
+icbm (extensible threaded ICB client in Perl)
+
+ICB (Internet CB) is a teleconferencing system that allows Internet
+users to participate in realtime online discussions (similar to IRC).
+
+ICBM is a threaded ICB client written in Perl5 which supports a
+superset of the functionality of CICB (the ICB C Client, the de facto
+standard ICB client). This allows ICBM to be readily extended to
+support many features that CICB does not, and to gracefully do a
+number of things that CICB does poorly if at all.
+
+Note: in some terminals (e.g. urxvt), when icbm exits, it will
+leave the terminal in a state where the backspace key prints "^?"
+rather than backspacing. You can fix this with "stty erase ^?".
+Other terminals (e.g. xterm) don't have this problem.
diff --git a/network/icbm/doinst.sh b/network/icbm/doinst.sh
new file mode 100644
index 0000000000000..0730667f7b8ae
--- /dev/null
+++ b/network/icbm/doinst.sh
@@ -0,0 +1,11 @@
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
+ rm $NEW
+ fi
+}
+
+config usr/share/icb/icbserverdb.new
diff --git a/network/icbm/icbm.SlackBuild b/network/icbm/icbm.SlackBuild
new file mode 100644
index 0000000000000..a5635b0034522
--- /dev/null
+++ b/network/icbm/icbm.SlackBuild
@@ -0,0 +1,78 @@
+#!/bin/bash
+
+# Slackware build script for icbm
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# Note to self: tarballs with versioned filenames do exist, but the
+# link on the homepage is always icbm-current.tar.gz (presumably a
+# symlink). To check for updated versions, look at the the top of:
+# https://co.ordinate.org/icbm/Changelog
+
+# The crypto modules are actually optional: icbm will run without
+# them, with encryption disabled. I've made them required here, to
+# keep things simpler for me (and easier for users, too). If you
+# really object to this, just don't install them (you still need
+# perl-Curses, though).
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=icbm
+VERSION=${VERSION:-1.6.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=noarch
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+# tarball perms suck, leave this as-is:
+chmod 644 *
+
+SHAREDIR=$PKG/usr/share/icb
+BINDIR=$PKG/usr/bin
+MANDIR=$PKG/usr/man/man1
+
+# There's no Makefile or install script, follow the directions
+# in INSTALL.
+# Note that icbserverdb is different from the one that ships
+# with cicb (some of the same servers listed, but the cicb one
+# has an extra 'server admin' field).
+mkdir -p $SHAREDIR/Net $BINDIR $MANDIR
+cp -a primes $SHAREDIR
+cp -a icbserverdb $SHAREDIR/icbserverdb.new
+cp -a ICB.pm $SHAREDIR/Net
+install -m0755 icbm $BINDIR
+gzip -9c < icbm.1 > $MANDIR/icbm.1.gz
+
+# BUGS is 0 bytes in 1.6.0. README.ICBM is actually troff, it's the
+# man page for an older version.
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a Changelog README.ENCRYPTION TODO gpl.txt sample_* colors $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/icbm/icbm.info b/network/icbm/icbm.info
new file mode 100644
index 0000000000000..adc0656dc2098
--- /dev/null
+++ b/network/icbm/icbm.info
@@ -0,0 +1,10 @@
+PRGNAM="icbm"
+VERSION="1.6.0"
+HOMEPAGE="https://co.ordinate.org/icbm/"
+DOWNLOAD="https://co.ordinate.org/icbm/icbm-1.6.0.tar.gz"
+MD5SUM="102801deeef49b8289153eedfbf046bc"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="perl-Curses perl-Crypt-Blowfish perl-Crypt-CBC perl-digest-sha1 perl-Math-BigInt-GMP perl-crypt-dh-gmp"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/icbm/slack-desc b/network/icbm/slack-desc
new file mode 100644
index 0000000000000..4ab222ce96102
--- /dev/null
+++ b/network/icbm/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+icbm: icbm (extensible threaded ICB client in Perl)
+icbm:
+icbm: ICB (Internet CB) is a teleconferencing system that allows Internet
+icbm: users to participate in realtime online discussions (similar to IRC).
+icbm:
+icbm: ICBM is a threaded ICB client written in Perl5 which supports a
+icbm: superset of the functionality of CICB (the ICB C Client, the de facto
+icbm: standard ICB client). This allows ICBM to be readily extended to
+icbm: support many features that CICB does not, and to gracefully do a
+icbm: number of things that CICB does poorly if at all.
+icbm: