В чем сложность портирования приложений с mac на линукс?
основная сложность - несовместимые/закрытые системные API/фреймворки/либы. 
если приложение изначально не писалось с прицелом на кросс-платформенность, то зачастую проще написать с нуля, чем портировать.

и не забываем, что для портирования нужен исходный код. который у большинства профессионального десктопного софта закрыт.

что касается безопасности, то основная ей угроза - сам пользователь.
Хотя бы сложно переносить потому что макось одна, а Линукс - это целое семейство порой довольно разношерстных дистрибутивов с разным набором ПО, таким как графическое окружение. Отсутствие стандартов среди дистрибутивов, как таковых.