mirror of
https://github.com/koreader/koreader
synced 2024-11-11 19:11:14 +00:00
a60544b1ad
Currently only tested on Ubuntu-touch emulator with framework ubuntu-sdk-14.10 for armhf. The ubuntu-touch port is binary compatible with the Kobo port major changes in this PR are: 1. rename the emulator device to sdl device since both the emulator and the ubuntu-touch target use libsdl to handle input/output. 2. ubuntu-touch app has no write access to the installation dir so all write-outs should be in a seperate dir definded in `datastorage`.
40 lines
975 B
Lua
40 lines
975 B
Lua
local isAndroid, android = pcall(require, "android")
|
|
local util = require("ffi/util")
|
|
|
|
local function probeDevice()
|
|
if util.isSDL() then
|
|
return require("device/sdl/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_stat = lfs.attributes("/bin/kobo_config.sh")
|
|
if kg_test_stat then
|
|
return require("device/kobo/device")
|
|
end
|
|
|
|
local pbook_test_stat = lfs.attributes("/ebrmain")
|
|
if pbook_test_stat then
|
|
return require("device/pocketbook/device")
|
|
end
|
|
|
|
-- add new ports here:
|
|
if --[[ implement a proper test instead --]] false then
|
|
return require("device/newport/device")
|
|
end
|
|
|
|
error("did not find a hardware abstraction for this platform")
|
|
end
|
|
|
|
local dev = probeDevice()
|
|
dev:init()
|
|
return dev
|