Skip to content

hook up redfetch to call luarocks.exe#32

Open
Redbot wants to merge 1 commit into
mainfrom
call-luarocks
Open

hook up redfetch to call luarocks.exe#32
Redbot wants to merge 1 commit into
mainfrom
call-luarocks

Conversation

@Redbot

@Redbot Redbot commented Jun 8, 2026

Copy link
Copy Markdown
Collaborator

Hopefully this will address most of #19 , or at least get people angry at redfetch rather than rgmercs.

This solution runs luarocks.exe from redfetch as part of a normal "easy update", using version information pulled from MQ2Lua.dll
It will grab all rocks curated by MacroQuest devs, which takes several minutes.

On failure it will post some common solutions.

Since antivir has been known to remove rocks dll files, we search for their existence regardless of what luarocks reports.

Comment thread src/redfetch/luarocks.py
@Knightly1

Knightly1 commented Jun 8, 2026

Copy link
Copy Markdown

Not knocking this but if luarocks.exe is failing from the game, it's likely going to fail from here too. If you want to try to solve the problem that people are having when luarocks.exe doesn't work the right way to solve it is to not use luarocks.exe.

And, I'm not saying I don't trust you. But make sure you're using the right luarocks.exe if you are gonna use it :D

@Redbot

Redbot commented Jun 8, 2026

Copy link
Copy Markdown
Collaborator Author

that's helpful. I was hoping to help people who didn't click the popup in-game, or whose antivir deleted things unbeknownst to luarocks.exe, or print() some advice and tips for other issues. But yeah we're just running luarocks.exe more often.

Grab the precompiled binaries then?

@Knightly1

Knightly1 commented Jun 8, 2026

Copy link
Copy Markdown

that's helpful. I was hoping to help people who didn't click the popup in-game, or whose antivir deleted things unbeknownst to luarocks.exe, or print() some advice and tips for other issues. But yeah we're just running luarocks.exe more often.

Grab the precompiled binaries then?

Yeah, you're already doing most of the work here for knowing which is correct to grab, so I think you just unpack the rocks yourself (it's a zip file).

However, a separate alternative than doing this individually on redfetch is to just create a package on RedGuides that has it all and just syncs periodically with upstream and then have redfetch download that package. You already know that users using redfetch can get to RedGuides, so you're not troubleshooting anything beyond your own connectivity.

Also: https://github.com/macroquest/luarocks

@Redbot

Redbot commented Jun 9, 2026

Copy link
Copy Markdown
Collaborator Author

is there a reason i shouldn't package it with mq?

@Knightly1

Copy link
Copy Markdown

No, not at all, I'm just talking about in terms of making it easier on you from a maintenance standpoint. Basically:
1.) Skip luarocks.exe since you don't really need it.
2.) Centralize the package instead of having the user download it from the site that might be a problem for whatever reason.
3.) Deploy the centralized package from your site that is known-good.

That way you're getting around ALL of the possible headaches rather than just shifting the headaches from in-game to out-of-game.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants