-{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to my site","text":"<p>Hello welcome to my site its time to select the lang please select one of these 2 buttons and i will redirect u to your lang - English - Spanish </p> <p>dont forget to follow me on Github or contact me using Telegram with my email (gkartyt@gmail.com) or if u are interested visit my Linkedin Thanks for watching this page </p>"},{"location":"en/","title":"Welcome to FPSensor page","text":"<p>Hello, i am Gonzalo Daroqui, i am a developer from argentina that does android development and also studying. in this page u can find: - Android Build Guide</p>"},{"location":"en/build/","title":"Welcome to the android build guide","text":"<p>on this guide i will explain u how to find device trees, prepare the env, requeriments, and more</p>"},{"location":"en/build/#reqs","title":"Reqs","text":"<ul> <li>64bit decent cpu</li> <li>32GB of RAM</li> <li>500GB+ space (SSD recommended)</li> <li>a good internet (or much patience)</li> <li>a brain</li> <li>a bit of knowledge of linux terminal</li> </ul>"},{"location":"en/build/#recomendations","title":"recomendations","text":"<ul> <li>do just Lineage </li> <li>for the first try i recommend u that u try a simple rom, dont try aospa, aosp, etc. do a rom that all of us know that works well</li> <li>learn git (a guide is coming soon)<ul> <li>its not necesary to make the rom but u will need it wen u want to do changes and u dont want to push commits without author and \"update x.x\" if u dont want the community hates u</li> </ul> </li> <li>dont ask for mainteinership<ul> <li>u did your rom? congrats, but u still have to learn a lot to be a maintainer of a rom, maintainer is a person that can update the rom constantly and can fix reported bugs reading logs and making changes in trees</li> </ul> </li> </ul>"},{"location":"en/build/#getting-server","title":"getting server","text":"<p>if u dont have the specs mentioned before u will need a server for that we have some options </p> <ul> <li>buy a server<ul> <li>since no one of server sellers promote me i wont send u anyone but its really easy to find a server seller in tellegram, they usually manages on paypal</li> </ul> </li> <li>Google Cloud Platform Free triel<ul> <li>make a new google account since wen u have 0 credits u have to delete it</li> <li>u need a credit card (dw, no costs at all)</li> </ul> </li> </ul>"},{"location":"en/build/#_1","title":"Welcome to the android build guide","text":"<p>doesnt makes sense that we sync a rom if there is not device trees for my device so the next step is to look for a device tree how we plan to do that?</p> <p>first try, XDA i have a Xiaomi Redmi Note 7 [lavender] now we will ook for the xda Redmi note 7 XDA now in the xda we will search for the topic roms or android development now if there are we will search for lineage os or based roms then we will search for kernel source (it will be always since its GPLv2 req)</p> <p>xda has no luck? lets try another go to github.com go to search button and search kernel_brand_device(or _soc ex sm8250) </p> <p>if u found your device trees then lets come with the next step if u have no luck then probably can contact me to see if we have luck, else the guide ends here for u</p> <p>wen we have his kernel we will go to his github profile and look for these:</p> <ul> <li>device_brand_name</li> <li>vendor_brand_name</li> <li>kernel_brand_name (it can be kernel_brand_soc ex: sm8250)</li> <li>device_brand_soc-common (if exist)</li> <li>vendor_brand_soc-common (if exist)<ul> <li>for vendor repos if u found device and kernel from lineage org then there will be on TheMuppets org probably</li> </ul> </li> <li>hardware_brand (if exist, else we will take it from LineageOS organization)</li> </ul> <p>in some cases it will have android_, its the same, dont worry</p> <p>if we can find a local_manifests repo very good cuz we can use it, save it cuz will be important</p>"},{"location":"en/build/#preparing-the-env","title":"preparing the env","text":"<p>i recommend u to use Ubuntu (i use 20.04 but others should work too)</p> <pre><code>sudo apt install bc bison build-essential ccache curl flex g++-multilib gcc-multilib git git-lfs gnupg gperf imagemagick lib32ncurses5-dev lib32readline-dev lib32z1-dev liblz4-tool libncurses5 libncurses5-dev libsdl1.2-dev libssl-dev libwxgtk3.0-gtk3-dev libxml2 libxml2-utils lzop pngcrush rsync schedtool squashfs-tools xsltproc zip zlib1g-dev python\nmkdir ~/bin\nPATH=~/bin:$PATH\ncurl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo\nchmod a+x ~/bin/repo\n\n# make a github account and fil the name and email\ngit config --global user.name \ngit config --global user.email \n</code></pre>"},{"location":"en/build/#sync-the-rom","title":"sync the rom","text":"<p>we will make a directory for the rom</p> <pre><code>mkdir LineageOS\ncd LineageOS\n</code></pre> <p>we will start the rom sync</p> <p>BUT WAIT WAIT WAIT you got a local_manifests repo? do this</p> <pre><code>git clone LINK .repo/local_manifests\n</code></pre> <p>now lets sync the rom be ready for a long time of downloading, have a good internet in that moment</p> <pre><code>repo init -u https://github.com/LineageOS/android.git -b lineage-XX (replace XX with lineage version, should be same as tree adroid version)\nrepo sync -c --no-clone-bundle -j12 --force-sync\n</code></pre> <p>now wait, wait and wait u should get a message like \"Repo sync succesfully\"</p> <p>ok so if we had local_manifest all things we need are cloned else we will take a look on the repos we got i will do a command for example and then u guys will reply</p> <p>git clone https://github.com/android_device_motorola_rhode device/motorola/rhode -b [the branch should be the same as lineage or android version] for example git clone https://github.com/1/android_device_xiaomi_lavender device/xiaomi/lavender -b lineage-21</p> <p>android_device_xiaomi_lavender in the clkone path we do this device/xiaomi/lavender so we ignore the android_ or the proprietary_ and we replace these _ with / done, we have all clonned</p>"},{"location":"en/build/#prepare-device-trees-for-the-rom","title":"prepare device trees for the rom","text":"<p>we will move to device/brand/devicename now we will look for AndroidProducts.mk we will replace all xx_devicename with lineage_devicename save and now we will search for xx_devicename.mk and rename as lineage_devicename.mk in lineage_devicename.mk we will edit all xx_devicename with lineage_devicename also we will replace vendor/xx with vendor/lineage now in BoardConfig.mk or if we have a -common tree will move to the -common/BoardConfigCommon.mk on it we will look if there is any vendor/xx definition and will replace with vendor/lineage done, we will move back to main folder</p>"},{"location":"en/build/#time-to-build","title":"time to build","text":"<p>we will do this</p> <pre><code>. build/envsetup.sh\nlunch lineage_devicename-userdebug\nm bacon\n</code></pre> <p>if everything goes well we will have the zip on out/target/product/devicename/ now test and good luck</p>"},{"location":"en/build/#ask-me-a-question","title":"Ask me a question","text":"<p>want me to modify the guide? need help with the guide? contact me in my support group this guide was done with my hands, with my knowledge and never searched in another site for a reference wen writing (besides these env commands that i took from crDroid) so it may can have issues, make suggestions in my group thank you</p>"},{"location":"es/","title":"Spanish","text":"<p>Prueba de cambio de idioma</p>"}]}
0 commit comments