Apple Sucks

A couple weeks ago, I spent some time making Tangerine work on Windows. After I got it working, I started looking into creating an installer and all that stuff. Aaron recommended Inno Setup, so I got that and went to work. I pretty quickly had a basic package working, but it needed to handle installing the various dependencies still.

Microsoft has a neat little bootstrapping utility which you can include in your installer to make sure various components (such as .NET 2.0) are installed, so that bit was easy.

The other dependency it needed to install was Apple’s Bonjour, so I start poking around on Apple’s site to see if they have some kind of cute installer for it. I discover that they do, but they require you to get some kind of license from Apple. Ok, how bad could it be? I start to look through it. There is the normal legal crap, blah blah blah, then I hit the real requirements. I am not a lawyer, but my understanding is that I would need to do the following things in order to distribute my Bonjour-using application (not just their installer):

  • Provide Apple with 2 samples of the application, on physical media, delivered to them 4 weeks before each release.
  • Provide quarterly reports on the number of Bonjour copies distributed in the previous quarter.
  • Use the Bonjour logo on any manuals included with the application

I am sure a more astute reader could probably find more nastiness. No wonder there aren’t any Windows apps out there using Bonjour. If Apple really doesn’t want people to use it, why don’t they just come out and say it? We need to port Avahi to Windows and crush them into obsolescence.

Update: Luis has added that they can also change the software or license at any point without warning and force me to use that. Nasty.

11 Responses to “Apple Sucks”

  1. michel Says:

    in fact, the bonjour licence was so restrictive it forced gnome people (and other on freedesktop.org) to create avahi.

    now you know why.

    ho, and I’m fond of apple hardware and software. I have a few macs, but yeah, sometimes apple sucks. long live gnome :)

  2. Mark Pinto Says:

    Mind naming that Microsoft utility? I’ve been looking for something similar and I’ve come up blank. Thanks

  3. Winfried Maus Says:

    So what is the big deal?

    1. Yes, they want a package of your application as it will be received by your customer. This is normal in many technology partnerships, and one of my former employers requested the very same from its technology partners.

    2. Yes, they want to know from you how many copies of -THEIR- software you have shipped with your software. This is legitimate. I am quite sure that you also like to know how many copies of your software are around. Especially when it is a strategic product. And please don´t tell me it is a huge effort to send a quarterly email.

    3. Yes, they require you to use the Bonjour logo in the manual and even on the product CDs and packaging. They don´t charge you for it, so, again: What is the big deal here? And what sense does it make to distribute a Bonjour-compatible software without the Bonjour-logo? For -your- software, I mean.

    You think this license is restrictive? Then please tell me what the GPL is in your opinion? The most restrictive Open Source License available, yes, that´s right. At least Apple does not ask you for your source code to use their technology. Which, by the way, would already kill many small businesses.

    I think this is a fair deal: You get some useful technology for a very cheap price - you give them a copy of your work, put their logo on your software box (which helps increase the distribution of your product) and you keep them updated on the amount of Bonjour copies that you are shipping. They don´t ask you for a percentage or stocks.

    And if you still have so much trouble with that license: Did you get in touch with them directly? And what was their reaction?

    Depending on the respective project, I find this specific Apple license more acceptable than the GPL. I have written GPLed software myself in the past, but only when I -wanted- to give away my code. However, I also have projects in the work where giving away my code simply is not an option, but giving away a packaged copy of my work and some distribution numbers would not hurt at all.

    So I just don’t get the point of all that excitement.

  4. snorp Says:

    Mark: no problem

  5. Luis Says:

    From IRC:
    snorp: so, besides what you said, they can change the software and their license without warning to you, and make you switch to the new software and license or take down your software
    snorp: so if they change the licensing to ‘pay us your first-born child’, you have to do that, or take down your software
    snorp: or if they change the API so that it is only accessible via ocaml, ditto
    snorp: however, I think you got the signs reversed on the notification provisions
    snorp: you have to provide within four weeks of release, not four weeks before, I’m pretty sure

  6. Sam Morris Says:

    Is it possible to run both avahi-daemon and mDNSResponder at the same time? If not then I guess we are in for a Battle of the Stacks…

  7. snorp Says:

    Winfried: You make some good points, comments below:

    1. Yes, they want a package of your application as it will be received by your customer. This is normal in many technology partnerships, and one of my former employers requested the very same from its technology partners.

    I guess I didn’t consider it a “partnership”. I am just a guy trying to use a (supposedly Free) piece of software infrastructure. Microsoft doesn’t require me to send them packages every time I write something with the .NET framework or DirectX, do they?

    2. Yes, they want to know from you how many copies of -THEIR- software you have shipped with your software. This is legitimate. I am quite sure that you also like to know how many copies of your software are around. Especially when it is a strategic product. And please don´t tell me it is a huge effort to send a quarterly email.

    I suppose I can understand why they would want those numbers, but it really restricts the rights of my application. For instance, I can’t really give people the right to redistribute it freely. And while it’s not a huge burden to send an email to them once a quarter, I have to do it forever, or they can terminate my license.

    3. Yes, they require you to use the Bonjour logo in the manual and even on the product CDs and packaging. They don´t charge you for it, so, again: What is the big deal here? And what sense does it make to distribute a Bonjour-compatible software without the Bonjour-logo? For -your- software, I mean.

    Bonjour is an implementation detail. I don’t see what place it has in user documentation. People don’t care that my app uses Bonjour, and there’s no reason that they should. The only thing they care about is that it works with iTunes/Rhythmbox/Banshee/whatever.

    I agree that the GPL is pretty restrictive for things like libraries. That’s why the LGPL exists.

  8. jba-mono Says:

    Hi Mate,

    Just thought you might like to know, it is possible to use the msi format to check for existence of externally installed dependencies and exit the install if it’s not there.

    Doesn’t help you make it easier for your users to use your system, but does enable you to re-distribute your system without actually redistributing this “free” software from Apple.

    jba

  9. snorp Says:

    jba: unfortunately, the license is required not only to distribute Bonjour, but also to use it in my application.

  10. Anonymous Says:

    Or, instead of whining you could just compile the Open Source version that Apple (also) makes available, which doesn’t have *any* of these restrictions.

    http://developer.apple.com/opensource/internet/bonjour.html

  11. xerxas Says:

    Yes, totally agreed, avahi needs to be ported to windows.
    Avahi is so much better than bonjour is, it has plenty of features ans is easy to configure.

Leave a Reply