mirror of
https://codeberg.org/spire/nix.git
synced 2026-08-02 12:25:00 +02:00
29 lines
1.2 KiB
Nu
Executable file
29 lines
1.2 KiB
Nu
Executable file
#! /usr/bin/env nu
|
|
|
|
def main [] {
|
|
update_metamod
|
|
|
|
# let sdks = open nix/sourcemod/hl2sdks.json | columns
|
|
# $sdks | each {|sdk| update_sdk $sdk}
|
|
}
|
|
|
|
def update_sdk [sdk: string] {
|
|
print $"Updating ($sdk) SDK"
|
|
# some sdks might have identical files at some point, so their hash can be the same
|
|
# nix-update will replace all occurences of the hash, which might not be correct
|
|
# so we put a unique dummy value in there to work around this
|
|
open nix/sourcemod/hl2sdks.json | update ([$sdk, "sha256"] | into cell-path) $"($sdk)-placeholder" | save -f nix/sourcemod/hl2sdks.json
|
|
|
|
nix-update --flake --use-update-script $"hl2sdk.($sdk)"
|
|
nix build .#sourcemods.x86_64-linux.tf2
|
|
}
|
|
|
|
def update_metamod [] {
|
|
let html = http get https://www.metamodsource.net/downloads.php/?branch=stable
|
|
let branch = $html | query web --query h3 | first | first | parse --regex "from (?P<branch>[0-9.]+) Branch" | get branch | first
|
|
let build = $html | query web --as-table [Build] | get Build | first
|
|
print $"Updating metamod-source to ($branch).0.($build)"
|
|
nix-update --flake --version=$"($branch).0.($build)" metamod-source
|
|
|
|
nom build .#metamods.x86_64-linux.tf2
|
|
}
|