[TOOL][ANDROID]Dark_Multitool-CyanogenMod building.kernel developMent.ADB tool..etc..

Search This thread

Dark Wraith

Senior Member
Feb 18, 2013
250
1,022
Bangalore
******* Hi all ********
I have developed this little tool containing a few utilities that should help anyone do a host of stuff like building Cyanogenmod..Compiling kernels..Play with ADB..GIt tools..etc​

DARK_Multitool1.0​

My tool is divided into five Modules(More to come in future if people find it useful)​

Module 1 : CyanogenMod Tools

- Installing the necessary libraries for compiling Cyanogenmod

- Initializing your repository and getting the Cyanogenmod source code

- Getting prebuilt apps/Device proprietary blobs

- Building Cyanogenmod for your device

Module 2 : ADB tools

- Creating logcat to debug your phone

- Installing apps via ADB

- Push/Pull stuff to/from your android device

Module 3 : Kernel tools

-Sony Kernel

Unpack Kernel Source

Create zImage of various devices(any Xperia)

Extract kernel.sin from ftf file

Unpack kernel.sin(to get zImage and ramdisk)

Make dt.img(For Xperia Z1 and Z ultra)

Make kernel.elf or boot.img depending on device

Test your kernel.elf/boot.img without flashing fully(Test run)

-Nexus Kernel

Getting the source code

Checkout the source code

Building zImage

-Samsung kernel

(Is under development as i develop for Xperia devices and not too familiar with samsung atm)

-Download toolchains

-Unpack boot.img to get zImage and Ramdisk

pearl script unpack or umkbootimg unpack

-Unpack or Repack ramdisk

-Build zImage for a generic kernel(Experimental)

-Take kernel log : Thanks @ricky310711 for the commit

Module 4 : Backup TA partition for Sony or EFS partition on samsung

-Backup TA partition for Sony(By dd Method only)

-Backup or restore efs partition for Samsung(tar or dd method)

Module 5 : GIT tools

-Download GIT package on your linux

-Change directory where you want to initialize git

-Git repository setup(New git setup/Changes to old git setup)

-Update your local and remote git repository

-Commit your additions/deletions

-Push/Pull to/from your github repository

-Automatic push commits to your repository(After git setup is done)

-Download any repository using GIT

Download link

Dark_multitool1.0(With Update 1)

Update 2 added...Will upload soon..You can download this and update via tool to the latest version

Its better to download from XDA DevDB. You can either use the link above or click on downloads on top of the thread to download

How to install??

Download the tar.gz file from the link above..Place it in your home directory and run the following command in your terminal

tar -xjvf dark_multitool1.0.gz

How to run it??

cd to the folder dark_multitool1.0 and type ./menu in your terminal and execute

This tool is only for any linux based distro(Ubuntu,fedora etc) atm and i dont know if it will work in cygwin(Tested on Cygwin by kevinrus123 : Some utilities are working)

You can install vitualbox and install ubuntu or any other linux based distro to use the tool if you are running windows


Credits

-xda and its wonderful devs for teaching me everything

-Doomlord for his exceptional threads and tutorials on Xperia devices

-Rickwyatt and Rekoil for Ta partition backup tutorial for Xperia

-Google.com

If i have forgotten anyone then please let me know


Donations

Running a 512 mb laptop with a semi crashed hard disk...:p..So any kinds of donations are welcome if you like the tool

>Just donate to my email ID : somik.chowhdury1926@gmail.com

>I am from India..so personal payment wont work

>Select buy me goods/services and it should work

>You can donate via tool as well.....:)


Sources

My github source : https://github.com/Smk1989/dark_multitool1.0

Mods : Please Move the thread if its in the inappropriate section

Updates

Latest update = Update 1

-I will keep the thread updated with the latest tool and you can also update the tool through the tool itself


FAQs in the second post

Changelogs in the third post

XDA:DevDB Information
[TOOL][ANDROID]Dark_Multitool-CyanogenMod building.kernel developMent.ADB tool..etc.., a Tool/Utility for the Android General

Contributors
Dark Wraith

Version Information
Status: Alpha

Created 2013-12-11
Last Updated 2014-01-03
 
Last edited:

Dark Wraith

Senior Member
Feb 18, 2013
250
1,022
Bangalore
FAQs

>Why is it giving errors while compiling zImage for Xperia devices????

Answer : You need to add the various makefile and defconfig fixes for the toolchain to work properly

Please refer to this excellent thread by doomlord for various fixes

http://xdaforums.com/showthread.php?t=2447310

>TA partition and EFS partition backup doesn't work properly

Answer : Please remember to specify the memory block correctly. If you still get an error then please tell me the error so that i can check if the error is from the tool's end

>How to add a toolchain????

Answer : Add it under android_toolchains folder in your home directory

Open the tool and navigate to toolchain_selector script under scripts folder

Add the toolchain name and the correct path as given there in the following format

toolchain_name[the number after the last toolchain name]=
toolchain_path[the number after the last toolchain path] =

>How to clean your kernel or Cyanogenmod work directory?

Answer ; Navigate to the kernel or Cyanogenmod work directory and type in Terminal : make clean

I will incorporate this in the next release

>Download toolchains or update tool doesnt work

Answer : make sure you have the git package installed. You can install from the tool itself under GIT tools

>Libraries missing while compiling kernel or cyanogenmod build errors on 64 bit machine??

Answer : Download libraries from cyanogenmod import libraries option( I will incorporate this in the next release) and for 64 bit compile error type : BUILD_HOST_32bit=1(Fixed and added in update 1)



Bugs and Suggestions

Please let me know
 
Last edited:

Dark Wraith

Senior Member
Feb 18, 2013
250
1,022
Bangalore
Changelogs

Update 2

>Added Xperia J in the build list of the tool

>Added Take kernel log in kernel options..Thanks @ricky310711 for the commit

>Added dry run option for Sony
-Lets you test your kernel.elf/boot.img(In case the kernel doesnt boot up..just restart phone and try again)

Update 1

>Cm-11.0 branch added while initializing repo(thanks mithun shanoj for the commit)

>Added umkbootimg unpack method

>Added import libraries option

>Added BUILD_HOST_32BIT=1 for 64 bit machines
 
Last edited:

rharshit

Senior Member
Jul 17, 2012
700
1,113
Mumbai
I had always been waiting for a tool like this one. Great job :good:

---------- Post added at 04:51 PM ---------- Previous post was at 04:50 PM ----------

Maybe I am blind but where do I get the download?

Dude where is the download link???

To download, sync this repository
https://github.com/Smk1989/dark_multitool1.0
Thats it. navigate to the local repository and run run menu from terminal
 

Dark Wraith

Senior Member
Feb 18, 2013
250
1,022
Bangalore
Maybe I am blind but I'll alwhere do I get the download?

I had always been waiting for a tool like this one. Great job :good:

---------- Post added at 04:51 PM ---------- Previous post was at 04:50 PM ----------





To download, sync this repository
https://github.com/Smk1989/dark_multitool1.0
Thats it. navigate to the local repository and run run menu from terminal

Dude where is the download link???

Guys see the download tab on top of the thread.. I'll also add a download link if u want

Edit: Added a download link to the post
 
Last edited:
  • Like
Reactions: Jack'O

Daniel_GT

Senior Member
Jun 25, 2012
258
251
Huntingdon
I'm sorry @Dark Wraith, but is this not another nail in the coffin that was a developer's community? I'm not cheapening the hard work you've obviously put in creating this tool, it's an achievement for sure but to what end? I know this toolkit argument has been had many times before (and someone has to say it first here), but how does this actually help anyone learn the basics? Xda is full of people who just want the results without the work and surely this only encourages more of the same?

Sent from my Nexus 4 using Tapatalk
 

Dark Wraith

Senior Member
Feb 18, 2013
250
1,022
Bangalore
I'm sorry @Dark Wraith, but is this not another nail in the coffin that was a developer's community? I'm not cheapening the hard work you've obviously put in creating this tool, it's an achievement for sure but to what end? I know this toolkit argument has been had many times before (and someone has to say it first here), but how does this actually help anyone learn the basics? Xda is full of people who just want the results without the work and surely this only encourages more of the same?

Sent from my Nexus 4 using Tapatalk

No need to apologize.You have every right to criticize. In my defense i would say that when i wanted to make a kernel..i used championswimmer's kernel tools..i used dxdia's kitchen to work on Roms but that doesnt mean i took a shortcut..i used a toolkit out there to get started. I still had to learn stuff to make changes to a kernel/Rom and i was intrigued by the idea of how the tool was working. And while studying Dxdia's sources i actually came to know about a lot more than i would have done myself. many people want to know how to build a kernel and then they get discouraged if they feel its tough..yes..there will be people who will use it as a shortcut..but there will also be people who would start kernel building because a tool is out there to help them or atleast get them started.

p.s.Sorry for no punctuation marks..comma doesnt work on my laptop...:silly:
 
  • Like
Reactions: BajoPrimate

Ricky Divjakovski

Recognized Developer / Inactive RC
Feb 4, 2013
5,291
7,688
28
Sydney
No need to apologize.You have every right to criticize. In my defense i would say that when i wanted to make a kernel..i used championswimmer's kernel tools..
i used dxdia's kitchen to work on Roms but that doesnt mean i took a shortcut..i used a toolkit out there to get started. I still had to learn stuff to make changes to a kernel/Rom and i was intrigued by the idea of how the tool was working. And while studying Dxdia's sources i actually came to know about a lot more than i would have done myself. many people want to know how to build a kernel and then they get discouraged if they feel its tough..yes..there will be people who will use it as a shortcut..but there will also be people who would start kernel building because a tool is out there to help them or atleast get them started.

p.s.Sorry for no punctuation marks..comma doesnt work on my laptop...:silly:

actually i learnt alot by viewing the content of tools, viewing it in raw format and learning how things work.
it encouaged me to find a way to make a kitchen for windows users and noobs.
so i guess im the perfect example
 
I'm sorry @Dark Wraith, but is this not another nail in the coffin that was a developer's community? I'm not cheapening the hard work you've obviously put in creating this tool, it's an achievement for sure but to what end? I know this toolkit argument has been had many times before (and someone has to say it first here), but how does this actually help anyone learn the basics? Xda is full of people who just want the results without the work and surely this only encourages more of the same?
You have every right to express your opinion, but that being said, your post makes you sound like a real elitist, one who's upset that his elevated place in the exclusive club is about to be disrupted by those "filthy ruffians" who didn't earn their developer's chops by clawing their way up from the gutter. In my opinion, anything that brings in more developers to the community is a good thing. Sure, there are going to be plenty who use this tool as a shortcut to doing any hard work, but there are going to be those who use it as a starting point to further their knowledge of ROM building and modifying. Everyone needs a place to start, after all, but implying they'll never be "one of the boys" without beating their head bloody against a desk isn't at all helpful. Dark Wraith should be commended for creating a tool that will help bring new blood into the community.
 
  • Like
Reactions: goingcrazy614

Daniel_GT

Senior Member
Jun 25, 2012
258
251
Huntingdon
No need to apologize.You have every right to criticize. In my defense i would say that when i wanted to make a kernel..i used championswimmer's kernel tools..i used dxdia's kitchen to work on Roms but that doesnt mean i took a shortcut..i used a toolkit out there to get started. I still had to learn stuff to make changes to a kernel/Rom and i was intrigued by the idea of how the tool was working. And while studying Dxdia's sources i actually came to know about a lot more than i would have done myself. many people want to know how to build a kernel and then they get discouraged if they feel its tough..yes..there will be people who will use it as a shortcut..but there will also be people who would start kernel building because a tool is out there to help them or atleast get them started.

p.s.Sorry for no punctuation marks..comma doesnt work on my laptop...:silly:

That's one side of the argument, if you re-read the first several pages of @championswimmer's kernel kitchen thread you'll be reminded just how strongly some people feel about this... I'm not in either camp by the way.

My point is that xda is not what it was, if we continue to post toolkits here it will only dilute the pool of serious development further. You just have to dive into an official CM Dev thread (N4 is a good example) at any point and browse, say, 25 pages to see exactly what I'm talking about...

For every one person that takes your tool, pulls it to bits to figure out how it works and goes on to do their own original work and contribute back, I feel sure that there'd be many more that just go ahead without any real understanding of what they're doing, expecting you and I to bail them out when it goes wrong... I hope that's overly cynical but, ironically, from evidence I don't think that is.

Your toolkit might have a place, and again all credit to you for putting it together. Personally I believe it's more hand holding (even more so than ROM or kernel kitchen) which ultimately helps no one.

Sent from my Nexus 4 using Tapatalk
 

Dark Wraith

Senior Member
Feb 18, 2013
250
1,022
Bangalore
hey dude., i have a question

* (my device doesn't support CM) can i use this tool for building CM for my device?

Thanksssss

no bro..its not about support. Cm11 can run on ur device and you can build for it provided that you have the kernel source of your device available..For officially supported devices you will have the kernel source in cyanogenmod repository. For a device with no kernel source you cannot build cyanogenmod. What you are talking about is cyanogenmod porting to an unsupported device. Take a look around in cyanogenmod's wiki. I might add porting options in the tool in future but atm you can build only for offcially supported devices
 

Marsealdelo

Member
Dec 13, 2013
23
3
Jakarta
no bro..its not about support. Cm11 can run on ur device and you can build for it provided that you have the kernel source of your device available..For officially supported devices you will have the kernel source in cyanogenmod repository. For a device with no kernel source you cannot build cyanogenmod. What you are talking about is cyanogenmod porting to an unsupported device. Take a look around in cyanogenmod's wiki. I might add porting options in the tool in future but atm you can build only for offcially supported devices

Thanks, that's very helps me
 

Top Liked Posts

  • There are no posts matching your filters.
  • 50
    ******* Hi all ********
    I have developed this little tool containing a few utilities that should help anyone do a host of stuff like building Cyanogenmod..Compiling kernels..Play with ADB..GIt tools..etc​

    DARK_Multitool1.0​

    My tool is divided into five Modules(More to come in future if people find it useful)​

    Module 1 : CyanogenMod Tools

    - Installing the necessary libraries for compiling Cyanogenmod

    - Initializing your repository and getting the Cyanogenmod source code

    - Getting prebuilt apps/Device proprietary blobs

    - Building Cyanogenmod for your device

    Module 2 : ADB tools

    - Creating logcat to debug your phone

    - Installing apps via ADB

    - Push/Pull stuff to/from your android device

    Module 3 : Kernel tools

    -Sony Kernel

    Unpack Kernel Source

    Create zImage of various devices(any Xperia)

    Extract kernel.sin from ftf file

    Unpack kernel.sin(to get zImage and ramdisk)

    Make dt.img(For Xperia Z1 and Z ultra)

    Make kernel.elf or boot.img depending on device

    Test your kernel.elf/boot.img without flashing fully(Test run)

    -Nexus Kernel

    Getting the source code

    Checkout the source code

    Building zImage

    -Samsung kernel

    (Is under development as i develop for Xperia devices and not too familiar with samsung atm)

    -Download toolchains

    -Unpack boot.img to get zImage and Ramdisk

    pearl script unpack or umkbootimg unpack

    -Unpack or Repack ramdisk

    -Build zImage for a generic kernel(Experimental)

    -Take kernel log : Thanks @ricky310711 for the commit

    Module 4 : Backup TA partition for Sony or EFS partition on samsung

    -Backup TA partition for Sony(By dd Method only)

    -Backup or restore efs partition for Samsung(tar or dd method)

    Module 5 : GIT tools

    -Download GIT package on your linux

    -Change directory where you want to initialize git

    -Git repository setup(New git setup/Changes to old git setup)

    -Update your local and remote git repository

    -Commit your additions/deletions

    -Push/Pull to/from your github repository

    -Automatic push commits to your repository(After git setup is done)

    -Download any repository using GIT

    Download link

    Dark_multitool1.0(With Update 1)

    Update 2 added...Will upload soon..You can download this and update via tool to the latest version

    Its better to download from XDA DevDB. You can either use the link above or click on downloads on top of the thread to download

    How to install??

    Download the tar.gz file from the link above..Place it in your home directory and run the following command in your terminal

    tar -xjvf dark_multitool1.0.gz

    How to run it??

    cd to the folder dark_multitool1.0 and type ./menu in your terminal and execute

    This tool is only for any linux based distro(Ubuntu,fedora etc) atm and i dont know if it will work in cygwin(Tested on Cygwin by kevinrus123 : Some utilities are working)

    You can install vitualbox and install ubuntu or any other linux based distro to use the tool if you are running windows


    Credits

    -xda and its wonderful devs for teaching me everything

    -Doomlord for his exceptional threads and tutorials on Xperia devices

    -Rickwyatt and Rekoil for Ta partition backup tutorial for Xperia

    -Google.com

    If i have forgotten anyone then please let me know


    Donations

    Running a 512 mb laptop with a semi crashed hard disk...:p..So any kinds of donations are welcome if you like the tool

    >Just donate to my email ID : somik.chowhdury1926@gmail.com

    >I am from India..so personal payment wont work

    >Select buy me goods/services and it should work

    >You can donate via tool as well.....:)


    Sources

    My github source : https://github.com/Smk1989/dark_multitool1.0

    Mods : Please Move the thread if its in the inappropriate section

    Updates

    Latest update = Update 1

    -I will keep the thread updated with the latest tool and you can also update the tool through the tool itself


    FAQs in the second post

    Changelogs in the third post

    XDA:DevDB Information
    [TOOL][ANDROID]Dark_Multitool-CyanogenMod building.kernel developMent.ADB tool..etc.., a Tool/Utility for the Android General

    Contributors
    Dark Wraith

    Version Information
    Status: Alpha

    Created 2013-12-11
    Last Updated 2014-01-03
    10
    FAQs

    >Why is it giving errors while compiling zImage for Xperia devices????

    Answer : You need to add the various makefile and defconfig fixes for the toolchain to work properly

    Please refer to this excellent thread by doomlord for various fixes

    http://xdaforums.com/showthread.php?t=2447310

    >TA partition and EFS partition backup doesn't work properly

    Answer : Please remember to specify the memory block correctly. If you still get an error then please tell me the error so that i can check if the error is from the tool's end

    >How to add a toolchain????

    Answer : Add it under android_toolchains folder in your home directory

    Open the tool and navigate to toolchain_selector script under scripts folder

    Add the toolchain name and the correct path as given there in the following format

    toolchain_name[the number after the last toolchain name]=
    toolchain_path[the number after the last toolchain path] =

    >How to clean your kernel or Cyanogenmod work directory?

    Answer ; Navigate to the kernel or Cyanogenmod work directory and type in Terminal : make clean

    I will incorporate this in the next release

    >Download toolchains or update tool doesnt work

    Answer : make sure you have the git package installed. You can install from the tool itself under GIT tools

    >Libraries missing while compiling kernel or cyanogenmod build errors on 64 bit machine??

    Answer : Download libraries from cyanogenmod import libraries option( I will incorporate this in the next release) and for 64 bit compile error type : BUILD_HOST_32bit=1(Fixed and added in update 1)



    Bugs and Suggestions

    Please let me know
    4
    Changelogs

    Update 2

    >Added Xperia J in the build list of the tool

    >Added Take kernel log in kernel options..Thanks @ricky310711 for the commit

    >Added dry run option for Sony
    -Lets you test your kernel.elf/boot.img(In case the kernel doesnt boot up..just restart phone and try again)

    Update 1

    >Cm-11.0 branch added while initializing repo(thanks mithun shanoj for the commit)

    >Added umkbootimg unpack method

    >Added import libraries option

    >Added BUILD_HOST_32BIT=1 for 64 bit machines
    3
    No one tried??

    Sent from my Micromax A110 using xda app-developers app