yashsingh1/xdaforums huggingface dataset:
[Android General] AlaskaLinuxUser:
I've been asked about those prebuilt virtual machines before, and I think that they are probably set up correctly and will get the job done. That said, part of learning is learning how to set up the right tools for the job. :D I've never used his VM, so I can't personally recommend it, but I'm sure that it is a great shortcut. However, downloading, installing and setting up Ubuntu yourself will take less than 1 hour to complete. But, I'm sure his VM's are well tested.

I do want to be clear, I am not saying Ubuntu 14.04 is the only "authorized" or "official" way to build Android. I'm just saying that it is a tried and true, known good, known working, way. You are welcome to build with any distro you want. It's just that I can only answer questions based on what I've set up in the video series. :good:

Another thing to consider: Your Virtual Machines can have more than one drive. You can also share a drive between the host and virtual machine, so you can share the same drive among several virtual machines. If you plan to change machines a lot, or want to try out several, you can have the main drive be a smaller drive, say 20gb, just for the operating system, and then share a larger drive such as a 200+gb drive that you repo sync and work with using several different VM's. That way you don't have to resync the entire source code over and over again while working through different OS's. Just a thought.
[Android General] AlaskaLinuxUser:
Great! Glad to hear! Now we have brought some real skills to the table! :good:
[Android General] zelendel:
Ill watch over the videos tonight after work. This way I know what everyone is seeing. We will see how much my "skills" come to play. I build for my self mostly (or will once again when I get this rig to accept a dual boot lol.
[Android General] CristianRo10:
Hello sir! I am the guy that asked about the exynos cpu overclock on youtube. As I said I followed your guide but I couldn t find the files you edited so I m assuming that there is a different method for snapdragon and exynos cpus. Any help will be appreciated. I have to say that I m a begginer into this.

My phone is samsung galaxy A5 2017 (A520F) running android 8.0 oreo and cpu is exynos 7880.
[Android General] AlaskaLinuxUser:
Great to have you here! Glad that you are watching the videos, and I hope they are helping!

Yes, every chip is different, I am just showing the idea of how this process works, you have to do the leg work to find what to do for your chip.

Okay, so your chip is the exynos 7880.

That means that you have the files you need here:

kernel_source/arch/arm64/boot/dts

How did I know that?

Well, part of it is research on your part. If you know the chip is an exynos 7880, one of your best tools is to use the find button or search button when looking in your kernel. Just a search for 7880 will lead you to these files.

Also, you know it is a 64 bit arm phone, so all architectures (arch) are in the arch folder. There is arm, arm64, powerpc, etc... So yours is an arm64 because that is what type of chip the exynos 7880 is:

https://www.samsung.com/semiconductor/minisite/exynos/products/mobileprocessor/exynos-7-series-7880/

So it is good to look in the kernel_source/arch/arm64/ folder. You would look specifically for files that say 7880, or that say exynos on them.

Looking at this GitHub kernel source for it ( I don't know which kernel source you are using, but this is for that phone also ) : https://github.com/OPTI-KERNEL/A7-A5-2017/tree/kernel_source

I see this file may be of interest to you:

kernel_source/arch/arm64/boot/dts/exynos7880.dtsi

Does that make sense? I don't want to just give you the answer, I want to show you how to find it. Hopefully, this does that. :D
[Android General] CristianRo10:
Sorry for the late response, I was sleeping. And thank you for helping me, I think I have found something in the file you told me, but I have to try. I will let you know if it will work. And again, thank you for helping me!
[Android General] CristianRo10:
Alright so I have tried some things but they did not work. I read through some commits of an s7 kernel and found that "cl0_max_support_idx" limits the max frequency which is found in the table that s below it. The s7 kernel had more frequencies that were disabled but mine doesn t, so that makes me think that I can t overclock my cpu.

I have also found that that "cl0_min_support_idx" limits the minimum frequency, and both my file and the one from s7 kernel have more that are disabled, so that again makes me think that I can t overclock my cpu, but I can underclock it.

I m not sure if you understood anything from what I said (if not tell me and I will try to explain better), but I m sure that most of you already knew about this.

Correct me if I m wrong. Anyway, thank you for helping me!
[Android General] AlaskaLinuxUser:
Well, you can almost certainly always overclock, it's just a question of how. Has anyone else used or made custom kernels for your phone? If so, they may be just the right person to check on. You could look through their commits, or ask them.

As for how to do it specifically for that phone, I'd have to look through it in depth to see what my suggestions would be. If I have some time later, I'll try to take a look, no promises though, I'm already building for other phones, and working, and have kids. Did you watch the video series? Perhaps there are topics that I explain in there that can help you. :D

Great question. Looking at the thread you pointed too earlier, did you run that script he said to run before each build, prior to building? Is it possible to post in his thread to ask him about this issue, if he saw it while building? Is there another ROM that you could build with different kernel source to make sure you have good material to work with?

If I have some time later, I'll try to take a look, no promises though, I'm already building for other phones, and working, and have kids.
[Android General] Rawwrius01:
[MENTION=7026648]AlaskaLinuxUser[/MENTION] many thanks for this, it's great! I have some questions may you or another user can help.

I was building a stock kernel from Samsung source for a tablet (exynos if it's matter) using the stock Toolchain and Ubuntu 18 I managed to build the Kernel successfully and install it via boot img and lazyflasher. But I never get wifi to work. It stuck at "starting WiFi".

The second question is. Is it possible or hard to Port a kernel to my divorce which have the same SOC ?

Many thanks. :)

Gesendet von meinem ONEPLUS A3003 mit Tapatalk
[Android General] AlaskaLinuxUser:
Great questions!

As for the WiFi:

I actually cover this issue in the more advanced course, you can check out the video on there called "WiFi Fix" under the building device tree from scratch series. Essentially, when you built your kernel, there are different ways to make it with the WiFi. Is your WiFi built in (a =y in the defconfig) or a module (=m) if it is a module, your module may not be properly signed, or you still need to copy the module built when you made the kernel, into the rom modules folder.

The second part is possibly the firmware, since you rebuilt the kernel, it may be looking somewhere else for the firmware, than the folder in which it used to reside.

So, check out that "WiFi fix" video and see if that helps answer your specific problem.

Second question:

With enough work, anything is possible. However, porting a kernel from different phones may be a very difficult task. While they may have the same SoC, all the other components may be different, it depends. Typically, one doesn't port kernels, but it can be done if you are knowledgeable and patient enough. It would probably be easier to add the features you want in the other kernel to your current kernel than to port it.

That said, I've never ported a kernel, and have no desire/intention to. :D
[Android General] CristianRo10:
Hey, thank you for responding (and again sorry for the late response ?). It would be great if you could look in the kernel and help me, and no, nobody made a kernel with overclocked cpu for my device.
[Android General] AlaskaLinuxUser:
Great, always worth a try.

Also, by outdated, what exactly do you mean? What is the kernel version of the outdated vs the not outdated kernel version?

I only mention this to say that sometimes we assume because something hasn't been touched in a while that it is out of date, but if the kernel version is the same, then it is not any more or less out of date (unless the other was patched with security updates or something like that).

Just food for thought as you learn more about building for Android. Most phones are still stuck on 3.x.x kernels, while desktops are in the 4.x.x kernels, so in theory, all Android phone kernels are "outdated". :D
[Android General] :
Hello,

I'm learning all the basics Android development since 3 days because I'm trying to do an Android P rom for bullhead.

Now that I know few things(the basics) I'm understanding that without C language knowledges it will be hard.

So I want to know your point of view on the question.

To make a long story short "does it worth it to try doing a custom rom (I mean just a stable aosp with all working but without customisations) without having the required knowledges"?

PS: I'm actually at the university in computer engineering, we are learning python as it's my first year.

Best regards,

François.
[Android General] srgrusso:
I was hoping you cold help. I have created a device and vendor tree in github. I have added them to my roomservice.xml in my .local_manifest directory. When I do a repo sync I get the following error and I'm not sure why it's not syncing.

error.GitError: srgrusso/android_device_samsung_gtaxlwifi rev-list (u'^5c3d5c8b7be82d1861b85506dc1df8d27ec8d2d2', 'HEAD', '--'): fatal: not a git repository (or any parent up to mount point /mnt/UserData)

relavent lines from roomservice.xml

<project name="srgrusso/android_device_samsung_gtaxlwifi" path="device/samsung/gtaxlwifi" remote="github" revision="cm-14.1" />
<project name="srgrusso/android_vendor_samsung_gtaxlwifi" path="vendor/samsung/gtaxlwifi" remote="github" revision="cm-14.1" />

Links to my device and vendor tree.

https://github.com/srgrusso/android_device_samsung_gtaxlwifi/tree/cm-14.1

https://github.com/srgrusso/android_vendor_samsung_gtaxlwifi/tree/cm-14.1

Thanks
[Android General] AlaskaLinuxUser:
srgrusso! Great to see you here!

Great question. Hmm...

Did you put files in the /device/samsung/gtaxlwifi folder locally before you made a manifest? - If so, you should delete/remove those files and that folder before doing your repo sync.

That's the only time I've seen that before.
[Android General] lukaspieper:
I don't know how gApps are going to help me get my build to boot through. I've been using Custom Roms on other devices for some time, so I'm familiar with the advantages and disadvantages of gApps. On tablets, for example, I don't miss gApps at all and won't install gApps on this device if I've fixed all these bugs at some point. I don't know if it was AKLU or someone else who suggested not to flash gApps during development.
[Android General] widi aprianto:
Please anyone help me i am try build lineage os 15.1 for xiaomo vince but get error like this what wrong, please help https://pastebin.com/raw/uGX40jjk
[Android General] lucki1000:
I'm sorry I thought pstore its shortcut for play store my fault.
[Android General] lukaspieper:
No, now I just understood how you get to the Play Store ;) pstore is a directory where the last dmesg log should be in, only I don't have the directory.

But thank you very much for your effort.
[Android General] AlaskaLinuxUser:
I'm stumped on that one lucki. Perhaps you should open a qa in your device thread for some device specific help. :confused:

By missing, what exactly do you mean? So of you click in a text field, does no keyboard come up, or does one that is not aosp come up? If nothing comes up, check settings to make sure that an external keyboard is not somehow selected.

OK, I took a look at the log. So let's do some learning:

What does the log say is the problem? Remember search for the key word of "fail" and "error". If we search the log for that keyword, what do we find? :good:

Well done. A good step getting to the boot animation. :highfive:

Now you need logcat or tombstones to see the next problem. If you get into adb shell, while booting you can run this from your computer:

$ adb shell mount |tee mymounts.text

Which will make a text file on your computer that should have a list of mounted partitions. Is every important thing there?

Pstore is "persistent storage" a defined kernel option to save small amounts of data with the kernel.

Also I fully recommend that no developer flash gapps until they are done fixing everything they want to fix in a ROM. Once you flash gapps, SuperSU, magisk, closed, or anything to the ROM, you change the parameters and the environment. So you should always troubleshoot before flashing anything else. :good:
[Android General] Techguy777:
Ok I'm finally going to post here instead of on YouTube papasmurf is my YouTube name. Im having trouble understanding everything because no one really explains what things are and when you Google search usually nothing worth a damn comes up. I have Nexus 6 Shamu I have setup my build environment I have switched over to another user account I made and I figured they wouldn't have super user for building I was right but I got that taking care of. I downloaded my device tree off GitHub from the link for device tree provided on twrp website. I need help knowing everything where do I extract that zip file I downloaded with device tree? Does that go into a folder inside my twrp folder I setup or what do I have to rename so when I build it finds it? Do you have have a vendor source is that vendor tree or is that a file if I have the device tree do you need vendor whatever it is. There is a vendor thing on the Muppets for Moto Shamu but it doesn't have anything like the find7op one did in the video? And then finally if someone could clear up what vendor is and what's it's needed for same thing with kernel do I have to have a kernel source do I put it in home directory twrp directory? I'm frustrated any help would be great. That don't spoon feed noobs crap is got me upset. How would anyone know this stuff like when would you need to Know what a device tree is and how to clone repo and sync it. Lol

Thanks for the YouTube videos though.
[Android General] AlaskaLinuxUser:
That is why I made these videos and this thread. About 4 years ago I rated this journey and received very little help, until I meet bubor and steadfasterx. Even then it was an uphill battle.

So, I put this together to answer all of those questions.

So, have you watched this playlist:

https://www.youtube.com/playlist?list=PLRJ9-cX1yE1l6eu-vkgsj61U-Zv3fjzwZ&app=desktop

It is not HD video. And people complain and complain about the low quality, but it is very informative and answers all of your questions if you watch it in order from start to finish.

And a bonus for you: I use the shamu as my example for the entire lollipop portion. You could literally build alongside me in the video series. :laugh:
[Android General] David B.:
Hello [MENTION=7026648]AlaskaLinuxUser[/MENTION] and thank you for assembling such a wonderful video series on how to build TWRP from the Omni minimal manifest. I was trying to use your video series on how to do this but got stuck on this part with the lunch command. I am trying to build for the Nexus 6 (code name shamu) using the Omni 8.1 sources so I issued the command as `lunch omni_shamu-eng` and received the following error.

build/core/product_config.mk:227: *** Can not locate config makefile for product "omni_shamu". Stop.
Your device can't be found in device sources..
found the shamu device repo
syncing the device config
remote: Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
Fetching project android_device_moto_shamu
fatal: Couldn't find remote ref refs/heads/android-8.1
fatal: Couldn't find remote ref refs/heads/android-8.1
error: Cannot fetch android_device_moto_shamu
warn: --force-broken, continuing to sync
Fetching projects: 100% (1/1)
error: Exited sync due to fetch errors
Your device can't be found in device sources..
Traceback (most recent call last):
File "vendor/omni/build/tools/roomservice.py", line 356, in <module>
fetch_dependencies(device)
File "vendor/omni/build/tools/roomservice.py", line 305, in fetch_dependencies
raise Exception("ERROR: could not find your device "
Exception: ERROR: could not find your device folder location, bailing out
build/core/product_config.mk:227: *** Can not locate config makefile for product "omni_shamu". Stop.

** Don't have a product spec for: 'omni_shamu'
** Do you have the right repo manifest?

Would you happen to know what the cause of this is and what, if anything, I can do about it? It seems like it found the device but cannot find an 8.1 branch.
[Android General] DJABHipHop:
Simple open an check all your .sh and .mk file look for word like aosp, lineage, cm, rr, du, ETC... and file that are named with those word and replace them with omni that sould get your build started.
[Android General] AlaskaLinuxUser:
You are right. It finds the repo of shamu, but not an 8.1 branch.

You can check by going to the repo online:

https://github.com/omnirom/android_device_moto_shamu

Notice that the newest branch is 7.1.

So, is recommend you follow the tutorial, but use the mini twrp omni 7.1 branch. :good:
[Android General] Techguy777:
Awesome that's going to be watched tomorrow if you used Shamu. No I haven't watched all the videos yet. It kills me cause I know that it's really like 5 minutes to compile a twrp but you have to Know every little thing to setup and get it running but once you do it's like man this is easy. Well I'm not there with building but I remember when I first started rooting I had a Dell venue tablet and they put fastboot flash unlock bin and I'm not kidding I rooted thing not knowing that the unlock bin was for my bootloader and I could have flashed the custom recovery and rooted no problem.?

Thanks I'll check it out tomorrow are all the videos on YouTube or do you have more on your website or GitHub?
[Android General] rajesh@xda:
Is there any guide on selinux denials and fixes..? I have compiled the ROM (lineage 15.1) on enforcing mode by default . My proximity sensor and button backlight works only when selinux is permissive. How to overcome this issue and make that two things to work on enforcing mode.

Any suggestions:)
[Android General] DJABHipHop:
Same here, But not same problem.
[Android General] widi aprianto:
I am succes built los 15 but doesnt have flash light toogle on notif panel, any solution?
[Android General] DJABHipHop:
Have you tried adding this to you device/board

# Torch
PRODUCT_PACKAGES += \
Torch

or taking a look at /overlay/frameworks/base/packages/SystemUI/res/values/config.xml for this

Exsample

<string name="quick_settings_tiles_default" translatable="false">
airplane,wifi,bt,cast,location,adb_network,rotation,battery,dnd
</string>

<!-- Tiles native to System UI. Order should match "quick_settings_tiles_default" -->
<string name="quick_settings_tiles_stock" translatable="false">
airplane,wifi,bt,cast,location,adb_network,rotation,battery,dnd,usb_tether,inversion,saver,work,night,livedisplay,ambient_display,caffeine,heads_up,sync,volume_panel,profiles
</string>
<!-- The tiles to display in QuickSettings in retail mode -->
<string name="quick_settings_tiles_retail_mode" translatable="false">
airplane,wifi,bt,cast,location,rotation,battery,dnd
</string>
[Android General] lucki1000:
Maybe it's in the notification customizations, habe you look there?
[Android General] DJABHipHop:
True but from what I've seen it's usually there by default unless it bin remove with overlay.
[Android General] David B.:
I am not sure I understand what you are suggesting.

The problem with building using the Omni 7.1 branch is that phones that were encrypted by an Android 8.0 installation or higher cannot be decrypted by TWRP. To work around this, I want to build TWRP using an 8.1 device tree. I am not sure that building with 8.1 would be of any value.
[Android General] widi aprianto:
None

---------- Post added at 05:30 PM ---------- Previous post was at 05:27 PM ----------

Just add code in device/board?
[Android General] DJABHipHop:
yes stick in all in yore device repo and always try to keep the board repo as generic as possible avoide other problem when adding other devices that use the same board as your device but do have the same Display, Camera,Sencore, or a Torch Hope this fixes your problem.

Sidenote the overlay xml & and folder structure I posted earler can also be used to remove unused quick setting toggle there for simplfing the ui and giving you a more oem experience.
[Android General] widi aprianto:
Device/board not exist
[Android General] DJABHipHop:
Sorry but I meant to say device or board repo, But the overlay goes on your device folder with the exact folder structure I posted earlier and torch goes in device folder board make or your devices board folder board make but that all depending on how your device tree is setup.

also have a look in /frameworks/base/packages/SystemUI/res/values/config.xml in your LineageOS folder or whatever folder you rom & device source are stored as you may want to see all the available quick setting toggle, you may also want edit my config.xml as my it will work on your device but may not have the all quick setting toggle in the order you want or necessary quick setting toggle visible for your device specification as my config.xml is setup of a device without no torch, nfc and some other thing. Hope this helps you out.
[Android General] kush57:
There's a kernel for oreo rom for onyx i want to use it for building pie rom. What specific kernel source changes do we need to make it compatible for pie rom

Thanks for the help in advance :)
[Android General] lukaspieper:
I'm glad you corrected me on pstore.

I managed to get a logcat (tombstones are not available). I searched for the keywords error, failed, failure. Exception is also a very good search term. Probably the most noticeable error can be found under "BOOT FAILURE" (android.security.IKeystoreService). According to my research it has something to do with Android's credential storage. Somewhere it was recommended to remove the keystore.msm8953.so, that didn't bring me any success.

The other matches about exceptions also seem important to me (otherwise there are some errors about camera and very often avc: denied occurs).

Here is the whole log, some things are repeated frequently, I have no knowledge how to get good logcats. :)

https://paste.ubuntu.com/p/VFFCCW96hx/

Thanks already.
[Android General] DJABHipHop:
Try this for clean logcats.

All = adb logcat >> Locat.txt
Debug = adb logcat *:D >> Debug\ Logcat.txt
Info = adb logcat *:I >> Info\ Logcat.txt
Warning = adb logcat *:W >>Warning\ Logcat.txt
Error = adb logcat *:E >> Error\ Logcat.txt
Fatal = adb logcat *:F >> Fatal\ Logcat.txt

Use everything after the equal sign.

Hope this helps you out.
[Android General] Techguy777:
I'm starting to watch the series right now. I've downloaded the vendor file off the Muppets for cm14.1 branch because I'm trying to build twrp Omni 7.1 if I get that built Ill try 8 or 9. I really guess I need to learn how to use the Google binaries and vendor files I downloaded 7.1.1 files look inside it's a extract moto shamu.sh. How do I use that? Also the final piece of the puzzle is kernel source I've read you need it and you don't any input? I'm going to continue to watch the rest of your videos and search Google. The Muppets vendor file I changed the name and put them in my twrp folder.

Edit I figured out how to extract the Google package with vendor files. You open terminal and and type a command and run the shell. I also found yes you do need a kernel because the recovery and rom both have kernel that way the recovery can boot if you screw up your system. Now then the question is what kernel do you use? Do I use stock 7.1 cause I can't find source for that or do I use Franco or ElementalX or something for nougat?