如何在Apple不再支持的MacOS上安装Homebrew

手头有一台2012年产的Macbook Pro,系统版本停留在了10.15.7(2020年9月24日发布的)。MacOS 11及后续的版本都无法安装到这台老旧的电脑上。想通过pkg安装Homebrew,发现Homebrew releases里最新的pkg安装包不支持MacOS 10.15.7,提示要求最低的系统版本是MacOS 13(正式发布于2022年10月24日)。在Homebrew releases找到的最早的一个pkg是4.1.2版本的,要求最低的系统版本是MacOS 11(正式发布于2020年11月12日)。无奈只能放弃通过pkg安装Homebrew的想法,乖乖使用脚本的方式来安装Homebrew。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

安装到是顺利完成,但安装给出了提示

==> You are using macOS 10.15.
==> We (and Apple) do not provide support for this old version.
This installation may not succeed.
After installation, you will encounter build failures with some formulae.
Please create pull requests instead of asking for help on Homebrew's GitHub,
Twitter or any other official channels. You are responsible for resolving any
issues you experience while you are running this old version.

意味着在这个废弃系统上通过Homebrew安装任何软件包都可能遇到问题。

果不其然,使用Homebrew安装docker失败

% brew install docker......==> Cloning https://github.com/docker/cli.git
Cloning into '/Users/Jack/Library/Caches/Homebrew/docker--git'...
==> Checking out tag v28.0.0
HEAD is now at f9ced58158 Merge pull request #5845 from vvoland/vendor-docker
Error: Your Xcode (10.1 => /Volumes/macOS beta/Applications/Xcode.app/Contents/Developer) at /Volumes/macOS beta/Applications/Xcode.app is too outdated.
Please update to Xcode 12.4 (or delete it).
Xcode can be updated from the App Store.

提示需要Xcode 12.4,但系统安装的是10.1版本的Xcode。但通过App Store也无法更新Xcode版本

提示需要MacOS 14.5才能获取最新的Xcode。那能通过Homebrew安装更早版本的docker吗?不行。可以通过Homebrew安装指定版本的tomcat,但docker只能安装最新版本。

Jack@Jacks-MacBook-Pro Downloads % brew search tomcat
==> Formulae
tomcat               tomcat-native        tomcat@10            tomcat@8             tomcat@9             touca==> Casks
topcatJack@Jacks-MacBook-Pro Downloads % brew search docker
==> Formulae
docker                         docker-credential-helper-ecr   docker-machine-nfs             dockerize
docker-buildx                  docker-gen                     docker-machine-parallels       lazydocker
docker-clean                   docker-ls                      docker-slim                    powerman-dockerize
docker-completion              docker-machine                 docker-squash                  ducker
docker-compose                 docker-machine-driver-vmware   dockerfile-language-server     dockly
docker-credential-helper       docker-machine-driver-vultr    dockerfilegraph                mockery==> Casks
docker                   docker-toolbox           dockey                   dockx                    dozer

那怎样才能安装更早版本的docker呢?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/71007.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

某个设备的RJ45网口接头为何不可连接任何POE设备

某个设备的RJ45网口接头不可连接任何POE设备 1.POE设备是什么? POE设备是指支持通过以太网线传输电力和数据的设备,即“Power over Ethernet”(PoE)技术的设备。这种技术允许网络设备在传输数据的同时,通过标准的RJ4…

【线性代数的理解】 为什么说线性代数研究的是空间变换?旋转矩阵坐标转换矩阵

注: 在线性代数中 ,常常不把点看成是点,而是看成是一个由原点出发的向量。所以,点的坐标相当于是向量的坐标。正方形(图中灰色图形)可以看成是由一大堆向量组成的图形,对这一堆向量进行A变换&a…

Cursor+pycharm接入Codeuim(免费版),Tab自动补全功能平替

如题,笔者在Cursor中使用pycharm写python程序,试用期到了Tab自动补全功能就不能用了,安装Codeuim插件可以代替这个功能。步骤如下: 1. 在应用商店中搜索扩展Codeuim,下载安装 2. 安装完成后左下角会弹出提示框&#x…

操作系统知识点12

1.在操作系统的结构设计中,采用层次结构的操作系统其最大优点是把整体问题局部化 2.非特权指令是指操作系统和用户均可以使用的指令 3.向处理器发出的中断信号称为中断请求 4.轮转法RR是单纯基于时间片考虑的 5.当进程处于就绪状态时,表示进程已获得…

STM32学习——RTC实时时钟(BKP与RTC外设)

RTC实时时钟 RTC实时时钟 想记录或读取日期和事件,就可以通过操作RTC实现 RTC与BKP和PWR经常同时出现 一般情况下,VBTA是电池供电口,需要接备用电池 在BKP备份寄存器写入两个数据,然后再读出之后显示,BKP的数据&a…

C# Unity 唐老狮 No.2 模拟面试题

本文章不作任何商业用途 仅作学习与交流 安利唐老狮与其他老师合作的网站,内有大量免费资源和优质付费资源,我入门就是看唐老师的课程 打好坚实的基础非常非常重要: Unity课程 - 游习堂 - 唐老狮创立的游戏开发在线学习平台 - Powered By EduSoho 如果你发现了文章内特殊的字体…

软件工程应试复习(考试折磨版)

针对学校软件工程考试,参考教材《软件工程导论(第6版)》1-8章 学习的艺术:不断地尝试,我一定会找到高效用的方法,让学习变成一门艺术,从应试备考中解救出我的时间同胞们。 好嘞!既然…

针对红警之类老游戏适用WIN10和11的补丁cnc-ddraw7.1汉化版

### 经典游戏兼容补丁 cnc-ddraw 7.1 汉化版使用指南 (适用于《红色警戒》《命令与征服》等老游戏在Win10/Win11系统运行) 参考原文:针对红警之类老游戏适用WIN10和11的补丁cnc-ddraw7.1汉化版 #### 一、补丁核心功能 **解决痛点** …

Denoising Diffusion Implicit Models (DDIM)

因为扩散模型的正向过程可以实现跳步,其马尔科夫性并不重要,因此DDIM尝试在反向过程中也舍弃马尔科夫性的约束。在引入一个可控参数 σ t \sigma_t σt​后,反向过程的迭代被整理为预测 x 0 x_0 x0​后重新进行正向扩散的过程,扩散…

LearnOpenGL之Shader编程用算法绘画

———————————————————— 前序 ——————————————————— AndroidLearnOpenGL是本博主自己实现的LearnOpenGL练习集合: Github地址:GitHub - wangyongyao1989/AndroidLearnOpenGL: OpenGL基础及运用 系列文章&#xff…

Ubuntu 下 nginx-1.24.0 源码分析 - ngx_buf_t

ngx_buf_t 定义在 src/core/ngx_buf.h typedef struct ngx_buf_s ngx_buf_t;struct ngx_buf_s {u_char *pos;u_char *last;off_t file_pos;off_t file_last;u_char *start; /* start of buffer */u_char …

第5章_管理策略

管理策略 如前所述,策略定义了在授予对对象的访问权限之前必须满足的条件。 单击 Policy (策略) 选项卡可查看与资源服务器关联的所有策略。 在此选项卡上,您可以查看以前创建的策略列表,以及创建和编辑策略。 要创…

Chromium_src源码

Chromium_src源码 码云上有一个OpenHarmony-TPC/chromium_src项目,目前已经停止维护了,迁移到GitCode上了,源代码项目地址为:openharmony-tpc/chromium_chrome 特此记录一下老的项目的相关软件架构 Chromium 简介 软件架构 软…

Android ObjectBox数据库使用与集成指南

ObjectBox其核心特点ObjectBox与 SQLite 和 Realm 的对比Android集成ObjectBox创建ObjectBox实体对象创建ObjectBox操作管理类OBManager在Application初始化ObjectBox插入或更新数据查询数据统计数据分页数据查询删除数据总结今天分享一套Android另一个数据库ObjectBox。Object…

JAVA调用Deepseek的api,完成基本对话

一、准备工作 注册账号 访问 DeepSeek 官网(如 https://www.deepseek.com/)或对应平台。完成注册并登录,部分服务可能需要企业认证或申请权限。 获取 API 密钥(如使用 API) 进入控制台或开发者页面,创建…

013作用域

一、基本概念 C语言中,标识符都有一定的可见范围,这些可见范围保证了标识符只能在一个有限的区域内使用,这个可见范围,被称为作用域(scope)。 软件开发中,尽量缩小标识符的作用域是一项基本原…

AH表情捕捉设备:虚拟人动态表情捕捉

在虚拟人应用里,除了关注虚拟人能否展现流畅的肢体动作,其表情是否自然流畅同样关键。虚拟人作为新兴技术产物,广泛应用于娱乐直播、影视动画等领域。自然的表情能让虚拟人更具亲和力与真实感,大幅提升用户体验。 而广州虚拟动力…

pikachu

暴力破解 基于表单的暴力破解 【2024版】最新BurpSuit的使用教程(非常详细)零基础入门到精通,看一篇就够了!让你挖洞事半功倍!_burpsuite使用教程-CSDN博客 登录页面,随意输入抓包,发送到攻击…

az devops login报错:Failed to authenticate using the supplied token.

PowerShell,az devops login报错: Failed to authenticate using the supplied token. 检查了一下PAT token是对的。 检查命令: az devops login --organization https://dev.azure.com/xxxxxxxx/ 乍一看好像没问题问题,然后想…

C++预编译、编译、汇编、链接详解

一、准备阶段 g编译环境&#xff0c;配置好环境变量 新建一个helloworld.cpp #include <iostream> using namespace std; int main() {cout << "Hello, world!" << endl;return 0; }命令查看 g --help 二、预编译 预处理阶段对自定义和预定义…