Trac is being migrated to new services! Issues can be found in our new YouTrack instance and WIKI pages can be found on our website.

Changes between Version 3 and Version 4 of GSoC2010/DetachableLibpurple


Ignore:
Timestamp:
Aug 10, 2010, 4:38:24 PM (13 years ago)
Author:
gillux
Comment:

Added status informations and an end-user howto

Legend:

Unmodified
Added
Removed
Modified
  • GSoC2010/DetachableLibpurple

    v3 v4  
    1414This project will be managed in two steps. A cool thing would be to allow the clients to be running on ''different machines'' rather than on the same, but this requires to "networkify" all the UI <-> libpurple communication. Such a thing is not simple to do and that's why I will first make it to work with clients on the same machine. This is a minimal goal called ''minimal version'', and having clients on separate machines is an extra goal called ''remote version''. I'll do it if I get the time to. Note that the previous story is still possible with the minimal version if you run the client remotly, using ssh or an export display.
    1515
     16
     17= Current status =
     18== Monotone ==
     19Current state of this work can be followed in the '''[http://developer.pidgin.im/viewmtn/branch/changes/im.pidgin.soc.2010.detachablepurple im.pidgin.soc.2010.detachablepurple]''' branch. You can check it out following [wiki:UsingPidginMonotone#GettingStartedwithPidginmonotone the monotone guide] and using my branch instead of im.pidgin.pidgin.
     20
     21== GSOC and after ==
     22I didn't manage to complete this project before the end of the 2010 summer of code. But I definitely want this to work, be sure I'll carry out the project after the summer of code (contributions are welcome, though ;)).
     23
     24== End-user usage ==
     25'''The project isn't usable yet.'''
     26But if you really want to see something and you know how to use a command line, you can play with what's available:
     27
     281. Follow [wiki:GSoC2010/DetachableLibpurple#Monotone this] to get the source.
     29
     302. Type {{{./autogen.sh --enable-dbus && make}}} to compile the detachable branch. Note that you shouldn't type make install because you probably have an existing pidgin installation.
     31
     323. Run the daemon typing {{{./libpurple/purpled/purpled}}}.
     33
     344. On the same host as the daemon, run pidgin typing {{{./libpurple/pidgin/pidgin -r -m}}}
     35
     365. Pidgin should says that no accounts are activated. Activate one if you want.
     37
     386. Run as many other pidgin sessions as you want repeating step !#4.
     39
     40Now you can try to manipulate the ''Accounts'' window of all the running pidgins, and see that they are syncronized. Awsome, isn't it?
     41
     42== Applications that uses libpurple ==
     43To make your fancy libpurple-based GUI to work in the so-called detachable mode, juste add the following code before the {{{purple_core_init()}}} call.
     44{{{
     45purple_core_set_running_mode(PURPLE_RUN_REMOTE_MODE);
     46if (!purple_core_is_remote_mode()) {
     47  /* Setting remote mode failed and an error
     48   * message were printed on stdout. */
     49  /* Handle this as you can... */
     50}
     51}}}
     52
     53Then use the libpurple API normally. Your libpurple should contact the local dbus server and get synchronised with the purpled daemon.
     54
    1655= Details of the hack =
    17 Current state of this work can be followed in the '''[http://developer.pidgin.im/viewmtn/branch/changes/im.pidgin.soc.2010.detachablepurple im.pidgin.soc.2010.detachablepurple]''' branch.
    1856Here is an outline of how I think to manage this project.
    1957== Drawing ==
All information, including names and email addresses, entered onto this website or sent to mailing lists affiliated with this website will be public. Do not post confidential information, especially passwords!