macOS Catalina sustituirá Bash por Zsh como intérprete de comandos por defecto
Como no podía ser de otra forma, la conferencia WWDC 2019 de Apple ha dejado bastantes noticias de interés. La compañía con sede en Cupertino no ha tenido mucho protagonismo en MuyLinux en los últimos tiempos debido a su distanciamiento cada vez mayor del ecosistema FLOSS, sin embargo, la próxima versión del sistema operativo macOS, Catalina, va a incluir un cambio que sí resulta de interés tanto para los usuarios de la marca como los seguidores del software libre en general.
Según se han hecho eco en The Next Web, Apple ha anunciado que Bash va a ser sustituido por Zsh como intérprete de comandos por defecto en macOS Catalina. La razón de este cambio es bastante simple y tiene que ver con las licencias, ya que las versiones más recientes de Bash han sido publicadas bajo GPLv3, una licencia que puede terminar yendo en contra de los intereses de la compañía. Debido a esta situación, Bash ha sido mantenido como intérprete de comandos predeterminado en OS X/macOS, pero utilizando la versión 3.2.57, que fue publicada en 2007 y mantenía la GPLv2. De hecho, no es la primera vez que la compañía de la manzana mordida se enfrenta a algo parecido, ya que a principios de década sustituyó Samba en OS X Lion por su propia implementación de SMB/CIFS por el mismo motivo.
La GPL es considerada como una licencia de software libre “dura” y fuertemente orientada a proteger al usuario, cosa que se ha intentando reforzar en su tercera versión. Comparada con la versión anterior, la GPLv3 incluye términos que prohíben a los vendedores el impedir a terceros instalar su propio software. En segundo lugar se puede destacar la cláusula antipatentes, que otorga explícitamente una licencia a cualquier patente asociada, aunque este punto solo se aplica en la medida necesaria para utilizar el código. El tercer punto importante es otra cláusula sobre patentes que intenta proteger al usuario de las consecuencias de acuerdos entre propietarios de patentes y aquellas partes que licencian bajo GPL beneficiando solo a algunos licenciatarios. Aquí se puede poner como ejemplo los acuerdos entre Microsoft y Novell/SuSE.
Por su parte, Zsh utiliza una licencia parecida a la MIT, lo cual da Apple muchísima más libertad para tratar el software bajo las condiciones que crea pertinentes. La búsqueda de una mayor permisividad en los términos de las licencias es algo en lo que la compañía de Cupertino lleva muchos años trabajando, ya que entre OS X 10.5 Leopard y macOS 10.12 Sierra la cantidad de aplicaciones GPL preinstaladas en el sistema operativo ha bajado de 47 a 16. Por otro lado no hay que olvidar el relicenciamiento de CUPS, que pasó de usar GPLv2 a Apache License 2.0, la cual resulta más permisiva.
Como ya hemos dicho, Apple cambia Bash por Zsh por cuestiones de licencia, sin embargo, este movimiento podría terminar afectando negativamente a los usuarios que tienen scripts en Bash con los que automatizan o bien realizan diversas tareas en el sistema, por lo que a partir de macOS Catalina este intérprete de comandos tendrá que ser instalado manualmente.