added utils

This commit is contained in:
2025-07-27 01:41:23 -05:00
parent 4b928e40ef
commit 89352156db
3 changed files with 365 additions and 0 deletions

6
DemoDep/info.json Normal file
View File

@@ -0,0 +1,6 @@
{
"version": "1.0.0",
"engine_version": "2025.2",
"description": "A shared dependency for demonstration purposes.",
"depends": []
}

87
generate_registry.py Normal file
View File

@@ -0,0 +1,87 @@
import os
import json
GITEA_BASE = (
"https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/"
)
def prompt_plugin_info(plugin_name):
print(f"\n[~] Enter info for plugin: {plugin_name}")
version = input(" Version? [1.0.0]: ") or "1.0.0"
engine_version = input(" Engine Version? [2025.2]: ") or "2025.2"
description = (
input(" Description? [No description provided.]: ")
or "No description provided."
)
depends_raw = input(" Dependencies? (comma separated, leave blank if none): ")
depends = (
[d.strip() for d in depends_raw.split(",") if d.strip()] if depends_raw else []
)
return {
"version": version,
"engine_version": engine_version,
"description": description,
"depends": depends,
}
def get_plugin_info(plugin_path, plugin_name):
info_path = os.path.join(plugin_path, "info.json")
if os.path.exists(info_path):
try:
with open(info_path, "r") as f:
return json.load(f)
except json.JSONDecodeError:
print(f"[!] Warning: Invalid JSON in {info_path}, asking again.")
# Ask user and save
info = prompt_plugin_info(plugin_name)
with open(info_path, "w") as f:
json.dump(info, f, indent=4)
return info
def generate_single_package():
folder = input("[~] Enter plugin folder name (relative path): ").strip()
if not os.path.isdir(folder):
print("[X] Folder not found.")
return
plugin_name = os.path.basename(os.path.normpath(folder))
info = get_plugin_info(folder, plugin_name)
files = []
dll_filename = f"lumenite_{plugin_name}.dll"
dll_url = f"{GITEA_BASE}{plugin_name}/{dll_filename}"
for root, _, filenames in os.walk(folder):
for file in filenames:
rel_path = os.path.relpath(os.path.join(root, file), folder).replace(
"\\", "/"
)
if file == dll_filename:
continue # DLL is handled separately
files.append(
{"path": rel_path, "url": f"{GITEA_BASE}{plugin_name}/{rel_path}"}
)
plugin_entry = {
"name": plugin_name,
"description": info["description"],
"version": info["version"],
"engine_version": info["engine_version"],
"dll_url": dll_url,
"files": files,
"depends": info["depends"],
}
with open(f"registry_{plugin_name}.json", "w") as out:
json.dump([plugin_entry], out, indent=4)
print(f"[+] Wrote registry.json for plugin: {plugin_name}")
if __name__ == "__main__":
generate_single_package()

View File

@@ -22,9 +22,281 @@
"engine_version": "2025.2",
"dll_url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/lumenite_DemoDep.dll",
"files": [
{
"path": ".gitignore",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/.gitignore"
},
{
"path": "CMakeLists.txt",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/CMakeLists.txt"
},
{
"path": "info.json",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/info.json"
},
{
"path": "LICENSE",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/LICENSE"
},
{
"path": "notes.txt",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/notes.txt"
},
{
"path": "plugin.cpp",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/plugin.cpp"
},
{
"path": "README.md",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/README.md"
},
{
"path": "include/lumenite_api.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/include/lumenite_api.h"
},
{
"path": "vendor/lua/lapi.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lapi.c"
},
{
"path": "vendor/lua/lapi.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lapi.h"
},
{
"path": "vendor/lua/lauxlib.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lauxlib.c"
},
{
"path": "vendor/lua/lauxlib.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lauxlib.h"
},
{
"path": "vendor/lua/lbaselib.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lbaselib.c"
},
{
"path": "vendor/lua/lcode.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lcode.c"
},
{
"path": "vendor/lua/lcode.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lcode.h"
},
{
"path": "vendor/lua/lcorolib.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lcorolib.c"
},
{
"path": "vendor/lua/lctype.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lctype.c"
},
{
"path": "vendor/lua/lctype.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lctype.h"
},
{
"path": "vendor/lua/ldblib.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/ldblib.c"
},
{
"path": "vendor/lua/ldebug.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/ldebug.c"
},
{
"path": "vendor/lua/ldebug.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/ldebug.h"
},
{
"path": "vendor/lua/ldo.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/ldo.c"
},
{
"path": "vendor/lua/ldo.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/ldo.h"
},
{
"path": "vendor/lua/ldump.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/ldump.c"
},
{
"path": "vendor/lua/lfunc.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lfunc.c"
},
{
"path": "vendor/lua/lfunc.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lfunc.h"
},
{
"path": "vendor/lua/lgc.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lgc.c"
},
{
"path": "vendor/lua/lgc.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lgc.h"
},
{
"path": "vendor/lua/linit.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/linit.c"
},
{
"path": "vendor/lua/liolib.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/liolib.c"
},
{
"path": "vendor/lua/ljumptab.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/ljumptab.h"
},
{
"path": "vendor/lua/llex.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/llex.c"
},
{
"path": "vendor/lua/llex.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/llex.h"
},
{
"path": "vendor/lua/llimits.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/llimits.h"
},
{
"path": "vendor/lua/lmathlib.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lmathlib.c"
},
{
"path": "vendor/lua/lmem.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lmem.c"
},
{
"path": "vendor/lua/lmem.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lmem.h"
},
{
"path": "vendor/lua/loadlib.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/loadlib.c"
},
{
"path": "vendor/lua/lobject.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lobject.c"
},
{
"path": "vendor/lua/lobject.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lobject.h"
},
{
"path": "vendor/lua/lopcodes.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lopcodes.c"
},
{
"path": "vendor/lua/lopcodes.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lopcodes.h"
},
{
"path": "vendor/lua/lopnames.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lopnames.h"
},
{
"path": "vendor/lua/loslib.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/loslib.c"
},
{
"path": "vendor/lua/lparser.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lparser.c"
},
{
"path": "vendor/lua/lparser.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lparser.h"
},
{
"path": "vendor/lua/lprefix.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lprefix.h"
},
{
"path": "vendor/lua/lstate.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lstate.c"
},
{
"path": "vendor/lua/lstate.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lstate.h"
},
{
"path": "vendor/lua/lstring.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lstring.c"
},
{
"path": "vendor/lua/lstring.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lstring.h"
},
{
"path": "vendor/lua/lstrlib.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lstrlib.c"
},
{
"path": "vendor/lua/ltable.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/ltable.c"
},
{
"path": "vendor/lua/ltable.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/ltable.h"
},
{
"path": "vendor/lua/ltablib.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/ltablib.c"
},
{
"path": "vendor/lua/ltm.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/ltm.c"
},
{
"path": "vendor/lua/ltm.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/ltm.h"
},
{
"path": "vendor/lua/lua.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lua.h"
},
{
"path": "vendor/lua/lua.hpp",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lua.hpp"
},
{
"path": "vendor/lua/luaconf.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/luaconf.h"
},
{
"path": "vendor/lua/lualib.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lualib.h"
},
{
"path": "vendor/lua/lundump.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lundump.c"
},
{
"path": "vendor/lua/lundump.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lundump.h"
},
{
"path": "vendor/lua/lutf8lib.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lutf8lib.c"
},
{
"path": "vendor/lua/lvm.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lvm.c"
},
{
"path": "vendor/lua/lvm.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lvm.h"
},
{
"path": "vendor/lua/lzio.c",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lzio.c"
},
{
"path": "vendor/lua/lzio.h",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/lzio.h"
},
{
"path": "vendor/lua/Makefile",
"url": "https://dock-it.dev/GigabiteHosting/Lumenite-Package-Manager/raw/branch/main/DemoDep/vendor/lua/Makefile"
}
],
"depends": []