NickelMenu icon indicating copy to clipboard operation
NickelMenu copied to clipboard

support GoogleDrive

Open tomtastic opened this issue 1 year ago • 8 comments

See https://github.com/pgaskin/NickelMenu/issues/143#issuecomment-2282194408

tomtastic avatar Aug 22 '24 17:08 tomtastic

Have tested this fork on my Kobo Clara Color and it's working like a charm. The only things that were a bit difficult were spotting that the config needed to be modified that's mentioned in the linked comment above.

lorenzolewis avatar Sep 04 '24 21:09 lorenzolewis

Renamed, but haven't compiled to check it's all still working. I've added the config documentation and a short blurb about what to put in the Kobo eReader.conf.

tomtastic avatar Dec 02 '24 17:12 tomtastic

Appreciate the work on this! Is anything blocking merging atm?

marcoms avatar Feb 28 '25 20:02 marcoms

Hi, I can no longer download this. Could it be reposted or something please? It says expired

viraj700 avatar Apr 09 '25 18:04 viraj700

@pgaskin can you review/merge and release this? is there anything left to be done? maybe I can help

danifuuu avatar Apr 10 '25 07:04 danifuuu

FYI for someone looking for the build to be downloaded, feel free to use this: https://github.com/danifuuu/NickelMenu/actions/runs/14378056490

(@viraj700 in case you need it still)

danifuuu avatar Apr 10 '25 10:04 danifuuu

Hi, I can no longer download this. Could it be reposted or something please? It says expired

$ git clone https://github.com/pgaskin/NickelMenu.git
$ cd NickelMenu
$ gh pr checkout 167

tomtastic avatar May 31 '25 09:05 tomtastic

@pgaskin, there's a failing check for missing symbols in earlier firmware versions, can you advise please?

[action_cc.cc#L111](https://github.com/pgaskin/NickelMenu/pull/167/files#annotation_30307126848)
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]
one of symbols [_ZN14MoreController11googleDriveEv] not found in [email protected]

Because it seems the Google Drive support only appeared around firmware version ~4.38 or thereabouts :

❯ find Kobo\ Libre\ H2O/Firmware -name "KoboRoot.tgz" | sort -n | while read; do echo -n "$REPLY -> "; tar xvfO "$REPLY" usr/local/Kobo/libnickel.so.1.0.0 | strings - | grep _ZN14MoreController11googleDriveEv;done
Kobo Libre H2O/Firmware/kobopatch_4.32.19501/out/KoboRoot.tgz -> x ./usr/local/Kobo/libnickel.so.1.0.0
Kobo Libre H2O/Firmware/kobopatch_4.33.19759/out/KoboRoot.tgz -> x ./usr/local/Kobo/libnickel.so.1.0.0
Kobo Libre H2O/Firmware/kobopatch_4.38.21908/out/KoboRoot.tgz -> x ./usr/local/Kobo/libnickel.so.1.0.0_ZN14MoreController11googleDriveEv
Kobo Libre H2O/Firmware/kobopatch_4.38.23171/out/KoboRoot.tgz -> x ./usr/local/Kobo/libnickel.so.1.0.0_ZN14MoreController11googleDriveEv

tomtastic avatar May 31 '25 10:05 tomtastic

Coming in with some fresh interested in getting google drive support merged into master.

I found that the sym check issue was easily solved by fixing the comments describing which firmware version the symbol is available in. I also added more firmware versions to be tested.

Here's the commit that solves it. Feel free to apply it, otherwise I'll open a new PR with the fix included.

https://github.com/MKolman/NickelMenu/commit/7c9066b55bc060e48d281ea7082ef84fa7122677

MKolman avatar Jul 24 '25 08:07 MKolman

I did some more staring at the code and realized there was another mistake. Since Google drive integration was not available before 4.36 there's no use in having the check on line 158, since that particular function will never be available on that codepath.

Additionally, I unified the code between dropbox and gdrive since they were mostly the same other than different dynamically linked function being loaded in the middle. See commit:

https://github.com/MKolman/NickelMenu/commit/a919904b763bc2b7da200616230ced73a789a1e6

I tested that this still works on my Kobo Libra H20 on 4.38.23171

MKolman avatar Jul 24 '25 12:07 MKolman

Thank you for this Maks, I hope I merged that correctly...

tomtastic avatar Jul 24 '25 13:07 tomtastic

I tested it on Kobo Clara BW firmware version 4.43.23418. There's a small error in action_cc.cc - "gdrive" should be "godrive". I had to change it to make it work.

randombunny avatar Sep 06 '25 10:09 randombunny