Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Apple

Apple Replaces Bash With Zsh as the Default Shell in macOS Catalina (theverge.com) 462

Starting with macOS Catalina, Macs will now use zsh as the default login shell and interactive shell across the operating system. From a report: All newly created user accounts in macOS Catalina will use zsh by default. Bash will still be available, but Apple is signaling that developers should start moving to zsh on macOS Mojave or earlier in anticipation of bash eventually going away in macOS. Apple hasn't explained exactly why it's making this change, but bash isn't exactly a modern shell as it's implemented in macOS, and a switch to something less aging makes a lot more sense for the company. Apple is stuck using version 3.2 of bash that has been licensed under GPLv2, as newer versions are licensed under GPLv3. Apple has kept clear of using GPLv3 packages in macOS as the license is generally more restrictive to companies like Apple that sign their own code and it includes explicit patent grants, too.
This discussion has been archived. No new comments can be posted.

Apple Replaces Bash With Zsh as the Default Shell in macOS Catalina

Comments Filter:
  • by Tough Love ( 215404 ) on Tuesday June 04, 2019 @11:54AM (#58707740)

    Just wondering what the point of this is. Poking the prisoners to see if they still have the strength to complain?

    • How many users have actually used bash? Probably more than Windows users that use Powershell but the vast, vast majority probably don’t know its Unix underneath.
      • Re: (Score:2, Insightful)

        by Tough Love ( 215404 )

        Wrong question. The right question is: how many users are going to have things break on them because some software that has been working reliably for years suddenly fails mysteriously because system defaults have changed.

        • 1) Do understand that you can still use bash but that is not the default shell? 2) How many users run MacOS software that depends on bash being the only shell?
        • by Alrescha ( 50745 )

          Traditionally, Apple does not change the shell for existing users during an upgrade.

          A.

        • This happens on every update of OSX :-(

      • by rnturn ( 11092 )

        ``How many users have actually used bash?

        More than you might think. At every work site I've been to in recent years, people using Macs were everywhere. And I'm not thinking of the administrative types or "the creatives" at those companies. It was the techies that were using them and working on the command line (and not just using the browser to access the internal web applications).

    • need to take root away to lockout NVIDIA / non apple pci-e cards in the new mac pro

    • by Alrescha ( 50745 )

      I suspect it is all about licensing as zsh is MIT-ish, bash is GPL. Since the GPL has been tweaked over the years to keep Apple from using it*, a change to zsh makes sense.

      * people complain about ancient Unix tools supplied with macOS, and this is part of the reason. Luckily Apple keeps the old ones patched.

      A.

      • Re: (Score:3, Insightful)

        by Tough Love ( 215404 )

        I suspect so too. IOW, Apple's love of proprietary licences is hurting users.

      • > Since the GPL has been tweaked over the years to keep Apple from using it*

        Really? I never got any sense that the license changes had anything to do with Apple. I'd say rather
        "Since the GPL has been changed over the years in ways that keep Apple from using the code the way they want to"

        • by Alrescha ( 50745 )

          The anti-Apple camp regularly assigns motives to Apple without a shred of evidence, so forgive me if I do a bit of it myself.

          Apple introduced the App Store, and the next major revision of the GPL included specific language about end-user consumer devices. I am sure the two things were totally unrelated...

          A.

    • More like seeing who would care - a Venn diagram of the MacOS user base and OSS advocates likely have some overlap, but likely not enough will even look to make or break Mac sales numbers.

      There are other dynamics as well - one of which is that zsh was the sweet hotness about 4-5 years ago among quite a few kiddies in the DevOps crowd.

      Finally, if anything, users who really want bash (my work laptop included) will just get and install bash (if available to mod/dload/compile), or stick a VM on the box to get w

      • Most likely "brew install bash" will still work. Most people who are "DevOppy" wind up installing the GNU fileutils and other stuff anyway.

        I have a feeling bash will be there for a few more years, if only because of scripts needing it. I'm sure it eventually will be aliased so /bin/bash will be a link to zsh.

      • More like seeing who would care - a Venn diagram of the MacOS user base and OSS advocates likely have some overlap, but likely not enough will even look to make or break Mac sales numbers.

        Yeah, ever since Apple became a phone company they've stopped being an OSS proponent and most of us who liked the NeXT crowd left soonafter for linux desktops.

        Their intentions are telling in that they can't even grant the community any use of patents they have that might affect Bash.

        The reason to keep /bin/bash around is f

    • Just wondering what the point of this is. Poking the prisoners to see if they still have the strength to complain?

      Presumably changing to a better and more modern shell than Bash. Mac users tend not to be mossbacks, they just deal with changes like this as they come along. Those that cannot live without Bash, will just download a more modern Bash add-on package (if they haven't done so long ago to get the latest Bash version) instead of logging onto Slashdot to complain.

    • Comment removed based on user account deletion
    • I remember in the 90s asking people what the use case for zsh was, and it seemed to be very narrow; programmers who are triggered by Perl.

      That might be a much larger percent of Mac users than of the general population.

      For those people it is a much more pleasant experience than trying to use bash as a programming language. It can do it, but it should have known better.

  • by lgw ( 121541 ) on Tuesday June 04, 2019 @11:54AM (#58707748) Journal

    Finally, a proper Slashdot holy war!

    I'm not a fan of bash on Ubuntu, because it just can't do tab-completion of filenames right. I've always been far happier with zsh.

    zsh > bash
    emacs > vi
    Kirk > Picard

    Come at me bro!

    • Nobody needs to be a jihadist to know that major changes to a computer platform made for nontechnical reasons is the road to hell.

    • What is zsh licensed under? Is it a BSD compatible license, unlike GPLv3?
    • by flippy ( 62353 )

      Finally, a proper Slashdot holy war!

      I'm not a fan of bash on Ubuntu, because it just can't do tab-completion of filenames right. I've always been far happier with zsh.

      zsh > bash emacs > vi Kirk > Picard

      Come at me bro!

      I won't speak to the rest of them, but if by "Kirk > Picard", the symbol in the middle is indicating that Picard would eat Kirk for dinner, then yes ;)

      • Re: (Score:2, Insightful)

        by lgw ( 121541 )

        I won't speak to the rest of them, but if by "Kirk > Picard", the symbol in the middle is indicating that Picard would eat Kirk for dinner, then yes ;)

        Picard was the Borg's little bitch. Kirk would have seduced the Borg queen in the first 10 minutes, given her a good spanking, and had the Borg running errands for him by the end of the episode.

  • #!/bin/bash (Score:4, Informative)

    by mveloso ( 325617 ) on Tuesday June 04, 2019 @12:02PM (#58707800)

    If you want you bash you can keep your bash.

    • For which you probably want:

      #!/usr/bin/env bash

  • Until I got rid of my Macbook earlier this year I was still using tcsh. That was the original shell for Mac OS X on release, and I kept using tcsh as well as keeping my personnalized .tcshrc file.

    I tend to use bash on Linux servers or scripting, but on boxes I use regularly, I’ve switched it to tcsh.

  • by nbvb ( 32836 ) on Tuesday June 04, 2019 @12:07PM (#58707838) Journal

    Mac OS X 10.0 -> 10.2, the default was tcsh.
    Mac OS X 10.3 -> macOS 10.14, the default was bash.
    macOS 10.15 -> ???, the default will be zsh.

    When do we try ksh, just for fun?

  • by Anonymous Coward on Tuesday June 04, 2019 @12:10PM (#58707866)

    Deliberately sabotaging its own user experience just because it doesn't want to comply with GPLv3.

  • One less step to get OhMyZsh installed!
  • MIT like License (Score:5, Insightful)

    by SumDog ( 466607 ) on Tuesday June 04, 2019 @12:27PM (#58708018) Homepage Journal

    zsh has a license that's pretty similar to MIT. Apple has kept away from GPLv3 and is trying to get rid of anything GPLv2.

    Software is only Open Source today. It's not really Free. I've written about this before:

    https://penguindreams.org/blog/the-philosophy-of-open-source-in-community-and-enterprise-software/

    • zsh has a license that's pretty similar to MIT. Apple has kept away from GPLv3 and is trying to get rid of anything GPLv2.

      True, but it's important to explain why.

      Apple Embraces MIT/BSD open source software because they will be able to Extend and then Extinguish it later on. GPL wouldn't allow them to do so, they'd be stuck at the Embrace step.

  • But Apple is still working on that!
    After the 50k workstation this is the best comedian story from Apple this week!

    Congrats!

  • Given its roots in the BSD branch of Unices, I would love to see tcsh back as the default (user) shell.

  • by PrimaryConsult ( 1546585 ) on Tuesday June 04, 2019 @05:20PM (#58709874)

    AIX is as proprietary as anything, yet:

    $ bash --version
    GNU bash, version 4.4.12(1)-release (powerpc-ibm-aix5.1.0.0)
    Copyright (C) 2016 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later

    This is free software; you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.

    Sidenote: I'm mildly amused that this is newer than RHEL 7's currently bundled bash.

If you didn't have to work so hard, you'd have more time to be depressed.

Working...