Recursively removing a directory tree with pure Lua is hardly worth the trouble, shelling out to do 'rm -rf /some/path' with something like this is perfectly fine:
%pretrans -p <lua>
st = posix.stat("<path to dir>")
if st and st.type == "directory" then
os.execute("rm -rf <path to dir>")
end
The directory you're wanting to remove can only exist on upgrades, in which case shell is going to be there too (or you're looking at one very ill system). The special case of initial install simply falls through there as there's no directory to remove.
Recursively removing a directory tree with pure Lua is hardly worth the trouble, shelling out to do 'rm -rf /some/path' with something like this is perfectly fine:
%pretrans -p <lua>
st = posix.stat("<path to dir>")
if st and st.type == "directory" then
os.execute("rm -rf <path to dir>")
end
The directory you're wanting to remove can only exist on upgrades, in which case shell is going to be there too (or you're looking at one very ill system). The special case of initial install simply falls through there as there's no directory to remove.