mirror of
https://github.com/terrapkg/packages.git
synced 2026-06-19 18:10:38 +00:00
08d52ed811
* fix(kmod-nvidia): Only update the spec if the module version has been published * cleanup: Formatting Signed-off-by: Gilver <rockgrub@disroot.org> --------- Signed-off-by: Gilver <rockgrub@disroot.org>
28 lines
1013 B
Plaintext
28 lines
1013 B
Plaintext
import "andax/nvidia.rhai" as nvidia;
|
|
import "andax/spec.rhai" as spec;
|
|
|
|
let v = nvidia::nvidia_driver_version();
|
|
let m = gh("NVIDIA/open-gpu-kernel-modules");
|
|
if m == v {
|
|
rpm.version(v);
|
|
}
|
|
|
|
// Rebuild the package whenever the Alma kernel updates
|
|
let releasever = labels.branch;
|
|
releasever.crop(2);
|
|
let majorminor = [];
|
|
for matches in find_all(`(${releasever}\.[\d]+)/`, get("https://repo.almalinux.org/almalinux/")) {
|
|
majorminor += matches[1].parse_float();
|
|
}
|
|
majorminor.dedup();
|
|
majorminor.sort();
|
|
let kver = find_all(`kernel-([\d.]+.*?)\.el.*?\.x86_64\.rpm`, get(`https://repo.almalinux.org/almalinux/${majorminor[majorminor.len()-1]}/BaseOS/x86_64/os/Packages/`));
|
|
kver.dedup();
|
|
open_file("anda/system/nvidia/kmod-nvidia/VERSION_kernel.txt", "w").write(`${kver[kver.len - 1][1]}`);
|
|
|
|
let dir = sub(`/[^/]+$`, "", __script_path);
|
|
if sh("[[ `git status " + dir + " --porcelain` ]] && exit 1 || exit 0", #{}).ctx.rc == 1 {
|
|
let rel = spec::get_release(rpm).parse_int();
|
|
rpm.release(rel + 1);
|
|
}
|