2
0
mirror of https://github.com/koreader/koreader synced 2024-11-04 12:00:25 +00:00
Commit Graph

142 Commits

Author SHA1 Message Date
NiLuJe
90df2f1997
Fix fb rotation on the Forma w/ KSM (#4779)
* Enforce Portrait rotation on the Forma *everywhere*, KSM included.
KSM is currently emulating a bogus rotation, which causes issues with
FBInk, but also happens to be insidiously quirky in weird corner-cases.
2019-03-13 19:24:30 +01:00
NiLuJe
7c2df53808
Update FBInk (#4765)
* Add a bit of logging before fbdepth calls, to make the progression
easier to grasp.
* Bump base (pickup FBInk update)
2019-03-10 00:59:49 +01:00
NiLuJe
bb3f49a566 [feat, Kobo] On Kobo, drop fb to 8bpp on startup (#4637)
* The Great 8bpp Experiment

Swap to 8bpp on Kobo, because we're 'effing grayscale, for pete's sake!

* Always swap to 8bpp, no matter the launch method.

Because it turned out that, even when restarting Nickel, we had to
restore the expected bitdepth ourselves, because pickel/Nickel didn't do
the job completely.

(I'm going to guess the grayscale flag wasn't getting flipped properly).

* Dither every non-transparent icon to the eInk palette

* Make sure hasBGRFrameBuffer is only enabled when the Kobo fb actually is
@ 32bpp...

* Re-process badly grayscaled icons

* And re-grayscale that one w/ gamma correction so the squares show up
better.

* Allow the fbdepth switch to be disabled (in Developer settings).

Also, allow setting debug mode that way.

Also, forcibly disable verbose logging when disabling debug.

* Update setting name to piggyback on the existing check in reader.lua

* Update icons postprocessing info
2019-03-03 12:31:55 +01:00
NiLuJe
f6743a45db
Proper Forma support (#4414)
* Enforce a known rotation on startup, to make sure we handle touch input coordinates properly.
* Proper FrontLight warmth support (thanks to @cairnsh & @pazos in #4291)!
* Fix the PageTurn buttons mapping to match Nickel's defaults
* Properly remap PageTurn buttons depending on the current rotation.
* Actually enable the Mk.7 screen refresh codepath on *all* Mk.7 devices (I'd messed up the device check...).
* Full accelerometer handling (includes a touch of refactoring regarding orientation handling in general).
* Fix insidiously broken USBMS behavior in Nickel after we exit on FW >4.8.

Fix #4291
Fix #3002
2018-12-28 04:32:42 +01:00
NiLuJe
ababbd7aad
Enhanced visual feedback around tar & zsync! (#4194)
* Move Kindle scripts to FBInk
* Proper progress bars around tar invocations
* Spinner during zsync processing
2018-09-06 01:35:48 +02:00
NiLuJe
0924b57877
Tweak/unbreak my CPUFreq experiment (#4119)
* Only switch to ondemand when we actually can, and when it's better than the current governor...
  This potentially leaves Mk.5 in the lurch, but there's no perfect solution there :/.

* Switch to UI for the unmark event of navigation hints markers
Might help on non-REAGL devices, and doesn't hurt there (re #3983).

* Switch SQLite DBs to WAL
Sounds nice in theory, behaves fine in practice.
2018-07-29 03:53:57 +02:00
NiLuJe
b509e54a2a
CPUFreq shenanigans on Kobo (#4114)
* Switch to ondemand CPUFreq governor on Kobo

My H2O boots with the userspace (!!) governor...
Note that the hardware appears to blissfully ignore any of this, because
the stats still show the CPU changing state on its own...
2018-07-28 16:09:58 +02:00
NiLuJe
6835c18ee6
Re-exec startup script on Kindle/Kobo when an OTA update is processed on startup (#4062)
So that we may properly pickup potential updates to the startup script
itself.
2018-07-07 22:27:38 +02:00
NiLuJe
4ffd959df4
Handle OTA updates during the restart loop on Kobo/Kindle (#4049)
* Handle OTA updates during the restart loop on Kobo/Kindle

So we can actually process OTA updates without ever truly exiting
KOReader (i.e., via the "Restart KOReader" menu entry) ;).
2018-07-04 19:25:55 +02:00
NiLuJe
8089d916a5
Visual feedback around tar/zsync on Kobo during OTA updates (#4043)
* With a bonus version normalizer fix.
  * And a zsync bump/fix to avoid softlocks with OpenStack HTTP frontends (also, pull those from the OTA mirror list).
2018-07-03 23:16:45 +02:00
NiLuJe
e2a0929c51
Better KOA2 support (#4037)
* Better KOA2 support
    * Fix FL
    * Add physical pageturn keys
    * Add accelerometer support
* Possibly better NaturalLight handling on the Clara
* Fix WiFi module name used in some(?) Mk7 Kobos
* A bunch of kodev fixes
2018-07-01 17:35:12 +02:00
NiLuJe
18db509325 Assorted bag of fixes (#4014)
* Link to the WiKi, it's a bit more explainy ;).

* More WiFi trickery for some HW revs

* Fix Rev2 detection under KSM

That's to future-proof it, the other end of this hasn't made it into
current KSM build yet.

* Resync nickel.sh w/ current rcS

We don't have CPU, but we have PLATFORM, which is based on CPU, so,
that'll do :).

* Go back to using rmmod instead of modprobe -r

Functionally identical on current FW, will potentially avoid getting
outsmarted by modprobe if Kobo ever deigns shipping an actually usable
Linux system one day...

* Don't crash if screensavers directory doesn't exist

c.f., https://www.mobileread.com/forums/showpost.php?p=3706979&postcount=2919
2018-06-16 23:05:20 +02:00
NiLuJe
e3b7524d9c Another round of Kobo Fixes (#3939)
* Trim unneeded stuff from startup script

I was somehow convinced I'd already done that...
While we're there, explain why we need to siphon those specific vars

* Fix a stray eth0

-> $INTERFACE

* Be very very sure we have INTERFACE set in our env

re #3936

* Make getFirmwareVersion less fragile on Kobo

Not that we actually use it right now, but, still. :D

* Use the same syntax as the PRODUCT check

* Actually implement getProductId

Instead of a stray c/p ^^

* Properly identify the Rev2/Mark7 variants of existing devices

Namely, the H2O² and Aura SE
Not that the H2O²r2 support is still broken, this just allows us to
implement it cleanyl without breaking handling of the original H2O²

re #3925

* Tweak sleeps a bit around Kobo WiFi modules...

See if that jog things up (re #3936)

* Try harder not to suspend with WiFi on on Kobos

Because otherwise, things go boom. (re #3936)
2018-05-10 12:26:07 +02:00
mezzarobba
a3e16b3920 [fix] make wifi control work with my Kobo Touch N905 (#3920) 2018-05-01 14:49:37 +02:00
NiLuJe
3f92525ec7 Fix WiFi on Kobo (#3891)
Regression after bdb82d09c1
TL;DR: That thing is race-y as hell.

The more I play with Kobos, the more it feels like the whole thing's
held together by pieces of fraying strings...
2018-04-18 09:09:58 +02:00
NiLuJe
a36407080b Don't use a square icon on Kobo (#3889)
We ship it for use with fmon, and that means it gets processed by
Nickel, which expects an optimal AR of 0.75
2018-04-18 00:32:40 +02:00
NiLuJe
bdb82d09c1 [chore] A round of Kobo specific script cleanup (#3876)
* Flag those scripts as executable in git

Somewhat irrelevant because we'll end up living on a FAT32 drive, but,
still.

* Cleanup Kobo startup script

Support KFMon >= 0.9.5

Don't siphon PRODUCT from nickel, it's exported by rcS, so fmon/KFMon
already inherit it.
Siphon NICKEL_HOME, on the off-chance nickel fails to figure that one
out for itself on restart.
Siphon LANG (This may be a terrible idea, rcS sets LANG to en_US.UTF-8,
while we set LC_ALL to en_US.UTF-8, but I don't know if nickel itself
ever updates LANG, since I have mine set to en_US also ;)).
My secret hope if that everything's working as it should and this ensures
we default to Nickel's locale on fresh installs?

Remove the extra sync on startup, both @Baskerville's fmon and KFMon are
smart enough not to do anything overly stupid, and recent FW versions
have a slightly more resilient DB anyway (rollback journal -> WAL).
This effectively shaves over a second off our startup time.

* Slimmed down the nickel restart script.

Based on current rcS
Scrapped a bucketload of irrelevant & legacy crap, since we're never
bootstrapping nickel, only restarting it.

* Update Kobo install instrcutions.

Point to KSM09, @Baskerville's fmon, and KFMon.
Deprecate legacy fmon, and as such, stop shipping a useless KoboRoot
tarball.
2018-04-15 15:05:45 +02:00
Hzj_jie
30378eb2a8 Add restart koreader function and ensure FlushSettings event can be delivered to all widgets (#2772) 2017-05-16 02:11:11 -07:00
Frans de Jonge
1850ebca0d (chore) koreader.sh: remove 32-bit workaround
Final fix for #2502.
2017-04-24 01:31:08 -07:00
Qingping Hou
d1cc3bd6c2 ota(fix): always purge ota update files 2017-04-23 08:25:28 +02:00
a-kohout
870c4d3859 Update koreader.sh; fixes #2791
tar fails to apply permissions on fat32 filesystem. thus mv doesn't get executed and consequently OTA package gets applied on every launch.
2017-04-22 16:27:37 -07:00
Frans de Jonge
0eec5b5174 Simplify koreader.sh
`-C "${KOREADER_DIR}"` isn't needed, see https://github.com/koreader/koreader/issues/2752#issuecomment-293698136.
2017-04-12 22:37:06 +02:00
Frans de Jonge
5de8310aa6 Kobo (koreader.sh): install OTA update in working directory
Thanks to @a-kohout

Fixes #2752
2017-04-12 01:49:23 -07:00
Frans de Jonge
e8c01274f4 Travis: enforce shellscript coding style
* enormous coding style update

* update luajit-launcher

All changes are formatting only except for:

* new more correct pushd/popd style
	* keeps useful indentation
	* prevents execution of commands when pushd failed (cf. https://github.com/koalaman/shellcheck/wiki/SC2164 and https://github.com/koalaman/shellcheck/issues/863)

```
pushd some_dir && {
    command1
    command2
} || exit
popd
```
2017-04-11 15:30:23 +02:00
Frans de Jonge
e5bcdee85e Add ShellCheck and shfmt shell code quality analysis (#2712)
* Add ShellCheck and shfmt shell code quality analysis

* kobo/koreader.sh: remove useless $PREFIX

* kobo/koreader.sh: fix rotation issue caused by #2731

* Travis: speed up (caching Luarocks should shave a minute off install process)
2017-04-09 10:42:16 +02:00
pazos
3a75b6deab use fullpath for reboot 2017-04-06 23:30:00 -07:00
pazos
31b246574b Kobo framebuffer: workaround to support +4.0FW 2017-04-06 23:30:00 -07:00
Qingping Hou
c34e04e081 wifi(fix): use -D wext for kobo wpa_supplicant 2017-02-27 11:08:57 +01:00
Qingping Hou
6b50a2783b kobo(fix): load wifi module by ENV
Aura One uses 8189fs instead of dhd module
2017-02-27 11:08:57 +01:00
Martín Fernández
79fd02e020 Kobo: remove useless error messages from ntx_hwconfig 2017-02-20 18:02:11 -08:00
Qingping Hou
f95ad00b9e feat: add logger module & rewrite kobo suspend script in lua 2017-01-02 19:52:09 -08:00
poire-z
65881738b5 disable-wifi.sh: decreased sleep duration 2016-12-14 11:39:46 -08:00
Qingping Hou
744115de9f crash.log(fix): obviously I suck at counting zeros 2016-12-10 16:06:51 -08:00
poire-z
08a92de179 Fix: avoid system hang when disabling wifi (#2394) 2016-12-04 12:03:11 -08:00
Qingping Hou
b7cdf103e3 chore: fix luacheck error & add comment to release-ip.sh 2016-11-19 13:11:23 -08:00
Hzj_jie
8e5f294902 Return correct result from koreader.sh 2016-11-11 22:41:46 -08:00
Qingping Hou
efae2ed16f network(fix): automaticallly obtain IP if network is already authenticated 2016-11-06 23:56:29 -08:00
Qingping Hou
705d3e4cb4 doc(minor): document alternative usb plug event source for kobo 2016-10-17 23:45:47 -07:00
Qingping Hou
0ed95406a4 log(fix): do not pipe stdout to /dev/null during crash log rotation 2016-10-16 01:29:02 -07:00
Qingping Hou
5309a0a47f misc: rotate crash.log for kobo/kindle/pocketbook 2016-10-14 20:37:54 -07:00
Qingping Hou
c716fef0e3 minor: change wording in restore-wifi-sync script 2016-10-08 15:53:02 -07:00
Hzj_jie
52bcf87643 always release ip before obtaining a new one 2016-09-24 01:10:45 -07:00
Hzj_jie
da2c57f93a Automatically connect WIFI after Kobo has been resumed (#2215)
* Add bash scripts to control WIFI / IP, so we can share them with frontend/device/kobo/device.lua.

* add test cases
2016-09-01 00:05:40 -07:00
NiLuJe
2013a66fdd Some more Kobo suspend tweaks...
Disable wakeup_count handling, that's often causing more harm than
anything else...
Nickel doesn't even use it, that should have been a hint ;).

Make the logging slightly less confusing.
Add commented out debug features (dumping relevant dmesg output).

Re #2188
2016-07-31 19:01:15 +02:00
NiLuJe
0f184e30ed Tweak nickel restart script
Also restart sickel...
2016-07-31 18:13:16 +02:00
NiLuJe
892e3c0f1e Kobo startup script tweak.
When using KFMon, make the reboot on exit user-configurable.
The user can now choose to try to restart Nickel directly, like with
fmon.
For now, we still do a full reboot by default.
2016-05-15 20:52:46 +02:00
Frans de Jonge
8643d38a68 Removed some bashisms 2016-05-06 18:51:10 +02:00
NiLuJe
e90f1018db Make the KFMon chekc actually accurate...
Sleep does wonder for your brain!
2016-05-01 15:11:47 +02:00
NiLuJe
b406e3591f Update Kobo startup script for KFMon
Takes care of some potentially critical stuff ;p
2016-05-01 05:59:50 +02:00
Qingping Hou
dceaa01250 minor: redirect all output to crash.log 2016-03-17 21:55:46 -07:00
Frans de Jonge
b8b0684e30 Add a comment with 'from_nickel', fixes #1889 2016-03-15 18:12:01 +01:00
NiLuJe
770625d756 Tweak the 'IR down on resume' workaround...
Only apply it when started from nickel, because I'm guessing we'd have
seen a number of reports of this if it happened more widely...
2016-03-02 18:24:14 +01:00
NiLuJe
ea382aea86 Tweak the sd is ro check a bit
Inspired from MRPI, but without a strict check of the device name,
because I'm not sure it'll be the same across the whole range of
Kobos...
2016-03-02 18:24:13 +01:00
NiLuJe
150aac1630 More comment tweaks re: Kobo suspend 2016-03-02 18:24:13 +01:00
NiLuJe
06e1bd4ed2 Slightly more accurate comments re: Kobo suspend 2016-03-02 18:24:10 +01:00
NiLuJe
fe13af9d7e More Kobo suspend tweaks...
Basically more loging to debug suspend issues...
AFAICT, having anything plugged in over USB will screw things up, for
instance.
2016-03-02 18:09:38 +01:00
NiLuJe
6c8bbfd470 Unbreak Kobo frontlight -> off when suspending.
If no-one touches anything, flState stays false...
And anyway, we should unconditionally disable the fl on sleep.
2016-03-02 18:09:38 +01:00
zijiehe
e7b8bdcde2 Check whether sd card is presenting and mounting as RO, before do the real remount 2016-02-23 20:46:57 +08:00
zijiehe
38553b5ef8 Mount SD card as RW on kobo, but ignore errors, since we may not have sd
card installed.
2016-02-22 17:23:43 +08:00
Cosmin Gorgovan
856ec6d075 Mark suspend.sh for Kobo as executable
Otherwise suspend fails to work when running koreader from a FS
which supports execute permissions.
2016-01-03 00:32:10 +00:00
NiLuJe
f9925a8c82 Play with the Kobo suspend script...
Because apparently it's not behaving as it should? IDK...
2015-10-22 14:16:05 +02:00
NiLuJe
687aba796d Fix networkmgr on Kobo
To avoid potential issues with USBMS.
Namely, make sure CWD doesn't point to the userstore for persitent
processes.
Make sure wpa_supplicant doesn't try to use our own OpenSSL lib, which,
again, is in the userstore area.
Properly kill our dhcp client invocation on when killing WiFi

Also, some related fixes to the startup script:
Properly kill wpa_supplicant & the dhcp client when we kill
wifi before rebooting to nickel.
2015-09-04 23:14:17 +02:00
arasyi
d3bc8ecb5f Fix nickel doesn't recognize sdcard after exiting
After exiting koreader, nickel will not recognize that sdcard is present.
This patch fixes that
2015-08-23 18:33:34 +07:00
Frans de Jonge
475ee28173 Fix KOReader exit
Should reboot less unnecessarily for older versions of KSM, and hopefully this would also be more forward-compatible.
2015-06-19 19:54:41 +02:00
NiLuJe
34cb799818 Fix nickel restart with WiFi up.
By killing the WiFi first, since apparently,
nickel really doesn't like that, and causes a deadlock.

re #1503, re #1504, fix #1520
2015-05-06 16:53:17 +02:00
NiLuJe
02fcb9037b Fix startup scripts.
Thanks to @Markismus's questions, I realized that some of what i thought
was true, wasn't.

First, pkill is a terrible idea to check for interpreted scripts.
Second, pidof is also potentially not that great for interpreted
scripts, because it'll only work with a shebang, and one that is
following the Linux syntax.
We don't have the full version with the -x to paper over that,
so use pgrep -f instead.

cf.
a736a571d2 (commitcomment-10948910)
for the gory details.
2015-04-28 21:07:25 +02:00
NiLuJe
9f89fc8e47 Fix Kobo startup script w/ KSM
pkill probably only checks the actual name of the binary.
We were checking a shell script, which I'm guessing is not launched
via a shebang, so that name was actually an arg to sh, or something like
that.

Use pidof instead, which matches the full command line.
2015-04-27 22:37:54 +02:00
NiLuJe
85445b12f1 Guess what? More comments ^^. 2015-04-27 13:04:52 +02:00
NiLuJe
da891ca335 And comment that, because I'm likely to forget. 2015-04-27 02:40:17 +02:00
NiLuJe
a99359fa44 Add a comment to explicit the KSM check 2015-04-27 02:33:31 +02:00
NiLuJe
7fd45c6cd3 And even more Kobo startup script tweaks.
Good news: restarting nickel doesn't deadlock anymore. Yay.
2015-04-27 01:59:50 +02:00
NiLuJe
218d8b3e54 More comments... 2015-04-27 01:24:24 +02:00
NiLuJe
f259ec4259 Wipe dead code 2015-04-27 01:22:10 +02:00
NiLuJe
7db252a27e More Kobo startup scripts tweaks... 2015-04-27 01:21:54 +02:00
NiLuJe
d4f80209d9 Minor comment tweak 2015-04-27 00:01:44 +02:00
NiLuJe
476ae3322c sync before killing nickel
Hopefully good enough to avoid trashing the DB
2015-04-26 23:42:59 +02:00
NiLuJe
97ad4afa92 Minor comment tweak 2015-04-26 22:54:44 +02:00
NiLuJe
6c1681b595 Well, go for the lesser evil.
For some unknowable reason, restarting nickel on exit deadlocks on my
H2O, so, do a full reboot instead, at least *that* works.
I'm probably one of the only people running KO manually anyway...
2015-04-26 22:46:16 +02:00
NiLuJe
c2bd85bba4 More Kobo scripts tweak...
Trying to figure out why nickel deadlocks on restart...
2015-04-26 22:09:14 +02:00
NiLuJe
1945873682 Tweak the comment a bit 2015-04-26 20:51:35 +02:00
NiLuJe
6f815e2bdf Minor pass of cleanup of the Kobo scripts.
re #1503
2015-04-26 20:46:30 +02:00
HW
de9f1a281d Merge pull request #1499 from Markismus/master
Update koreader.sh
2015-04-22 12:28:52 +02:00
Markismus
1e9996f475 Update koreader.sh
Compatibility with KSM is resolved. Koreader will now work from any directory it is installed in.

KSM7 tweaks `koreader.sh` line 5 from a hardcoded path to the line used above. I've added the change in line 12 to allow OTA updating.
2015-04-22 12:17:17 +02:00
chrox
bb164c1deb Load our own shared libraries if possible
This should fix #1482.
2015-04-13 10:54:32 +08:00
chrox
33614a3a24 Fix #1457 2015-04-01 18:24:01 +08:00
Huang Xin
b56c01c382 Merge pull request #1423 from Markismus/master
Update networkmgr.lua
2015-02-10 23:13:00 +08:00
Markismus
6e95673d80 Update koreader.sh
Forgot the export PLATFORM
2015-02-09 16:19:27 +01:00
Markismus
40202fbc6b Update koreader.sh
The commands in networkmgr.lua rely on an assigned value of PLATFORM. As discussed in #1423 this is only the case for child processes of rcS. This seems to be a fine place to check the value of PLATFORM.
2015-02-09 16:13:07 +01:00
chrox
a40c172c47 fix mupdf rendering caused by FONTDIR env var
It turns out that one of our mupdf patch reads the FONTDIR env var
and uses it in a totally different way so we will use another env var
EXT_FONT_DIR to define external font directory for different platforms.
2015-01-28 02:20:45 +08:00
chrox
077517be0b add FONTDIR env variable
to support custom font directory for EPUB documents

Now Koreader could find fonts in the "fonts" directory in the USB root
directory of kindle, Kobo and PocketBook devices, thus no need to copy
fonts to "koreader/fonts" directory.
2015-01-25 16:52:04 +08:00
chrox
46963df0bb don't need to rebuild ota installed package if it's detected 2014-10-14 21:34:56 +08:00
chrox
2d3c502948 move platform dependent files into 'platform' directory 2014-10-03 18:02:50 +08:00