These are Frequently Asked Questions, and of course our answers to them.
General
- What requirements/dependencies are needed for building Quassel?
- The ChatWidget really needs feature X / does not do Y right / is buggy!
- I've heard Quassel Core is multi user capable? How do I make use of that?
- How stable/usable is Quassel IRC?
- Quassel is missing a feature all other IRC clients have!
- I have a feature request that is rather uncommon in other clients!
Distribution-specific Issues
Using Quassel / Undocumented Features
- How do I enable SSL support for client/core connections?
- Why are URLs not clickable?
- How can I make the Quassel Core listen on a different port than 4242
- What's this "Full Custom" view thingy
- The layout of the messages looks buggy. Nicks or timestamps are chopped
- Can I prevent the Core from automatically reconnecting to the IRC-Networks and joining channels
- Are there any keyboard shortcuts?
Known Issues
General
The list is quite short: You'll need Qt 4.3 or higher with Sqlite3 support. To check for the Qt version you have installed, run "qmake -version" or (on some distributions) "qmake-qt4 -version".
More specifically, Quassel Client needs QtCore, QtGui, QtScript and QtNetwork. Quassel Core needs QtCore, QtScript, QtNetwork and QtSql (with sqlite3 support). The combined (monolithic) version needs a superset of these modules, of course :)
Well, the thing is, the Chatwidget is one of the oldest piece of code in Quassel, and for sure the most ugly (code-wise). It will be completely rewritten soon (actually we already started the rewrite a while ago, but got distracted by shiiiinny things^W^Wmore important issues...), and none of the devs feels like touching the old mess. So we will close bugreports referring to the old chatwidget with WONTFIX.
(Note: the ChatWidget is the centerpiece of quassel showing all messages, join and part notifications, and stuff like that.)
Yes, but you can't use it yet.
The Quassel Core in fact is already multi user capable. In fact we use our development core already in that way.
But since there aren't configuration options at the time being, there is no way to setup additional accounts or manage existing ones.
Once this is done you can add accounts.
Well, depends on what you ask from your chat client. First of all, all the devs use Quassel IRC as their main clients and have been doing that for a while. We all share one Quassel Core, so that component is getting quite a stress testing...
Quassel Core has been rock stable for us for a while, and we have ironed out most Client crashes recently. So yes, Quassel IRC is certainly stable enough to be usable, at least on our systems. If it isn't for you, please report bugs, so we can fix it :)
Now for features - as I said, that depends on what you need. Quassel does not have all the nice features yet that shiny clients like Konversation give you. On the other hand, it certainly already now is much more convenient than text-based clients like Irssi. There also is no plugin support yet, so if you rely on your /slap script, you'd have to wait...
If you can work with issueing basic IRC commands via the input line, rather than relying on everything being clickable, you should be all set to start using Quassel!
Well, in this case, chances are that we already know about it. All devs have been using IRC for a long time, we all have tried several IRC clients, so we know what they can do - and if it's a usable feature, we probably want to have it in Quassel as well. So most probably, the feature you want will creep into Quassel at some time.
Then by all means, report it! We are always thankful for ideas, and if your feature request makes sense, we will probably implement it at some time.
Distribution-specific Issues
To install Quassel on Ubuntu/Kubuntu you have to activate the hardy-backports repository, as described in the guides for Ubuntu and Kubuntu.
Then just install quassel (or quassel-core if you only want to run the core component).
Ebuilds for Quassel are in Portage (net-irc/quassel). In addition to the current release, you will also find a live ebuild (quassel-9999) that will allow you to build the current version from Git (usual disclaimers apply). In order to use it, you'll need to keyword it by putting the following line into your /etc/portage/package.keywords:
net-irc/quassel **
Using Quassel / Undocumented Features
Quassel supports SSL encryption for the connection between clients and core. In order to support this, a Quassel Core needs a PEM certificate which needs to be stored in ~/.quassel/quasselCert.pem (on Linux and Mac; probably somewhere else on Windows...).
You can create such a certificate on Linux/Mac by typing the following on the command line:
openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout ~/.quassel/quasselCert.pem -out ~/.quassel/quasselCert.pem
Good news everyone: They are. Just double-click them, and they should be opened in your default browser. There is, unfortunately, no visual feedback (such as an underline) though.
Pretty simple: just start the core using ./quasselcore -p <portnumber>
We currently deliver Quassel with a set of predefined so called Buffer Views: All Buffers, All Channels, All Queries, and All Networks.
While you've probably managed to figure out their meaning, there is an additional View called "Full Custom". This view allows you to show only the buffers you want to be shown. Just drag and drop buffers from other views into the open field to add them or select them and press Backspace / Delete on your keyboard to remove them. The content of this view is currently not persistent, so when you quit Quassel Client, your setup will be lost.
In a future release you can have as many custom views as you wish. Being stored in your core profile, this enables you to easily chose between your preferred views. For example you could create a view with work related channels. There will also be options like: only show buffers where I've been recently highlighted.
You can easily resize the layout of the messages, unfortunately there is not much visual feedback:
move the mouse over the chatlines from left to right until you notice the mouse cursor change to a "hand" icon. Click and hold the left mouse button and move the mouse around to adjust the spacing. There are a total of 2 these invisible handles: one for adjusting the position of the nicks relative to the timestamp and one for the position of the messages relative to the nicks.
In the rare case, that you don't want the usersessions to be automatically restored, you just have to start the Quassel Core with:
./quasselcore --norestore
We haven't gotten around to implementing proper shortcut support yet. But since we, the devs, hate clicking around, we did implement one nice feature. In any buffer, you can type Ctrl+[0-9] in order to assign one of the ten available shortcuts to that buffer. Afterwards, you can quickly jump to it pressing Alt+[0-9]. This allows you to have your most active/important buffers available at your fingertips.
Players of real-time strategy games probably know why we like to call this feature "RTS Shortcuts" :)
Known Issues
This is mainly due to the fact that the Qt's Sqlite interface uses UTF-16 to store strings in the database. The size should shrink to about half of the current size when other storage backends like postgre sql and mysql will be introduced.
Besides that, you can compress the database by rebuilding it. This requires the core to be shut down. Run the following commands:
sqlite3 ~/.quassel/quassel-storage.sqlite .dump | sqlite3 ~/.quassel/quassel-storage.sqlite.bak
mv ~/.quassel/quassel-storage.sqlite.bak ~/.quassel/quassel-storage.sqlite
Note: this method seems to be way more effective than sqlite's VACUUM function.
Thanks to al_ for bringing up that idea.
Yes. We have focused on getting the desktop version ready first, and unfortunately, the quasseltopia module got horribly out of sync with the rest of the codebase in the meantime. We will fix this, but you'll have to wait a bit...
