Liberating Mobiles

From FSMI WIKI
Jump to navigation Jump to search


Introduction to Mobile Freedom[edit]

Majority of the modern day devices be it TV, Mobiles, Smartwatch, etc., come with a pre-loaded software called “Google Android”. With the surveillance capitalist model of data platforms, the surveillance capitalist giants and their minions collect an overwhelming data from these devices we own. With many historical revelations, we have known that these surveillance capitalist giants have been indulging in mass surveillance for the benefit of their interests

The giants with their tentacles in media have been trying to convince that Privacy is impossible and that we have to beg them for privacy features. The primary reason for this kind of subjugation is that the software is Proprietary. For example, the Google Android installed in your mobile is not free software. The AOSP whose code is public has been combined with the Proprietary Google Software before installing in the devices (and sometimes combined with the Proprietary software from the OEMs).

Mobile Freedom is a call to action to liberate mobile devices from the clutches of the proprietary software shipped with the devices users own.

Why Mobile Freedom/ De-googlification?[edit]

Proprietary systems, even most Android phones, are designed to hand over this data to companies like Google. Most users do not have full control over the personal data on their device.

Privacy is impossible without free software. Proprietary add-ons like Carrier IQ spies on smartphone users without their knowledge. Many Proprietary apps contain malicious features. They read your private data, such as your address book, and “phone home”, or they use trackers to send data to third party companies without informed consent of the user. These are just a few examples out of many that had been discovered so far. The lack of software freedom impedes independent inspection, and secret spy features only become known by accidents or data leaks.

Most smartphones require you to connect and identify yourself to a server running proprietary software before you can use them. Users have to trust the server without knowing what information stored and how it is processed or related to other data. A phone running on Free Software respects user privacy. The convenience of “value-added” services that are often coupled with proprietary apps can be provided using Free Software as well. This keeps you in control of your personal data.

How to liberate your mobile?[edit]

Millions of smartphones are shipped every year, and they come in different shapes, sizes, and configurations. All of them are vendor-locked. The majority of these devices come preinstalled with proprietary apps from Google and the device manufacturers. These apps are non-removable, making it difficult for the user to remove these apps.

Users can achieve mobile freedom by replacing Google Android with a de-googlified Android. Unlocking the phone (bootloader, not to be confused with unlocking screen) is necessary for the scenario. This may vary from one device manufacturer to another.

In few cases, the device manufacturer restricts the user to unlock their phones(bootloader). In these scenarios, the user can de-googlify by removing the proprietary google applications and other malware.

This has been explained in detail in the following sections:

  • Remove Proprietary Google Applications
  • Remove Proprietary Operating System (ROM)

Few steps are prerequisites for the user to be prepared for the de-googlification procedures explained in the following sections.

Prerequisites[edit]

Enable USB debugging in your Phone[edit]

  • The process varies based on the make and model. But the overall process can be generalized to the following steps.
  • Open Settings on your phone.
  • Open About Phone menu in the Settings menu.
  • Tap multiple times on Build Number in the About Phone screen until a toast appears confirming that you are a developer.
  • Now go back to the Settings menu and search for Developer Options.
  • In the Developer Options screen, toggle the USB Debugging option.
  • Once you have installed ADB on your PC as explained in next section, connected your device and run the adb devices command, you will see a Allow USB debugging prompt asking for permission to connect. Allow to establish the ADB connection.

INSTALL ADB IN YOUR SYSTEM[edit]

Install in GNU/Linux[edit]
  • Below are steps for different flavors:
 Debian-based GNU/Linux users can type the following command to install ADB:
 sudo apt-get install android-tools-adb
 
 Fedora/SUSE-based GNU/Linux users can type the following command to install ADB:
 sudo yum install android-tools
  • Now connect the Android device to your computer and execute the adb devices command in the terminal.
Install in Windows[edit]
  • Download the ADB Platform Tools for Windows from Official Link. Once downloaded, extract the contents of this file on your Windows PC.
  • Open the extracted folder and open command prompt in the same location.
  • Now connect the Android device to your computer and execute the adb devices command in the same command prompt.
Install in macOS[edit]
  • The guide uses Homebrew package manager to install ADB tools.
  • Open the Terminal on your Mac and execute the below command. It will install Homebrew on your Mac. During the installation, it might ask for your password. The whole installation will take about 10 mins.

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

  • After that, install the ADB platform-tools from the below command.

brew cask install android-platform-tools

  • Now connect the Android device to your computer and execute the adb devices command in the terminal.

Remove Proprietary Google Applications[edit]

1. Open your terminal and run adb devices. You should be able to see your device on the list.
2. Now run, adb shell
3. Now run the below command to remove the application. Replace the <Package Name> with the respective package name from the table below:

pm uninstall -k --user 0 <Package Name>

App Name Package Name Recommended Alternatives
Google Play Store com.android.vending Aurora Store
Google Mail com.google.android.gm K-9 Mail and
RiseUp Mail
YouTube com.google.android.youtube NewPipe
Google Maps com.google.android.apps.maps OsmAnd+
Google Duo com.google.android.apps.tachyon Jitsi Meet
Google Play Music com.google.android.music VLC Player
Google Play Videos com.google.android.videos VLC Player
Google Play Games com.google.android.play.games
Google Play Books com.google.android.apps.books
Google Chrome com.android.chrome Fennec F-Droid
Google Docs com.google.android.apps.docs.editors.docs
Google Photos com.google.android.apps.photos Simple Gallery Pro
Google Authenticator com.google.android.apps.authenticator2 FreeOTP+
Google Drive com.google.android.apps.docs NextCloud
Google Messages com.google.android.apps.messaging QKSMS

Remove Proprietary Android Operating System[edit]

General Procedure[edit]

1. Pre-requisites

  1. A desktop/laptop with ADB and Fastboot installed.
  2. A data compatible USB cable [Beware of cables that only support power!] for the device you want to liberate.

2. Search for custom Recovery for your specific device model.
3. Search for a supported custom ROM for your device in device specific forums on forum.xda-developers.com. Be sure to download ROM from official sources without GApps preinstalled.
4. Unlocking phone boot-loader

  1. Go to Settings
  2. Click on About Phone
  3. Tap 5 times on the build information(number). You will get a message saying "Developer settings enabled."
  4. Now go back to Settings and go to Developer Options (mostly will be in System options/ you can search for it)
  5. Enable OEM unlocking and USB debugging.
  6. Now, connect your phone to the system. There will be a popup on the mobile asking for USB debugging. Click Allow.
  7. Open terminal in system and enter,
                                       adb reboot fastboot
  8. Now, your mobile will go into a fastboot mode. Now, In your system terminal, run the following command  
                                       fastboot oem unlock
  Note: This method will not work for all devices. Some devices need additional steps to accomplish this step. Please refer to next sections for device specific guides to unlock bootloader. Various company devices have various specific methods to unlock the bootloader.

5. Copy the de-googlified Operating System into the ADB folder[from where you are running the commands].Now run this command:

                                     adb sideload <Degooglified_ROM>.zip 

6. Restart your phone and set up your backed up applications.

Alternatives[edit]

The Alternatives to proprietary software has been discussed in detail here.

Device Recommendations[edit]

Manufacturer Model Average Time
to Liberate
Availability of
Custom ROM
Xiaomi Redmi Note 8, 8 Pro, 9, 9 Pro,
10, 10S, 10 Pro, 10 Pro Max
7 - 8 Days Available for few models
Mi 8, 9 Power, 10, 10i, 11 Lite 7 - 8 Days Available for few models
OnePlus Nord, 8, 8T 1 - 2 Hours Available
Samsung Galaxy S8+, M31, 3 - 4 Hours Available

Common Myths[edit]

As with any attempt to free ourselves from restrictive systems, our attempts to liberating mobiles from proprietary clutches are hindered by common myths and misconceptions. Below are some myths propagated by the proprietary systems to cripple people's attempt to liberate.

Myths Facts
De-googlification is very geeky No, De-googlification has a very small learning curve. You can start small by using Newpipe instead of YouTube on your device.
Battery discharges faster. No, This is absolutely false. Battery discharges are based on background services. Google Android comes with many background services which consume lots of power. In fact, De-googlification will increase the battery life by stopping such Google background services.
Regularly used office, social media, e-commerce, games, food delivery & payment apps do not work on de-googlified devices Office, social media, e-commerce, games, food delivery & payment applications will work in De-googlified devices. We also have MicroG to support applications which have strict dependencies with Google in freedom software custom OS.

Ex: LinkedIn, Zoom, WebEx, Okta Verify, Facebook, Instagram, Paytm
Phone’s media data is lost. No, This is false. De-googlification will not result in data loss. Every De-googlification guide explains where a backup is required.
GPS or other location sharing doesn’t work. No. Unlike Google Android, De-googlification liberates the user from location surveillance. It also gives the user options to triage their location in different modes like cellular data combined with GPS sensor, Battery saving mode, etc. We also have free software to spoof user location to the installed applications.
Contacts Syncing is hard with De-googlified devices. No, It is, in fact, easy. We can easily sync contacts using applications like Nextcloud Sync.
User experience is bad in de-googlified devices. No, this is absolutely false. Google Android OS is limited by the proprietary maker, while a freedom software custom OS brings together customization from across the community, giving more options to choose from.
The functionality of the hardware cannot be fully utilized because of the Software limitations. No, De-googlification, in fact, brings more utilization of hardware. Many old devices abandoned by the Google Android are still supported by the community with updates which are otherwise unavailable. The specifications come into full utilization due to freedom from crippleware [by killing processes to restrict features from users]. Word of caution is that the latest proprietary features like liquid cooling might not be immediately available.
Play Store based applications cannot be installed and updated without Play Store. No. Not only can we install and update Play Store based apps, we can do it anonymously and also with the user's account in Aurora Store. Unlike Google Play Store, which updates without user's control, the freedom alternative puts the control in the hands of the users.
There are several call drops. De-googlification will not affect cellular network related activity. People using custom ROM reported these issues for under-developed projects. Stable projects do not have these issues.

References[edit]

1. https://forum.xda-developers.com/t/info-android-device-partitions-and-filesystems.3586565/

2. https://www.xda-developers.com/install-adb-windows-macos-linux/

3. https://beebom.com/how-to-install-adb-windows-mac/.