Neo-Store icon indicating copy to clipboard operation
Neo-Store copied to clipboard

Silent Installation without Root using Shizuku

Open rollingmoai opened this issue 2 years ago • 62 comments

For example, SkyDroid allows for this (could use it with root as well):

Shizuku on SkyDroid

rollingmoai avatar Nov 02 '21 10:11 rollingmoai

You read my mind I was about to request the same. Honestly it would be a good addition for people who don't have root access to use adb through shizuku to install apps

pusherplayer avatar Nov 02 '21 23:11 pusherplayer

You read my mind I was about to request the same. Honestly it would be a good addition for people who don't have root access to use adb through shizuku to install apps

More than just people without root, Shizuku is great with root too as its a more secure method of handing out permissions to apps.

1Michael23 avatar Nov 04 '21 03:11 1Michael23

This would be really nice. I have not figured out how to get silent install working on Droidify (yet) but SkyDroid works.

turtlegarden avatar Nov 22 '21 19:11 turtlegarden

Any updates of this?

severtheskyline avatar Jun 16 '22 00:06 severtheskyline

If i understood correctly: Neo-Store is gpl (see https://github.com/NeoApplications/Neo-Store/blob/master/COPYING ).

Is Shizuku-License compatible with gpl?

From https://github.com/RikkaApps/Shizuku#License :

For the project as a whole, it is not free. You are FORBIDDEN to distribute the apk compiled by you (including modified, e.g., rename app name "Shizuku" to something else) to any store (IBNLT Google Play Store, F-Droid, Amazon Appstore etc.).

k3b avatar Jul 08 '22 16:07 k3b

The Shizuku API is MIT. https://github.com/RikkaApps/Shizuku-API

Small-Ku avatar Jul 09 '22 08:07 Small-Ku

I also recommend that this be added. Many apps from F-droid also use this, like there is Tachiyomi, Insular, Darq, Hail, Termux and these apps benefit greatly by enabling Shizuku api. [UPDATE]

https://github.com/MuntashirAkon/AppManager/issues/67

https://github.com/RikkaApps/Shizuku#exceptions

So, Shizuku is somewhat non-free so we can wait for a fully FOSS app to enable this feature. I guess this should clear why the devs aren't adding Shizuku support therefore this thread might be close or replaced with another issue title for a similar app.

prirai avatar Jul 14 '22 18:07 prirai

The closest thing that is Neo-Store can do right now are silent updates in Android 12 without needing root (#20)

rollingmoai avatar Aug 05 '22 12:08 rollingmoai

@prirai that doesn't make any sense, though. The API is 100% FOSS and licensed under the MIT/Expat License.

daemonspudguy avatar Nov 28 '22 16:11 daemonspudguy

Shizuku has been a must have since I stopped rooting my phone. So there's no harm in adding the feature. Droidify has it but neo having many features than that of droidify doesn't have it. It doesn't make sense. I want to switch to neo so bad but this thing alone is keeping me with droidify.

scientiac avatar Dec 29 '22 13:12 scientiac

At least for me, none of the installer options from Droidify works. I have tested all of them for a while, but absolute no update of an app, was updated automatically.

Can you please tell me what I should choose (in Droidify), to get f-droid app updates installed, without that I have manually accept the update?

Offerel avatar Dec 29 '22 13:12 Offerel

@scientiac , @Offerel I use neo-store and have noticed that it suits silent updates. Not sure if it works on Android below 12. Silent updates doesn't work almost half the time though.

prirai avatar Dec 31 '22 04:12 prirai

@prirai I have android 13 and I don't see any "silent" installs

scientiac avatar Jan 01 '23 11:01 scientiac

This was already implemented in Droid-ify a long time ago (https://github.com/Iamlooker/Droid-ify/issues/14). Updates on this?

rollingmoai avatar Feb 27 '23 02:02 rollingmoai

Won't be added as long as Shizuku isn't free.

machiav3lli avatar Feb 27 '23 13:02 machiav3lli

It's not entirely free, but how does that have to do with anything? Provide the user with the option at least.

rollingmoai avatar Feb 28 '23 00:02 rollingmoai

I've been indecisive about which of the two I should use since they started as a single project and look very identical. I guess this makes the decision easier.

Droid-ify it is then.

raniesantos avatar Mar 28 '23 16:03 raniesantos

isn't shizuku licensed under apache 2.0 with that single forbidden? I wouldn't see how that would make the app nonfree.

Xynonners avatar May 19 '23 13:05 Xynonners

@Xynonners not really, it's a custom license having restrictions. The one restriction blocking this is the one realted to forbiding public builds and distribution of the app, with that it's not free in any sense, it's just code available.

machiav3lli avatar May 19 '23 18:05 machiav3lli

@izzysoft is shizuku flosss (tag @machiav3lli)

Cuteistfox avatar Jun 01 '23 19:06 Cuteistfox

@Meow-purr in a way. The license says so, but the TOS disagrees a little. When I last checked there was something with "thou shalt not distribute our binaries" or so.

For the project as a whole, it is not free. You are FORBIDDEN to distribute the apk compiled by you (including modified, e.g., rename app name "Shizuku" to something else) to any store (IBNLT Google Play Store, F-Droid, Amazon Appstore etc.).

Now tell me how "it is not free" matches the license specified.

   2. Grant of Copyright License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      copyright license to reproduce, prepare Derivative Works of,
      publicly display, publicly perform, sublicense, and distribute the
      Work and such Derivative Works in Source or Object form.

To highlight: the right to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form is explicitly granted by Apache-2.0. Forbidding the distribution of self-compiled/modified APKs (aka "Derivative Works") contradicts that. Which is why it's not entirely clear – as either the license voids the TOS, or the TOS the license. The TOS is clearly violating freedom-2 (The freedom to redistribute copies; counting starts with freedom-0 here).

Before you ask: I distribute their APK, and to make sure explicitly asked their permission. But it's quite dark gray area. In dubio pro reo (IANAL) I decided this way; F-Droid would definitely decide the other way as rules are stricter there.

IzzySoft avatar Jun 01 '23 21:06 IzzySoft

PS in your issue there, I've linked the answer. The reason specified was what drove my decision. I fully understand the reasoning, there are far too many copycats making money of other people's work. Just recently we succeeded in having Google deleting a developer account that had some 20 FOSS apps, which their resp. developers explicitly did not put on Play, "enriched" by ads and trackers in their list.

IzzySoft avatar Jun 01 '23 21:06 IzzySoft

@Meow-purr in a way. The license says so, but the TOS disagrees a little. When I last checked there was something with "thou shalt not distribute our binaries" or so.

For the project as a whole, it is not free. You are FORBIDDEN to distribute the apk compiled by you (including modified, e.g., rename app name "Shizuku" to something else) to any store (IBNLT Google Play Store, F-Droid, Amazon Appstore etc.).

Now tell me how "it is not free" matches the license specified.

   2. Grant of Copyright License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      copyright license to reproduce, prepare Derivative Works of,
      publicly display, publicly perform, sublicense, and distribute the
      Work and such Derivative Works in Source or Object form.

To highlight: the right to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form is explicitly granted by Apache-2.0. Forbidding the distribution of self-compiled/modified APKs (aka "Derivative Works") contradicts that. Which is why it's not entirely clear – as either the license voids the TOS, or the TOS the license. The TOS is clearly violating freedom-2 (The freedom to redistribute copies; counting starts with freedom-0 here).

Before you ask: I distribute their APK, and to make sure explicitly asked their permission. But it's quite dark gray area. In dubio pro reo (IANAL) I decided this way; F-Droid would definitely decide the other way as rules are stricter there.

Any lawer here? to clear this confusion

Cuteistfox avatar Jun 02 '23 17:06 Cuteistfox

It doesn't need a lawer to clear the situation, it's clear that the dev(s) has added an exception of the license aka. customized it, blocking the aforementioned freedom-2. I don't see a need to discuss any further, concerning who have rights and what not.. I respect their wish (and understand the concern partialy - although it's always questionable if this added exception would stop the misuse of the code) and decide for this project to avoid supporting of this API.

machiav3lli avatar Jun 02 '23 21:06 machiav3lli

Funny thing is: I've just updated my local clone of fdroiddata from upstream master, and noticed this line:

create mode 100644 srclibs/shizuku.yml

And now I'm puzzled.

RepoType: git
Repo: https://github.com/RikkaApps/Shizuku

Prepare: git -c 'url.https://u:[email protected]/[email protected]:' submodule update --init

Seems like the API is deemed FOSS, as the TOS is just affecting the APK? :thinking:

IzzySoft avatar Jun 03 '23 01:06 IzzySoft

@Meow-purr in a way. The license says so, but the TOS disagrees a little. When I last checked there was something with "thou shalt not distribute our binaries" or so.

For the project as a whole, it is not free. You are FORBIDDEN to distribute the apk compiled by you (including modified, e.g., rename app name "Shizuku" to something else) to any store (IBNLT Google Play Store, F-Droid, Amazon Appstore etc.).

Now tell me how "it is not free" matches the license specified.

   2. Grant of Copyright License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      copyright license to reproduce, prepare Derivative Works of,
      publicly display, publicly perform, sublicense, and distribute the
      Work and such Derivative Works in Source or Object form.

To highlight: the right to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form is explicitly granted by Apache-2.0. Forbidding the distribution of self-compiled/modified APKs (aka "Derivative Works") contradicts that. Which is why it's not entirely clear – as either the license voids the TOS, or the TOS the license. The TOS is clearly violating freedom-2 (The freedom to redistribute copies; counting starts with freedom-0 here).

Before you ask: I distribute their APK, and to make sure explicitly asked their permission. But it's quite dark gray area. In dubio pro reo (IANAL) I decided this way; F-Droid would definitely decide the other way as rules are stricter there. @IzzySoft

@IzzySoft could i modify under apche and have that under apche

Cuteistfox avatar Jun 03 '23 13:06 Cuteistfox

@Meow-purr you cannot simply take code from a developer and change the license. You have to honor the license they put it under. You can use e.g. MIT code in a GPL app (as GPL has the stricter requirements), but not vice versa.

That said, the said phrase indeed seems to only affect the app, not the libraries (I've just checked with the team).

IzzySoft avatar Jun 03 '23 21:06 IzzySoft

Silent updates work on Android 12 and above when using neo-store. Not sure if it is working for everyone.

prirai avatar Jun 13 '23 08:06 prirai

No, silent updates never worked for me with Android 12 or 13. I always have to click on "update all" to confirm a update start. Only when this confirmation is also omitted, it is an automatic silent update.

Offerel avatar Jun 14 '23 05:06 Offerel

@Offerel but do you have battery optimiztion disabled and auto-sync active?

machiav3lli avatar Jun 14 '23 06:06 machiav3lli