mirror of
https://github.com/koreader/koreader
synced 2024-10-31 21:20:20 +00:00
30 lines
694 B
Lua
30 lines
694 B
Lua
|
local isAndroid, android = pcall(require, "android")
|
||
|
local util = require("ffi/util")
|
||
|
|
||
|
local function probeDevice()
|
||
|
if util.isEmulated() then
|
||
|
return require("device/emulator/device")
|
||
|
end
|
||
|
|
||
|
if isAndroid then
|
||
|
return require("device/android/device")
|
||
|
end
|
||
|
|
||
|
local kindle_sn = io.open("/proc/usid", "r")
|
||
|
if kindle_sn then
|
||
|
kindle_sn:close()
|
||
|
return require("device/kindle/device")
|
||
|
end
|
||
|
|
||
|
local kg_test_fd = lfs.attributes("/bin/kobo_config.sh")
|
||
|
if kg_test_fd then
|
||
|
return require("device/kobo/device")
|
||
|
end
|
||
|
|
||
|
error("did not find a hardware abstraction for this platform")
|
||
|
end
|
||
|
|
||
|
local dev = probeDevice()
|
||
|
dev:init()
|
||
|
return dev
|