Stories
Slash Boxes
Comments

SoylentNews is people

SoylentNews is powered by your submissions, so send in your scoop. Only 17 submissions in the queue.
posted by Fnord666 on Monday June 10 2019, @01:25PM   Printer-friendly
from the fine-print dept.

Submitted via IRC for SoyCow4463

Why does macOS Catalina use Zsh instead of Bash? Licensing

Yesterday, at its WWDC developer conference, Apple unveiled the latest version of the MacOS operating system. Codenamed Catalina, it's a fairly significant update for the platform, not least because of the changes that have taken place under the hood. Take, for example, the default shell, which has been migrated from Bash to Zsh.

Bash has been the primary macOS shell since OS X 10.2 Jaguar. For almost sixteen years, MacOS developers have used it to write scripts and issue commands to the underlying operating system. It's deeply ingrained in how developers work. So, why the sudden change?

In a word: licensing.

[...] Newer versions of Bash are licensed under the GNU General Public License version 3 – or GPLv3 for short. This comes with several restrictions which could potentially have caused a few headaches for Apple further down the line.

Firstly, the GPLv3 include language that prohibits vendors from using GPL-licensed code on systems that prevent third parties from installing their own software. This controversial practice has a name: Tivoization, after the popular TiVo DVR boxes which are based on the Linux kernel, but only run software with an approved digital signature.

Secondly, the GPLv3 includes an explicit patent license. This can be hard to wrap your head around, but in a nutshell, it means that anyone who licenses code under the GPLv3 also explicitly grants a license to any of the associated patents. This isn't a comprehensive licensing deal; it only applies to the extent required to actually use the code.

[...] These two clauses are likely the reason why Apple's increasingly vary[sic] of GPL-licensed software, and is desperately trying to remove it from macOS. Between MacOS 10.5 Leopard and MacOS 10.12 Sierra, the number of GPL-licensed packages that came pre-installed decreased by an insane 66 percent – from 47 to just 16.


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 2) by RS3 on Monday June 10 2019, @04:00PM (3 children)

    by RS3 (6367) on Monday June 10 2019, @04:00PM (#853733)

    So are csh / tcsh, some like ksh, Plan 9 shell, etc. It partly depends on what you like and are used to.

    csh supports more programming functionality for advanced scripting, and zsh combines aspects of most of them. You can have bash as your CLI, but still have zsh, csh, tcsh, etc., all installed, and if a script needs the support it'll run in the appropriate interpreter.

    Starting Score:    1  point
    Karma-Bonus Modifier   +1  

    Total Score:   2  
  • (Score: 3, Informative) by NotSanguine on Tuesday June 11 2019, @04:24AM (2 children)

    It partly depends on what you like and are used to.

    Absolutely.

    I used ksh a lot when I was adminning AIX boxen and (t)csh when adminning Sun boxen.

    I will say that I much preferred tcsh [wikipedia.org] over csh, as tcsh it has a command completion and command-line editing, and csh does not. However, both are inferior to Bash or ksh, especially for scripting.

    I now mostly just use Bash, because it's there and it works nicely.

    Offtopic: saying that "it's there" reminded me of this. And you're welcome:

    One of the questions that comes up all the time is: How enthusiastic is our support for UNIX?

    Unix was written on our machines and for our machines many years ago. Today, much of UNIX being done is done on our machines. Ten percent of our VAXs are going for UNIX use.

    UNIX is a simple language, easy to understand, easy to get started with. It's great for students, great for somewhat casual users, and it's great for interchanging programs between different machines.

    And so, because of its popularity in these markets, we support it. We have good UNIX on VAX and good UNIX on PDP-11s.

    It is our belief, however, that serious professional users will run out of things they can do with UNIX. They'll want a real system and will end up doing VMS when they get to be serious about programming.

    With UNIX, if you're looking for something, you can easily and quickly check that small manual and find out that it's not there.

    With VMS, no matter what you look for -- it's literally a five-foot shelf of documentation -- if you look long enough it's there.

    That's the difference -- the beauty of UNIX is it's simple; and the beauty of VMS is that it's all there.

    -- Ken Olsen, president of DEC, DECWORLD Vol. 8 No. 5, 1984
    [It's been argued that the beauty of UNIX is the same as the beauty of Ken Olsen's brain. Ed.]

    --
    No, no, you're not thinking; you're just being logical. --Niels Bohr
    • (Score: 2) by RS3 on Tuesday June 11 2019, @05:53AM (1 child)

      by RS3 (6367) on Tuesday June 11 2019, @05:53AM (#854087)

      > I now mostly just use Bash, because it's there and it works nicely.

      Yeah, same here. Most of my *nix experience is with Linux, although I had (and still have somewhere) MS Xenix- maybe ksh is the default? Far too many years. Back in the day at my ISP I had logins- it was SunOS or Solaris- I don't remember. I wanted to learn *nix so much I bought Coherent. Barely played with it when I got my first SLS Linux and haven't looked back.

      I did have PDP-11 and VAX VMS logins at college, mostly to run engineering software. We had VM/CMS for the IBM mainframe. And JCL. So very IBM, or at least I associate it with IBM.

      Thanks for that DECWORLD quote. Subtly cutting on Unix, but probably true at the time.

      • (Score: 3, Interesting) by NotSanguine on Tuesday June 11 2019, @06:34AM

        My first Linux was Yggdrasil back in '92/'93. It was fun and, compared to today's distros, quite bare bones. Although I did reformat the wrong hard drive when installing it. Good times!

        Although at the time I was managing SunOS 4.11 boxes for a living and then moved on to manage SunOS 4.1.3/4.1.4 and AIX 3/4 boxes.

        I played around with Linux at home, but didn't use it in production environments until the late 2000s.

        My dad was a statistician and had PDPs and Vaxen running RSX/11M and VMS 4 and 5 respectively. This was back in the 80s and a 300MB disk was 2x1x0.25m. And heavy. Like 40kg heavy.

        I have to say that VMS was quite stable and robust. And if you put the time and money into it, incredibly resilient -- even in the 1980s. Not AS/400 resilient, but not too many systems were at that time.

        I always found that Ken Olsen quote to be hilarious. Not because it wasn't true in 1984 (VMS was already a mature product then), but because of what happened in the 1990s and later.

        Then again, Ultrix [wikipedia.org] was my least favorite flavor of Unix, well except for HP/UX [wikipedia.org], which I managed for a year or so. I didn't mention it earlier as I try hard to forget.

        --
        No, no, you're not thinking; you're just being logical. --Niels Bohr