Volevo davvero commentare, non rispondere. Ma giusto per essere precisi, OSX non è basato su BSD, è un'evoluzione di NeXTStep. Il sistema operativo NeXTStep utilizza il kernel Mach sviluppato da CMU. Originariamente era stato progettato come un MicroKernel, ma a causa dei limiti prestazionali, alla fine decisero che era necessario includere la parte Unix dell'API nel kernel stesso e quindi un "server" compatibile con BSD (originariamente destinato a elaborare le richieste per BSD-compatibile messaggi del kernel) è stato spostato nel kernel, rendendolo un kernel monolitico. Potrebbe essere compatibile con BSD nell'API di programmazione, ma NON è BSD.
Il resto del sistema operativo prevedeva ObjectiveC (in accordo con Stepstone e Richard Stallman di GNU/GCC) con una GUI basata su una tecnologia chiamata "Display Postscript"... una specie di X Server, ma con comandi postscript. OS X ha cambiato Display Postscript in Display PDF e ha aumentato i requisiti hardware generali di 1000 volte (NeXT poteva funzionare in 8-16 MB, ora hai bisogno di GB).
A causa dello stretto matrimonio tra GCC e Objective C e NeXT, la soluzione migliore per eseguire XCode in modo nativo sotto Linux sarebbe eseguire un porting (se riesci a procurarti la fonte - buona fortuna) utilizzando le librerie GNUStep. Originariamente progettati per la compatibilità NextStep e poi OpenStep, ho sentito che ora sono più o meno compatibili con Cocoa, ma non ci gioco da quasi 2 decenni. Ovviamente questo ti porta solo fino a ObjC, non a Swift, e non so se Apple lo renderà OpenSource.
La toolchain di basso livello per Xcode (la famiglia di compilatori gcc, il debugger gdb, ecc.) è tutta open source e comune alle piattaforme Unix e Linux. Ma l'IDE - l'editor, la gestione del progetto, l'indicizzazione, la navigazione, il sistema di compilazione, il debugger grafico, la modellazione dei dati visivi, il sistema SCM, il refactoring, le istantanee del progetto, ecc. - è un'applicazione Mac OS X Cocoa e non è portatile.
Nessuno ha ancora suggerito Vagrant, quindi eccolo qui, box Vagrant per OSX
vagrant init https://vagrant-osx.nyc3.digitaloceanspaces.com/osx-sierra-0.3.1.box
vagrant up
e hai una macchina virtuale MACOS. Ma secondo l'EULA di Apple, devi ancora eseguirlo su hardware MacOS :D Ma ovunque, eccone uno per tutti voi fanatici che avete cancellato MacOS e installato Ubuntu :D
Sfortunatamente, non puoi eseguire gli editor dall'interno usando SSH X-forwarding
opzione.