Quassel (sometimes referred to as Quassel IRC) is a cross-platform IRC client introduced in 2008. It is dual-licensed under GPLv2 and GPLv3, while most graphical data is licensed under the LGPL and provided by the Oxygen Team. The client part of Quassel uses the Qt framework for its user interface.
Quassel is split up into two parts by a server-client model; a client and a core. There is also a monolithic version of the official client that does not require a core. The core(server) is the application that actually does the communication with IRC networks, while the client(s) only communicates with the core. This gives the user a flexibility of having the same instance to IRC networks on different clients (e.g. mobile, desktop at the same time).
Just install the quassel-monolithic package if you only want to use Quassel from a single computer.
Setting up a bouncer (Quassel core) to be permanently online
Install quassel-core on the server and quassel-client (or quassel-client-qt) on your desktop. If the server is headless, you could install quassel-core-smallAUR instead to avoid unnecessary dependencies like X11 libraries.
Generate a certificate (this will be valid for 1 years, after which it needs to be reissued, just change the -days to another value if you so desire):
# openssl req -x509 -nodes -days 365 -newkey rsa:4096 -keyout /var/lib/quassel/quasselCert.pem -out /var/lib/quassel/quasselCert.pem # chown quassel:quassel /var/lib/quassel/quasselCert.pem
As this is a self-signed certificate, you can type whatever you want in the fields.
4242 in your firewall.
Start core by starting
Start the client and connect to core:
Accept your self-created certificate.
Now set up your IRC-servers and IRC-nicknames on the core.
If you choose to use PostgreSQL as backend you will need to create a database and user for quasselcore.
[postgres]$ psql -c "CREATE USER quassel WITH PASSWORD 'myPassword';" [postgres]$ psql -c "CREATE DATABASE quassel WITH OWNER quassel ENCODING 'UTF8';"
See also PostgreSQL instruction on Quassel wiki.
Once it all works, you can enable
quassel.service to start automatically on system boot.
Setting up multiple clients to connect through the same core
If you want additional users to be able to use the same core, run this command to create them:
$ sudo -u quassel quasselcore --configdir=/var/lib/quassel --add-user
It will then prompt you for a new account's username and password.