使用 brew 安装特定版本软件

背景

brew 是 Mac 下非常好用的包管理工具,可以方便的下载并安装各种软件,类似于 Ubuntu 下的 apt-get 以及 centos 下的 yum

但是 brew 使用 git 来管理软件包,所以安装的软件包版本会随着其源仓库的更新而更新

如果需要安装旧版本软件,相对麻烦,这里记录一下方法

方法一:直接安装

部分软件包可以直接通过 brew install 安装指定版本,例如 python

brew search python@
==> Formulae
python@3.10 python@3.12 python@3.8
python@3.11 python@3.13 python@3.9 # 安装 python 3.10
brew install python@3.10

方法二:利用历史的 rb 文件安装

先利用 brew info 找到其 rb 文件的地址,然后去 GitHub 上找到历史版本的 rb 文件

  • 下载/复制文本到本地,然后使用该 rb 文件安装
  • 或者只用用该文件的链接地址安装

下面以安装 hugo 0.136.5 为例

# 查看 hugo 信息
brew info hugo
==> hugo: stable 0.139.4 (bottled), HEAD
Configurable static site generator
https://gohugo.io/
Installed
/opt/homebrew/Cellar/hugo/0.136.5 (53 files, 68.8MB) *
Poured from bottle on 2024-12-11 at 23:27:01
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/h/hugo.rb
License: Apache-2.0
==> Dependencies
Build: go ✘
==> Options
--HEAD
Install HEAD version
==> Caveats
zsh completions have been installed to:
/opt/homebrew/share/zsh/site-functions
==> Analytics
install: 15,963 (30 days), 49,454 (90 days), 203,875 (365 days)
install-on-request: 15,967 (30 days), 49,453 (90 days), 203,857 (365 days)
build-error: 52 (30 days)

访问下 https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/h/hugo.rb

在 history 中找到需要的版本,然后复制链接地址

然后在本地安装即可

# 下载 rb 文件并安装
wget https://raw.githubusercontent.com/Homebrew/homebrew-core/HEAD/Formula/h/hugo.rb
brew install ./hugo.rb # 或者直接使用链接地址
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/HEAD/Formula/h/hugo.rb

参考资料

本文作者: ywang_wnlo

本文链接: https://ywang-wnlo.github.io/posts/89785ced/

版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明

【软件配置】使用 brew 安装特定版本软件的更多相关文章

  1. brew 安装指定版本命令行工具 tmux 多版本实现

    Homebrew 是 macOS 命令安装工具,其核心库里的命令行在 github homebrew-core 仓库上维护. 核心库命令大概有 5000 条左右,大部分的命令行工具只保留了最新版本的 ...

  2. 安装特定版本 sysbench 以及安装时指定特定的mysql客户端

    step1: 下载安装源码 https://github.com/akopytov/sysbench (git clone https://github.com/akopytov/sysbench.g ...

  3. Ubuntu安装特定版本安装包

    Ubuntu安装特定版本安装包可以用aptitude,aptitude是apt-get的高级版,使用起来更强大. aptitude install package=version 比如我要安装2.6. ...

  4. conda查找安装包的版本以及安装特定版本的包

    如下图 想要安装特定版本的torchvision,然后conda search torchvision,能够列出conda云上所有的安装包 然后,安装包的时候,conda install 包名=版本就 ...

  5. brew安装指定版本的软件

    原文:https://www.jianshu.com/p/aadb54eac0a8 在mac中使用 brew install 安装的软件默认都是最新版本的.有时候我们需要旧版本(指定版本)的时候,应该 ...

  6. 在CentOS系统中使用yum安装指定版本软件的方法

    yum默认都是安装最新版的软件,这样可能会出一些问题,或者我们希望yum安装指定(特定)版本(旧版本)软件包.所以,就顺带分享yum安装指定(特定)版本(旧版本)软件包的方法. 过程如下: 假设这里是 ...

  7. 使用brew安装历史版本的几种方式

    背景 在 mac osx 下, 大部分的软件都是使用 homebrew 进行管理的, 可以方便的进行软件的安装,更新,删除等等, 大部分情况下 homebrew 的仓库只会存在一份最新的软件版本, 有 ...

  8. Mac下通过brew安装指定版本的nodejs

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px "PingFang SC Semibold"; color: #2c303 ...

  9. ubuntu apt-get 安装指定版本软件

    有时候 Ubuntu安装软件时候会提示你缺少对应版本的软件,这时候你就需要用到 sudo apt-get install softname=version 来安装对应的软件. sudo apt-get ...

  10. brew安装指定版本boost

    brew 如何安装指定版本的boost brew uninstall boost brew install boost@1.57 brew link boost@1.57 --force --over ...

随机推荐

  1. socket close和shutdown的区别,TIME_WAIT和CLOSE_WAIT

    TCP主动关闭连接 appl: close(), --> FIN FIN_WAIT_1 //主动关闭socket方,调用close关闭socket,发FIN               < ...

  2. Kubernetes Deployment控制器(二十)

    前面我们学习了 ReplicaSet 控制器,了解到该控制器是用来维护集群中运行的 Pod 数量的,但是往往在实际操作的时候,我们反而不会去直接使用 RS,而是会使用更上层的控制器,比如我们今天要学习 ...

  3. `std::string_view`(c++17) 和 `std::stringstream` 使用区别·

    std::string_view 和 std::stringstream 都是 C++ 中处理字符串的工具,但它们的设计目标和使用场景非常不同.我们可以通过几方面进行对比. 1. 设计目的和核心功能 ...

  4. module_softdep

    所谓的MODULE_SOFTDEP,就是两个两个模块之间本有依赖,但是一定要要加载顺序的要求. 用法很简单. #define MODULE_SOFTDEP(_softdep) MODULE_INFO( ...

  5. 世界第一!华为云图引擎服务GES大幅刷新世界纪录

    近日,国际关联数据基准委员会(Linked Data Benchmark Council,以下简称LDBC)公布了社交网络测试交互式负载(SNB INTERACTIVE WORKLOAD,以下简称为S ...

  6. 45. beforeCreate和created的区别

    data数据和methods的方法是否存在,是否定义了 : beforeCreate 都是 undefiend :

  7. 云原生周刊:Kubernetes v1.30 一瞥 | 2024.3.25

    开源项目推荐 Retina Retina 是一个与云无关的开源 Kubernetes 网络可观测平台,它提供了一个用于监控应用程序运行状况.网络运行状况和安全性的集中中心.它为集群网络管理员.集群安全 ...

  8. KubeSphere 3.2.0 发布:带来面向 AI 场景的 GPU 调度与更灵活的网关

    现如今最热门的服务器端技术是什么?答案大概就是云原生!KubeSphere 作为一个以 Kubernetes 为内核的云原生分布式操作系统,也是这如火如荼的云原生热潮中的一份子.KubeSphere ...

  9. 结构体(C语言)

    目录 1. 结构体类型的声明 1.1 结构体回顾 1.1.1 结构的声明 1.1.2 结构体变量的创建和初始化 1.2 结构的特殊声明 1.3 结构的自引用 2. 结构体内存对齐 2.1 对齐规则 2 ...

  10. Windows 非服务器版本永久关闭命令行“快速编辑模式”

    使用管理员权限运行cmd.exe 运行如下命令: reg add HKEY_CURRENT_USER\Console /v QuickEdit /t REG_DWORD /d 00000000 /f