main
 1{
 2  lib,
 3  fetchzip,
 4  buildHelper,
 5}: let
 6  versionData = lib.importJSON ./version.json;
 7  versions = versionData.cachyos;
 8
 9  allVersions =
10    lib.mapAttrs (
11      version: src:
12        buildHelper {
13          name = "spritz-wine-cachyos";
14          inherit version;
15          src = fetchzip src;
16        }
17    )
18    versions;
19
20  latestKey = builtins.head (lib.sort (a: b: builtins.compareVersions a b > 0) (builtins.attrNames versions));
21  latest = allVersions.${latestKey};
22
23  versionedAttrs =
24    lib.mapAttrs' (
25      version: drv:
26        lib.nameValuePair (lib.replaceStrings ["."] ["_"] version) drv
27    )
28    allVersions;
29in
30  latest // versionedAttrs