I don’t know anything about the TD codebase, but macOS is built on a fork of BSD, which is a different branch of the POSIX family tree than Linux, which grew out of GNU. They have differently structured kernels and system calls. The gcc toolkit is available on both which streamlines compiling applications on both, but even that requires the availability of dependencies. I wouldn’t care to speculate what sort of crazy dependencies Touch has.
Linux supports pretty awesome graphics. NVIDIA (Derivative’s favourite) has great driver support on Linux, though I think the kernel yells at you for using closed source drivers (non-gpl, taints kernel…). Never tried using CUDA on Linux, but afaik, that’s the preferred platform for most of NVIDIA’s HPC GPU stuff (ie: Machine Learning)
Yeah, I used to think this too, but there are varieties of Windows (IoT now, and ‘Embedded’ before) that are made for creating smaller, more targeted system images. I think that there is some selection bias here. Most of us will probably never use a build of Windows that isn’t in the ‘Pro’ or ‘Server’ family but, other variants do exist. They just don’t get advertised as much.
Many of these applications didn’t decide to jump ship from macOs and Windows to Linux. The vfx farms of yore used to be built on large networks of SGI/IRIX boxen, and transitioned (mostly to redhat) as SGI began to implode, because they had administrative infrastructure/practices for supporting POSIX type environments.
Touch’s UI seems to run inside an openGL viewport, so I imagine getting that part to run on Linux would be fairly straightforward. Then comes the obnoxious bit. Supporting networking, fs and third party APIs across three platforms would require more testing. This slows down the development of new features, and leads to scenarios where ‘such and such a feature’ is broken on one platform and not another. A developer who is solving these inconsistencies is not adding awesome new fun stuff to Touch instead.
We already see bugs tagged for macOs and not Windows. I think folks like elburz dissed the macOs port on another thread a couple years ago because they’d prefer to see Derivative focus all development resources on growing the feature set, rather than solving inconsistencies between platforms.
There are only so many hours in the day.
I would loooooove a Linux port. I’d also like a Tesla, a pet serval, and to live in the Hundertwasser House in Vienna.