diff --git a/frontend/device/android/device.lua b/frontend/device/android/device.lua index b6f25db63..8f1c5ec10 100644 --- a/frontend/device/android/device.lua +++ b/frontend/device/android/device.lua @@ -450,6 +450,10 @@ function Device:info() return common_text..platform_text..eink_text..wakelocks_text end +function Device:isDeprecated() + return self.firmware_rev < 18 +end + function Device:test() android.runTest() end diff --git a/frontend/device/generic/device.lua b/frontend/device/generic/device.lua index 05907b888..560383a88 100644 --- a/frontend/device/generic/device.lua +++ b/frontend/device/generic/device.lua @@ -48,6 +48,7 @@ local Device = { hasWifiManager = no, isDefaultFullscreen = yes, isHapticFeedbackEnabled = no, + isDeprecated = no, -- device no longer receive OTA updates isTouchDevice = no, hasFrontlight = no, hasNaturalLight = no, -- FL warmth implementation specific to NTX boards (Kobo, Cervantes) diff --git a/frontend/ui/otamanager.lua b/frontend/ui/otamanager.lua index 4d71d9169..c7e4fc183 100644 --- a/frontend/ui/otamanager.lua +++ b/frontend/ui/otamanager.lua @@ -153,6 +153,8 @@ function OTAManager:getZsyncFilename() end function OTAManager:checkUpdate() + if Device:isDeprecated() then return -1 end + local http = require("socket.http") local ltn12 = require("ltn12") local socket = require("socket") @@ -227,6 +229,10 @@ function OTAManager:fetchAndProcessUpdate() UIManager:show(InfoMessage:new{ text = _("KOReader is up to date."), }) + elseif ota_version == -1 then + UIManager:show(InfoMessage:new{ + text = T(_("Device no longer supported.\n\nPlease check %1"), "https://github.com/koreader/koreader/wiki/deprecated-devices") + }) elseif ota_version == nil then local channel = ota_channels[OTAManager:getOTAChannel()] UIManager:show(InfoMessage:new{