diff options
author | Francesco Gazzetta <fgaz@fgaz.me> | 2022-12-10 15:19:50 +0100 |
---|---|---|
committer | Francesco Gazzetta <fgaz@fgaz.me> | 2022-12-10 17:02:13 +0100 |
commit | 19e4b53b090c7aa150af40232b2c75c80d53a017 (patch) | |
tree | 02b001b57529a154785499463c0ca1a6df0d815f /pkgs/common-updater | |
parent | c1188a559b143950fd1dc55b22820fffc3013b1d (diff) |
common-updater-scripts,directoryListingUpdater: add extraRegex parameter
Diffstat (limited to 'pkgs/common-updater')
-rw-r--r-- | pkgs/common-updater/directory-listing-updater.nix | 3 | ||||
-rwxr-xr-x | pkgs/common-updater/scripts/list-directory-versions | 6 |
2 files changed, 7 insertions, 2 deletions
diff --git a/pkgs/common-updater/directory-listing-updater.nix b/pkgs/common-updater/directory-listing-updater.nix index fb7491ab879ac..bd0b5b1df30d6 100644 --- a/pkgs/common-updater/directory-listing-updater.nix +++ b/pkgs/common-updater/directory-listing-updater.nix @@ -11,9 +11,10 @@ , odd-unstable ? false , patchlevel-unstable ? false , url ? null +, extraRegex ? null }: genericUpdater { inherit pname version attrPath ignoredVersions rev-prefix odd-unstable patchlevel-unstable; - versionLister = "${common-updater-scripts}/bin/list-directory-versions ${lib.optionalString (url != null) "--url=${lib.escapeShellArg url}"}"; + versionLister = "${common-updater-scripts}/bin/list-directory-versions ${lib.optionalString (url != null) "--url=${lib.escapeShellArg url}"} ${lib.optionalString (extraRegex != null) "--extra-regex=${lib.escapeShellArg extraRegex}"}"; } diff --git a/pkgs/common-updater/scripts/list-directory-versions b/pkgs/common-updater/scripts/list-directory-versions index cf2f0adbd43e9..c713578beefbe 100755 --- a/pkgs/common-updater/scripts/list-directory-versions +++ b/pkgs/common-updater/scripts/list-directory-versions @@ -26,6 +26,8 @@ parser.add_argument( parser.add_argument("--url", help="url of the page that lists the package versions") parser.add_argument("--file", help="file name for writing debugging information") +parser.add_argument("--extra-regex", help="additional regex to filter versions with") + if __name__ == "__main__": args = parser.parse_args() @@ -62,4 +64,6 @@ if __name__ == "__main__": rf"(.*/)?{args.pname}-([\d.]+?(-[\d\w.-]+?)?)(\.tar)?(\.[^.]*)", link_url ) if match: - print(match.group(2)) + version = match.group(2) + if (not args.extra_regex) or re.fullmatch(args.extra_regex, version): + print(version) |