Notices


Reply
Thread Tools
Posts: 992 | Thanked: 995 times | Joined on Dec 2009 @ California
#61
Originally Posted by lorelei View Post
Are you replying in the correct thread?.
You right, sorry. Never mind.
 
Posts: 11 | Thanked: 6 times | Joined on Jun 2009 @ Lansing, MI, US
#62
Any chance this means that an update for Erminig for Diablo is in the works? It already is a great little ap, and I appreciate your efforts in making it work as well as it does, but a guy that can't afford to upgrade their tablet can always hope. . . . .
 
Posts: 479 | Thanked: 641 times | Joined on Dec 2007 @ Switzerland
#63
Originally Posted by taylorfs View Post
Any chance this means that an update for Erminig for Diablo is in the works? It already is a great little ap, and I appreciate your efforts in making it work as well as it does, but a guy that can't afford to upgrade their tablet can always hope. . . . .
Yes, it is planned to have erminig-ng ported over to Diablo, with sync capabilities for GPE. This should at the same time bring GPE sync to Fremantle.

Most of the work on erminig-ng will prove to be beneficial to erminig on Diablo, since It's a complete rewrite, which I hope will help me squash most of the annoying bugs of Erminig for Diablo.
 

The Following 2 Users Say Thank You to lorelei For This Useful Post:
Posts: 5 | Thanked: 3 times | Joined on Dec 2009 @ Northern Germany
#64
I am the third with the utils.iso8601-problem :-(

Any Ideas?
 
Posts: 479 | Thanked: 641 times | Joined on Dec 2007 @ Switzerland
#65
Originally Posted by AkkiMoto View Post
I am the third with the utils.iso8601-problem :-(
I'm able to reproduce this problem only in the scratchbox development environment, if I use python instead of python2.5. On my actual device python and python2.5 commands behave the same (same version).

What is the output you get when you run the python2.5 command in an x-terminal?

Furthermore, what's the output of the following command?

Code:
 dpkg --get-selections | grep python
 
Posts: 479 | Thanked: 641 times | Joined on Dec 2007 @ Switzerland
#66
Dear all,

Here's the second pre-release of Erminig-NG (version 0.1.0).

This post may seem very similar to the original post of this thread: it is indeed, but please read it carefully: there are some important changes!

It's still in alpha stage: so the usual recommendations stand:

BIG FAT WARNING: this is still alpha-quality software, so it's not really for those people who are afraid to lose events in their calendars!


No GUI available for the moment: next release should bring the GUI (at least that's the plan). And no .deb either: next release, when it will be a little bit more consumer-friendly.

As usual, try it on non-important calendars first, since we are not guarded against data loss.

Changelog (since version 0.0.1):
  • All accesses to the Fremantle Calendar are done through the official API (no more direct access to the sqlite databases). This is the correct way of doing it, at the expense of a small C++ shared library to interface Python with the CCalendar API.
  • When performing the initialization of the calendars to be synced (with the --sync-calendars option), a GUI dialog pops up to ask you if you want that calendar to be synchronized. This is to avoid problems with diacritics in the terminal.

Software dependencies: python-gdata and python-hildon (both of them available in Extras). By installing those two packages, all necessary dependencies will be pulled automatically.

How to install Erminig-NG

Download (link at the bottom of this post) and unpack the archive file somewhere on your device
Open the file erminig_conf.py and change the first three variables. They represent your Google username and password, and the full path to the root directory of Erminig (this is needed for the dynamic loading of the C++ library)

How to run Erminig-NG

For the first run:

Code:
% python2.5 erminig-ng --sync-calendars
This will ask you which calendar (both local and remote) you want to keep in sync

WARNING: For the moment it is important to run Erminig-NG for the first time with the --sync-calendars option, otherwise it will miss old events to import (known bug). Similarly, adding calendars to sync after the first real sync will miss old events (only new events from the time of the last sync will be synced in the the new calendar). Uhm, this is quite convoluted as an explanation...I hope that you will get the essence of this warning though

Code:
% python2.5 erminig-ng
This will perform the bulk of the work and keep in sync the calendars. This is the command you want to run when you wish to synchronize your calendars.

If you added a local or Google calendar, you may want to rerun Erminig-NG with the --sync-calendars, so that it will ask you if you want to sync the newly discovered calendars (with the gotcha mentioned above!)

Information for those coming from the previous version
The internal Erminig database has not changed since the previous version, so you can continue to use the already populated database, without erasing it.

"Roadmap"
If a serious bug creeps out during the development of the next release, an intermediate bug-fix-release will take place...so I'm just mentioning the big milestones:
  • Next version will bring recurrent events support, Birthday support and first release of the GUI. This will also be the first release with proper packaging. This version will also sport a modified database schema. I will try as much as possible to offer an update path to those who are already running Erminig-NG, so that you won't have to resynchronize everything.
  • Next version + 1: Add support for GPE calendar, and hopefully backward compatibility with Diablo

FAQ (mostly copied from OP, but with some additions)
  • There's a bug, what should I do?
    Two options:

    - report it in this thread, if possible by providing accurate step-by-step instructions
    - Contact me by mail: lorelei@garage.maemo.org (again with accurate instructions)

    In the future I will open a bugs.maemo.org component for Erminig-NG, in order to keep track of everything, but first I want to see how it is received within the community before investing resources that are not mine (i.e. maemo.org's bugzilla)
  • Should I synchronize the local calendars called "cal_ti_calendar_synced" and "cal_ti_calendar_private"?
    cal_ti_calendar_private is in fact the default N900 calendar (which may have another name). It is safe to synchronize it. The other one I still don't know.
  • What about birthdays?
    Even though Erminig will ask you if you want to synchronize the birthdays, nothing will happen if you accept. This is a side-effect of using the C++ API. There's still no code on Erminig's side to manage the birthday syncs.
  • I have troubles with a missing import (xml.utils.iso8601)
    You are affected by this bug if Erminig-NG crashs at startup with the following message:
    Code:
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ImportError: No module named iso8601
    Please see this post with an updated erminig-ng release that specifically fixes this problem:

    http://talk.maemo.org/showpost.php?p...7&postcount=93

  • I would like to reset Erminig-NG to a known state (i.e. a state where it doesn't know anything about calendars relationships)
    Remove the file ~/.erminig.db
    This will make Erminig-NG going back to "factory settings"
    Please note that this may generate duplicate events in Google or Fremantle Calendar if you perform a resync on calendar previously synced.
  • What is the stability status of Erminig-NG ?
    It's in early alpha stage. I'm just starting to pin down the basic functionalities before moving on the the GUI part
  • What about sync conflicts (modification of an event both on Google and on the local calendar)?
    There's no explicit handling of conflicting updates for the moment. This will be addressed in a future version
  • Why no .deb package (or why not in Extras-devel)?
    Erminig-NG is still in early development phase, so by publishing only the .tar.gz I will try to "scare away" people who is not comfortable with command-line. This is for your own good. Don't blame me (or maybe yes). Proper packaging will come in its own time.
  • What works, what doesn't work?
    So far, I can tell for sure that recurrent events don't work. It's not a bug (yet): it's simply not implemented yet. This will be supported in the future.
  • How does this relate to Erminig (not -NG?)
    I'm also maintaining Erminig (two-way sync between GPE calendar and Google Calendar), and Erminig-NG will eventually replace it. It is planned to support both GPE and "Fremantle-Calendar". By rewriting Erminig from scratch I will be able to eliminate a lot of unused code in Erminig, and this will allow me to understand more in details how Google Calendar works (please remember that I'm not the original author of Erminig, I just picked up the development. Erminig-NG on the other hand will be essentially a clean-room reimplementation of Erminig)
  • I would like to recompile the C++ layer
    Feel free! Here's the command line I'm currently using in Scratchbox:
    Code:
    g++ calaccess.cc `pkg-config calendar-backend --cflags --libs` -shared -o libcalaccess.so

Feel free to drop me a message if you find a bug (or just if you find this piece of software useful): those are always appreciated!

Download of erminig-ng 0.1.1 is available in this post:

http://talk.maemo.org/showpost.php?p...7&postcount=93

it fixes the iso8601 problem a few users had. I've removed the original 0.1.0 release, since it was bugged!

Last edited by lorelei; 2010-02-01 at 23:18.
 

The Following 18 Users Say Thank You to lorelei For This Useful Post:
Posts: 2 | Thanked: 1 time | Joined on Jan 2010
#67
Hello all,

lorelei, I want to thank you for this fantastic job. I was really missing Google Calendar sync in my n900 and I was thinking about writing myself a little one-way-sync python script until I found this thread.

One question, though: it is possible to sync my N900 main calendar (called "N900" in my phone) with my main calendar in google?
What I mean is: I don't want a new "N900" calendar in google, I want to sync it with my main calendar there.

Thanks again for this nice app
 

The Following User Says Thank You to kner For This Useful Post:
Posts: 479 | Thanked: 641 times | Joined on Dec 2007 @ Switzerland
#68
Originally Posted by kner View Post
Hello all,
One question, though: it is possible to sync my N900 main calendar (called "N900" in my phone) with my main calendar in google?
What I mean is: I don't want a new "N900" calendar in google, I want to sync it with my main calendar there.
This is not possible yet, however the next release with the GUI will allow that.

I did not offer this possibility in this text-only release since it's not easy to come up with a user-friendly way of asking the user to do the calendar associations. With a GUI, the problem is easier to manage, hence the non-implementation for the moment.

Thank you for reminding me that I have to implement that
 

The Following User Says Thank You to lorelei For This Useful Post:
Posts: 35 | Thanked: 17 times | Joined on Aug 2009
#69
Thanks lorelei!

For those who previously asked about shared calendars, the answer is currently no. However, a simple change from GetOwnCalendarsFeed() to GetAllCalendarsFeed() in the file erminig-ng will allow you to sync shared calendars as well.

As mentioned in my previous post, erminig-ng does not preserve the read-only status of calendars, so I'd expect breakage if you modify shared read-only calendars on your device.

I'm hoping to find time in the next week to look at preserving the read-only flag and colors from the google calendars. I'll submit a patch here if I do!
 

The Following User Says Thank You to tuxfoo For This Useful Post:
Posts: 479 | Thanked: 641 times | Joined on Dec 2007 @ Switzerland
#70
tuxfoo: thank you for the pointer to GetAllCalendarsFeed(): I kinda overlooked that possibility.

Upon inspection of CCalendar API, it's possible to flag a N900 calendar as read-only, so that should do the trick. I just have to figure out how to get the same information from Google Calendars, but I suspect that it won't be too difficult.

Concerning the colours, unfortunately the N900 palette of colours available to the calendar is quite limited (ten colours or so), whereas Google's palette is a bit more extended, so it won't always be possible to have a 1:1 matching between the two.
 
Reply

Tags
erminig, erminig-ng, ernie nig, google calendar, google sync, synchronization


 
Forum Jump


All times are GMT. The time now is 10:38.