首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  macOS

macOS Catalina 的自带软件,一点发布会没提的东西

  •  
  •   sinxccc · 131 天前 · 4468 次点击
    这是一个创建于 131 天前的主题,其中的信息可能已经有所发展或是发生改变。
    1. Emacs 22 从系统中移除
    2. 默认 shell 改成 zsh
    3. Python/Ruby/Perl 仅用作满足老旧软件的支持,以后会被移除

    https://9.obelus.net/2019/06/04/macos-base-system-and-gplv3.html
    31 回复  |  直到 2019-06-07 00:19:03 +08:00
        1
    EugeneYWang   131 天前
    蛤?不是 bash 了?这换来有什么意义啊
        2
    sinxccc   131 天前
    @EugeneYWang 因为 GPLv3 的原因,macOS 无法自带 bash 3.2 之后的版本。现在的 bash 最新版本已经到 5 了,3.2 差不多是十年前发布的。

    Zsh 没有许可证的限制,可以每次系统发布都自带最新版本。

    Shell 这种非常重要的软件,不管从稳定还是从安全考虑,用第三方版本管理工具的总要多留心一点。
        3
    EugeneYWang   131 天前
    @sinxccc 谢谢科普! 我也刚跑去科普了一波,你觉得我用作为一个默认 bash 的使用者转去 Zsh 会有什么学习坡度 /成本吗?
        4
    bitkwan   131 天前 via iPhone   ♥ 1
    @EugeneYWang 没有(我从前两个版本就换去了,甚至觉得 Zsh 的 Tab 更好用
        5
    scnace   131 天前 via Android
    卧槽 竟然移除了 emacs22 的键位!
        6
    sinxccc   131 天前
    @EugeneYWang 几乎没有,日常使用的话可能通配符上会别扭一下,zsh 偏好预先扩展通配符。不过总之是可以从配置或者使用习惯上解决的问题。

    另外如果你积攒的配置文件里有一些 bash 独有的写法的话可能需要稍微改一下,不过基本很少而且 zsh 都有一一对应的写法。
        7
    sinxccc   131 天前   ♥ 1
    @scnace

    只是移除了命令行的 Emacs 程序而已。
        8
    kawaiidora   130 天前
    许可证啊,想起索尼和老任的游戏机都基于 freebsd 了
        9
    mxi1   130 天前 via iPhone
    @sinxccc 意思是没有预装的 emacs 了?😄
        10
    find456789   130 天前
    请问大哥, 这个系统,正式版大约什么时候提供
        11
    momocraft   130 天前
    其实 macos 自带的 rb/pl/py 是跑啥用的
        12
    congeec   130 天前 via iPhone
    vim 用户欢呼
        13
    momocraft   130 天前
    > GPLv3 开始,跟所有的 BSD 血亲一样,macOS 一直很小心的保持自己与 GPLv3 完全隔离。受制于此,不少原本系统自带的软件都无法得到更新,而一直保持在 GPLv2 的老版本,比如停留在 22 的 emacs 还有停留在 3.2 的 bash。

    没有得到,freebsd repo 里的 bash 是 5.0 这也属于隔离吗?
        14
    ai277014717   130 天前
    担心写的 bash 脚本跑到 zsh 上会有问题
        15
    mikeven   130 天前
    这些软件需要的话,都可以再装吧
        16
    shuxiao9058   130 天前
    @momocraft 太坑了!!!
        17
    lizhuoli   130 天前 via iPhone
    爽,自带 zsh
        18
    chendy   130 天前
    之前写的 bash 脚本,只要有 #!/bin/bash 应该就还能用吧
        19
    sinxccc   130 天前
    @mxi1 没有了,homebrew 装 emacs 或者 emacs mac port 吧( ´▽`)

    @find456789 往年惯例是九月份的什么时候。

    @momocraft FreeBSD 的 base system 里只有 sh/csh/tcsh,bash 和 zsh 都是 ports 里提供的。

    @ai277014717 bash 还在的,只是如果你原来 .bashrc 里有很多自己的东西的话,需要稍微花点时间。
        20
    hguandl   130 天前   ♥ 1
    @momocraft

    xattr(1) 是一个处理文件拓展属性的工具,这个是用 python 2 写的。可以 vim /usr/bin/xattr 试试。

    shasum(1) 顾名思义是计算文件 sha 校验值的工具,是用的 perl。vim /usr/bin/shasum 即可看到。

    brew(1) 是用 ruby 写的,这个不用多说了。
        21
    hguandl   130 天前
    顺带一提,Catalina 的 Command-line Tools 里添加了 Python 3,版本是 3.7.3。
        22
    momocraft   130 天前
    @hguandl 想不到 shasum 也是
        23
    wudanyang   130 天前
    @sinxccc 惊悚
        24
    lijixi   130 天前
    我是不是该把 Mac 卖掉……
        25
    sinxccc   130 天前
    @wudanyang @lijixi 这不都是挺好的变化么…
        26
    lijixi   129 天前
    @sinxccc

    1. Zsh 的文档和资料又少又老,和 Bash 相比实在是差远了,不便于学习……
    2. 虽说 Zsh 对 Bash 保留一定的兼容性,但是仍有基础部分与 Bash 不兼容。手里大量的 Bash 脚本都得重写……
        27
    inbox   129 天前 via iPhone
    @lijixi bash 依然在系统里,不过不是默认而已。你的脚本头加上 `#!/bin/bash` 还是可以正常运行。
    另外,不是所有人都会需要使用 bash,感觉苹果自己做了取舍吧。
        28
    wudanyang   129 天前
    @sinxccc 我是想回复一下,居然没有了 emacs 的键位了,但是没有标明回复楼层,抱歉
        29
    sinxccc   129 天前
    @wudanyang Emacs 键位一直在的…这种东西要是取消的话我也要从 macOS 出走了。

    去除的只是原来预装的 emacs,22 版本,纯命令行的程序。
        30
    lijixi   129 天前
    @inbox

    我还以为 Bash 以后也会被移除……还在就好
        31
    weakish   129 天前
    @momocraft 其实一般用 sha256sum、sha1sum、md5sum,perl 的 shasum 很少用
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   824 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 25ms · UTC 21:13 · PVG 05:13 · LAX 14:13 · JFK 17:13
    ♥ Do have faith in what you're doing.