about summary refs log tree commit diff
path: root/pkgs/applications/misc/ArchiSteamFarm/updater.sh
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/misc/ArchiSteamFarm/updater.sh')
-rwxr-xr-xpkgs/applications/misc/ArchiSteamFarm/updater.sh24
1 files changed, 16 insertions, 8 deletions
diff --git a/pkgs/applications/misc/ArchiSteamFarm/updater.sh b/pkgs/applications/misc/ArchiSteamFarm/updater.sh
index 399ab975fd30e..1de4d6dbfd113 100755
--- a/pkgs/applications/misc/ArchiSteamFarm/updater.sh
+++ b/pkgs/applications/misc/ArchiSteamFarm/updater.sh
@@ -1,9 +1,9 @@
 #!/usr/bin/env nix-shell
-#!nix-shell -i bash -p curl gnused jq common-updater-scripts nuget-to-nix dotnet-sdk_5
-set -eo pipefail
+#!nix-shell -i bash -p curl gnused jq common-updater-scripts nuget-to-nix
+set -exo pipefail
 cd "$(dirname "${BASH_SOURCE[0]}")"
 
-deps_file="$(realpath ./deps.nix)"
+deps_file="$(realpath ./deps)"
 
 new_version="$(curl ${GITHUB_TOKEN:+" -u \":$GITHUB_TOKEN\""} -s "https://api.github.com/repos/JustArchiNET/ArchiSteamFarm/releases" | jq -r  'map(select(.prerelease == false)) | .[0].tag_name')"
 old_version="$(sed -nE 's/\s*version = "(.*)".*/\1/p' ./default.nix)"
@@ -16,6 +16,7 @@ fi
 cd ../../../..
 update-source-version ArchiSteamFarm "$new_version"
 store_src="$(nix-build -A ArchiSteamFarm.src --no-out-link)"
+platforms="$(nix-instantiate --strict --eval --json -A ArchiSteamFarm.meta.platforms | jq -r .[])"
 src="$(mktemp -d /tmp/ArchiSteamFarm-src.XXX)"
 cp -rT "$store_src" "$src"
 chmod -R +w "$src"
@@ -25,12 +26,19 @@ pushd "$src"
 export DOTNET_NOLOGO=1
 export DOTNET_CLI_TELEMETRY_OPTOUT=1
 
-mkdir ./nuget_pkgs
-dotnet restore ArchiSteamFarm.sln --packages ./nuget_pkgs
+for i in $platforms; do
+  nix-shell -p dotnet-sdk_6 --argstr system $i --run "
+     mkdir ./nuget_pkgs-$i
+     for project in ArchiSteamFarm/ArchiSteamFarm.csproj ArchiSteamFarm.Tests/ArchiSteamFarm.Tests.csproj; do
+       dotnet restore $project --packages ./nuget_pkgs-$i
+     done;
 
-nuget-to-nix ./nuget_pkgs > "$deps_file"
+     nuget-to-nix ./nuget_pkgs-$i > $deps_file-$i.nix" \
+  || echo "Did you set up binformat for $i?";
 
-trap ''
+done;
+
+trap '
   popd
   rm -r "$src"
-'' EXIT
+' EXIT