MacPorts 中安装高/低版本软件方式,以 RabbitMQ 为例

查询信息

这里以 RabbitMQ 为例,通过搜索得到默认安装版本信息:

bash 复制代码
port search rabbitmq-server

结果

复制代码
~/Downloads> port search rabbitmq-server
rabbitmq-server @3.11.15 (net)
    The RabbitMQ AMQP Server
~/Downloads>

获取二进制文件

但当前官网已更新到 4.x 版本,例如我们需要安装 4.0.4 版本,首先去到 RabbitMQ 的 GitHub release 页:https://github.com/rabbitmq/rabbitmq-server/releases

下载 rabbitmq-server-generic-unix-4.0.4.tar.xz 文件,以便获取相关指纹进行替换

修改 Portfile

所在目录

在查询结果中我们注意到 rabbitmq-server @3.11.15 (net),括号内是 net

而 MacPorts 对应的软件相关 Portfile 存储于 /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports

因为 RabbitMQ 属于 net,这里我们还需要进入 net 目录才能找到 rabbitmq-server

所以其最终对应的路径为 /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/net/rabbitmq-server

获取 rmd160、sha256 和文件大小

sha256 非常好获取,在文件所在目录直接运行即可

bash 复制代码
$ sha256 ./rabbitmq-server-generic-unix-4.0.4.tar.xz

SHA256 (./rabbitmq-server-generic-unix-4.0.4.tar.xz) = b024b75935bc9b30597b3ea5c5d3846b8a8f887e0f1d5703f00974ea481342f3

而 rmd160 则需要利用 openssl 命令(如果没有可以先通过 port 安装):

复制代码
$ openssl dgst -rmd160 ./rabbitmq-server-generic-unix-4.0.4.tar.xz

RIPEMD-160(./rabbitmq-server-generic-unix-4.0.4.tar.xz)= 90dd6e7a4ce6a34cd3ec0af62995cdecc5812b4e

文件大小直接通过 ls -l 命令即可:

bash 复制代码
$ ls -l ./rabbitmq-server-generic-unix-4.0.4.tar.xz

-rw-r--r--@ 1 maxsky  staff  16236548 12 18 14:43 ./rabbitmq-server-generic-unix-4.0.4.tar.xz

其中 16236548 就是文件字节大小

替换对应内容

原内容

复制代码
github.setup        rabbitmq rabbitmq-server 3.11.15 v

checksums           rmd160  c30a5ee11a501b8a271bda39f92dd8125230f4c6 \
                    sha256  538be3c85e8cad10de62705714f71eaacb04339f73a81477c91478600bb8253c \
                    size    20897748

将原内容中的版本号以及两个指纹值修改保存即可

复制代码
github.setup        rabbitmq rabbitmq-server 4.0.4 v

checksums           rmd160  90dd6e7a4ce6a34cd3ec0af62995cdecc5812b4e \
                    sha256  b024b75935bc9b30597b3ea5c5d3846b8a8f887e0f1d5703f00974ea481342f3 \
                    size    16236548

执行安装/更新

低版本升级直接运行 upgrade,安装就直接 install

bash 复制代码
sudo port upgrade rabbitmq-server
相关推荐
李小白杂货铺3 小时前
Oh My Zsh 简记
macos·macbook·zsh·主题·插件·oh my zsh·omz
quweiie5 小时前
tp8使用rabbitMQ消息队列的示例
消息队列·rabbitmq·thinkphp消息队列
六点_dn8 小时前
RabbitMQ学习笔记-定义与作用
笔记·学习·rabbitmq
fukai772216 小时前
macOS防止休眠的菜单栏小工具
macos
web守墓人17 小时前
【go语言】gotar:使用go语言复刻tar命令,并加入7z支持,可独立运行在windows、linux、macos上
linux·macos·golang
之歆2 天前
从 Mac 回到 Windows:用 PowerToys + AutoHotkey 找回熟悉手感
windows·macos
星辰即远方2 天前
字符串合法性检验
macos·ios·cocoa
2501_916008892 天前
苹果上架工具怎么选 不用 Mac 上架 App Store 的几种方案
android·macos·ios·小程序·uni-app·iphone·webview
秋雨梧桐叶落莳3 天前
iOS——3GShare项目总结
学习·macos·ios·objective-c·cocoa
Steadfast_GG3 天前
RabbitMQ升级打怪之路(1) - RabbitMQ概述
消息队列·rabbitmq·流量削峰·消息分发·异步解耦