20 lines
490 B
Lua
20 lines
490 B
Lua
local function get_removal_deps(pkgname, deps)
|
|
local packages = cache.getlocal()
|
|
for k, v in pairs(packages) do
|
|
if (k ~= -1) then
|
|
if (v.pkginfo.dependencies and v.pkginfo.dependencies[pkgname] and not deps[k]) then
|
|
deps[#deps+1] = k
|
|
deps[k] = true
|
|
get_removal_deps(k, deps)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
function remove_pkg(pkgname)
|
|
local files = cache.getlocal()[pkgname].tracked_files
|
|
for i=1, #files do
|
|
fs.remove(files[i])
|
|
end
|
|
cache.update_local_cache(pkgname, nil)
|
|
end |