onyxbits / raccoon4

APK Downloader for Google Play
https://raccoon.onyxbits.de
Apache License 2.0
644 stars 90 forks source link

Fix CLI download of paid apps and introduce "ghost mode" #92

Closed basilgello closed 3 years ago

basilgello commented 3 years ago

This PR addresses two issues that bugged me for a while:

Ghost mode is cool when you want to try an apl but don't want it being tracked by Raccoon, updated etc. I made it CLI-only for now, but we can add the GUI flag, too.

basilgello commented 3 years ago

@onyxbits I can not directly request a review from you so pinging you by comment.

onyxbits commented 3 years ago

Hm, If I understand this correctly, the ghosted apps will be stored in the same folder as the regular ones?

This seems a bit unsafe, considering that ghostmode is meant for testing apps. If you don't like them, you have to manually delete them, risking to accidentally delete folders that are tracked by the database. If you do like them, you can't mark them for tracking afterwards except by deleting and redownloading, which also means potentially deleting tracked folders by accident.

basilgello commented 3 years ago

Hm, If I understand this correctly, the ghosted apps will be stored in the same folder as the regular ones?

Makes sense!

How about setting the ghost-mode download folder similar to raccoon.home property? Or introducing new "ghost-apps" subfolder in profile? Or implement both options configurable?

onyxbits commented 3 years ago

from a UX persepective, it would make sense to pass a target directory as a parameter to --gpa-gostmode (not sure if "Ghostmode" is the most intuitive name for this).

basilgello commented 3 years ago

I thought of "notrack-download", "download-once" but decided to go ghost or incognito mode like in web browsers.

I agree passing the destination folder as a part of ghost-download cmd or even adding a mandatory companion setting like "gpa-ghost-destdir". What do you think?

onyxbits commented 3 years ago

well, "ghost" as in web browser would suggest being incognito vs. Play, which is rather misleading. I don't have a better name for it right now and if none is found, "ghost" is ok with me. I definitely favour a single commandline switch for this that takes the target directory as its first and only parameter.

onyxbits commented 3 years ago

How about simply "gpa-download-dir" ?

basilgello commented 3 years ago

If we use it to specify alternate download location for both normal and ghost mode - I can do that!

onyxbits commented 3 years ago

No, I think, this should trigger ghostmode. Normal mode should always download to the Raccoon folder. Otherwise things get really confusing and are easy to break. If you could do a "--gpa-download-dir /tmp" and have it write to /tmp in normal mode, then your app would be tracked in the database, but deleted by the system on reboot. Furthermore, having an app tracked, but not downloaded to the Raccoon folder would mean that you can't find the files in the App Manager.

basilgello commented 3 years ago

OK so how a typical command will look like?

raccoon --gpa-download-dir /tmp --gpa-download divan.tv.DivanTV

for ghosted mode and

raccoon --gpa-download divan.tv.DivanTV

for regular?

onyxbits commented 3 years ago

looks about right

basilgello commented 3 years ago

Good! This is really better UX-wise: one can download to profile dir or to a separate directory and files will not be added into profile database.

Also, who did prepare a Hungarian translation for Raccoon? I used Google Translate to edit the localized help hint. Should I ask @rbalint to check the phrasing?

basilgello commented 3 years ago

Pushed the fix!

basilgello commented 3 years ago

@onyxbits I tested the fix for 4 more days and I think it's ready for final review!