使用 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. SuperMap iServer新增支持FlatGeobuf数据格式,查询渲染性能提升2-3倍

    导语 FlatGeobuf是一种地理数据存储格式,采用了二进制编码,相比其他文本或XML格式更高效,可以显著减小文件大小,这使得数据的传输和存储更加快速和高效. SuperMap iServer 11 ...

  2. 技术分享 | 徐轶韬:从MySQL5.7升级到MySQL 8.0

    在6月20日举办的[墨天轮数据库沙龙-MySQL 5.7 停服影响与应对方案]中,甲骨文MySQL解决方案首席工程师徐轶韬分享了<从MySQL5.7升级到MySQL 8.0>主题演讲,本文 ...

  3. CocoaPods常用的命令行以及安装方法

    1.新建一个Xcode工程,使用终端cd到工程目录下 2.创建Podfile文件 pod init ,之后就可以在项目目录里看到一个Podfile文件 3.打开Podfile文件:open Podfi ...

  4. redis 配置文件 - 启动redis 使用文件配置启动

    # Redis configuration file example. # # Note that in order to read the configuration file, Redis mus ...

  5. v-model 语法糖-在父子组件传值 的简写形式

    props的变量名字 必须是  value ,this.$emit('input',数据值) 的自定义事件必须是 input : v-model 是 vue 中进行数据双向绑定的指令,在内部实际上是通 ...

  6. 58. vue常用的api

    1. nextTick  使用场景:通过异步渲染的页面解构不能直接dom操作,要使用 nextTick (延迟回调)等待一下 :nextTick 的作用:感知dom的更新完成,类似于 updated ...

  7. 手撸二叉树——AVL平衡二叉树

    还记得上一篇中我们遗留的问题吗?我们再简要回顾一下,现在有一颗空的二叉查找树,我们分别插入1,2,3,4,5,五个节点,那么得到的树是什么样子呢?这个不难想象,二叉树如下: 树的高度是4,并且数据结构 ...

  8. cxv文件合并

    1.新建bat脚本 @echo off setlocal enabledelayedexpansion copy *.csv new.csv echo @@@@@@@@@@@@@合并成功!@@@@@@ ...

  9. Awesome Tools,程序员常用高效实用工具、软件资源精选,办公效率提升利器!

    前言 在当今这个技术日新月异的时代,开发者只有持续学习,才能紧跟时代的浪潮.为了助力开发者在高效学习与工作中实现平衡(告别996的束缚),众多卓越且实用的开发工具应运而生,它们如同强大的助力器,极大地 ...

  10. C++之OpenCV入门到提高004:Mat 对象的使用

    一.介绍 今天是这个系列<C++之 Opencv 入门到提高>得第四篇文章.这篇文章很简单,介绍如何使用 Mat 对象来实例化图像实例,了解它的构造函数和常用的方法,这是基础,为以后的学习 ...