-
Notifications
You must be signed in to change notification settings - Fork 104
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Silent Installation without Root using Shizuku #102
Comments
You read my mind I was about to request the same. |
More than just people without root, Shizuku is great with root too as its a more secure method of handing out permissions to apps. |
This would be really nice. I have not figured out how to get silent install working on Droidify (yet) but SkyDroid works. |
Any updates of this? |
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 :
|
The Shizuku API is MIT. |
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. 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. |
The closest thing that is Neo-Store can do right now are silent updates in Android 12 without needing root (#20) |
@prirai that doesn't make any sense, though. The API is 100% FOSS and licensed under the MIT/Expat License. |
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. |
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? |
@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 I have android 13 and I don't see any "silent" installs |
This was already implemented in Droid-ify a long time ago (Droid-ify/client#14). Updates on this? |
Won't be added as long as Shizuku isn't free. |
It's not entirely free, but how does that have to do with anything? Provide the user with the option at least. |
I've been indecisive about which of the two I should use since they started as a single project and look very identical. Droid-ify it is then. |
isn't shizuku licensed under apache 2.0 with that single forbidden? I wouldn't see how that would make the app nonfree. |
@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. |
@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.
Now tell me how "it is not free" matches the license specified.
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. |
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. |
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. |
Funny thing is: I've just updated my local clone of fdroiddata from upstream master, and noticed this line:
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? 🤔 |
@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). |
Silent updates work on Android 12 and above when using neo-store. Not sure if it is working for everyone. |
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. |
@PeterKW it's not a license-issue in the conventional sense of such, it's the choice to not "nudge" the users into using a non-libre framework. Surely there may be individuals that may have another stance and decide to fork NS, but that's the freedom a libre project provides. @IzzySoft exactly, it's the dependence on Shizuku app. One may argue: "but it'd be just optional", I'd say: options create nudges and discourses. |
I would like to add my voice to them request for this. I see the discussion around it but it is supported from 4.2.4 in Aurora Store and this is on F-Droid and we know that F-Droid has very strict requirements so in my opinion there should be no issue in implementing the library within Neo Store |
@mattdale77 I think you misunderstood the blocker. It's not whether this is an F-Droid blocker or not, it's about Shizuku being not free (freedoms 2 & 3 are infringed). |
@meow-purr I think you misunderstood what SUI is. SUI requires Magisk/Zygisk, which means the user already have su/root, which NS already supports as an installer. |
Droidify can use Shizuku for FDroid installer |
You're facing to its API, not the implementation. And you're not using pure-AOSP, right? |
At least, would it be possible to provide a setting to select the installer app? Then, in that case one could use a package installer like pi in order to use shizuku or root as an installation method. I think this is probably the way to go forward, avoiding any dependence on non-free software, while allowing the user to opt in to using alternate installation methods. |
@CompeyDev Root is supported since ever and Muntashir's App Manager installer is supported on 1.0.0 (still in beta) |
The whole point of shizuku is to avoid root access, so I don't think that's what people want. Never heard of the latter will give the build a test run and lyk. |
Any CI builds I can get my hands on? Or would I need to manually compile it? |
Test builds are mainly available on the community channels on Telegram and Matrix. On the shizuku thingy: I don't think that repeating the obvious/said helps anyone further... |
Even if our free-developer is using pure-AOSP, there are binary vendor firmwares being non-free. Not to mention the AArch64 ISA and SoCs from Quaxxmm, Mexxxxek, Saxxxng, Apxxe, etc. Is GitHub ever free? It must be the great sacrifice for our free-developer to stand on this free-world and live on the free-energy. F. |
Maybe your poetic self can find sometime to fork (and maintain) the project and add the support it wishes. |
Considering Dhizuku? |
@xiaoxiyao Already had the discussion in the community groups and with other devs. It's just a thin layer over using Shizuku. |
Is there a way to do this without Shizuku on Android 15? I want silent background updates to my applications like with Droid-ify and Google Play. |
Android from 13.0 already allows for silent updation if the app you're trying to install was updated or installed before from the same store. So it will be taken care of automatically. However first installation of any app will be manual. |
Any progress here? I don't understand why everyone is debating on this since the issue is with the Shizuku app, which neo-store doesn't care about, it only needs the API, which is foss. Furthermore, if it was really an issue, droid-ify wouldn't be using it either, and shizuku would be dead since no one would be able to use it. |
I'll quote the reason that app manager's maintainer gave for MuntashirAkon/AppManager#55:
|
Well, to being a strong support of freedom. You should stop using your phone. Almost every Android device have a close-source modded Android OS. Even if you unlock bootloader and flash Lineage or something, you can't get rid of the bootloader and the hardware though. |
I might look like the advocate of the devil, but afaik the Shizuku app is under Apache-2 licence, with applied restrictions, restrictions applied for the artwork of course, and for the release of the app specifically on stores. And I think being forbidden from releasing a fork on the stores is a good thing, it sure is an annoyance, but Shizuku is a pretty critical app, and having a bad actor publish it on stores without any ways to remove it wouldn't be a fun time. Nyow I agree the way the issue was handled isn't ideal, but that doesn't make the whole project bad or shady? I think the current way the app is managed is a pretty good compromise. And furthermore, your computer runs proprietary code, the cpu microcode, and you're on a Microsoft ran platform, GitHub, which isn't open source at all, you can't just self-host GitHub. So I think you're all stretching things a little too far, in my own opinion |
You are strawmanning my argument. Furthermore, your statement isn't even true. There are plenty of open AOSP based ROMs that a lot of people use over OEM ones. |
Yeah you are right, a lot of people uses AOSP based ROMs over the OEM ones, but that's nyot what Cyan said. They (correct me if I am using the wrong pronouns) said that the ROMs weren't everything, and that your device also ships a bootloader, which could be proprietary. To wich I add that the hardware could also require some proprietary drivers Finally none of this has anything to do with neo-store including or not a free and open source API released under the MIT |
I believe the way the app is currently fine, and if the devs don't want to use shizuku it's fine. If you use shizuku you need to manually enable it on every reboot using wadb. However if you're rooted you can just use the root installer option. On an unrooted device device you can simply go with app manager or the default option as you can then be sure of what app you're installing and what the changelog is (if you're using app manager). Also, once and app is installed, the future updates are silent, so there isn't any dialog during updation. This is true for Android 13+. |
What benefit exactly do we get from Shizuku support? Neo store already supports app manager installation which already supports wadb installations, for privileged tasks. Silent installs aren't really much of a concern either on Android versions >13. |
This issue is becoming a meme. Does the unsubscribe button turn of notifications for this issue? |
We get more compatibility with already established installations, what I mean is that most people doesn't know about AppManager, secondly I assume most people using it don't know they can set it up to use adb (at least, I didn't unless I looked it up and configured it myself). Furthermore, shizuku is way more known and featured on a lot of android videos, just has a much broader audience and is more likely to be already installed on the user's device. Lastly, the shizuku api provides much more than the possibility to (un)install apps, which could come in handy in the future And yeah it isn't a concern for devices running android 13, but nyot everyone runs android 13 or higher, a lot of people, myself included, uses fdroid on old phones running custom ROMs, usually running android 11 or sometimes even lower. I really don't see any negatives about adding the shizuku api to neo-store |
For example, SkyDroid allows for this (could use it with root as well):
The text was updated successfully, but these errors were encountered: