mercredi 21 mai 2008

phpGW third item from todo list: Or how to try to debug two apps each others ...

Hi all

I'm working on Sync since 3 days. First I had to compile the opensync / libsyncml stuff. I found some interesting help on compilation Opensync (here) and use. You should know that at time of writing, you should stick to the svn version 3307 (found why here) to be able to play a little bit with it.
To use it with phpGW I was obliged to made some patches that I still need to send back to the opensync project. Here's are some of them :
  • in libsyncmlclient :

    Index: src/syncml_http_client.c
    ===================================================================
    --- src/syncml_http_client.c (révision 3307)
    +++ src/syncml_http_client.c (copie de travail)
    @@ -558,6 +558,8 @@
    * automatically detect the datastores.
    */
    SmlDevInf *devinf = smlDevInfAgentGetDevInf(env->agent);
    + if(devinf != NULL)
    + {
    unsigned int stores = smlDevInfNumDataStores(devinf);
    unsigned int i;
    for (i=0; i < ctx =" osync_context_new(error);">
    @@ -570,6 +572,11 @@
    smlDevInfDataStoreGetSourceRef(datastore),
    contentType, version);
    }
    + }
    + else
    + {
    + osync_trace(TRACE_ERROR, "NULL devinf returned !");
    + }

    /* disconnect from the syncml server */
    OSyncContext *ctx = osync_context_new(error);

    this patch avoid a segfault when trying to discover the supported materials by phpGW SyncML Server.


Following the tutorial at blog.dukanovic.com in the latest part could help you with how to made it working for phpGW. If you have question don't hesitate to post them here, I will try to help you.

If you are interested by helping us to made sync working for phpGW, you can read this post for infos ...

Second part : Drums .... YEAH !!! It kinda works :).
So here's the step to reproduce my success (at least I Hope).
  1. msynctool --addgroup phpgw2file
  2. msynctool --addmember phpgw2file syncml-http-client
  3. msynctool --addmember phpgw2file file-sync
  4. msynctool --configure phpgw2file 1 : Replace the given file with this content between the <config> tags (on only this, adapted to you needs)

    <auth>BASIC</auth>
    <username>phpgroupware</username>
    <password>********</password>
    <url>http://localhost:80/~phpgroupware/syncml/syncml.php</url>
    <recvlimit>40000</recvlimit>
    <maxobjsize>4000000</maxobjsize>
    <syncml_version>1.1</syncml_version>
    <database>
    <name>my-notes-collection</name>
    <objtype>data</objtype>
    <objformat>plain</objformat>
    </database>

  5. msynctool --configure phpgw2file 2 : replace the content between <config> tags with

    <directory>
    <path>/tmp/tests/notes</path>
    <objtype>data</objtype>
    </directory>
    (note : the '/tmp/tests/notes' directory should exists)

  6. msynctool --discover phpgw2file 1

  7. msynctool --discover phpgw2file 2

  8. msynctool --sync phpgw2file


And YEAH ! it works ... Well ... mostly. Now you have to fix bugs in the ipc layer to let notes getting all be backs. But you can try to add a new notes, it could work ...

Regards.

Caeies

vendredi 29 février 2008

phpGW first item from todo list bis


Hi all,



As said in my previous post on my first item, I was waiting for a little bit more stability in the head version for building a phpGW Demo image with head ... That's partially done.



Before starting downloading the file, I warn here users :


  • The code included is still in developments phase, so don't expect it to work out of the box ...

  • use the update-phpgroupware.sh script un ~phpgw/ for update before first use !

  • Notices are displayed for developements purposes (btw I forgot to add the excellent ffx plugin firebug) and breaks a lot's of thing. So if you are not a devs, or not curious, don't use this image.




For downloading the file image, it's here. The md5sum of the file is : 129117c678344d045938576b1276cc4a. The file size is around 310 Mo (that's better than the previous one, I don't forgot to do an apt-get clean this time :).



Concerning the login / password, they are the same as the previous post, so please read it :). I wan't able to configure phpgw as far as the stable release. But you should be able (when notices are not displayed for example) to configure it better.
Dave, I know you're reading my posts, so perhaps trying the image and looking at bugs in it could be interesting :). You will probably think that I miss some important part of the configuration, but I hope not so.



Happy hacking !

Btw, if you found bugs (and yes there's still a lot's of them) take a look at the bug tracker there :
phpGW' Savannah Bug Tracker

Caeies

mercredi 13 février 2008

phpGW first item from todo list


Hi all,



That's it !



You will find here md5sum is 6361f49b0b007975e5f02f72e43b355f a qcow image for running phpgroupware in a kvm/qemu environnement. This will help you to demonstrate phpgroupware evrywhere. Here are some infos :


  • The image is around 456Mo (Ouch)

  • root password is phpgroupware-head

  • the user : phpgw the password phpgroupware

  • Once logged in xdm, with the user, an iceweasel is launch pointing to the login page

  • user there is still phpgw and the password is either fghjkl or phpgroupware (don't remember which)

  • I configured as much as possible the phpgroupware to let you see the base applications (email/addressbook/notes/infolog/headlines(pointing on planet phpGroupWare)/etc ...)

  • To enable other applications, login as admin password : phpgroupware, then go in the admin section, then in the user group section, then default and add acl there.




This is a start base for work. There's a lot's more to do, but it's pretty runnable with the following command :
qemu -m 512 phpgw-16.qcow



If you need more infos, just leave a comment here, I will answer ASAP. Feel free to modify the image to feet your needs, and let us know where to get it !



Regards
Caeies


PS: For French Users (most of the intended audience ?) the keyboard is qwerty, I let you google on how modify this at boot time :)

phpGW Todo List


Hi all,



It's the second day I take for working with the phpGroupWare project ... Cool, thanks to my company for letting me work for it !



The first day was taken for Solution Linux 2008 where I was representing the phpgroupware-france association with maat (Pascal Vilarem) and jak (Alain Khoury). We meet a lot's of interesting people there, asking mostly what's the difference between you and eGW, or "what ? you are still alive ?" Yes we are, and working hard on the next release (the famous 0.9.18, with sync in it !)



Anyway, at the conference, I promise some little thing, that I'm sure people are still waiting, so here's the todo :



  1. Building a virtual image with phpgroupware running in it

  2. Working on ldap integration, (one of my objective is to help integrating a "simple" ldap with full interaction btw ldap and phpgw)

  3. working on sync to help johang



Trust me, that's a lot's of work :). So better than write here, I'll go to work !



Caeies