Here are some useful links and notes on how to setup Lineage OS for your F(x)tec Pro¹ device.
- Google USB driver for fastboot
- Boot loop
- Google Apps
- Smart case
Actually most of the information you need can be find on Lineage OS F(x)tec Pro¹ page.
From there you will learn how to install and build Lineage OS on your device.
Some of the tips below will be specific to Windows 10 as this is the environment I was using.
adb. I just used the binaries provided with Android Studio. On my machine I could find those binaries in the following folder:
You can find that path in Android Studio from File > Project Structure… > SDK Location.
Just add that path to your PATH environment variable to make it easier to invoke those commands from any location.
fastbootcould not find my device. Here is a link to F(x)tec forum explaining how to fix it.
You first need to download and install Google's USB driver. Before installation I actually needed to modify the driver INF file adding the following lines to the
;F(x)tec Pro1 %SingleAdbInterface% = USB_Install, USB\VID_18D1&PID_D00D %SingleBootLoaderInterface% = USB_Install, USB\VID_18D1&PID_D00D
How to sideload a package:
adb reboot sideload adb sideload <path-to-sideload>.zip
stuck on the animated Lineage OS logo try sideloading Gapps or possibly Magisk anew see if that help before doing a factory reset.
Google Apps distribution of your choosing. I used MindTheGapps. That will give you access to the Google Play Store and from there you should be able to install most every app you want.
available on GitHub and lets you get root access to your device. It is mentioned here cause we will use some Magisk's extension namely MagiskHide Props Config to be able to pass SafetyNet and thus allowing us to install security conscious applications on your Lineage OS device that Google Play would otherwise not let you install.
You can sideload Magisk v23.0 by renaming the downloaded APK file with a ZIP extension. After reboot click the icon labelled Magisk in your launcher and it will prompt you to install the app that goes with it. Once the app is installed tap the puzzle piece icon to browse a list of available extensions and install MagiskHide Props Config. Go back to Magisk home screen to access the settings and enable MagiskHide.
From your PC you'll need to use that newly installed extension to setup your device identity spoof.
Run the following commands:
Magisk will prompt you on your device to get give adb root access, make sure you satisfy that request.
Edit device fingerprint
Pick a certified fingerprint
Samsung Galaxy S21 SM-G991B
You could try spoofing another device but for me using the F(x)tec Pro¹ identity would pass SafetyNet as reported by Magisk but some apps would still not be available in the app store.
After reboot go offline by turning on airplane mode.
Go to your device application settings and clear storage for Google Play Service and Google Play Store.
After reboot turn off airplane mode and you should have access to the full Google Play Store catalogue.
Task switcher with keyboard open is broken unless you enable Allow Home screen rotation in Trebuchet Home application.
empty bar at the bottom of your screen. It can be worked around using Fullscreen/Immersive Gestures (Q-S) Magisk extension as explained here and there. This solution has also the advantage of hiding the hide keyboard tool bar as already possible on Samsung and OnePlus devices.
Hi everyone i have a problema using SkyGo app on my device because It detects the root. I renamed magisk , used magisk Hide , tried magiskhide props config , tried to delete cache and re-install SkyGo app but nothing worked...any solution...
covered with Fx Service.
build instructions for Lineage OS on Pro¹ are already available. Here I'll discuss some hurdle I had to overcome to get this done on PC. I actually tried two different Linux environment to build Lineage OS on Windows. First WSL then VirtualBox running Ubuntu. I won't go into the setup of either solution there are plenty of only guides. WSL was easier to setup it seems and integrates better with Windows out-of-the-box as you Windows drives are already mounted and accessible from the Windows console. However Ubuntu on VirtualBox does have a UI compared to WSL command line only solution, that makes it easier to develop and modify source code for instance.
maximum storage space on WSL.
Extraction of proprietary blob from both VirtualBox and WSL will require some extra adb setup for it to work over WiFi.
Then in Ubuntu you will need to install the VirtualBox guest package and reboot it:
sudo apt-get install virtualbox-guest-x11
sudo adduser $USER vboxsfto be able to access that Windows folder from you mount point.
how to contribute code to Lineage OS.
Also if you have made local changes and pushed them to Gerrit you may want to switch back to the main branch and update your repositories, just run:
repo sync -d
- Sideload ROM
- Reboot to recovery from Advanced menu to swap slots
- Sideload GApps - only if you used it
- Sideload Magisk - only if you used it
You can fix this by sideloading GApps however some of your GApps may fails to start and will need to be reset, GMail notably.
Therefore, make sure you reboot to recovery from the advanced menu to sideload GApps on top of your new ROM.
If like me you get stuck on the Lineage logo animation after updating your ROM and no amount of GApps sideload can fix it there is still hope. The logs during the reboot loop were mentioning: "Signature|privileged permissions not in privapp-permissions whitelist:". Doing some online search yield the following results from android.com and aicp-rom.com.
Basically I just added the following lines to my device.mk and that fixed it, with the obvious adverse effect that this security feature is now effectively disabled:
# Bypass privapp-permissions whitelist PRODUCT_PROPERTY_OVERRIDES += \ ro.control_privapp_permissions=log
Build and update kernel only:
# cd to the root of the LineageOS source tree source build/envsetup.sh repopick 315342 breakfast pro1 make bootimage adb reboot bootloader fastboot getvar current-slot # Replace 'X' with the value of current-slot fastboot flash boot_X out/target/product/pro1/boot.img # Choose 'START' from the fastboot menu on the Pro1
List all changes between specified dates:
repo forall -c 'git log --since "AUG 25 2021" --until "AUG 30 2021" --pretty=format:"===============================%n%Cred$(git config --get remote.github.projectname)%n%Creset%H%n%an%n%ad%n%B%n"'