Select Git revision
generate-actions.py
target_lib.lua 6.63 KiB
local image_customization_lib = dofile('scripts/image_customization_lib.lua')
-- Functions for use in targets/*
local F = {}
-- To be accessed by scripts using target_lib
local M = setmetatable({}, { __index = F })
local funcs = setmetatable({}, {
__index = function(_, k)
return F[k] or _G[k]
end,
})
local env = setmetatable({}, {
__index = function(_, k) return os.getenv(k) end
})
F.env = env
assert(env.GLUON_SITEDIR)
assert(env.GLUON_TARGETSDIR)
assert(env.GLUON_RELEASE)
assert(env.GLUON_DEPRECATED)
M.site_code = assert(
dofile('scripts/site_config.lua')('site.conf').site_code, 'site_code missing in site.conf'
)
M.target_packages = {}
M.configs = {}
M.devices = {}
M.images = {}
-- Initialize image-customization
image_customization_lib.init(env)
local default_options = {
factory = '-squashfs-factory',
factory_ext = '.bin',
sysupgrade = '-squashfs-sysupgrade',
sysupgrade_ext = '.bin',
extra_images = {},
aliases = {},
manifest_aliases = {},
packages = {},
class = 'standard',
deprecated = false,
broken = false,
}
local gluon_devices, unknown_devices = {}, {}
for dev in string.gmatch(env.GLUON_DEVICES or '', '%S+') do
gluon_devices[dev] = true
unknown_devices[dev] = true
end
function F.istrue(v)
return (tonumber(v) or 0) > 0
end
local function device_broken(device_info, overrides)
if F.istrue(env.BROKEN) then
return false
end
if overrides['broken'] ~= nil then
return overrides['broken'] == true
elseif device_info.options.broken then
return true