SILC is short for Secure Internet Live Conferencing, a protocol which allows you to chat using strongly encrypted connections and secure authentication mechanisms. In other words, SILC is a secure IRC variant. If you want to know more about SILC, have a look at the SILCNet homepage.
Basically, SILC is just a protocol. However they also maintain a client to connect to a SILCNet which is based on Irssi. Thanks to Irssi's modularity it is rather easy to extend the client with an additional protocol handler. Even better, the protocol can be compiled as a module and loaded during runtime in a "normal" Irssi client.
So, what is this plugin about then? Well, it's just a bunch of Makefiles taking the SILC client's source and compiling the protocol handler as a module. Of course, you could just use the SILC client for SILCNet chatting and Irssi for IRCNet chatting, but personally I dislike running more than one chat client irregardless of the protocol they use.
Starting with version 1.1 beta3, it is possible to compile the SILC Client directly as a plugin for Irssi 0.8.11 an later. Please refer to http://silcnet.org/ for more details!
The old process for SILC Plugin 1.0.x is now obsolete!
I don't provide any official binary, so you have to compile the SILC plugin yourself.
The SILC Plugin itself just consists of a bunch of patches and a manual, how to compile the SILC Plugin. To compile the plugin, you first have to fetch the current Irssi and SILC Client source package:
I assume you already downloaded the silc-plugin source tarball:
PLEASE NOTE:
I will use the following terms from here on:
First you need to untar all three tarballs:
tar xzf irssi-0.8.11.tar.gz export IRSSI_DIR=`pwd`/irssi-0.8.11 tar xzf silc-client-1.0.5.tar.gz export CLIENT_DIR=`pwd`/silc-client-1.0.5 tar xzf silc-plugin-1.0.5.1.tar.gz export PLUGIN_DIR=`pwd`/silc-plugin-1.0.5.1
Next, you need to configure and compile the SILC Client 1.0.5. You should give at least the following options to configure (assuming Irssi is installed with prefix /usr):
cd $CLIENT_DIR ./configure --prefix=/usr \ --with-helpdir=/usr/share/irssi/help/silc \ --without-libtoolfix \ --enable-static \ --enable-debug \ --without-silc-libs make -C lib
Do NOT use any kind of parallel build system to compile the silc-client! I.e. do not pass option -j2 or similar to make.
On some systems libraries have to be "position independent executables", you should give option --with-pic to SILC Client's configure script on such systems. If you encounter problems with pthread, give option --with-pthreads=no to SILC Client's configure script.
During installation, only the help files from the SILC Client's source tree will be installed. You may specify other options needed to compile the SILC Client to fit your needs.
After successfully compiling the SILC Client 1.0.5, unpack the Irssi 0.8.11 source package and give the following command from within the SILC Plugin directory:
cd $PLUGIN_DIR make patch IRSSI=$IRSSI_DIR SILC=$CLIENT_DIR
This will prepare the Irssi source package for compiling the SILC Plugin. Change into the Irssi source directory, configure and compile it. Assuming again Irssi is installed in /usr:
cd $IRSSI_DIR ./configure --prefix=/usr --sysconfdir=/etc make -C src/perl make -C src/fe-common/silc make -C src/silc/core
Just executing "make" in the top-level directory will not work!
To install the SILC Plugin, you have to give the following commands in Irssi's source directory:
cd $IRSSI_DIR make -C src/perl/silc install make -C src/fe-common/silc install make -C src/silc/core install for felib in /usr/lib/irssi/modules/libfe_common_silc.* ; do mv -f ${felib} ${felib/_common_/_} done
and the following command in the SILC Client's source directory:
cd $CLIENT_DIR make -C apps/irssi/docs/help install
You will now have installed:
If you don't have perl, just ommit the commands related to perl. The location where the perl modules will be installed depends on your local setup.
You should also add the files in the scripts/ directory (of the SILC Plugin) to
and the default.theme (of the SILC Plugin) to your ~/.irssi/ directory. You should also copy the files in the docs/ directory to
That's it, you have now a (hopefully) working installation of the SILC Plugin 1.0.5.1!
After you have compiled and installed the plugin, you can load the plugin in Irssi using
/LOAD silc
You cannot pass options to the SILC Plugin, but you configure it at run-time with the /SILC command, see
/HELP silc/silc
To get help about SILC commands, you can use (replace "command" with the actuall command you want help with)
/HELP silc/command
If you have compiled Irssi with perl support, you should also load the silc and silc-mime scripts:
/SCRIPT LOAD silc /SCRIPT LOAD silc-mime
For a more detailed help on SILC commands or some FAQs, please refer to the SILCNet homepage. Once you have successfully load the SILC plugin, you can connect to the SILCNet like this
/CONNECT -silcnet SILCNet silc.silcnet.org
You might want to join the channel "silc" then...
/JOIN -silcnet silc
If you want to try the latest version of the plugin, maybe to test an open bug or to verify some changes, you can download the current version of the plugin via anonymous CVS.
To access the CVS repository, use the following commands:
$ cvs -d:pserver:anoncvs@cvs.penguin-breeder.org:/home/cvs login $ cvs -d:pserver:anoncvs@cvs.penguin-breeder.org:/home/cvs co silc-plugin
After issuing the first command you will be prompted for a password. Leave the password empty, i.e. just hit enter.
You might experience problems connecting to the cvs server. This may have two reasons. Either the box is down, or your hostname is not reversable, i.e. the IP your hostname resolves to does not map to your hostname. In the first case you have to wait a little, in the later you should look for another ISP.
If you find a bug in the SILC Plugin, please either report it on the silc-devel mailing list or directly to me.
If you need to get in contact with me, send me a mail to jochen@penguin-breeder.org or ask me on the IRCnet or the SILCnet, I'm using in both the nick c0ffee.