Your "safer reset script" is based on a programming style which is inheirently flawed and dangerous
I almost never downvoted anyone (when I was able to), but I downvoted diotalevi when he said I would sincerely ask you to not upload this to CPAN. While there is no enforced minimum standard of quality for code there or here, this goes particularly low and really should not be shared with a wider audience. People have said worse things that I didn't downvote, but I respect diotalevi and was particularly surprised for the unsupported comment. One of my responses in that thread was:
I don't see how my use of globals is unsafe. If my use of eval could end up doing something dangerous because I'm improperly parsing the code before evaling it, please explain. I reviewed my code after you warned me about that, but I couldn't find a problem.
"or die" is a good idea, if that's what you meant by checking for failure, but that's a 30 second job that should be taken care of, rather than something to make me forget about the script. I'll be adding other error reporting as well.
Parsing Perl isn't bad. Even if it's not as robust as another method, it's not bad. If the script would fail too often, that's bad, but you didn't explain how.
You weren't specific about what's flawed and dangerous, but I think the above answers your comment.
tkil spent a long time reviewing VarStructor 1.0 for his analysis, and I don't recall him mentioning anything security related. He did mention that "it violates good coding guidelines left and right" but I don't care because "good coding guidelines" are not rules when you're not in school and are your own boss, and following any set of guidelines doesn't indicate whether a script works. Remember, I'm the one maintaining it. Don't cramp my style. I understand my scripts and I've determined that other programming methods don't suit me at this time.