Da sempre Apple ha un rapporto abbastanza contrastato (per non dire ambiguo) con il software libero, dai battibecchi con gli sviluppatori di KHTML/WebKit fino alle clausole aggiuntive sulla licenza di CUPS per evadere la GPL.
Le regole stabilite da Apple per lo sviluppo delle applicazioni per iPhone e iPod Touch non sembrano essere particolarmente attente alle esigenze legali e filosofiche legate al software libero e open source.
Nathan Willis, per conto di Linux.com, ha analizzato in dettaglio le implicazioni delle restrizioni imposte da Apple. Innanzitutto l´obbligo di distribuire le applicazioni solo attraverso l´iTunes Store cozza con la GPL3, in particolare con la clausola anti-TiVo che non permette al codice GPL3 e ai suoi derivati di essere protetto da modifiche. E se anche le altre licenze GPL lasciano la possibilità di modificare il codice, il programma così modificato non può comunque approdare sull´iPhone senza l´approvazione di di Steve Jobs e soci (cosa non scontata e che prevede il pagamento di una quota annuale). E non è tutto.
Andando oltre, il provetto sviluppatore iPhone accetta di non divulgare nessuna informazione sul design e le caratteristiche del prodotto, inclusa la documentazione delle API (Application Programming Interface). Un programma open source che utilizzi le API dell´iPhone le metterebbe in bella mostra.
Senza dover scendere ulteriormente nei dettagli, le scelte di Apple per lo SDK dedicato ad iPhone e iPod Touch sembrano andare a senso unico: da un lato gli sviluppatori liberi sono palesemente ostacolati, dall´altro Cupertino usa abbondantemente software open source per far funzionare i suoi gioiellini. Dal KHTML/WebKit a SQLite, passando per librerie e parti del kernel direttamente derivati dal codice di FreeBSD.
Per quelli che camminano da questa parte della strada forse è meglio aspettare Android.