diff --git a/pkgs/by-name/os/osu-lazer-bin/package.nix b/pkgs/by-name/os/osu-lazer-bin/package.nix index b28f8cf6a87c..0467f43ade52 100644 --- a/pkgs/by-name/os/osu-lazer-bin/package.nix +++ b/pkgs/by-name/os/osu-lazer-bin/package.nix @@ -10,23 +10,23 @@ let pname = "osu-lazer-bin"; - version = "2025.607.0"; + version = "2025.710.0"; src = { aarch64-darwin = fetchzip { - url = "https://github.com/ppy/osu/releases/download/${version}/osu.app.Apple.Silicon.zip"; - hash = "sha256-rfWP6vF68mE+pnKvJjSgkxzTBj3sWDRlB9NZZkPOYOE="; + url = "https://github.com/ppy/osu/releases/download/${version}-lazer/osu.app.Apple.Silicon.zip"; + hash = "sha256-Wg/HlnVjEV7rSTRTzYxP4w41PDVq+vPRT/+MArpK6+U="; stripRoot = false; }; x86_64-darwin = fetchzip { - url = "https://github.com/ppy/osu/releases/download/${version}/osu.app.Intel.zip"; - hash = "sha256-FpMugHVyhpyzCRp+EH/RSQDsgoUEQrAuIVCaMTucz88="; + url = "https://github.com/ppy/osu/releases/download/${version}-lazer/osu.app.Intel.zip"; + hash = "sha256-aHlcjubkai5B9k49ptjR3RImkbqHpvyfgueMPZNDmmM="; stripRoot = false; }; x86_64-linux = fetchurl { - url = "https://github.com/ppy/osu/releases/download/${version}/osu.AppImage"; - hash = "sha256-jG3KedllnVNd5TLSkKYae2V8CzN90g5lJhT4EKI+nuk="; + url = "https://github.com/ppy/osu/releases/download/${version}-lazer/osu.AppImage"; + hash = "sha256-Tfm75+jkSAqyNBkN3cVrx3hyw+Ai3lKa6ZIo47x2Rns="; }; } .${stdenvNoCC.system} or (throw "osu-lazer-bin: ${stdenvNoCC.system} is unsupported."); diff --git a/pkgs/by-name/os/osu-lazer-bin/update.sh b/pkgs/by-name/os/osu-lazer-bin/update.sh index 30a1fb9bfe35..19508b7825e9 100755 --- a/pkgs/by-name/os/osu-lazer-bin/update.sh +++ b/pkgs/by-name/os/osu-lazer-bin/update.sh @@ -1,30 +1,26 @@ #!/usr/bin/env nix-shell -#!nix-shell -I nixpkgs=./. -i bash -p unzip curl jq common-updater-scripts -set -eo pipefail -cd "$(dirname "${BASH_SOURCE[0]}")" +#!nix-shell -I nixpkgs=./. --pure -i bash -p bash cacert curl jq nix unzip common-updater-scripts +set -euo pipefail -bin_file="$(realpath ./package.nix)" +new_tag_name="$(curl -s "https://api.github.com/repos/ppy/osu/releases/latest" | jq -r '.name')" +new_version="${new_tag_name%-lazer}" +old_version="$(nix eval --raw -f . osu-lazer-bin.version)" -new_version="$(curl -s "https://api.github.com/repos/ppy/osu/releases/latest" | jq -r '.name')" -old_version="$(sed -nE 's/\s*version = "(.*)".*/\1/p' ./package.nix)" if [[ "$new_version" == "$old_version" ]]; then echo "Already up to date." exit 0 fi -cd ../../../.. - echo "Updating osu-lazer-bin from $old_version to $new_version..." -sed -Ei.bak '/ *version = "/s/".+"/"'"$new_version"'"/' "$bin_file" -rm "$bin_file.bak" for pair in \ 'aarch64-darwin osu.app.Apple.Silicon.zip' \ 'x86_64-darwin osu.app.Intel.zip' \ - 'x86_64-linux osu.AppImage'; do + 'x86_64-linux osu.AppImage' +do set -- $pair echo "Prefetching binary for $1..." - prefetch_output=$(nix --extra-experimental-features nix-command store prefetch-file --json --hash-type sha256 "https://github.com/ppy/osu/releases/download/$new_version/$2") + prefetch_output=$(nix --extra-experimental-features nix-command store prefetch-file --json --hash-type sha256 "https://github.com/ppy/osu/releases/download/$new_tag_name/$2") if [[ "$1" == *"darwin"* ]]; then store_path=$(jq -r '.storePath' <<<"$prefetch_output") tmpdir=$(mktemp -d) @@ -35,6 +31,5 @@ for pair in \ hash=$(jq -r '.hash' <<<"$prefetch_output") fi echo "$1 ($2): hash = $hash" - sed -Ei.bak '/ *'"$1"' = /{N;N; s@("sha256-)[^;"]+@"'"$hash"'@}' "$bin_file" - rm "$bin_file.bak" + update-source-version osu-lazer-bin "$new_version" "$hash" --system="$1" --ignore-same-version done diff --git a/pkgs/by-name/os/osu-lazer/deps.json b/pkgs/by-name/os/osu-lazer/deps.json index b78a98c0bd35..b4ff6e7dc0cc 100644 --- a/pkgs/by-name/os/osu-lazer/deps.json +++ b/pkgs/by-name/os/osu-lazer/deps.json @@ -434,11 +434,6 @@ "version": "6.0.0-rc.1.21451.13", "hash": "sha256-oTYhI+lMwaQ7l9CfDHeNMBAdfofv4kHC0vqBZ7oJr4U=" }, - { - "pname": "Microsoft.Extensions.DependencyInjection.Abstractions", - "version": "8.0.0", - "hash": "sha256-75KzEGWjbRELczJpCiJub+ltNUMMbz5A/1KQU+5dgP8=" - }, { "pname": "Microsoft.Extensions.DependencyInjection.Abstractions", "version": "9.0.2", @@ -459,11 +454,6 @@ "version": "9.0.2", "hash": "sha256-vPCb4ZoiwZUSGJIOhYiLwcZLnsd0ZZhny6KQkT88nI0=" }, - { - "pname": "Microsoft.Extensions.Logging.Abstractions", - "version": "8.0.0", - "hash": "sha256-Jmddjeg8U5S+iBTwRlVAVLeIHxc4yrrNgqVMOB7EjM4=" - }, { "pname": "Microsoft.Extensions.Logging.Abstractions", "version": "9.0.2", @@ -581,8 +571,8 @@ }, { "pname": "NuGet.Versioning", - "version": "6.12.1", - "hash": "sha256-f/ejCuzCAwKs4N4Ec6yf2RovrhBT0nj0hRDP+03/Iy4=" + "version": "6.14.0", + "hash": "sha256-DqdOJgsphKxSvqB8b60zNPCaiLfbiu3WnUJ/90feLrY=" }, { "pname": "NUnit", @@ -651,8 +641,8 @@ }, { "pname": "ppy.osu.Framework", - "version": "2025.604.1", - "hash": "sha256-TnxNneBVR6YYuaUbU1sHewwVzy15qmCpudSopHol1tM=" + "version": "2025.710.0", + "hash": "sha256-p1AFltuRloCm/krTzGzhI5A89NT5yU2nK6ILwhgzLnc=" }, { "pname": "ppy.osu.Framework.NativeLibs", @@ -666,8 +656,8 @@ }, { "pname": "ppy.osu.Game.Resources", - "version": "2025.605.0", - "hash": "sha256-t9uNvlimF81LNECTBnhLidSmN8cOXi3Sn0rqI3na3zQ=" + "version": "2025.708.0", + "hash": "sha256-lgGl/jLHMlguuPbQ7MW8uTUk+ZibmMiqtMZnE3xWEr4=" }, { "pname": "ppy.osuTK.NS20", @@ -701,8 +691,8 @@ }, { "pname": "ppy.Veldrid.SPIRV", - "version": "1.0.15-gfbb03d21c2", - "hash": "sha256-rnl6+U4E3BJVYTWtEjOx7fDVcJJNBP8MOisoGVLT7vA=" + "version": "1.0.15-gb66ebf81d2", + "hash": "sha256-+0dUQTBEU0pPjRhZXvBkWTUpmMFfM9E6FWWT6yHS/9I=" }, { "pname": "ppy.Vk", @@ -1616,8 +1606,8 @@ }, { "pname": "Velopack", - "version": "0.0.1053", - "hash": "sha256-YAOvvHDyazxqxQoZ7rDB3szkYnTq/zrzS9mXnpI+2jI=" + "version": "0.0.1298", + "hash": "sha256-oaejrsFMKymGY8/irvB1LEQdIe8NYtZbc+/RWUaL4hk=" }, { "pname": "Vortice.D3DCompiler", diff --git a/pkgs/by-name/os/osu-lazer/package.nix b/pkgs/by-name/os/osu-lazer/package.nix index 057b16df671e..a8730b51341e 100644 --- a/pkgs/by-name/os/osu-lazer/package.nix +++ b/pkgs/by-name/os/osu-lazer/package.nix @@ -22,13 +22,13 @@ buildDotnetModule rec { pname = "osu-lazer"; - version = "2025.607.0"; + version = "2025.710.0"; src = fetchFromGitHub { owner = "ppy"; repo = "osu"; - tag = version; - hash = "sha256-qAKtINbWbC76a4vhEFIE6WnEtn/0brcIPp5WXBGQoEI="; + tag = "${version}-lazer"; + hash = "sha256-etIf0ZE1YHZntBQGciFlP1ARgWSTqytJIklAy77+q+Q="; }; projectFile = "osu.Desktop/osu.Desktop.csproj"; @@ -95,7 +95,11 @@ buildDotnetModule rec { }) ]; - passthru.updateScript = nix-update-script { }; + passthru.updateScript = nix-update-script { + extraArgs = [ + "--version-regex=(.*)-lazer" + ]; + }; meta = { description = "Rhythm is just a *click* away (no score submission or multiplayer, see osu-lazer-bin)";