Lately someone asked me for help with his Zarafa-Server on his RaspberryPi 2 (ARM). He tried to build an installation package with my MAKEPKG file from Archlinux User Repository. But shortly I realized that it’s a pain compiling with gcc 5 on his system.
So that nobody else has to go through this, I decided to create a package repository for Arch Linux ARM. There you’ll find the latest build of Zarafas installation packages for Odroid and Raspberry Pi 2 devices.
Since I’m using this packages on my own, I can tell it’s working by the day it’s created. Future versions will be released as soon I proved them working integrated with the other Zarafa related packages.
Quick Demo – Running on Raspberry Pi 2
So what’s in there?
- zarafa-server => Server with database, settings and locally trusted certificates
- zarafa-libical => Libical with zarafas patches
- zarafa-libvmime => Libvmime with zarafas patches
- zarafa-webapp => Modern WebClient
- zarafa-webapp-clockwidget => Clock for dashboard
- zarafa-webapp-contactfax => Create mail with contacts fax number
- zarafa-webapp-delayeddelivery => Schedule mails
- zarafa-webapp-filepreviewer => Viewer for attachments
- zarafa-webapp-files => OwnCloud / WebDAV integration
- zarafa-webapp-folderwidgets => Mailfolders for dashboard
- zarafa-webapp-gmaps => Show contacts address on google maps
- zarafa-webapp-mdm => Mobile Device Management
- zarafa-webapp-oauthlib => Create API classes with OAuth authentication
- zarafa-webapp-passwd => Change your password from WebApp
- zarafa-webapp-pimfolder => Quickly move your mail to another folder
- zarafa-webapp-quickitems => Create items from dashboard
- zarafa-webapp-smime => S/MIME integration
- zarafa-webapp-spellchecker => Spellchecker
- zarafa-webapp-titlecounter => Unread messages counter for browser tab
- zarafa-webapp-webappmanual => Link to manual in toolbar
- zarafa-webapp-webodf => Viewer for attached WebODF documents
- zarafa-webapp-xmpp => XMPP based chat client
- sabre-zarafa => CardDAV
- z-push => ActiveSync
Read on my next post how to install, run and access the server.
Links
32 thoughts on “Zarafa packages for Arch Linux ARM / x86 / i686”
Looks very interesting. I am going to try this one to create a power efficient little mail/calendar server at home. Thanks for sharing!
maarten
Awesome! Maybe you’d like my last post? It didn’t take me more than 15 minutes to have it running 🙂
admin
“Path /$arch/$repo not found in local storage of repository “Archlinux” [id=archlinux]”
warning: database file for ‘pietma’ does not exist
Packages are not available anymore?
Marco
Hey Marco!
I just tested it. The repository is fine. But your pacman seems not to replace the placeholder $arch and $repo. This is why the repository server’s keeps telling you ‘Path /$arch/$repo not found’.
Can you please post your entry from your pacman.conf? If this is no option you can try placing this absolute url ‘https://repository.pietma.com/nexus/content/repositories/archlinux/archv7h/pietma’.
MartiMcFly
martimcfly
Well, after a little talking we found the problem. Pacman has to synchronize packages and download a fresh copy of the master package list from the server first.
I updated my post with this detail…
pacman -Sy
MartiMcFly
martimcfly
I’m going to try this tonight on my (original) Banana Pi. I’ve been wanting something like this for ages, thank you! I know it may not work on that hardware, but worth a go. Anyone tried it?
RobJ
Since each BananaPi-Model is based on ARMv7, all of them should be working 🙂
martimcfly
I get the error message: Cannot resolve z-push
Where I can find the dependency?
I use arch linux 4.1.19-2-arch
Best Regards
Felix
Hey!
Z-Push has been uploaded but not added to the repositories index for some reason.
Just retry installation => pacman -Sy z-push
Sorry for the inconvenience.
Marti
martimcfly
Hello,
first of all thank you for your work an tutorial!
After a few days zarafa and fetchmail works well on my raspi 3.
But with postfix I had problems. After installing (3.1.0-4) I get the error message:
postfix: error while loading shared libraries: libicui18n.so.57: cannot open shared object file: No such file or directory
Installed is libicui18n.so.56 from pietma.
I have run update-system.sh, no success.
Do you have any Idea?
Thanks
Norbert
Hey Norbert,
I’m sorry for this inconvenience. Basically this is because Zarafa has been compiled against icu-56. For this reason ici-56 is provided by pietmacom and the updatescript won’t update to icu-57 from the official repository. But Postfix has been coming from official repository and is compiled against icu-57. Just downgrade to the last working Postfix version working with icu-56 located in /var/cache/pacman/pkg/postfix-* . You can install it with ‘pacman -U postfix-XXX.pkg.tar.xz’
Currently I’m automizing the build process so Zarafa will be compiled and tested periodically against the newest libraries. With this change you shouldn’t need the updatescript anymore. During the last run I havent released the Postfix version that is working with icu-56 so it had to be installed from the official reporitory.
I’m able to fix that next friday.
Marti
MartiMcFly
Hi Marti,
thanks for your fast response.
Because I had no older version of postfix installed there is no entry in /var/cache/… ;-(
Google can’t tell me a postfix version with icu-56. So I downloaded postfix-2.11.3-2 (last version 2) and tried it. And yes it works 😉
Maybe this helps other.
Best regards
Norbert
Norbert
Great to hear!
Usually I don’t delete packages from my repository. I just add new and update the index. In case anybody else needs an older package or dependency, than you can browse the repository and download it form there.
https://repository.pietma.com/nexus/content/repositories/archlinux/armv7h/pietma/
https://repository.pietma.com/nexus/content/repositories/archlinux/i686/pietma/
https://repository.pietma.com/nexus/content/repositories/archlinux/x86_64/pietma/
MartiMcFly
MartiMcFly
Now the repository is re-generated every week (tuesday) against the new libraries from Archlinux. Except for those known to cause problems within Zarafa. And again, Postfix is uploaded to the repository.
You can go with mentioning pietma before the first system repository in /etc/pacman.conf and simply run ‘pacman -Syu’. The updatescript is no longer needed.
https://pietma.com/update-zarafa-on-arch-linux/
Marti
MartiMcFly
Hy Marti,
until a few days ago your repository worked with http. Yesterday, pacman -Sy said “could not find homepage. I changed http to https in pacman.conf. And now I got the error:
error: failed retrieving file ‘pietma.db’ from repository.pietma.com : error setting certificate verify Locations
CAfile: /etc/ssl/certs/ca-certificates.crt
CApath: None
pacman -S ca-certificates did’nt help.
Can you help me ?
Regards,
Stephan
Stephan
Hey Stephan,
the problem seemed to be on my end. After almost 6 months without problems it seems yesterday the repository server crashed. It’s back now! 🙂 Eventually I might move the repository to another provider. But even there I’m going to expirience downtimes.
Both http and https can be used to reach the repository. I’ve just added https as an option. So there’s no rush to change anything 🙂
Sorry for the trouble and thanks for calling me up!
Marti
MartiMcFly
Hi Marty,
I’m trying to get zarafa working on my Raspberry Pi 2 and was following your nice installation guide.
But for some unknown reason when start the installation
proces: “pacman -S zarafa”.
I get on the zarafa-server line the following error:
( 3/27) installing zarafa-server [##########] 100%
/usr/bin/bash: post_upgrade: command not found
error: command failed to execute correctly.
The rest is installing nicely as expected.
I also updated the pacman database and is up-to-date.
Do you have an idea what I’m doing wrong here?
Regard,
Chris
Chris
Hey Chris,
thank’s for the feedback! I’ve been bit busy with updating all packages to 7.2.3.
This bug has come from a missing update function (post_upgrade) in the installation script. Usually this hasn’t been a big deal, since the package has been installed fine anyway and the installation hasn’t been canceled.
I’ve fixed this issue by creating a dummy post_upgrade – function. It’s returning a success signal now => #!/bin/bash; return 0 .
Just retry the DB update and installation in one-step 😉
pacman -Sy zarafa
Marti
MartiMcFly
First, thank you so much for making these packages available.
Any chance you are working on or can produce an ARM aarch64 version of the Zarafa packages? The 32bit arm7h packages work great on the pi. Was hoping to install on an ODroid C2.
Paul Golownia
Hey Paul,
I think this shouldn’t be a big deal. The complete build setup is platform independent and as long archlinuxarm.org serves images, I am able to build for it. In whole, we might be talking about 5 days of work.
Right now I don’t own any Odroid C2 and I don’t plan to buy one for myself. Which is the biggest obstacle.
However, if you like to support me and wish to have packages build for it regularly, you’re welcome to donate an Odroid C2 to pietma.com 🙂 ?
http://www.pollin.de/shop/dt/ODY0OTgxOTk-/Bauelemente_Bauteile/Entwicklerboards/Odroid/ODROID_C2_Set_mit_8_GB_eMMC_Modul_Gehaeuse_und_Netzteil.html
http://www.pollin.de/shop/dt/ODA1OTgxOTk-/Bauelemente_Bauteile/Entwicklerboards/Odroid/ODROID_C2_Einplatinen_Computer_1_5_GHz_QuadCore_2_GB_RAM_4x_USB.html
On the other hand, you could use any other armv7-based device installed with archlinuxarm to use these packages.
Marti
MartiMcFly
Happy to donate! Let me know how I can send one your way. (or make a donation). Also would be happy to give you ssh access to my C2(pass along your pub key).
Paul Golownia
Hey Paul,
I have to setup a compilation environment on the Odroid C2 (libraries, keys, updates, settings…). This is not only a lot of work, it does not fit very well with the objectives of a productive mailserver, too. Compilation needs a stable system and Mailservers need an up to date system. It’s no fun fixing errors/crashes often. In addition, when build servers crash, as they tend to do, I need access to it. These circumstances would drive you crazy on a productive mailserver 🙂
If you still wish to donate an Odroid C2, then I’ll do my best to create zarafa packages for it. You will be the first, who is able to test it 😉 In case things will not work out within the next two weeks, I will send the Odroid back to the seller and refund your money.
Odroid C2 and case cost about 63 Euro.
Odroid C2
Case
You can donate the 63 Euro with Paypal by the button on my website or this link.
Donate
Thanks!
Marti
MartiMcFly
Really I’m happy to help. I’m using your packages either way. I may just switch to a 32bit system if you don’t have good luck with the aarch64 packages. Sending a donation your way. No need to refund if things don’t work out. I’m sure you can find a use for the C2.
Paul Golownia
Hey Paul,
thanks for the donation! The money arrived safe and sound 😉 I placed the order yesterday. As soon things are ready and tested, I will mention you on the announcement 🙂
I’m glad to hear, that you like my packages 😉
Thanks again!
Marti
MartiMcFly
I’m just configuring the odroid c2.
MartiMcFly
Thanks for the quick work!
Paul Golownia
Hey Paul!
I’m glad to let you know about the first release of Zarafa for Odroid C2 / aarch64 architecture!
Just follow the ordinary advice for installation:
https://pietma.com/run-and-access-zarafa/
https://pietma.com/install-run-and-access-zarafa-postfix-admin/
A first test on my side worked great.
Let me know, when anything doesn’t work!
Marti
MartiMcFly
Thanks! I’ll start now and report back.
Paul Golownia
Worked first try! No adjustments needed to the original install doc. I’ll work more this weekend on porting my working conifg and data to it.
Thank you so much for the fast and accurate work!
I’ll update again once I get more data loaded.
Paul Golownia
Marti – It’s been running flawless now for 2 weeks. server, search and postfixadmin all work great. I did switch to Percona MySQL because I had a couple power hiccups and mariaDB corrupted InnoDB every time. Thanks again for working so quickly. -PaulG
Paul Golownia
Thanks for testing and the feedback! I’ll create a post later.
Did you have problems with mysql after crashes or after powering off the device? – In this case you might want to disable the use of stored procedures in zarafa.conf.
You might start your server manually – no systemd autostarts. By this occasion you can check filesystem, mysql, and z-push states.
Marti
MartiMcFly
It was a very odd problem. It would occur after an accidental power failure. The corruption was within the INNODB table data and could not be repaired when mysql started back up and re-played the transaction log. Double write buffer and O_DIRECT are enabled. There must be some buffering that MariaDB does not disable which keeps some
“committed” writes in memory.
None of the myisam data was corrupted (ie the mysql.* tables). Nothing that mysqlcheck could repair.
Switching to Percona MYSQL and using InnoDB for all the Zarafa tables has been able to recover from power failures. (I did several tests of syncing mail data to Zarafa via imap while disconnecting the power) and each time Percona was able to re-play the logs and restore the table data w/o corruption.
There could be an bug in that MariaDB AACH64 package? Unfortunately I’m not as familiar with MariaDB as I am with the Percona distributions.
Paul Golownia