Azathothas / Toolpacks

📦 Largest Collection of Multi-Platform (Android|Linux|Windows) Pre-Compiled (+ UPXed) Static Binaries (incl. Build Scripts) :: https://bin.ajam.dev
https://bin.ajam.dev/
MIT License
145 stars 16 forks source link

[Q] Will METADATA.json ever contain fileds compatible with Hysp's metadata file (Description, Version, Date, License, etc)? Like its done for the README.md inside of x86_64_Linux #7

Closed xplshn closed 8 months ago

Azathothas commented 8 months ago

Unfortunately No ! This is how it's generated in HealthChecks.yaml

 rclone lsjson --fast-list "r2:/bin/${aarch64_arm64_Linux | x86_64_Linux | x64_Windows}/" | jq -r 'include "./to_human_bytes" ; .[] | select(.IsDir == false) | {Name, Size: (.Size | tonumber | bytes), ModTime, Source: "https://bin.ajam.dev/${aarch64_arm64_Linux | x86_64_Linux | x64_Windows}/\(.Name)"}'

As you can see, it's just simple listing & pointing the source url, requires no additional maintenance.

Meanwhile, hysp-pkgs' pkg_metafetcher_metaupdater_x86_64.yaml is 4500+ lines of mostly manually added entries, just for x86_64 Linux packages, and even then it's not complete and severely lacks behind the actual number of available packages.

xplshn commented 8 months ago

Yes, I know that. But you have added the descriptions, sha, and others to the readmes.,

Azathothas commented 8 months ago

That's simply a mirror of Hysp's Readme: https://github.com/metis-os/hysp-pkgs/blob/main/data/x86_64/README.md

xplshn commented 8 months ago

Ah., okay then. Seems then like there is now reliable way to implement the "search" functionality of bigDL & BDL. So I'll leave it as it is for now. If you ever get around automatically generating metadata please tell me so that I implement it too.,

I am thinking of making bigDL buffer a list of everything in the repos and pull descriptions from the Alpine repo's or pkgs.org or somewhere like that. That seems like the only possible way to implement a search option right now, tho matching name's and descriptions against another repo to then match those results against the search term of the user seem like its gonna be hella difficult.

Azathothas commented 8 months ago

I looked at this again and I think it may actually be quite easy to at least get Repo URLs, & Checksums For other fields like

{
      "description": "NO",
      "author": "NO",
      "repo": "YES",
      "stars": "NO",
      "version": "NO",
      "updated": "NO",
      "size": "YES",
      "bsum": "YES",
      "sha": "YES",
      "source": "YES",
      "language": "NO",
      "license": "NO"
}      

So the final metadata should have:

 {
    "Name": "XXXXXXX",
    "Size": "XXXXXXX MB",
    "ModTime": "XXXXXXX",
    "Source": "XXXXXXX",
    "B3SUM": "XXXXXXX",
    "SHA256": "XXXXXXX",
    "Repo": "XXXXXXX"
Azathothas commented 8 months ago

[+] Completed Now, these files will include additional B3SUM SHA256 & Repo fields. https://bin.ajam.dev/x86_64_Linux/METADATA.json https://bin.ajam.dev/aarch64_arm64_Linux/METADATA.json https://bin.ajam.dev/arm64_v8a_Android/METADATA.json https://bin.ajam.dev/x64_Windows/METADATA.json

The default value will always be null in case of missing values. Also, Baseutils/* will not have these fields

xplshn commented 8 months ago

Thanks, will be showed in bigDL with the 'info' functionality