From 2cd76f916a13e66f1fdf06dd7bf5dff6be64de0b Mon Sep 17 00:00:00 2001 From: Rory& Date: Fri, 7 Nov 2025 22:36:50 +0100 Subject: WIP: nix CI --- scripts/fetchdeps.sh | 5 +++++ scripts/publish.sh | 20 ++++++++++++++++++++ 2 files changed, 25 insertions(+) create mode 100755 scripts/fetchdeps.sh create mode 100755 scripts/publish.sh (limited to 'scripts') diff --git a/scripts/fetchdeps.sh b/scripts/fetchdeps.sh new file mode 100755 index 0000000..a93ff53 --- /dev/null +++ b/scripts/fetchdeps.sh @@ -0,0 +1,5 @@ +#! /usr/bin/env sh +for p in `nix flake show --json | jq '.packages."x86_64-linux" | keys[]' -r` +do + nix build .\#${p}.passthru.fetch-deps && ./result ./${p//-/\.}/deps.json +done diff --git a/scripts/publish.sh b/scripts/publish.sh new file mode 100755 index 0000000..2fd910f --- /dev/null +++ b/scripts/publish.sh @@ -0,0 +1,20 @@ +BASEDIR="$PWD" +rm ./result* *.nupkg + +for p in `nix flake show --json | jq '.packages."x86_64-linux" | keys[]' -r` +do + nix build .\#${p} -j4 -L --out-link ./result-${p//-/\.} & +done +wait + +for p in result*/share/nuget/packages/*/*/.unpacked +do + PNAME=$(basename `realpath "${p}/../.."`) + PRNAME=$(basename $(cd "${p}/../../../../../.." && echo $PWD)) + echo $PNAME: $PRNAME + cd "${p}" || continue + zip -db -ds 32k -9 -r "${BASEDIR}/${PNAME//./-}.nupkg" * + cd - + dotnet nuget push *.nupkg -k ${NUGET_KEY} --source https://api.nuget.org/v3/index.json --skip-duplicate + rm -rfv "${PRNAME}" "${PNAME//./-}.nupkg" +done \ No newline at end of file -- cgit 1.5.1