Project

General

Profile

QuasselWiki » History » Version 75

johu, 02/26/2010 01:46 AM
new section about development im feeling so transparent

1 5 sph
h1. Quassel
2 1 seezer
3 12 sph
{{toc}}
4 12 sph
5 12 sph
6 12 sph
7 5 sph
h2. Introduction
8 5 sph
9 41 sph
Quassel is a program to connect to an IRC network. It has the unique ability to split the graphical component (quasselclient) from the part that handles the IRC connection (quasselcore). This means that you can have a remote core permanently connected to one or more IRC networks and attach a client from wherever you are without moving around any information or settings. However, Quassel can easily behave like any other client by combining them into one binary, which is referred to as "Quassel Mono".
10 5 sph
11 5 sph
Quassel's distributed approach:
12 62 m4yer
13 20 sph
!distributed.png!
14 5 sph
15 53 Lingerance
In simpler terms, the "monolithic" client is a response to requests for a client that behaves like every other IRC client.  The monolithic client (GUI) is what makes the connections to the IRC networks.  In normal operation, the client (GUI) connnects to a core, it is completely incapable of connecting to anything else.  The core recieves connections from clients, and makes connections to the IRC networks, it also handles logging (currently everything gets put in the database).
16 5 sph
17 12 sph
18 7 sph
h2. Getting started
19 7 sph
20 10 sph
Setting up Quassel is fairly easy and straightforward. Since we have a separated core and client, we will configure them in two steps. If you are using the Quassel Mono version, then you can skip the core part as this is done internally.
21 7 sph
22 12 sph
23 10 sph
h3. Installation
24 10 sph
25 10 sph
The best and most reliable way is to simply install the packages provided by your distribution. However, we do offer some static binaries at http://quassel-irc.org/downloads along with Git instructions for those who prefer to compile Quassel themselves. 
26 10 sph
27 55 seezer
h3. Specific installation instructions
28 12 sph
29 70 seezer
* [[Build Quassel on Windows]] (with Visual Studio)
30 70 seezer
* [[Build Quassel on Windows Mingw|Build Quassel on Windows]] (with MinGW)
31 64 musca
* [[Build Quassel on Linux (english)]]
32 65 musca
* [[Build Quassel on Linux (deutsch)]]
33 68 dalbers
* [[Build Core On Ubuntu]]: Setting up Quassel core from the source code on Ubuntu server (mostly applies to Debian too)
34 67 miohtama
* [[Building quasselcore on Ubuntu 8.04 Hardy Heron/x64 (old Qt4 libs)]]
35 58 seezer
36 10 sph
h3. Connecting to the core
37 40 sph
38 54 seezer
Before starting the core, you could set up [[Client-Core SSL support|Client-Core SSL encryption]] or have a look at the [[PostgreSQL|PostgreSQL article]] before moving on.
39 54 seezer
All that is completely optional.
40 45 sph
41 14 sph
Now start the core and launch quasselclient on your local machine. A connection dialog will show up. Enter the IP address or hostname of the server running the core, enter the port number used by the core and select SSL if applicable. You can also specify a proxy but note that domain names will still be resolved locally (see "Qt4.4":http://doc.trolltech.com/4.4/qnetworkproxy.html#socks5).
42 1 seezer
43 15 sph
During the first connection, you will be guided through a graphical wizard to configure the core properly. Enter a username and password, this will be the administrator. Next, select a database backend (for now this is SQLite only). Click finish and your core is ready!
44 1 seezer
45 27 sph
A configuration screen for adding new users and managing existing ones is under developement, but for the time being you can use a simple [[Manage core users|python script]].
46 1 seezer
47 1 seezer
48 15 sph
h3. IRC Configuration
49 15 sph
50 15 sph
Now you have to specify which network(s) Quassel should connect to. First you will have to create an identity.
51 15 sph
52 20 sph
!identity.png!
53 15 sph
54 16 sph
Set a real name (which doesn't actually have to be real) and add the nicknames you want to use. If the first nickname is not available, the second one (if specified) will be used instead. Change the other settings if you like, this is optional however.
55 15 sph
56 19 sph
After creating an identity, you have to define the IRC network(s) along with the servers they use. If Quassel was installed properly, there should be a preconfigured list of the most popular networks already.
57 15 sph
58 20 sph
!network.png!
59 15 sph
60 23 sph
Make sure you select the identity you just created (which should be the default). Click OK and you're done. Feel free to visit us in the #quassel channel on Freenode!
61 5 sph
62 4 pennywise
h2. Manuals
63 39 pennywise
64 25 sph
* [[Manage core users]]
65 1 seezer
* [[Buffer Views]]
66 1 seezer
* [[Quassel Logging]]
67 60 pennywise
* [[PostgreSQL]]: Setting up PostgreSQL database backend
68 60 pennywise
* [[SQLite]]: Some information about the SQLite backend
69 58 seezer
* [[Client-Core SSL support]]: How to encrypt the connection between clients and core
70 50 katastrophe
* more [[Shortcuts]]
71 18 sph
72 57 seezer
h2. Frequently asked questions
73 57 seezer
74 57 seezer
Check the [[FAQ]]
75 57 seezer
76 18 sph
h2. Known issues
77 18 sph
78 18 sph
* DCC chat and file transfers are not yet supported.
79 18 sph
* There has been a client for mobile devices but as the codebase updated so quickly it has become outdated and incompatible with newer cores.
80 30 dalbers
* See "Issues":http://bugs.quassel-irc.org/projects/quassel-irc/issues for specific bugs and feature requests.
81 1 seezer
82 70 seezer
h2. Static builds
83 1 seezer
84 74 Datafreak
* "Datafreak's Build for Windows":http://www.datafreak.eu/downloads/windows/quassel-irc/ (required "MSVC Redistributable Package":http://www.microsoft.com/downloads/details.aspx?familyid=A5C84275-3B97-4AB7-A40D-3802B2AF5FC2)
85 1 seezer
* "Phon's Build for Windows":http://phon.name/quassel/ (required "MSVC Redistributable Package":http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=32bc1bee-a3f9-4c13-9c99-220b62a191ee , SSL will not work.)
86 1 seezer
* "m4yer's Builds for Mac OSX 10.6 and 10.5":http://m4yer.minad.de/quassel/
87 1 seezer
88 72 johu
h2. Development
89 72 johu
90 75 johu
* Rules (TODO)
91 75 johu
* Getting started (TODO)
92 72 johu
93 72 johu
h3. Translation and git patches
94 72 johu
95 72 johu
Translation now uses .po-files and the best way to send in updates to these is by git patches.
96 72 johu
[[Creating Translation git patches]]: Here you can find out how to create those git patches.
97 72 johu
98 72 johu
h3. Feature Drafts
99 71 johu
100 71 johu
* [[Blowfish Encryption]]