前段时间为ecoPaste编写AUR软件包的PKGBUILD时遇到了一个问题

执行makepkg -fsi提示==> 错误: pkgver 不允许包含冒号、斜杠、连字符或空白符。
我看到这个提示中没有禁止_,我果断将-替换为了_,通过pkgver="${pkgver//[:\/\- ]/_}";
image.png

直到今天早上,作者讲v0.3.0-beta.3发布正式版本了,版本号v0.3.0,因为我提交了Github Action, 新版本确定已经到AUR中了,我看了眼我Manjaro通知栏,并没有收到更新提醒
image.png

习惯性的以为是通知延迟,随手敲下了yay -Syyu --noconfirm,就去忙其他的事情了。

过了一段时间,摁下快捷键使用EcoPaste时,发现仍然弹出了更新提醒,我才去检查更新,发现命令已经跑完,但是Ecopaste并未更新,我再次敲下了命令yay -S eco-paste-beta-bin,看到一条警告

突然觉得0.3.0_beta.3不符合语义化版本规范,导致0.3.0小于0.3.0_beta.3,AUR不认为版本更新了。

随即去查找相关解决方案.

archLinux的PKGBUILD中pkgver规范提到了vercmp命令

经过我测试,只需要将-去除即可。
image.png

改为pkgver="${pkgver//[:\/\- ]/}";


witt
538 声望392 粉丝

一位爱好计算机运维,喜欢折腾软件,不爱写代码的准Java开发程序员。