# Generated by lon. Do not modify! let lock = builtins.fromJSON (builtins.readFile ./lon.lock); # Override with a path defined in an environment variable. If no variable is # set, the original path is used. overrideFromEnv = name: path: let replacement = builtins.getEnv "LON_OVERRIDE_${name}"; in if replacement == "" then path else # this turns the string into an actual Nix path (for both absolute and # relative paths) if builtins.substring 0 1 replacement == "/" then /. + replacement else /. + builtins.getEnv "PWD" + "/${replacement}"; fetchSource = args@{ fetchType, ... }: if fetchType == "git" then builtins.fetchGit { url = args.url; ref = args.branch; rev = args.revision; narHash = args.hash; } else if fetchType == "tarball" then builtins.fetchTarball { url = args.url; sha256 = args.hash; } else builtins.throw "Unsupported source type ${fetchType}"; in builtins.mapAttrs (name: args: overrideFromEnv name (fetchSource args)) lock.sources