Getting FireFoxOS to Run on TS - Ornate TrueSmart

Hi All!
I was able to Obtain/Compile a Compatible and Working FireFoxOS build for the Omate Truesmart Kernel.
By following this Steps here you will be able to get and start successful FireFoxOS on your Omate Truesmart
and get a Output on the Screen.
THIS STEPS ARE ONLY FOR DEVS.
FireFoxOS for Omate Truesmart is a Work in Process and not yet finished!
Step 1: Download and unzip the Compatible build of FireFoxOS for the Omate Truesmart Kernel.
https://mega.co.nz/#!6RhBWYhA!H19ORFCWcUub4ZcVEO7LfHcVxbfgmuP76XoQGrwxD9Y
Step 2: Connect to the Omate Truesmart over ADB
adb start-server
Step 3: Prepare the System Partition for uploading the new FireFoxOS Files
adb shell mount -o rw,remount /system
Step 4: Push/Upload the downloaded and unziped FireFoxOS b2g Directory to the Truesmart System Partition
adb push b2g/ /system/b2g/
Step 5: Make the FireFoxOS Files executable.
sudo adb shell chmod -R 775 /system/b2g
Step 6: Turn the Screen on to see the Output of FireFoxOS
(You only have a few Seconds before it turns off again for saving battery)
adb shell input keyevent 26
Step 6: Run FireFoxOS on your Truesmart from the Console (make sure that Android does not run in Parallel and interfere with FireFoxOS)
adb shell LD_LIBRARY_PATH=/system/b2g/:$LD_LIBRARY_PATH /system/b2g/b2g -screen 240x240 &
If you have done everything right you should see this Debug Information in the Console
Code:
1406046526870 Marionette INFO marionette enabled via build flag and pref
1406046526990 Marionette INFO marionette-server.js loaded
1406046527223 Marionette INFO B2G emulator: no
1406046527225 Marionette INFO Device detected is x201
1406046527227 Marionette INFO Listening on port 2828
1406046527228 Marionette INFO Marionette server ready
We need to have a BusyBox Console only Firmware stripped full of Android and its related Stuff to be able to run FireFoxOS
without that Android is interfering and running in Parallel.
For this the Init Process also need to be modified.
It would be great if some very good Devs start to test this out and work on it together.
Looking forward to see very soon a FireFoxOS only firmware for the Omate Truesmart.
All the Best, Greetings ARAN.
P.S. TO Stop FireFoxOS running on Omate Truesmart you need to get the Proccess ID of b2g.
for this you run the following command and look after the b2g Preccess ID
adb shell top
after this you do
adb shell kill 1234
where 1234 is the Process ID

nice one mate. going to test this soon :good::highfive:

Have built stripped down Android site servers a number of times, may give it a go. Would be much easier if full bootable source for the TS was available.

Updating the Broken Download Link
Hi all.
Thanks a lot for your Replys and Information.
I just got notified by the User deadhp1 that the Download Link got broken/truncated after several Editing of my first Post.
I updated now the Download Link. It should work again now.
To be sure i am Reposting the Download Link here again
Sorry for this Error by my side.
https://mega.co.nz/#!6RhBWYhA!H19ORFCWcUub4ZcVEO7LfHcVxbfgmuP76XoQGrwxD9Y
Related the Sources for Building FireFoxOS.
All Steps that are needed from Getting the Sources and Building them are described on the Mozilla Developer Page.
https://developer.mozilla.org/en-US/Firefox_OS/Building_and_installing_Firefox_OS
I recommend that you first try to make a Emulator Build and run FireFoxOS inside the Delivered Emulator and test it.
After this you need just pay attention that you build FireFoxOS for the right Kernel Version Number and you should be able to run FireFoxOS on the TrueSmart by just copying only the b2g directory.
If you compile FireFoxOS for a different Kernel Version then it will be not possible to run the build on the TrueSmart.
Hope everything is clear now.
Greetings ARAN.

ARAN said:
Hi all.
Thanks a lot for your Replys and Information.
I just got notified by the User deadhp1 that the Download Link got broken/truncated after several Editing of my first Post.
I updated now the Download Link. It should work again now.
To be sure i am Reposting the Download Link here again
Sorry for this Error by my side.
https://mega.co.nz/#!6RhBWYhA!H19ORFCWcUub4ZcVEO7LfHcVxbfgmuP76XoQGrwxD9Y
Related the Sources for Building FireFoxOS.
All Steps that are needed from Getting the Sources and Building them are described on the Mozilla Developer Page.
https://developer.mozilla.org/en-US/Firefox_OS/Building_and_installing_Firefox_OS
I recommend that you first try to make a Emulator Build and run FireFoxOS inside the Delivered Emulator and test it.
After this you need just pay attention that you build FireFoxOS for the right Kernel Version Number and you should be able to run FireFoxOS on the TrueSmart by just copying only the b2g directory.
If you compile FireFoxOS for a different Kernel Version then it will be not possible to run the build on the TrueSmart.
Hope everything is clear now.
Greetings ARAN.
Click to expand...
Click to collapse
Firefox team has been in contact with me about help with the kernel source, but I might need to refer to a couple of you guys about it as I'm still learning the ins and outs of kernel compiles for MTK.

Hi kuronosan,
kuronosan said:
Firefox team has been in contact with me about help with the kernel source, but I might need to refer to a couple of you guys about it as I'm still learning the ins and outs of kernel compiles for MTK.
Click to expand...
Click to collapse
can we expect something new here, or is it just "over" after Mozilla stopped any further FirefoxOS-development?
Thanks a lot,
Kind regards,
thgxda

They never contacted me again. Sorry. I asked for proof of concept and help and haven't heard anything since.

Related

[DEV TUT] Building Kernels and Android Sources

Dear Community,
Please read the following before starting on reading on.After lots of requests I decided its time to provide every oncoming developer with a short guide on how to start developing for our beloved Mimmi (most stuff applies also for Robyn or other Android devices).
I'd also like to get a few words passed on what actually in most cases developing is, so let's start with the basics:
There is different ways of developing there is people like Cyanogen Mod which provide you with a bunch of changes to the original Android source code which enables new features, adds hardware support or make things easier for specific device developers. However these people at Cyanogen are often not fully recognized so please make sure to thank these people as well. Besides that there are ports of similiar devices which will not be explained in this tutorial but also these developers usually put a lot of effort into their roms however since the source is already compiled changes are usually of a cosmetic nature. In this tutorial however you will find the basics on how to compile kernel or android from source in order to build your own changes into your own rom, which btw would have never been possible without the developers porting xrecovery or cwm to our devices so please give these people a big thumbs up as well after reading on.
What do I need/Environment set up
Most people have issues on setting up a the heart of your Developer Carreer, the Environment. What I strongly advise is to have at least a bit knowledge of the main usuage of Linux Distributions and also programming languages. Without these you will most likely fail at one stage or another to make a successful build.
So lets evaluate what you need :
Linux Distro (i.e. any Ubuntu should do well)
a VM or native Linux
quite a bit of Linux skills and programing skills
Time and a high tolerance of frustration
Sufficent RAM (at least 4 GB, more is advised otherwise use native Linux)
If you know how to install a native Linux Distribution you can probably skip this part, I will explain how to use a VM to fill the basic needs and keep your development area seperated from you most likely otherwise needed productive platform.
The following Steps are just keywords, if you want to develop you will need to inform yourself how to achieve all this yourself, there's lots of tutorials out there.
Step 1: Download a VM and a Linux Distro
Step 2: Install VM Software (i.e. VirtualBox or VMWare Server)
Step 3: Install the Linux Distro in VM (you'll need at least 6 GB Swap and 50 GB or More HD space to have enough room for experiments/seperate syncs/etc...)
Step 4: Figure out if you installed 32 Bit or 64 Bit (you'll need this later)
Step 5: Boot your new VM based Linux Distro
Step 6: Set up a Share Mount between your host and your VM
Step 7: download the Android Source/Cyanogen Source of your desire (i.e. : repo http://**** -b gingerbread) into a folder for you desire (the folder should represent your ROM's/Kernel name)
Building a Kernel
Building a Kernel is one of the easier parts considering the full source code is available for download. Sony Erricson Open Source Dev Website is providing fully funtional Kernel sources usually in the tar.gz format. Download the source code and extract it, or if you use a git based repository clone or checkout the project into a folder of your desire.
The next step, is not mandatory but advised to sync the entire Android repo/CyanogenRepo as the repo also provides the Cross Compiler toolchain which is needed to compile for your device.
Once everything is finished downloading you should check the following path in the Android repo : platform/linux-x86(orx64)/prebuilt/toolchain/arm-eabi-4.4.3/bin/ this is the cross compiler we will use to build the kernel itself, its vital to have the compiler present, the version number maybe different though.
Lets start with the building process itself:
Code:
cd kernelfolder
cp arch/arm/configs/semc_mimmi_defconfig .config (the command maybe change to copy another default config file, it creates a file in the root of the kernel folder called ".config"
ARCH=arm make menuconfig (this will bring up the kernel configuration menu for arm devices)
In the Menu Config you can change/add features to the Kernel once you are done safe the kernel config. Now your Kernel is ready to be compiled:
Code:
ARCH=arm CROSS_COMPILE=/pathtoandroid_source/platform/linux-x86(x64)/prebuilt/toolchain/arm-eabi-4.4.3/bin/arm-eabi- make -j4
This will start a compile with 4 Jobs using the Architecture ARM and the Cross Compiler arm-eabi from the Android Source Repo. Once finished you'll find your Image in your kernel folder under arch/arm/boot/Image. Now you'll need to build your own ramdisk this is covered here at xda as well azuzu has also build a tool available to download.
Follow the instructions to create the kernel.sin which now can be flashed with Flashtool. Changes to Kernel source will now be available to your compiled Kernel. How to change the Kernel source is beyond this tutorial but programmers in C will have fun there.
Building Android from Source
Now lets get started with the more advanced part and the most frustrating part in the beginning. The easiest way to build for the mimmi would be to sync the Cyanogen Gingerbread source code. Which can be checked out using the repo binary (see tutorials on googles website also which packages for which architecture (x86 or x64) are addionally needed also the correct java version is important)
Now lets cut to the chase.
Code:
repo sync -u http://github.com/CyanogenMod/... -b gingerbread (or froyo or another branch you would like to check out)
once your repo is synced (you could also add "-j8" to enhance the speed of the repo command, it will take quite a while) you are almost ready to start. If you synced an AOSP source you will have the get your device and hardware libraries ready first. This means you will have to port i.e. the device project and hardware project (mimmi and msm7227-common folders from CM and also hardware folder from CM) to the AOSP source. It makes sense to port these to your AOSP source since they are the most complete so far. For Camera libraries you can sync from doixanhs repo the libcamera-5mp.
Now lets get a short overview over the Android source, it contains of various folders:
frameworks
device
vendor
hardware
platform
external
These are the most interesting, frameworks folder holds a bunch of android libraries and files which provide the functionality however often you will need to change a few things here and there since the mimmi is unique in its hardware. Everything you change will need to be approved with the following command:
Code:
make update-api
This will add all the functions, variables or anything else to the current-api.xml and ensure its available at build time.
The device folder holds device specific files, build-configs and so on. Lets look at some of the important files:
Code:
device/semc/mimmi/overlay/frameworks/base/res/res/values/config.xml/power.xml
The two xmls hold configurations of the build process which are device specific either LightSensorWarmupTime and so on the full list is in the root folder of frameworks/base/res/res/values/config.xml <-- any part you feel you need to change copy the lines from there and change in you device specific config.xml.
Now to another file:
Code:
device/semc/msm7227-common/BoardConfig.mk
This files olds the device sepecific configurations for the ARM, WLAN, etc.
Look at all the files in mimmi and msm7227-common and figure out what they do, google of course will guide you on that.
Also take a look in the:
Code:
vendor/cyanogen/products/
folder and find the mimmi config and get familiar with this as well. Nobody will be able to help unless you face specific issues. Developing is learning by doing and a lot of self teaching and the will to understand all of this yourself. We can't teach but you can learn. Specific questions however are usually proudly answered by most devs if they have already figured it out.
Lets start building now, first you'll need to get your lunch command to know which devices have makefiles (I always do it to be sure)
Code:
source build/envsetup.sh
This will now add all the known devices to your lunchcombo (the devices are usually definied in the vendorsetup.sh pointing to the makefiles)
Code:
lunch
Will get you the list of available devices and will wait for user input to select the device you want to build, choose the mimmi.
Code:
make -j4
This will start the building process with 4 jobs.
Now its time to get a coffee. Usually you will have a bunch of different issues on this part but the CM source is pretty good and you might be lucky there.
Now lets look at typicial errors:
Code:
symbol not found : means a variable in used in the code has not been defined, before its use this one is a tricky one
try to locate the source file and find the line the compiler is complaining about. Now check in the framework usually in
res/res/values or layout look for the type of the erros (String or array) and look in the corresponding xml if the variable
is present. Now look in vendor/cyanogen/overlay if your variable is also declared there and so on.
Code:
function not found/function of incompatible types : also a tricky one, you might sync a repo and made local changes to
a file and suddenly your functions another file calls are not present or have changed, find the differences between them and
think about how it has changed, maybe add the function again or maybe another function does the job now. you will need
to locate the changes compare them and you should be fine again
Code:
No Rule to make target: this one is usually due to a missing/incomplete Makefile you might need to add manually or
if you don't need it anyway the easiest would be to delete the not building folder
Once your source has finished compiling you will find you system image in:
Code:
out/products/mimmi/system/
As of now unfortunately its still missing a few files here and there. Compare ROMs and Compare what might needs to be added. However I advise not switch libraries around its best to use your own libraries. However sometimes you will face issues when doing this so start with the files created there and just add the recovery and ramdisk to your rom. Now observe via adb if everything is running. This will take time and add one missing lib after another one and reboot, after each (like grallocs or librils or fm libs and so). This is basically a debugging part of the job.
You will now add one by one more functionality, but keep in mind to use logcat to see what goes wrong, maybe some stuff can be changed in the source rather then randomly adding stuff.
also this one just in case.
Hey there c: As always, you come surprising everyone with your stuff haha Good job on this one, I think it is always good to have some tutorials from the people who build specifically for our Mimmi's
Before reading this, I wanted to get started on developing and I went to Android's official developers site, I did some steps, now I have the complete source of Android here (I use Ubuntu 10.04, the LTS version... Dunno if telling you that it is LTS ver. really matters, but just in case) andthe whole environment ready to build. Now, reading at this, I realize I don't have 4Gb of RAM on this "old" (2007..) notebook. Anyways, the thing is: I followed the steps listed here, but when I wrote this command-
Code:
$ make -j4
-the terminal started to execute files, or something... I'll add a screenshot at the end about this. It has been 3 days since that, and the terminal is still doing the same. I know developing requires a lot of patience, but... 3 days? Is this normal?? I have looked through the Internet for problems with this command, but no one seems to have talked about it.
Thanks for your time, work and effort for the community, we really appreciate it c: Bye!
Link to the Screenshot:
http://i259.photobucket.com/albums/hh313/link_4ever/Screenshot.png
The 'make -j4' uses 4 threads to compile everything, if your notebook does not have at least an hyperthreading-technology enabled CPU, well, that's to expect when building an entire OS, plus you don't have sufficient RAM, I do have 2GB and a DualCore CPU and it takes at least 1 hour to compile an average desktop kernel with that same command. I have not tried to compile android, but I think that it will take at least 4 hours to compile everything. Just my thought.
RozenTensai said:
The 'make -j4' uses 4 threads to compile everything, if your notebook does not have at least an hyperthreading-technology enabled CPU, well, that's to expect when building an entire OS, plus you don't have sufficient RAM, I do have 2GB and a DualCore CPU and it takes at least 1 hour to compile an average desktop kernel with that same command. I have not tried to compile android, but I think that it will take at least 4 hours to compile everything. Just my thought.
Click to expand...
Click to collapse
Thank you for your answer! Just ten minutes ago, the 'make' command finished ! And about my notebook, it is just like yours: 2Gb RAM and Dual-Core CPU, I'm not sure but I think it runs at 2,8 GHz. And also, like I said earlier, I know developing takes time. I know how slow processes can be, in fact, there were commands previously that took 1 hour or more to finish their tasks. 1 hour, 4 hours, it's ok but... 3 days? Isn't it a bit too much xd?? Now I'm afraid to turn off the computer because I don't want to compile that thing again hahaha
the "-j" option depends on the number of (virtual) cores you have.
get the number:
Code:
grep processor /proc/cpuinfo | wc -l
if you have native linux and like to work on the machine I recommend do lower the number at least -1 otherwise get a coffee and keep hands off the build process
b
make -j4, lol. Many people do not have. 4 cores on the processor
paul-xxx said:
make -j4, lol. Many people do not have. 4 cores on the processor
Click to expand...
Click to collapse
This parameter refers to threads instead of hardware cores
Sp4rrow said:
This parameter refers to threads instead of hardware cores
Click to expand...
Click to collapse
ok. probably a mistake. but still. I always use 2. it brought to me the best results
I use j6
And also j refers to jobs everybody may change to what they want. For kernel i build with j12.
If you know better like it seems you always do write it down.
Sent from my U20i using xda premium
I can't find any 2.1.1.A.0.6 Sources. Link to the sources you use slade?
http://developer.sonyericsson.com/cws/devworld/search-downloads/opensource?cc=gb&lc=en
should be:
x10_x10mini_X10minipro_x8_eclair_2.1.A.0.435.tar.gz
Stock Kernel with only CWM5 installed...
Slade i want some help from you. how can i embed CWM5 in the stock kernel without any other changes to it??
i want a stock kernel with nothing changed in it only CWM5 installed in it. how this can be done???
i forgot to say the most important thing!: Thank you very much for your work and effort Slade
I just came to the configuration menu of the kernel. i see there are options predefined for the mimmi, but how can i optimize it more, there are soooo many options, and to tell the truth i don't have a clue what they do

Android source code building/software development

I have been searching and searching much to no avail. Here is my dilemma: I'm interested in android development and have installed ubuntu Linux os along with other requirements outlined on the android source website but I'm having the most difficult time getting the git program to install. I constantly receive error after error. Python, jdk6, and make have all installed with no problems. Can someone point me in the direction of a step by step procedure for completely setting up my computer with the required programs necessary for android development. Any and all help is greatly appreciated!
Sent from my LG-P925 using xda premium
google developer page clearly says which packages to install and what to do, you can search here at xda too.
if you have any problem try:
remove ~/bin directory
remake it
redownload repo script
add PATH variable
chmod it for executable
remove workdir
remake workdir
cd to your working directory
init your source
linux is not about make it and it should work you need a lot of things to get by yourself and learn to pass through problems. personally I was noob too, and still think I am, but linux really learns thinking in pc usage, that's not windows "if you can't do anything, that's impossible", you just have to find other way
it will be hard to start without linux knowledge, try using it first for a month then start development. you'll also need some xml and makefiles editing to know.
what you'll need
if you have cyanogenmod sources it's easy, you probably have everything that's needed,
if you use google's, then it's harder, because you miss drivers, device tree can fit from cm but you need to edit it.
you can find usb connection setup painful with editing udev rules, but with some practise it will be easy.
and please, for everyone to know: don't PM me or ask for help, I'm not a support, just saying here something that could help and I'm not pro .

[DEV][CM9][HOWTO] Build CM9 From Scratch!

It's time. As offered previously for the Nook Color and HP Touchpad...
A Build CM9-for-NookTablet Walkthrough
What is this?
This document provides instructions for developers to build a complete Cyanogenmod 9 update.zip for the Nook Tablet aka "acclaim" (and more theoretically the newer 512MB model, aka "elation") from source code. The instructions require a Linux computer and appropriate tools (discussed below).
It is important to emphasize that CM9 is a work in progress and if you try it you will be building/using something in mid-development. Things may break and/or not work at any time. Read below, the build instructions, and the relevant licenses for additional info and disclaimers.
Hopefully, for those developers who are interested and willing to take the risks, this can be a fun and educational experiment. And hopefully more developers will help chrmhoffman, kuzma30, mik_os, and others improve CM and the 3.0 kernel.
So does this build use the new, experimental 3.0 kernel then?
Update: At first, I mentioned that 2.6.35 was also supported, but apparently this will require additional files that aren't currently installed. So for now, yes, it uses the 3.0 kernel, which may not be compatible with the newer 512MB NTs. Although it is not confirmed one way or the other, as it has not been tested on these devices.
The configuration uses the experimental 3.0 kernel, which is built on-the-fly from the latest source code.
Unless you really want to take some risks, if you have a newer-model 8GB/512MB Nook Tablet (aka "elation"), the 3.0 kernel build is not for you...yet! It may boot, it may not. It has not been tested by any of the developers with that device, and as of this writing there are known kernel issues with the 512MB. (So actually, this is a good opportunity for developers to try it and contribute.) The 3.0 kernel development thread has more on this.
Any further discussion below assumes the 3.0 configuration, as the 2.6.35 branch isn't as up-to-date and isn't really being maintained. 3.0 is the future!
These instructions are for Linux. How do I build on Windows/Mac/etc?
If you have Mac or Windows or something else, you may consider installing a virtual machine such VirtualBox (which is free). Then run Linux, say a Ubuntu distribution, as a guest from your host computer. This allows you to "sandbox" your development environment, and gives an opportunity to learn about Linux with actual hands-on experience, all without reformatting your computer...
CM9 can also be built on Mac natively, either in Snow Leopard or Lion. Instructions for building (CM7) on a Mac can be found on the CyanogenMod wiki.
A few modifications need to be made to those instructions for CM9 & Lion, but such instructions aren't hard to find.
Will my build actually be usable?
CM9 (and the acclaim port) is in active development, and when you do a build from the latest source, you are using a bleeding-edge build of whatever happens to be in the repositories at the time. There is no guarantee it will work in any capacity. It may actually cause terrible damage. So only try at your own risk, and assume responsibility for your actions. If you find a bug, help fix it.
It is critical that you understand the risks before trying this and fully back up your system before trying any build. It is equally important to have a bootable SD standing by so that you can restore your device to a known good version if something goes terribly wrong, which may actually happen. Hopelessly staring at a non-booting device is never fun. There are other threads about recovering hosed acclaim systems, so I will leave you to finding and understanding them and preparing yourself for solving such problems. You should always assume the worst will happen, so be prepared.
Speaking personally, I don't have either model of NT and have never run CM9 on one, so can not attest to its usability per se. You should consider this a work in progress full-of-bugs until told otherwise.
Which bootloader is this using?
Cyanoboot, based on u-boot. The full github repo w/history (rather than raw files) is now available as well. Special credit to bauwks for fixing the locked bootloader design flaw.
Will this build result in a working update.zip suitable for use with ClockWorkMod recovery?
The build process has been modified to generate a fully flashable update.zip, but, as, with everything else, nothing is guaranteed.
Does this create a build for SD Card or for EMMC (internal storage)?
EMMC.
I'm stuck! I've been at it for hours. Something isn't working. Where can I get help?
If you have never built an operating system before-- this may be a good way to learn, provided you accept the risks and consequences of trying. This and other forum threads may be a good place to look for help. Also try IRC.
You are also able to leave comments in the walkthrough document itself. If you have a tip that might help others, post it there. If I get a chance, I'll take the best of them and incorporate it into the doc.
Does this build ClockworkMod recovery too?
It should. Check the $OUT directory for two files-- recovery.img and recovery.img.sdcard. The recovery.img file is (hopefully) flashable via fastboot:
fastboot flash recovery recovery.img
The recovery.img.sdcard can be renamed to recovery.img and put on your sdcard.
Can I build twrp2 instead of ClockWorkMod?
TWRP2, in case you're not familiar with it, is an alternative recovery image created by Team Win, particularly user dees_troy. It can be used for flashing update.zip files and making/restoring backups, among other things.st
The 3.0 build configuration currently contains the needed settings for a twrp build. You will just need to replace the ~/android/system/bootable/recovery repo with twrp's source code. You can do this by adding the following lines to your local_manifest.xml file:
<remove-project name="CyanogenMod/android_bootable_recovery"/>
<project name="TeamWin/Team-Win-Recovery-Project" path="bootable/recovery" remote="gh" revision="master" />
You can then repo sync (per the instructions) and then do this command to rebuild the recovery using twrp2.
mka recoveryimage
The recovery.img and recovery.img.sdcard files in $OUT should now contain the latest twrp2. (If it doesn't, try clearing out the recovery-related files in $OUT, including $OUT/obj/RECOVERY_EXECUTABLES)
Please direct twrp2-related questions and solutions to the twrp2 thread, not here.
Who do I thank?
Thanks to chrmhoffmann, mik_os, kuzma30, cyanogen, arcee, nemith, Texas Instruments, Barnes & Noble, and all the other devs, testers, and contributors, of which there are many. And special thank to bauwks, who made this all possible.
For this walkthrough in particular, big thanks to chrmhoffmann as well as eyeballer for testing. Everyone-- go find a thread by these people and thank them.
Who do I blame?
Yourself. Only yourself.
To whom do I donate?
Not to me. You can donate to any of the above if you feel like it. I do suggest considering a donation to the Electronic Frontier Foundation, who among other noble activities are fighting to keep "jailbreaking" and its Android phone and tablet equivalents legal. Your Android devices are full-fledged computers. Don't let corporate or government special interests take away the right to mess with your own possessions as you wish.
Finally, good luck. We're all counting on you. If and when you have problems, post them, and hopefully others will help find a solution.
Developers are needed. Enquire within.
-ft
(twitter)
-----
How To Build CM9 for Nook Tablet From Source
(Google Doc... or is it Google Drive now?)
And one more thing...
If I think of something to add, I'll put it here.
Good stuffs. I'll give it a try later in the week. I have everything set up. Going to be fun testing.
Im planning on doing this too. Thanks for making a guide, although I'll probably be in the IRC within 5 minutes of starting with questions
Sent from my Team A CM9 Alpha 0.03 Nook Tablet
Thank you very much for putting this together!
I am testing on an 8GB nook.
I can verify that the cwm and twrp2 recovery images boot with the 3.0 kernel, however CM9 fails to boot, it hangs on a blank screen with the backlight on and eventually just reboots. I am not able to get it to connect via usb to print logcat so I don't think it is getting very far.
Do you happen to have any instructions for tapping into the serial on these devices to see what is going on?
Also, with the new cwm it will not mount the sdcard through the menu. If I open a shell within cwm recovery I can mount it fine, except it is read-only.
In case it is useful, here is a dmesg from cwm:
http://pastebin.com/0fkyuSwe
arcon2600 said:
Also, with the new cwm it will not mount the sdcard through the menu. If I open a shell within cwm recovery I can mount it fine, except it is read-only.
In case it is useful, here is a dmesg from cwm:
http://pastebin.com/0fkyuSwe
Click to expand...
Click to collapse
Ah, this is very interesting! It's similar behavior to twrp.. a mounting issue with sdcard... wonder if this means the kernel is somehow not letting it mount, or if the problem is with recovery.fstab...
New patch, there shouldn't be a gpio_wp pin assigned to begin with...
Also, this is tested on my 8GB, I don't have a 16GB to test with.
diff --git a/arch/arm/mach-omap2/board-nooktablet.c b/arch/arm/mach-omap2/board-nooktablet.c
index de38b5c..a10dd93 100644
--- a/arch/arm/mach-omap2/board-nooktablet.c
+++ b/arch/arm/mach-omap2/board-nooktablet.c
@@ -684,7 +684,7 @@ static struct omap2_hsmmc_info mmc[] = {
.mmc = 1,
.caps = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA | MMC_CAP_1_8V_DDR,
// .gpio_cd = -EINVAL,
- .gpio_wp = 4,
+ .gpio_wp = -EINVAL,
.nonremovable = false,
// .no_off_init = true,
#ifdef CONFIG_PM_RUNTIME
Build environment ready but cannot use repo command
HI! i would love to build a zip with the new kernel but i cannot use the repo command in the terminal in Linux Mint latest build. I have downloaded Android SDK and all the required build libraries and set up all the directories. i have the NTsparkkernel folder in the android directory. Could anyone offer some advice on how to apt-get (the REPO module) so I can build the zip. Thank you for your time. Bruce
about repo
C64assembly said:
HI! i would love to build a zip with the new kernel but i cannot use the repo command in the terminal in Linux Mint latest build. I have downloaded Android SDK and all the required build libraries and set up all the directories. i have the NTsparkkernel folder in the android directory. Could anyone offer some advice on how to apt-get (the REPO module) so I can build the zip. Thank you for your time. Bruce
Click to expand...
Click to collapse
The repo command is actually something you get from Google. It's not in the apt-get repositories.
To install the repo script:
mkdir -p ~/bin
curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
chmod a+x ~/bin/repo
The repo binary will be in ~/bin and you can add this to your path if you like.
Confirmed by chrmhoffmann and committed. Thank you!
Thank you for this guide. I've compiled stuff before, but built my first Android from source last night. Although the build from that time has random reboots (the nature of the beast).
I'll be building quite a bit I think
Damn see I'm just porting right now I wanna build from source but my PC isn't Linux friendly yet I'm waiting on a tb internal so I can set up and learn this but it just looks so complicated and idk why. I feel once I learn it probably be easy as hell. Thanks Fattire
__________________________________________________
Sent from my SPH-L700-GNEX-using Tapatalk 2
Danrarbc said:
Thank you for this guide. I've compiled stuff before, but built my first Android from source last night. Although the build from that time has random reboots (the nature of the beast).
I'll be building quite a bit I think
Click to expand...
Click to collapse
Hey congrats and welcome to the club!
Cannot Make the bacon...
Hey Fattire! Thank you for your guide. I was able to finally download the source for cm9 and add the 3.0 kernel repository. I have everything in one folder. I am new to Linux and had to add a Path command to get Repo Sync to work correctly. Once I got the Repos I ran into another problem trying to issue command cd ~/android/system/vendor/cm , then enter “./get-prebuilts”. The Make Bacon and or Croot <enter> brunch acclaim does nothing either. It seems I am missing somthing here. Maybe a different distro of Linux besides Mint would work better for me... getting close to building (i hope). Thanks!
I have to issue PATH=~/bin:$PATH every time I repo sync.
C64assembly said:
Hey Fattire! Thank you for your guide. I was able to finally download the source for cm9 and add the 3.0 kernel repository. I have everything in one folder. I am new to Linux and had to add a Path command to get Repo Sync to work correctly. Once I got the Repos I ran into another problem trying to issue command cd ~/android/system/vendor/cm , then enter “./get-prebuilts”. The Make Bacon and or Croot <enter> brunch acclaim does nothing either. It seems I am missing somthing here. Maybe a different distro of Linux besides Mint would work better for me... getting close to building (i hope). Thanks!
Click to expand...
Click to collapse
I use Ubuntu here I started with 10.04 LTS since it was the the build used and supported by Googles build instructions. Yous should still be able to do it though.
Did you initialize the build environment using ". build/envsetup.sh" at android/system (it looks like is the base of your source from your post)
Yes. Thank you for your advice KeithN. I am going to start from scratch. I might just put Ubuntu 10.04 on my comp tonight if I cannot get it to build properly.
I'm going for Ubuntu 12.04 command-line. If that doesn't go well, I'll go for 10.04 as well.
I built mine on 12.04 (Xubuntu, but that doesn't matter so much).
I added a debian sqeeze apt repository to get sun-java6-jdk, then used -f install when it complained because one of it's dependencies exists in Ubuntu but not that same version #. Commented out the repository after it installed so I don't get more debian packages on accident. For everything else I think it was just following the guide as-is.
C64assembly said:
I am new to Linux and had to add a Path command to get Repo Sync to work correctly.
Click to expand...
Click to collapse
Yes, I had recommended doing that. The PATH=$PATH:~/bin command will ensure that no matter what directory you type "repo", it'll know where to find the file.
C64assembly said:
Once I got the Repos I ran into another problem trying to issue command cd ~/android/system/vendor/cm , then enter “./get-prebuilts”. The Make Bacon and or Croot <enter> brunch acclaim does nothing either. It seems I am missing somthing here. Maybe a different distro of Linux besides Mint would work better for me... getting close to building (i hope). Thanks!
I have to issue PATH=~/bin:$PATH every time I repo sync.
Click to expand...
Click to collapse
Instead of entering it every time, you can add that PATH statement so that it's automatically invoked when you open a new Terminal window.
Just add the line to an "invisible" file (it's invisible because it starts with a period (.) and won't show up in a normal listing) called .bashrc in ~/.bashrc (the ~ is a shortcut for your home directory, or /home/youraccountname/). The hidden .bashrc file will probably exist already. Just add the statement to the end.
Keithn said:
Did you initialize the build environment using ". build/envsetup.sh" at android/system (it looks like is the base of your source from your post)
Click to expand...
Click to collapse
This is right. Try this:
$ cd ~/android/system
$ . build/envsetup.sh
(the $ represents the prompt and should not be typed. For the second command, it's literally a period followed by a space followed by build/envsetup.sh)
I am using the latest 12.04 ubuntu, fwiw.
I know this is for CM9, but any help would be appreciated (trying aokp). I had issues with the packaging of the .zip it looks like. I was able to build for my fascinate so I know the source will build. Any suggestions?
Output

Errors when try to compile anything....

Hello guys, i have a problem and really want to solve it because i am bored of errors and i want to compile roms/recovery and other
I have successfully set up build evinrovment and downloaded cm 12 sources.
I have downloaded from github and synced via terminal the kernel of device and the device files.
But, when i do the command . /build/envsetup.sh terminal not show me "you're building on linux".
Anyway, if i do: lunch aosp_e2303-userdebug, same as suggested in vendorsetup.sh file of the device folder, linux give me that:
Don't have a product spec for "xxx" (xxx is for indicate the codename of device)
But i have all folders in /cm12/device
How can i solve it? Please help me....
Did you download the vendor files? Iirc they are not on github, they are on Sony's developer website. They are called device binaries or something like this. The m4 aqua is not on the list, but if you download one of the latest for any device you'll have the files there
Thank you, later i will try with these files... Now my ubuntu (not know why) not boot.

[sparrow] AsteroidOS - Alpha 1.0

Asteroid OS Alpha 1.0​
Freedom & Privacy​
We believe that when it comes to wearable devices, users should have full control over their machines and data. AsteroidOS has been created from the ground-up with modularity and freedom in mind. For this reason, it is a free and open-source project.
Proven building blocks​
AsteroidOS is built upon a rock-solid base system. Qt 5.6 and QML are used for fast and easy app development. OpenEmbedded provides a full GNU/Linux distribution and libhybris allows easy porting to most Android and Android Wear watches.
Community-friendly​
Since its creation in 2015, AsteroidOS has been led by Florent Revest, but is open towards external contribution and collaboration. The project is still in active development and if you want to help, make sure to check the Get Involved page.
Click to expand...
Click to collapse
This is only for SPARROW, the larger ZenWatch 2.
The way AsteroidOS is implemented it is not meant to be flash to any partitions. It boots an isolated root file system from the sdcard partition using a custom fastboot image.
This is very powerful because it allows a person to switch between AsteroidOS and Android Wear with relative ease.
Status: The Asus Zenwatch 2 hasn’t been supported by AsteroidOS for very long and there is currently a bug with the touchscreen but overall it is good enough to test Asteroid.
The Bluetooth synchronization app for Android is named AsteroidOSSync and is available. Be careful that dory is the only port with Bluetooth capabilities and this app will be of no use with other watches yet.
Click to expand...
Click to collapse
Known Issues:
Touch Screen disabled after resuming from "sleep"
Bluetooth - needs to be implemented.
To Do:
How to get logs
Pictures
AsteroidOS documentation [url]https://asteroidos.org/wiki/documentation/[/URL]
Source:
meta-asteroid: [url]https://github.com/AsteroidOS/meta-asteroid[/URL]
meta-sparrow-hybris: [url]https://github.com/AsteroidOS/meta-sparrow-hybris[/URL]
AsteroidOSSync: [url]https://github.com/AsteroidOS/AsteroidOSSync[/URL]
My test repo: [url]https://gitlab.com/lrs/asteroidos-sparrow[/URL]
Build Changelog:
December 1, 2016:
/dev/.coldboot is created by systemd
btsync fixes
libaccounts fixes
mtp fixes
and much more
September 18, 2016:
Move msm-fb-refresher to meta-asteroid
machine.conf: Remove some MACHINE_FEATURES for more lightweight images
bcrm-patchram-plus: be less verbose
Make layers Machine specific to prevent conflicts with other meta-*-hybris
lipstick, sensorfs: move hybris dependencies to meta-*-hybris layers
lipstick, sensorfs: fix typo
Simplify patchram script
September 11, 2016:
sparrow.conf: provide proper SERIAL_CONSOLE for systemd
misc. meta-astroid patches
August 13, 2016:
sparrow.conf remove some useless config values
linux-sparrow: pack with mkboot
July 28, 2016: Initial Official Bring up
Sparrow Kernel Bring Up
Initialize Sparrow lollipop system
Configure Initd scripts to support Sparrow
Configure Sparrow device flags
Testing Changelogs:
September 10, 2016:
Provide proper serial console to prevent systemd timeouts
Old logs:
Nothing yet
Requirements:
Linux/OSX (Windows if drivers are available)
Unlocked Bootloader
ADB and Fastboot in path - recommended not required
Developer mode
ADB enabled
Not Needed:
DOES NOT NEED TWRP
A backup, though it is recommened
Before Installing (only if the bootloader is locked):
Install the Android developer tools: adb and fastboot, on your computer.
Enable ADB in the Android Wear settings under Developer options/Android Debugging. (Developer options appear after tapping the Build number in the About page several times)
Enter the following commands in a terminal:
adb reboot bootloader
fastboot oem unlock
Temporrary Install (Assumes your using Linux):
Go to the AsteroidOS website - link is below
Select Asus ZenWatch 2 (sparrow)
Download the official rootfs and zImage files
Download the AsteroidOSSync app from the bottom of the website
Install on your phone - Useless until bluetooth is implemented
Push the rootfs to the sdcard
adb push -p /home/user/Downloads/asteroid-image-sparrow.ext4 /sdcard/linux/asteroidos.ext4
Reboot to bootloader
adb reboot bootloader
fastboot boot the zImage
fastboot boot /home/user/Downloads/zImage-dtb-sparrow.fastboot
Download:
AsteroidOS Official Downloads
Archives/Mirrors:
To be updated
Old How To "Install":
Extract asteroidos-*-sparrow.tar.xz
cd to extracted files
adb push -p asteroid-image-sparrow.ext2 /sdcard/linux/rootfs.ext2
adb reboot bootloader
fastboot boot zImage-dtb-sparrow.fastboot
enjoy
Getting logs:
While there is no straight forward way to determine which log is needed because there are so many pieces that break regularly. Some common areas are debuging the launcher, and hw issues. I do not remember all the logging commands or what does what, so if you are obtaining logs you will need to run all the commands and capture the outputs.
adb access to Asteroid OS (windows, linux, mac)
adb shell
add strace - if needed
journalctl -u mce --no-pager (requires disabling 1000 user first) - used to debug launcher and other packages.
EGL_PLATFORM=hwcomposer strace lipstick --platform hwcomposer
EGL_PLATFORM=hwcomposer lipstick --platform hwcomposer
more to come
Q: Why doesn't x, y, z, feature work?
A: Probably, because it hasn't been implemented yet.
Q: I have x, y, z, issue.
A: Logs Please
Q: Can I use a custom kernel?
A: Only if you are willing to put forth the effort replace the kernel source in the build process yourself and make your own builds.
Q: I flashed *insert file here* and now it won't boot.
A: Sounds like a personal problem, since you didn't read the instructions properly. Seriously, you will probably need to restore some sort of backup.
Q: Will you port AsteroidOS to my watch?
A: No, but I can, somewhat, help you port it yourself. #asteroid on freenode or [url]https://asteroidos.org/irc-channel/[/URL] is a good place to get help.
Lrs121 said:
Q: Why do I need linux?
A: Because I don't know of any working Windows/OSX(macOS) fastboot drivers.
Q: Why doesn't x, y, z, feature work?
A: Probably, because it hasn't been implemented yet.
Q: Can I use a custom kernel?
A: Only if you are willing to put forth the effort replace the kernel source in the build process yourself and make your own builds.
Q: I flashed *insert file here* and now it won't boot.
A: Sounds like a personal problem, since you didn't read the instructions properly. Seriously, you will probably need to restore some sort of backup.
Q: Will you port AsteroidOS to my watch?
A: No, but I can, somewhat, help you port it yourself. #asteroid on freenode or https://asteroidos.org/irc-channel/ is a good place to get help.
Click to expand...
Click to collapse
after the bootanimation, the display is turning black and it seems to have a bootloop
---------- Post added at 12:09 ---------- Previous post was at 11:42 ----------
Lrs121 said:
Requirements:
Linux
p7zip
Unlocked Bootloader
ADB and Fastboot in path - recommended not required
Developer mode
ADB enabled
Not Needed:
DOES NOT NEED TWRP
A backup, though it is recommened
How To "Install":
Extract asteroidos-*-sparrow.7z
cd to extracted files
adb push -p asteroid-image-sparrow.ext2 /sdcard/linux/rootfs.ext2
adb reboot bootloader
fastboot boot zImage-dtb-sparrow.fastboot
enjoy
Download:
Google Drive Folder
Mirrors:
To come?
Click to expand...
Click to collapse
https://www.androidfilehost.com/?fid=24694152805485105
Mirror for your file
matze19999 said:
after the bootanimation, the display is turning black and it seems to have a bootloop
---------- Post added at 12:09 ---------- Previous post was at 11:42 ----------
https://www.androidfilehost.com/?fid=24694152805485105
Mirror for your file
Click to expand...
Click to collapse
Thanks for the mirror.
Have you tried pressing the power button after the boot animation. I can't remember if it defaults to the sleep state after boot. There is no "ambient" mode, the screen is either on or off.
It is also possible that, because it is a dev preview, this particular build is broken and may be so for a while.
Lrs121 said:
Thanks for the mirror.
Have you tried pressing the power button after the boot animation. I can't remember if it defaults to the sleep state after boot. There is no "ambient" mode, the screen is either on or off.
It is also possible that, because it is a dev preview, this particular build is broken and may be so for a while.
Click to expand...
Click to collapse
Will try it, thanks
---------- Post added at 19:59 ---------- Previous post was at 19:55 ----------
matze19999 said:
Will try it, thanks
Click to expand...
Click to collapse
no, doesnt work. I can access the watch via adb shell, but display is black all time..
matze19999 said:
Will try it, thanks
---------- Post added at 19:59 ---------- Previous post was at 19:55 ----------
no, doesnt work. I can access the watch via adb shell, but display is black all time..
Click to expand...
Click to collapse
Ah that's useful. If adb can be access then that means is not the boot image nor is it boot looping. Which narrows it down to the root file system and probably just an unstable build.
I thought you are the developer of this build?
matze19999 said:
I thought you are the developer of this build?
Click to expand...
Click to collapse
I maintain the device tree, beyond that I'm clueless. So if there happens to be bad code or something related to the system I'm clueless. That or I had a bad download during the build process. Anything could be the issue.
If I can remember the some of the logging commands I can have people get me logs from their watches and I can get help decoding what the issue is from Florent Revest or someone on IRC.
Lrs121 said:
I maintain the device tree, beyond that I'm clueless. So if there happens to be bad code or something related to the system I'm clueless. That or I had a bad download during the build process. Anything could be the issue.
If I can remember the some of the logging commands I can have people get me logs from their watches and I can get help decoding what the issue is from Florent Revest or someone on IRC.
Click to expand...
Click to collapse
If you tell me how I can take a log file, I would send it to you...
Update:
There is now a directory for test changes. Use this if you are brave, though in general it should be safe.
It can be found under the Google Drive link. Please read the README file. It will include important information related to the test builds
Edit:
the sync app has been uploaded. it is not signed so any future updates will probably require uninstalling the old app and installing the new
I get parsing Error while installing the apk file.
Android 6.0
Snapdragon 820 64Bit
http://hastebin.com/onuyifedet.md
Code:
sh-4.3# lipstick --platform hwcomposer
EGLFS: Screen Info
- Physical size: QSizeF(29, 29)
- Screen size: QSize(320, 320)
- Screen depth: 32
Segmentation fault
matze19999 said:
http://hastebin.com/onuyifedet.md
Click to expand...
Click to collapse
Make sure you have the EGL_COMPOSER=hwcomposer pre-appended or else it will segfault. I forgot strace had to be built and added to /bin. Also I believe the journalctl command is used to debug the launcher
matze19999 said:
I get parsing Error while installing the apk file.
Android 6.0
Snapdragon 820 64Bit
Click to expand...
Click to collapse
I'll look into the app issue
Lrs121 said:
Q: Why do I need linux?
A: Because I don't know of any working Windows/OSX(macOS) fastboot drivers.
Q: Why doesn't x, y, z, feature work?
A: Probably, because it hasn't been implemented yet.
Q: I have x, y, z, issue.
A: Logs Please
Q: Can I use a custom kernel?
A: Only if you are willing to put forth the effort replace the kernel source in the build process yourself and make your own builds.
Q: I flashed *insert file here* and now it won't boot.
A: Sounds like a personal problem, since you didn't read the instructions properly. Seriously, you will probably need to restore some sort of backup.
Q: Will you port AsteroidOS to my watch?
A: No, but I can, somewhat, help you port it yourself. #asteroid on freenode or https://asteroidos.org/irc-channel/ is a good place to get help.
Click to expand...
Click to collapse
fastboot and adb is working flawlessly on Mac OSX 10.11.6
Update:
Major updates to meta-asteroid (core of the os) - should probably fix launcher issues
Minor update to sparrow device tree
Will be up soon
Major update:
meta-asteroid has had many changes and some rewrites
sparrow device tree has been updated to support changes to meta-asteroid
rootfs is smaller after removing some optional features
bootloader
I was wondering if after executing these two adb commands
will the bootloader remain unlocked even after reboot and
a power down? (my phone has the MM 6.01 updated)
adb reboot bootloader
fastboot oem unlock
Thanks, have a great day everyone!
Misterjunky said:
I was wondering if after executing these two adb commands
will the bootloader remain unlocked even after reboot and
a power down? (my phone has the MM 6.01 updated)
adb reboot bootloader
fastboot oem unlock
Thanks, have a great day everyone!
Click to expand...
Click to collapse
Adb reboot bootloader just reboots the watch into fastboot mode.
Fastboot OEM unlock is what unlocks the watch, this is "permanent" as in it will stay that way until you run the command fastboot oem lock

Categories

Resources