diff --git a/pkgs/by-name/gz/gz-cmake/package.nix b/pkgs/by-name/gz/gz-cmake/package.nix index 215ebb8d98bc..aa5eb711bd2d 100644 --- a/pkgs/by-name/gz/gz-cmake/package.nix +++ b/pkgs/by-name/gz/gz-cmake/package.nix @@ -6,15 +6,20 @@ doxygen, graphviz, pkg-config, + nix-update-script, }: +let + version = "4.1.1"; + versionPrefix = "gz-cmake${lib.versions.major version}"; +in stdenv.mkDerivation (finalAttrs: { pname = "gz-cmake"; - version = "4.1.1"; + inherit version; src = fetchFromGitHub { owner = "gazebosim"; repo = "gz-cmake"; - tag = "gz-cmake${lib.versions.major finalAttrs.version}_${finalAttrs.version}"; + tag = "${versionPrefix}_${finalAttrs.version}"; hash = "sha256-BWgRm+3UW65Cu7TqXtFFG05JlYF52dbpAsIE8aDnJM0="; }; @@ -25,6 +30,11 @@ stdenv.mkDerivation (finalAttrs: { pkg-config ]; + # Extract the version by matching the tag's prefix. + passthru.updateScript = nix-update-script { + extraArgs = [ "--version-regex=${versionPrefix}_([\\d\\.]+)" ]; + }; + meta = { description = "CMake modules to build Gazebo projects"; homepage = "https://github.com/gazebosim/gz-cmake";