Skip to content
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

Downloading MicroG from F-Droid #2638

Open
ghost opened this issue Nov 18, 2024 · 14 comments
Open

Downloading MicroG from F-Droid #2638

ghost opened this issue Nov 18, 2024 · 14 comments

Comments

@ghost
Copy link

ghost commented Nov 18, 2024

Hey,

is it possible to install MicroG from F-Droid without sideloading it? Or is it only there in the MicroG Repo to update after I sideloaded it via ADB?

@ale5000-git
Copy link
Member

ale5000-git commented Nov 18, 2024

Sideloading via adb doesn't give much advantages over normal installation via F-Droid.
Only by installing in the system partition you have access to priv-app permissions, without this you can also install it directly via F-Droid (with some limitations).

@ghost
Copy link
Author

ghost commented Nov 19, 2024

Sideloading via adb doesn't give much advantages over normal installation via F-Droid. Only by installing in the system partition you have access to priv-app permissions, without this you can also install it directly via F-Droid (with some limitations).

What do you mean with installing in the system partition? I mean how can I do that? Is it not in the System Partition by sideloading via ADB? And what are the limitations by installing it directly via F-Droid? And what are the advantages via ADB sideloading compared to installung via F-Droid? (I try to learn and understand everything)

@ale5000-git
Copy link
Member

What do you mean with installing in the system partition? I mean how can I do that?

It means modyfing the system partion manually, or use a flashable zip or a magisk module (all need an unlocked bootloader).

Is it not in the System Partition by sideloading via ADB? And what are the limitations by installing it directly via F-Droid? And what are the advantages via ADB sideloading compared to installung via F-Droid? (I try to learn and understand everything)

Installing via adb sideload / Play Store / F-Droid is almost the same (at the end it is installed only as user app).
The is a minor difference that some special permissions can be granted only via adb but I don't think these make a great difference for microG.

If it is a user app and not a system privileged app microG cannot bing to system location and cannot wake-up app that receive notifications when the phone is in standby.
I'm not sure if there are also other differences, but mostly are related to the not-granted priv-app permissions.

@ghost
Copy link
Author

ghost commented Nov 19, 2024

What do you mean with installing in the system partition? I mean how can I do that?

It means modyfing the system partion manually, or use a flashable zip or a magisk module (all need an unlocked bootloader).

But sideloading via ADB is the exact same? I have an unlocked Bootloader already and sideload the MicroG zip via ADB...

Is it not in the System Partition by sideloading via ADB? And what are the limitations by installing it directly via F-Droid? And what are the advantages via ADB sideloading compared to installung via F-Droid? (I try to learn and understand everything)

Installing via adb sideload / Play Store / F-Droid is almost the same (at the end it is installed only as user app). The is a minor difference that some special permissions can be granted only via adb but I don't think these make a great difference for microG.

Yes, I understand. But what are these mimor differences? Because I plan to install it from F-Droid in the Future, instead of sideloading via ADB, because it would be more secure this way.

If it is a user app and not a system privileged app microG cannot bing to system location and cannot wake-up app that receive notifications when the phone is in standby. I'm not sure if there are also other differences, but mostly are related to the not-granted priv-app permissions.

So that means when I install it from F-Droid and my Device is in standby, it don't get or show notifications if I turn it on again? Does it in general receive notifications if I just install it from F-Droid? Because that is the most important why I use it.

@MichaelZ4714
Copy link

MichaelZ4714 commented Nov 20, 2024

You can update an adb-sideloaded microG using F-Droid after adding the repository https://microg.org/fdroid/repo and setting the repo to top of list.
Also microG as system priv-app (e.g. Magisk/KSU module) can be updated that way.

@ghost
Copy link
Author

ghost commented Nov 20, 2024

You can update an adb-sideloaded microG using F-Droid after adding the repository https://microg.org/fdroid/repo and setting the repo to top of list. Also microG as system priv-app (e.g. Magisk/KSU module) can be updated that way.

Okay thank you so much for this helpful reply! But let's say I only get MicroG from F-Droid without having sideloaded it via ADB and without Magisk/KSU module, what difference would that make, compared to having it sideloaded before? Someone before said that I would get not nofification when my Phone is in standby but maybe you can explain everything better for me? And what difference would it make if I update MicroG which I sideloaded before, now by Updating it via MicroG Repo? Does it make a difference if I sideload new MicroG Versions via ADB compared to updating it via MicroG Repo now?

@ale5000-git
Copy link
Member

Someone before said that I would get not nofification when my Phone is in standby but maybe you can explain everything better for me?

As I have said you would NOT get notifications when the Phone is in standby also if you sideloaded it via ADB.

@ghost
Copy link
Author

ghost commented Nov 21, 2024

Someone before said that I would get not nofification when my Phone is in standby but maybe you can explain everything better for me?

As I have said you would NOT get notifications when the Phone is in standby also if you sideloaded it via ADB.

That's not true, because even tho I sideload it since a long time, I always did get Notifications...

@ale5000-git
Copy link
Member

You only think it is working but it isn't really working.
The permission is android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST and you can't get it from a user app.

I will use WhatsApp as example:

  • Normal way as system app:
    When the phone go in deep sleep and you receive a notification then microG wake-up WhatsApp (save battery).

  • User app (case 1):
    The phone never go to deep sleep due to ROM bugs; the notifications will works but you use more battery.

  • User app (case 2):
    The ROM detect that Google Play Services is not installed and disable deep sleep; the notifications will works but you use more battery.

  • User app (case 3):
    You disable battery optimizations for WhatsApp; the notifications of only WhatsApp will works but you use more battery.

  • User app (case 4):
    The phone go to deep sleep and you will NOT get the notifications until the phone is awakened.

@ghost
Copy link
Author

ghost commented Nov 21, 2024

You only think it is working but it isn't really working. The permission is android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST and you can't get it from a user app.

I will use WhatsApp as example:

  • Normal way as system app:
    When the phone go in deep sleep and you receive a notification then microG wake-up WhatsApp (save battery).
  • User app (case 1):
    The phone never go to deep sleep due to ROM bugs; the notifications will works but you use more battery.
  • User app (case 2):
    The ROM detect that Google Play Services is not installed and disable deep sleep; the notifications will works but you use more battery.
  • User app (case 3):
    You disable battery optimizations for WhatsApp; the notifications of only WhatsApp will works but you use more battery.
  • User app (case 4):
    The phone go to deep sleep and you will NOT get the notifications until the phone is awakened.

For me, I don't care if it uses more Battery. Because I always get Notifications directly. And that's the only important for me. MicroG in my opinion is not secure and not private, but I use it because I need it for Notifications. But having it as system App only to be 1000% sure, is not a valid reason for me. Because I need to root my Phone. Which is not secure. So it would mean that I would have now two unsecure things. I just use MicroG until I switch to GrapheneOS for sandboxed Google Play Services which are more secure and private.

@ale5000-git
Copy link
Member

ale5000-git commented Nov 21, 2024

The root doesn't need to be permanent, anyone can just:

  • root
  • flash zip
  • unroot

@ghost
Copy link
Author

ghost commented Nov 21, 2024

The root doesn't need to be permant, anyone can just:

  • root
  • flash zip
  • unroot

I did not know of that, but that's actually true. And then update it via F-Droid always?

@ale5000-git
Copy link
Member

ale5000-git commented Nov 21, 2024

If the app is first installed as system app, then it can be updates in any way (F-Droid, adb or other app stores) and it retain its system status (as long as the signature is the same).

@ghost
Copy link
Author

ghost commented Nov 21, 2024

If the app is first installed as system app, then it can be updates in any way (F-Droid, adb or other app stores) and it retain its system status (as long as the signature is the same).

Oh okay, thank you for telling. Is this the most right way to install it? Meaning: First install per Magisk, then unroot and update via F-Droid MicroG Repo? And what do you mean with same signature? Like how can I check that or be sure about that. Let's say I installed MicroG as System-App via Root and then did unroot. And now can I just update it from F-Droid MicroG Repo or which Version would I need and how to check/know that? (I want to say thank you so much for helping me so much, that means a lot to me, because I didn't had this knowledge and updating MicroG was really a pain for me. I sideloaded MicroG via ADB and when I want to update it via F-Droid it says that I need to remove the one I have at the moment, because they have different signatures. What should I do? Because I don't want to update it via sideloading. Because it causes often times corruption, thats why I need to do factory reset...)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants