1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-18 19:49:40 +00:00

misc/shared-mime-info: fix cleanup

update-mime-database generates tons of xml files during the trigger
execution, cleanup should remove them

Reported by:	many
This commit is contained in:
Baptiste Daroussin 2021-11-04 10:38:08 +01:00
parent 7f73a93ef2
commit bfb6486561
2 changed files with 19 additions and 4 deletions

View File

@ -2,7 +2,7 @@
PORTNAME= shared-mime-info
DISTVERSION= 2.0
PORTREVISION= 1
PORTREVISION= 2
CATEGORIES= misc gnome
MAINTAINER= desktop@FreeBSD.org

View File

@ -4,7 +4,7 @@ cleanup: {
script: <<EOS
local mimedir = "%%PREFIX%%/share/mime/"
local files = { "XMLnamespaces", "aliases", "generic-icons", "globs", "globs2", "icons", "mime.cache", "subclasses", "treemagic", "types", "version"}
for _,filename in pairs(files) do
for _,filename in ipairs(files) do
local fpath = mimedir .. filename
local st = pkg.stat(fpath)
if st then
@ -12,9 +12,24 @@ for _,filename in pairs(files) do
end
end
local res = pkg.readdir(mimedir)
if #res == 0 then
os.remove(mimedir)
if res == nil then goto cleanmime end
for _,dir in ipairs(res) do
if dir == "packages" then goto continue end
local directory = mimedir .. "/" .. dir
local r = pkg.readdir(directory)
if r == nil then goto cleandir end
for _,file in ipairs(r) do
os.remove(directory .. "/" .. file)
end
::cleandir::
os.remove(directory)
::continue::
end
::cleanmime::
os.remove(mimedir)
EOS
}
trigger: {