macOS Catalina abandonne Bash pour Zsh, des soucis suspectés de licence

macOS Catalina abandonne Bash pour Zsh, des soucis suspectés de licence

macOS Catalina abandonne Bash pour Zsh, des soucis suspectés de licence

Dans macOS 10.15, alias Catalina, Bash n’est plus le shell Unix du système. Il a été remplacé par Zsh. Apple n’en donne pas la raison, mais The Verge pense la connaître : la licence.

La version de Bash fournie avec macOS jusqu’ici était en effet particulièrement ancienne. Dans Mojave, on trouve ainsi la mouture 3.2 qui date de… 2007. Si Apple n’est pas allée plus loin, ce serait à cause de la GPLv3, dont plusieurs clauses poseraient de vrais difficultés à l’entreprise.

La première empêche un revendeur quelconque d’utiliser du code sous licence GPLv3 sur des systèmes empêchant des tiers d’installer leurs propres logiciels. L’autre oblige l’éditeur publiant du code à fournir automatiquement une licence pour les brevets éventuellement associés.

En dépit d’une utilisation massive de l’open source dans ses produits, Apple cherche à se débarrasser du code protégé par la GPL depuis longtemps. En témoignait le bilan d’un développeur il y a quelques années : de 47 paquets sous licence GPL dans macOS 10.5 (Leopard), on n’en trouvait plus que 16 dans macOS 10.12 (Sierra). Zsh est pour sa part sous licence MIT, plus souple (et utilisée la plupart du temps par Microsoft pour ses projets open source).

Les développeurs devraient largement profiter du changement, quelles qu’en soient les raisons. Compatible en grande partie avec sh et bash, Zsh fournit des fonctions modernes que l’on peut attendre d’un shell Unix en 2019, comme la complétion de la plupart des commandes, une plus grande facilité de manipulation des variables et tableaux, les commandes multilignes dans un même buffer ou encore la personnalisation de l’invite.

Les développeurs sont évidemment invités à se pencher sur cet important changement, pourtant très discret. Apple ne l’a en effet pas abordé sur scène et le changement n’est pas même référencé dans la page contenant les changements apportés par Catalina.

Commentaires (31)


Hum… ça reste étonnant qu’ils remplacent bash sans période de transition…

Ca va piquer


J’utilise Zsh depuis des années en remplacement systématique de Bash, ce shell est simplement supérieur en tout point, notamment pour toutes les raisons que vous avez citées.



 Très bonne nouvelle pour ma part


Perso je suis passé de Zsh à Fish depuis quelques temps, je le trouve supérieur à Zsh en ergonomie et features de base (avec un petit oh-my-fish et fisher des besoins plus particuliers, là où oh-my-zsh est presque obligatoire pour avoir une bonne expérience de Zsh)


Il y a transition, puisque bash restera disponible dans Catalina, c’est juste que ksh sera le shell par défaut.


C’est vrai que la GPLv3 sur un système fermé bon…



Dommage, moi qui pensait qu’Apple allait laisser tomber le store obligatoire <img data-src=" />








KP2 a écrit :



Hum… ça reste étonnant qu’ils remplacent bash sans période de transition…

Ca va piquer







J’ai vu ça hier, j’ai regardé rapidement du coup ce qu’était Zsh, et c’est du bash en plus moderne. Potentiellement, si tu sais utilisé bash, zsh ne devrait pas te poser de problème.



Il y a des truc pas mals, par exemple en faisant 2 fois tabulation, tu obtiens la liste des options possible comme en bash, mais tu peux directement sélectionner l’option avec les flèches du clavier : c’est tout con, mais l’auto-complétion, c’est ce que j’attends d’un shell moderne. Je pense que les consoles devraient s’inspirer de ce qui se fait du coté des IDE.



Sinon, le passage des licence GPL au licence MIT ne m’étonne qu’à peine. Le GPL pose beaucoup trop de contrainte quand ton logiciel n’est pas destiné à être GPL. L’aspect contagieux de la licence GPL semble être une bonne idée, mais c’est aussi ce qui rend réticent son utilisation ailleurs que dans l’univers GPL.









Norde a écrit :



C’est vrai que la GPLv3 sur un système fermé bon…

Dommage, moi qui pensait qu’Apple allait laisser tomber le store obligatoire <img data-src=" />







Le store n’est pas du tout obligatoire sur macos







tazvld a écrit :



Sinon, le passage des licence GPL au licence MIT ne m’étonne qu’à peine. Le GPL pose beaucoup trop de contrainte quand ton logiciel n’est pas destiné à être GPL. L’aspect contagieux de la licence GPL semble être une bonne idée, mais c’est aussi ce qui rend réticent son utilisation ailleurs que dans l’univers GPL.







C’est juste la GPLv3 qui pose des problèmes (et elle est assez décriée au sein même du monde open-source d’ailleurs). La v2 a toujours permis la cohabitation de softs GPL et proprios sur le même système sans souci car la “viralité” ne concerne que le fait de copier du code, pas la simple execution.









tazvld a écrit :



J’ai vu ça hier, j’ai regardé rapidement du coup ce qu’était Zsh, et c’est du bash en plus moderne. Potentiellement, si tu sais utilisé bash, zsh ne devrait pas te poser de problème.



Il y a des truc pas mals, par exemple en faisant 2 fois tabulation, tu obtiens la liste des options possible comme en bash, mais tu peux directement sélectionner l’option avec les flèches du clavier : c’est tout con, mais l’auto-complétion, c’est ce que j’attends d’un shell moderne. Je pense que les consoles devraient s’inspirer de ce qui se fait du coté des IDE.



Sinon, le passage des licence GPL au licence MIT ne m’étonne qu’à peine. Le GPL pose beaucoup trop de contrainte quand ton logiciel n’est pas destiné à être GPL. L’aspect contagieux de la licence GPL semble être une bonne idée, mais c’est aussi ce qui rend réticent son utilisation ailleurs que dans l’univers GPL.





Oh bah si t’as aimé zsh pour ces raisons, tu vas absolument surkiffer Fish





et utilisée la plupart du temps par Microsoft pour ses projets open source



À quand des modules implémentés par Microsoft dans MacOS ? <img data-src=" />


Yep, j’ai vu ça en regardant Zsh. Maintenant, quid de la console qui va bien avec.








anagrys a écrit :



À quand des modules implémentés par Microsoft dans MacOS ? <img data-src=" />





Oh, on vit une époque où Microsoft fout un noyau Linux complet dans Windows alors bon …









Norde a écrit :



C’est vrai que la GPLv3 sur un système fermé bon…



Dommage, moi qui pensait qu’Apple allait laisser tomber le store obligatoire <img data-src=" />





Ho le joli smiley qui correspond parfaitement <img data-src=" />&nbsp;







iFrancois a écrit :



J’utilise Zsh depuis des années en remplacement systématique de Bash, ce shell est simplement supérieur en tout point, notamment pour toutes les raisons que vous avez citées.



&nbsp;Très bonne nouvelle pour ma part





Quand je vois le zsh des collègues de boulot et mon bash personnalisé…. perso je migrerai pas, un ptit “brew install bash” et ce sera le top :)









KP2 a écrit :



Hum… ça reste étonnant qu’ils remplacent bash sans période de transition…

Ca va piquer





Un ptit “brew install bash” et ça piquera plus (en plus d’avoir un bash à jour) :)









iFrancois a écrit :



J’utilise Zsh depuis des années en remplacement systématique de Bash, ce shell est simplement supérieur en tout point, notamment pour toutes les raisons que vous avez citées.





Mais il est moins libre. <img data-src=" />









KP2 a écrit :



Le store n’est pas du tout obligatoire sur macos







C’est juste la GPLv3 qui pose des problèmes (et elle est assez décriée au sein même du monde open-source d’ailleurs).





Tu as des exemples ????



Un “petit” exemple : Linux reste sous la GPL V2, Linus étant par exemple contre la V3.








fred42 a écrit :



Un “petit” exemple : Linux reste sous la GPL V2, Linus étant par exemple contre la V3.







Voilà <img data-src=" />

Bon, ça fait qq années que la GPLv3 est sortie et la polémique s’est largement calmée. Aujourd’hui, on entend plus vraiment grand chose à ce sujet.

Néanmoins, la v2 est loin d’avoir été mise à la poubelle et elle reste fortement utilisée même pour les nouveaux projets. La v3 est et restera beaucoup plus une affaire d’idéologie que de protection légale “brute et classique” comme pouvait l’être la v2.









sir.thorfin a écrit :



Quand je vois le zsh des collègues de boulot et mon bash personnalisé…. perso je migrerai pas, un ptit “brew install bash” et ce sera le top :)





Ou via les macports, un : port install bash bash_completion









iFrancois a écrit :



J’utilise Zsh depuis des années en remplacement systématique de Bash, ce shell est simplement supérieur en tout point, notamment pour toutes les raisons que vous avez citées.



 Très bonne nouvelle pour ma part







Sans parler du globbing de zsh qui est juste fabuleuse. <img data-src=" />




Il va y avoir de l’édition de shebang à la chaine <img data-src=" />


Ah pour les mises à jours si !








Norde a écrit :



Ah pour les mises à jours si !







Tu connais un seul OS de moins de 25 ans dont ses propres mises à jour se font autrement que par son système de maj interne ?









jpaul a écrit :



Oh, on vit une époque où Microsoft fout un noyau Linux complet dans Windows alors bon …





Sans parler de mettre des bureaux virtuels… déjà présents sur les stations de l’école d’ingé en 1993… avec les PC sous windows 3.11 qui faisaient déjà figure de dinosaures dans la salle d’a côté en comparaison, juste “bons” pour la bureautique et les rapport de stages (virus ajoutés inclus a toute disquettes insérée, déjà): Star Office devenu Open n’étant pas encore passé par là.



Dans 20 ans ils feront la sélection clic milieu, ayant compris l’utilité des mulots à 3 boutons, si toutefois le x86 dont ils ne savent se séparer (les efforts pour coller ce tas de m… d’UEFI sur ARM démontrent la difficulté de l’affaire) vit encore. Microsoft est vraiment une boite d’arriérés.









KP2 a écrit :



Tu connais un seul OS de moins de 25 ans dont ses propres mises à jour se font autrement que par son système de maj interne ?





Autrement qu’en incrémental, par patch de binaires, obligeant à se taper dans l’ordre les MAJ de chaque mois (commode quand on réinstalle à partir de la dernière ISO de plus d’un an) plutôt que d’arriver direct à l’état actuel tu veux dire?



Ah, cumulé aux redémarrages obligés, que de belles journées gâchées…



Éviter cela, chez Microsoft, ça date de beaucoup moins que 25 ans en effet! Quand on est en situation de monopole, l’utilisateur on s’en branle!

&nbsp;



Système de maj interne n’est pas store !

&nbsp;

MacOS est le seul système ou il est obligatoire d’avoir un compte (rattaché au store) afin de réaliser les mises à jour (même si on y a échappé de peu avec Win10).


Red Hat aussi nécessite d’avoir une souscription pour accéder aux mises à jour.








bilbonsacquet a écrit :



Ou via les macports, un : port install bash bash_completion



Exactement :)&nbsp;

&nbsp;

Zsh sans personnalisation c’est pas mieux qu’un bash, en revanche c’est un peu plus facile à personnaliser c’est tout ;) J’ai tenté le zsh, bah j’ai vite fait machine arrière&nbsp;



Dinosaures … qui pouvaient imprimer. En ‘93, pour imprimer sous Linux autre chose que des textes ASCII, il fallait être motivé…


Ça m’étonnerait que les stations de son école d’ingé étaient sous Linux en 1993. Linux est né en 1991 et en 1993, c’était le début de Slackware et Debian.



Par contre, elles devaient permettre d’imprimer sans problème sur des imprimantes PostScript qui était la norme sous UNIX.


En 93 j’avais tenté d’installer une Yggdrasil…

Imprimante Postscript … tout est dit … faut être motivé


On peut utiliser CentOS ou Fedora si on veut y échapper, mais en effet ça fait partie du pack RedHat (après RedHat fait payer le support, pas l’OS en lui même, c’est relativement différent).


Fermer