blob: 4418670f6cbf92da2fb49a38565412525336e68b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
local M = {}
local lfs = require('lfs')
function M.update_index(dir, arch, description)
local indexopt=""
local descriptionopt=""
local olddir = lfs.currentdir()
local archdir = ("%s/%s"):format(dir, arch)
assert(lfs.chdir(archdir), archdir)
local signed_index = "APKINDEX.tar.gz"
local unsigned_index = "APKINDEX.tar.gz.unsigned"
if lfs.attributes(signed_index) ~= nil then
indexopt = "--index "..signed_index
end
if description then
descriptionopt="--description "..description
end
local indexcmd = ("apk index --quiet %s %s --output '%s' --rewrite-arch %s *.apk"):format(indexopt, descriptionopt, unsigned_index, arch)
local signcmd = "abuild-sign -q "..unsigned_index
assert(os.execute(indexcmd), indexcmd)
assert(os.execute(signcmd), signcmd)
assert(os.rename(unsigned_index, signed_index), signed_index)
lfs.chdir(olddir)
end
return M
|