HOWTO. WM5/6 & SynCE.

Есть у меня коммуникатор Symbol MC35 на Windows Mobile 5, и мне, логично, захотелось синхронизировать записную книгу и календарь с Kontact или Evolution. Все мануалы, которые я нашёл в сети, были нерабочие. Ниже я описал процесс для Ubuntu 7.10.

1. Устанавливаем SynCE. Для этого добавим репозитарий:

deb http://ppa.launchpad.net/synce/ubuntu gutsy main

deb-src http://ppa.launchpad.net/synce/ubuntu gutsy main

Устанавливаем (автоматически пропатчится ядро):

sudo apt-get install usb-rndis-source cdbs

sudo module-assistant auto-install usb-rndis
sudo apt-get install odccm librra0-tools librapi2-tools

2. Проверяем, что у нас всё заработало. Запускаем демона:

sudo odccm -f

Проверяем, что связь есть командой:

pls

Вы должны увидеть листинг корня ФС устройства.

3. Займёмся синхронизацией. Для начала нам нужно собрать pywbxml из проекта SynCE. Из svn брать смысла не имеет — оно там нерабочее. Качаем тарбол:

wget http://downloads.sourceforge.net/synce/pywbxml-0.1.tar.gz

Нужно доставить нужные пакеты:

sudo apt-get install python-rapi2 python-rra python-rtfcomp \
libmcrypt-dev python-pyrex libwbxml2-dev libwbxml2-0 python-dev

Собираем pywbxml:

tar xvzf pywbxml-0.1.tar.gz
cd pywbxml-0.1
./configure
make && sudo make install

4. Устанавливаем opensync. Добавляем репозитарий (пусть вас не смущает feisty. Под gutsy всё отлично работает):

deb http://opensync.gforge.punktart.de/repo/opensync-0.21/ feisty main
deb-src http://opensync.gforge.punktart.de/repo/opensync-0.21/ feisty main

Устанавливаем:

sudo apt-get install libopensync-plugin-evolution2 \
libopensync-plugin-python msynctool \
libopensync-plugin-kdepim

5. Теперь нам нужно установить плагин synce для opensync. Это дело работает через sync-engine из проекта synce. Качаем его с сайта:

wget http://kent.dl.sourceforge.net/sourceforge/synce/sync-engine-0.11.tar.gz

Распаковываем и сохраняем в /opt

tar xvzf sync-engine-0.11.tar.gz
sudo mv ./sync-engine-0.11 /opt/sync-engine

Нужно прописать несколько вещей:

sudo apt-get install python-libxslt1
sudo ln -fs /opt/sync-engine/plugins/synce-opensync-plugin-2x.py \
/usr/lib/opensync/python-plugins/synce.py
sudo ln -fs /opt/sync-engine/SyncEngine /usr/lib/python2.5/SyncEngine

Проверяем, что opensync видит плагин:

msynctool --listplugins

Вы должны увидеть что-то вроде:

Available plugins:
synce-opensync-plugin
testmodule
kdepim-sync
evo2-sync

Запускаем sync-engine (из-под себя, а не из-под рута):

cd /opt/sync-engine
./sync-engine

6. Теперь нам нужно установить партнёрство с между компьютером и устройством:

cd /opt/sync-engine/tools/

Смотрим имеющиеся партнёрства на устройстве:

./list_partnerships.py

Удаляем все (index берём из выводы предыдущей программы):

delete_partnership.py index

Создаём новое партнёрство:

./create_partnership.py «SynCEP» «Contacts,Calendar,Tasks»

7. Теперь нам нужно настроить opensync.

msynctool --addgroup WM5
msynctool --addmember WM5 synce-opensync-plugin
msynctool --addmember WM5 kdepim-sync

Если вы используете Evolution, то вместо последней строки с kdepim-sync укажите:

msynctool --addmember WM5 evo2-sync

Так же можно воспользоваться графической утилитой multisync-gui для вышеприведённых действий:

sudo apt-get install multisync-gui

8. Всё. Теперь можно запустить синхронизацию:

msynctool --sync WM5

Учтите, что процесс запуска такой:

sudo odccm

Подключаете устройство.

sync-engine

И в конце:

msynctool --sync.

 

Если что-то не работает, то попробуйте для начала перезагрузить устройство и демонов.

У меня эта конструкция работать отлично. Все данные синхронизируются, включая фотографии контактов.

 

Ещё. Если у вас GNOME, то рекомендую установить пакет libsyncefs:

sudo apt-get install libsyncefs

Тогда из Nautilus, набрав в адресной строке:

synce:///

Вы сможете работать с содержимым файловой системы КПК.

Удачи. Коментарии приветствуются.

PS: отдельное спасибо Марковичу за тестирование и нахождение ошибок :)

11 комментариев to “HOWTO. WM5/6 & SynCE.”

  1. Dr. EvilX @blog » Blog Archive » HOWTO. WM5/6 & SynCE - дополнение Says:

    [...] В дополнение к этой статье [...]

  2. samuraii Says:

    всё работает только схема почему то только в одном направлении(((
    данные только с кпк на пс перегоняться,
    а с пс на кпк не идут(((
    это косяк? или так и должно быть?

  3. Fedor Says:

    fzhulitov@fzhulitov-laptop:~$ sudo odccm -f
    sudo: odccm: command not found
    fzhulitov@fzhulitov-laptop:~$

    Вот такая картинка, все делал по порядку.

  4. Leonid Nasedkin Says:

    2samiraii. По идее должны идти данные в обоих направлениях. По крайней мере с такими косяками не сталкивался. Попробуй удалить с кпк все имеющиеся спаривания и заного спарить.

  5. Leonid Nasedkin Says:

    2Fedor. Скорее всего у тебя в профиле не прописано нужных путей.
    odccm находится в /usr/sbin
    Попробуй запустить sudo /usr/sbin/odccm -f

  6. Boris Says:

    делал по порядку. при шаге 3, на ./configure выдает:

    Package libxml-2.0 was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libxml-2.0.pc’
    to the PKG_CONFIG_PATH environment variable
    Package ‘libxml-2.0′, required by ‘libwbxml2′, not found

    Что можно сделать?

  7. Leonid Nasedkin Says:

    Boris, попробуй сделать
    sudo apt-get install python-libxml2

  8. Boris Says:

    Говорит, что уже установлен. Обидно, что перестала работать gprs через usb (которое идеально настроилось по соседнему howto)

  9. Leonid Nasedkin Says:

    Попробуй ещё установить libxml2-dev libxml-dev
    Вот всё, что у меня есть про libxml на компьютере:

    libxml++2.6c2a
    libxml-dev
    libxml-libxml-common-perl
    libxml-libxml-perl
    libxml-namespacesupport-perl
    libxml-parser-perl
    libxml-sax-perl
    libxml-simple-perl
    libxml-twig-perl
    libxml1
    libxml2
    libxml2-dev
    libxml2-utils
    python-libxml2

  10. Leonid Nasedkin Says:

    Boris, кстати второй пункт тебе не нужно было делать. Восстанови модуль по тому howto.

  11. Dr. EvilX @blog » Blog Archive » Synce [WM5/6] Says:

    [...] обновился пакет synce. Теперь танцы с бубном, описаные раннее не [...]

Оставить комментарий

You must be Войдите в систему , что бы оставить коментарий.