Hacker News new | past | comments | ask | show | jobs | submit login
Grommunio an open source Exchange replacement (grommunio.com)
104 points by rmason 32 days ago | hide | past | favorite | 59 comments

As someone who ran their own Exchange server for a couple decades and is tired of the deteriorating admin experience, this excites me.

Can anyone comment on how bug-free, battle-tested and performant it is?

Has anyone used Outlook Redemption against it (which IIRC exercises a lot of the MAPI protocol)?

Seems to be all c++. Likely performant but no way would I run this for my company. God knows how many security issues it has.

> God knows how many security issues it has.

Are you sure absolute omnipotence is sufficient to calculate that?

I'd bet on the omniscience part.

So this is an assemblage of FOSS software, presumably with a bit of custom glue software thrown in. The 5-user limit is if you want FREE-BEER support. It's not very clear.

I'd like to know what they used to build it. Postfix, apparently (good choice). I'd like to know what other components they are relying on:


Some OSS CALDAV server?

Many people have tried to implement a free version of Exchange Server/Outlook. Despite the overall crapness of both MS products, those people have struggled.

If these people have managed to do it using COTS FOSS components, I'd like to know what components they are relying on. They don't seem to be offering that information on their website.

There is a link to their GitHub page on the website.

Interesting...seems a fork of kopano for some things https://marijuanapy.com/kopano-vs-grammm-dispute-over-open-s...

They then use upstream of jitsi onlyoffice and piler for video chat files and archiving.

As an old Exchange admin and e-mail product manager (back when telcos were selling Blackberry and ActiveSync services), I'm fascinated that this exists and can run on a Raspberry Pi today.

Have to give it a try...

Delighted to hear about this. I'm very over the limitations of the outlook/o365 solution I use for my personal mail.

I give a different address for every sign-up.

Outlook connecting to a mapi account just won't let you do that. No matter what you set as a from:, some genuine mailbox address gets inserted into the headers.

On-prem exchange had powerful transport rules. O365 has toy transport rules.

Obviously the answer is to move to IMAP and, probably, change hosting provider. But I'm really familiar with mapi, outlook anywhere, and all the good bits of the ecosystem.

Might have to consider going back on-prem, this may be the answer. Certainly not running full-fat exchange in my house.

Claims to support mapi. Devil is in the details. (MS Word's doc format is nominally an open standard, good luck anyone trying to implement it though!)

Tangent, apologies! But vaguely related to topic of mail migrations.

What are people using as desktop mail clients on Windows?

I think I'm finally ready to drop outlook

- keyboard navigation is shit - modal dialogues everywhere - obstinate about headers on outbound mail

I had a look at emClient but the trial ran out before I could evaluate it, lol. I'll spend money but not without evaluating it first.

I need: - good search - flexibility of outbound "from" address - strong rules and filters. Ability to run external script on an incoming mail would be a game changer.

Thunderbird is too graphically ugly for my eyeballs. I want a product that looks like it was developed after 2003...

Getting used to Thunderbird's appearance is probably worth it. It's just a question of habit and the UI itself is very efficient.

It can be customized, too, I think, but I have never bothered with this.

It seems to fulfill your requirements.

I use Postbox on Windows at least. Have done for years. Far from perfect, based on Thunderbird so under the hood pretty solid, and looks and feels better mostly.

I really like the concept, the only thing I'd nitpick is that I didn't quite dig the stack spread (C++, go, php and python) and that I found the grommox code very hard to follow, not due to the inherent complexity of the tasks but because of how inconsistent and messy the code is which makes it difficult to consider it an improvement.

Took me a while to find the protocols it actually supports:


I'm midway migrating my own Exchange infra to Azure, if I wasn't I'd give this a serious look.

I used to run an exchange4linux server as well as another open-source variant before that (but forgot the name... This must have been 20 years ago). The biggest issue was always the Outlook plugin that had to be used, so if Grommunio has really managed to do the communication with the server natively, this seems like a big win.

I would be fascinated to know

1) is anyone here using it at a scale of say 50+ users

2) What do the company housing this do? Paid support plans?

There's also SOGo (https://www.sogo.nu/), which I'd be interested to see how Grommunio stacks up against that. SOGo has been pretty reliable for my personal deployments.

Posting the GitHub profile since I didnt see it on the front page of their site:


Looks to be implemented in varying programming languages.

This reminds me of the old Samsung Contact product that I used to be a reseller for. That was based on HP OpenMail as a replacement for Exchange.

Wow, not sure I've seen a more messed-up page in Firefox on Android then that homepage!

I'm using FF on Android as well. It seems ok to me. Except for the contact button and the very big menu.

anyone else having trouble sign into the demo?

Free and "Opensource" for less then 5 users, to be more precise...what a stupid price-list.

It's straight up FOSS. What they're selling is support. I don't know if anyone responding here has read the rest of the Product page[1], but I thought it was quite clear:

> In order to be able to use the features with support...

> Our individual support services for the features of the product can be found below under ‘Packages & Pricing‘.

The comparison table distinguishes between features with and without support, and "Support not included" in the part of the table that is just about support. They never mention selling anything but support.

[1]: https://grommunio.com/product/

Sure, but then they say "Community - Max 5 user - free" (on the page you link), and Community has no support. The point is they can't restrict the user count on a piece of AGPL software they aren't providing any hosting or support for.

I suspect it's a mistake on the website tbh.

I suspect what they mean by "max 5 user" (based on my experience dealing with enterprise software vendors) is that the terms of the "community" support plan covers deployments with up to that many users - i.e. there's nothing technically stopping you from creating more users, just that it would be outside the terms of whatever support contract exists for that "community" "price" tier.

This is consistent for a lot of enterprise software out there, where the software won't necessarily prevent you from creating more users than you have licenses/seats for, but the vendor will absolutely bring this up when negotiating a renewed support contract. Only difference here is that the support is licensed separately from the software itself (whereas for proprietary enterprise products they're usually one and the same).

But there isn't any support on the "community" price tier. The linked page makes that very clear. (And it's hardly suprising, providing support to non-paying users would make no business sense.)

What clause of the AGPL forbids this?

It's more that the AGPL allows you to use the software without any such restriction. If they license it under the AGPL you can use it with as many users as you want. In fact it requires that if you host an instance you make the code available to the users, for them to use/host/modify/distribute themselves (section 13, "Remote Network Interaction").

They could publish it under a modified AGPL, an "AGPL with user count restriction" of some kind (which wouldn't be AGPL at all - they would have to modify it heavily for it not to be a self-contradictory mess). However:

A) They would need to own the copyright in all of the code involved so they can publish it under whatever license they want. To the extent their system contains GPL/AGPL code copyrighted by others (and I expect it does), distributing it under an incompatible license like this would be a copyright violation by them against the owners of that code. (This is in section 10, "Automatic Licensing of Downstream Recipients", where it says "You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License.")

B) There is no indication they are attempting to do this, other than that one mention on pricing page, which I suspect is a mistake. The repos simply contain the AGPL license.

Sorry, I still don’t see why having user count limitations would be a violation. The way I read it, they are compliant with Section 13. They are providing access to source code, as required.

Section 10 just says that they can’t litigate if I use/modify their freely available source code how I please.

Let’s say somewhere in their code there is a check for “user_count <= 5”. This isn’t a downstream restriction of GPL rights, it’s just a part of the code as they wrote it and I’m free to change it, as long as I make my changes to the code accessible.

I don’t see why this technical limitation would infringe any upstream GPL rights either.

Are you claiming there is such code? It would be a bizarre and pointless thing to add.

Edit: To be clear, we are talking about different things. I assumed you meant placing a licensing requirement of only 5 users, which would not be possible for the reasons I explained. You appear to be talking about putting a restriction into the code, which as you say would not be prohibited by the GPL, but which would be entirely pointless for obvious reasons. It's an interpretation of their pricing plan that I hadn't considered, though, and I'm curious if that's what they're doing.

>It's straight up FOSS

No it's not if you HAVE to pay when you have more then 5 Users. What other big established OSS-Project makes something like that...NOT A SINGLE ONE.

>The comparison table distinguishes between features with and without support,

And the maximal users...just read under Package Community. Since it's not a Service but Software i see not point in restricting the usage, and not sure if it's even possible under (A)GPL.

I think you're misunderstanding the GPL. From the top of the Preamble section:

> When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish)

You are free to modify Grommunio's freely available source code and remove any user cap limits, as long as you make your source code changes available.

In fact I'm fairly certain that Section 10. "Automatic Licensing of Downstream Recipients" protects your right to make this modification:

> You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it.

I’m curious where you think this price model isn’t allowed under the GPL.


(I am not a lawyer.)

Since it's opensource you can change the code (remove the restriction, and release a 1to1 fork/patch without restriction), and this is why it make no sense to implement such a restriction in the first place.

And this is why NO OTHER A/GPL project does that, understood?

The reason could be as simple as to add just enough friction to nudge people towards a paid support plan. We agree that it's a silly way to create a value add, and we both agree that it's unenforceable because of the choice to license under (A)GPL.

You're being needlessly hostile and made vague claims about whether or not something like this even allowed under GPL. You haven't demonstrated that this isn't allowed, and that's all I was pointing out. Understood?

I still wait for an example which other A/GPL project thinks that's a good idea or even implements such a restriction...understood?

Are you serious? Where did I say this was a good idea? As for an example, I don’t know, Red Hat Enterprise Linux? They charge $349 with no support for a single license.

Another extremely stupid price-list...maybe add oracle to your crown-jewels?

Red Hat was bought for $34 billion built on open source software. You can’t sit there and tell me that’s stupid with a straight face.

It's free for less than 5 users and the "open source" part is open source no matter how many users you're using. Not sure where you get the part that it's not open source once you're above a certain number of users?

The repository/code is the same for all plans: https://github.com/grommunio

Again the price-list is pure stupidity. And limiting the usage of a "Opensource" product is even more stupid.

>It's free for less than 5 users and the "open source"

That's not how Free (yes it's AGPL) and Opensource Software works. In fact i am not even sure if one could do that under the GPL. Give me ONE single other FOSS Project where you have such a restriction (remember it's not a service but software, running on MY instance), restricting the USE and function of the Software on YOUR Computer was probably the first or second point to even invent the GPL.

> Again the price-list is pure stupidity

Could you try to specify why exactly you think so instead of just spewing your opinion without any sort of reasoning?

> And limiting the usage of a "Opensource" product is even more stupid

Again, why? You seem to be confusing the meaning of "free"/"gratis" with "open source". The code is public and released under the "GNU Affero General Public License", making it open source and even copy-left. What more can you ask for (besides "I WANT FREE/GRATIS SOFTWARE" which is what you seem to actually be annoyed about)

>Again, why?

Limiting the USE of a opensource product is a stupid thing todo. The great thing about OSS is that your NOT dependent on a Manufacturer, but here you are if you have more than 5 users (that makes it even worse). IF your are truly OSS don't restrict your product on usage, but present a great Support-Team.

This is not better then ANY Microsoft product with it's CAL's, but MS is probably not going bankrupt in the next 5 years, DONT artificially restrict the USE of your Product!

It is a bit weird. AFAICT this isn't a hosted service. It's AGPL code you host yourself, and yet as nix23 says, at https://grommunio.com/product/ there's:

> Community

> max. 5 user – free

With no further explanation (the site isn't very clear generally).

IANAL but I don't think you can do that with AGPL. If it's AGPL licensed and you're hosting it yourself you can use it for anything as long as you abide by the terms of the license (including the "Affero" bit).

It would be different if this were (A)GPL code together with a hosted service you can use free with up to 5 users, but I think that's not what this is.

Edit: The thing they're selling appears to be support and limiting free support to 5 users would be fine (and generous!) but they make it clear with Community you don't get any support so I don't see any basis for restricting the number of users.

It's doesn't limit the use of the software, it limits the use of their instance.

The licence is GPL, you can use it the way you want on your own machine.

>It's doesn't limit the use of the software, it limits the use of their instance.

Same same, it's Not a Service but Software, so it's MY instance.

>The licence is GPL, you can use it the way you want on your own machine.

That's the problem..i cant (5 User limit)...and btw it's AGPL

Is the limit in open source code? If no, where is the problem, if yes, remove it, it's open source.

It's not hosted afaict. They're selling support.

I read it as limiting the number of users of the downloadable ISO or VM appliance from their website.

The code itself is PHP (server-side), Javascript (browser-side), and Python (API). I didn't click through the other components.

They don't say anything to that effect, and I think they could only do that if they held the copyright to all the code (which I doubt they do) and released the ISO/VM under a different (non-GPL) license.

never heard of this, it took me 3 clicks to find that:

1) "grommunio is an open source based groupware product with supported features and offers companies and users various packages as subscriptions." https://grommunio.com/product/

2) the actual open source project grommunio is based on is called Gromox https://gromox.com/

Then don't click, but read would be the great idea -> Community Max 5 Users.


And what prevents you from downloading the code, compiling it yourself and using it for any number of users?

In the true spirit of opensource, make some barriers in your code.

So the barrier is in the code or is it not?

Is it a sensible thing todo then? It's completely senseless to implement such a restriction in a opensource software.

What other GPL project thinks that's a good way to force someone to pay you?

You didn't answer the question. Is the 5 user limit part of the code in the repository?

What other GPL implement such restrictions?

Think about the logic here and you can answer your question yourself.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact