Feature - Implemented Directory of installable SVN scripts - complete with one-click installation!

Here's a nifty little KoLmafia feature I whipped up today. This adds a Manage Scripts item to the Scripts menu, which provides a list of scripts you can install via SVN. Select your scripts and hit "install" - KoLmafia will invoke the SVN command needed for you. Cool, huh?

It relies on a data file that currently lives here: http://kolmafia.puttysoftware.com/data/scriptdirectory.txt

I'd be happy to have this data file moved somewhere else as long as it gets maintained. Finally, the all-important patch is attached.
 
Um.

Well, we read/write buffbot configs from the place of the buffbot owner's choice, since they need control over the configuration. And we read & write mallprices via kolmafia.us.

But I am quite sure that I do not want to build in functionality that depends on going to a third-party site to fetch a data file that is maintained by somebody else.

Now, the concept of a script registry is good - and Bale has a forum note that includes such. It has the advantage that the scripts are vetted and have pointers to threads where they are described where you can go ready about it and decide if it's what you want. I'm really not sure that the name of the script by itself is enough to let me decide that.

So, I don't reject this idea, per se, but I think this design/implementation is not the right realization of the idea.
 
Precisely why I thought the data file that powers this thing should not permanently live on my server. I agree with you completely that it shouldn't be implemented that way. I do not know where the best place to host this should be and how to maintain it.

Also, the patch as submitted has one problem: There's no way to force KoLmafia to refresh the script data file currently.

EDIT: Better patch. Data file is now internal, stored in src/data/scriptdirectory.txt. Scripts can now be removed as well as installed - this required a format change to the data file to add the project name.
 
Last edited:
Could the relevant text file not be stored in Mafia's SVN and updated by those with commit access?

The biggest problem with that system is it means updating the file is up to someone with commit access, and I don't know that any of us want to be responsible for that.
 
It looks like there isn't enough interest in this feature to implement it now. I think this is a shame, since I wrote the code to make it work, but I'll accept that now isn't the time for it.
 
It looks like there isn't enough interest in this feature to implement it now. I think this is a shame, since I wrote the code to make it work, but I'll accept that now isn't the time for it.

I think you misunderstood the response. It was lukewarm because your proposal requires Yet Another Data File which has to be hosted and maintained. Related to that is the conditions under which the file is changed. I mean, everybody trusts Bale so all Bale would have to do would be to ask and his script would be included. But how do you handle that jerk fronbulax? Is there some kind of vetting process he, and his script need to go through go get included in the file? Who defines that process? Who puts fronobulax's scripts through the process?

A perhaps unstated assumption is that the Kolmafia devs and the code they check in to SourceForge are somehow trusted and a typical user is going to assume that any script that appears in a list of available scripts provided by mafia is trustworthy to the same degree. This patch does not seem to provide that assurance for the end user.
 
I think you misunderstood the response. It was lukewarm because your proposal requires Yet Another Data File which has to be hosted and maintained. Related to that is the conditions under which the file is changed. I mean, everybody trusts Bale so all Bale would have to do would be to ask and his script would be included. But how do you handle that jerk fronbulax? Is there some kind of vetting process he, and his script need to go through go get included in the file? Who defines that process? Who puts fronobulax's scripts through the process?

A perhaps unstated assumption is that the Kolmafia devs and the code they check in to SourceForge are somehow trusted and a typical user is going to assume that any script that appears in a list of available scripts provided by mafia is trustworthy to the same degree. This patch does not seem to provide that assurance for the end user.
Gotcha. That is fine with me too.
 
Just an interesting thought: Would it be possible for the ScriptManager to parse the list of scripts from the forum post here on kolmafia.us? Or would that be another potential security problem?
 
Just an interesting thought: Would it be possible for the ScriptManager to parse the list of scripts from the forum post here on kolmafia.us? Or would that be another potential security problem?

I thought about that as well. The trust issue is reduced to trusting Bale or anyone else with Mod access here and the process is "just ask". But I'm not sure how comfortable that would make folks. However, if something is going to scrape a web page to get data then why not have a script that does that? GUI options for scripts require some creativity but I can see the desired functionality being made available with an action script and a relay script, much the way OCD manager works.
 
This is a well-intentioned thing but the concept needs a lot more fleshing out before it's ready for prime time.

I've created a thread discussing an official script registry here.
 
Since this is what prompted roippi to do the Script Registry, although there may or may not be Features or Bugs in that, the project is Implemented.
 
Back
Top