From c64d3d1194b967c76a79059e7e4f751ddb4c19db Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Wed, 8 Jul 2026 20:08:30 +0200 Subject: [PATCH] hl2sdk updatescript --- flake.nix | 6 +++++- nix/sourcemod/hl2sdk.nix | 14 +++++++++++++- nix/sourcemod/overlay.nix | 2 +- 3 files changed, 19 insertions(+), 3 deletions(-) diff --git a/flake.nix b/flake.nix index 1196503..13f1e3f 100644 --- a/flake.nix +++ b/flake.nix @@ -43,7 +43,7 @@ metamods = pkgs.lib.mapAttrs (name: sdk: pkgs.metamod-source.override {sdks = {${name} = sdk;};}) pkgs.hl2sdk; }; - packages = inheritPkgs ["ambuild" "sourcepawn" "sourcemod-includes" "sourcemod-include-library" "srcds-tf2"]; + packages = inheritPkgs ["ambuild" "hl2sdk" "sourcepawn" "sourcemod-includes" "sourcemod-include-library" "srcds-tf2"]; checks = { buildTestScript = {pkgs, ...}: @@ -55,5 +55,9 @@ }; }; }; + + devShells.default = {pkgs, ...}: { + packages = with pkgs; [nix-update]; + }; }; } diff --git a/nix/sourcemod/hl2sdk.nix b/nix/sourcemod/hl2sdk.nix index e8c083c..f8beb27 100644 --- a/nix/sourcemod/hl2sdk.nix +++ b/nix/sourcemod/hl2sdk.nix @@ -1,6 +1,7 @@ { fetchFromGitHub, mkDerivation, + nix-update-script, lib, }: let inherit (builtins) mapAttrs elem; @@ -23,13 +24,24 @@ }; buildSdk = sdkName: sdk: mkDerivation { - name = "hl2sdk-${sdkName}"; + pname = "hl2sdk-${sdkName}"; + version = "unstable-${sdk.rev}"; src = fetchRev sdk; installPhase = '' mkdir -p $out cp -r $src $out/hl2sdk-${sdk.dirName or sdkName} ''; + passthru = { + updateScript = nix-update-script { + extraArgs = [ + "--flake" + "--version=branch=${sdkName}" + "--override-filename=nix/sourcemod/hl2sdks.json" + ]; + }; + }; + meta = { platforms = optionals (isX86 sdkName) ["i686-linux"] diff --git a/nix/sourcemod/overlay.nix b/nix/sourcemod/overlay.nix index f7bd0a0..83abc0d 100644 --- a/nix/sourcemod/overlay.nix +++ b/nix/sourcemod/overlay.nix @@ -1,6 +1,6 @@ final: prev: { hl2sdk = (import ./hl2sdk.nix) { - inherit (final) fetchFromGitHub lib; + inherit (final) fetchFromGitHub lib nix-update-script; inherit (final.stdenvNoCC) mkDerivation; }; ambuild = final.python3Packages.callPackage ./ambuild.nix {};