前段時間為ecoPaste編寫AUR軟體包的PKGBUILD
時遇到了一個問題
執行makepkg -fsi
提示==> 錯誤: pkgver 不允許包含冒號、斜槓、連字元或空白符。
我看到這個提示中沒有禁止_
,我果斷將-
替換為了_
,透過pkgver="${pkgver//[:\/\- ]/_}";
直到今天早上,作者講v0.3.0-beta.3
釋出正式版本了,版本號v0.3.0
,因為我提交了Github Action
, 新版本確定已經到AUR中了,我看了眼我Manjaro通知欄,並沒有收到更新提醒
習慣性的以為是通知延遲,隨手敲下了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命令
經過我測試,只需要將-
去除即可。
改為pkgver="${pkgver//[:\/\- ]/}"
;