• BatmanAoD@programming.dev
    link
    fedilink
    arrow-up
    0
    ·
    3 months ago

    You get admin privileges on MacOS like a big boy. You can use bash or zsh commands in Terminal all you want.

    Cool. So try updating to a version of Bash from the last 15 years, because the pre-installed one is Bash 3, because Bash 4 and 5 are under the GPLv3 license, which Apple won’t comply with.

    …ah, no, you can’t update the pre-installed Bash, because it’s on a section of the hard drive that is read-only even with admin access. You can install Bash 5 as a separate shell, and use that as your default terminal shell, but any scripts written with the standard #!/bin/bash instead of the more flexible #!/usr/bin/env bash will still use Bash 3.

    This “handholding” (or really, a safety net) is arguably a good thing, or at least a positive tradeoff; but you can’t claim it doesn’t exist.

    • disguy_ovahea@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      edit-2
      3 months ago

      I agree it’s not as limitless as Linux, but there’s plenty of room for advanced users.

      I’ve never needed to use a newer version of Bash. What is an example of something one couldn’t do with Bash 3 or zsh?

      • BatmanAoD@programming.dev
        link
        fedilink
        arrow-up
        0
        ·
        3 months ago

        It’s not so much a problem of there being things you “can’t do” in other shells or older Bash, as that it breaks existing shell scripts, which is frustrating.

      • TheGalacticVoid@lemm.ee
        link
        fedilink
        arrow-up
        0
        ·
        3 months ago

        I get that this is an Apples to Oranges comparison, but Powershell 7 is way easier to use than the default Windows Powershell because of autocomplete. I imagine that newer versions of Bash have made improvements that are similarly powerful.

        • TrickDacy@lemmy.world
          link
          fedilink
          arrow-up
          0
          ·
          edit-2
          3 months ago

          Ok, yeah, I can see that there would be times this could matter but like 90% of the time this wouldn’t have mattered for my use case afaik. I didn’t realize you couldn’t backup the old copy in /bin and symlink to the brew one from there. In fact I thought I did do that long ago.

      • computergeek125@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        3 months ago

        If it’s anything like when I used a Mac regularly 7y ago, Homebrew doesn’t install to /bin, it installs to /usr/local/bin, which only works for scripts that use env in their shell “marker” (if you don’t call it directly with the shell). You’re just putting a higher bash in the path, not truly updating the one that comes with the system.