FORUMS
Remove All Ads from XDA
Honor 7x
Win an Honor 7X!

[SOURCES] [DevXchange] Android Sources Highly Compressed & Developer Exchange

1,264 posts
Thanks Meter: 4,462
 
Post Reply Email Thread


Project abandoned, please do not submit pull requests.

Disclaimer: The wordings in the thread are meant to be noob-friendly and for newer developers that have just dipped their feet into Android platform development. Hence, they won't be accurate in many places for the 'geek'. Also, we had started distributing shallow cloned sources with a depth of '1' instead of non-repo sources (as they are more or less of the same size). So this should not be a problem for the ROM developers in our opinion as they can be fetched by syncing.

Hello!
We, Android Developers, have many problems. One such of them is "SLOW INTERNET" or even "LOW BANDWIDTH".
Due to these problems, we are unable to sync the BIG chunk of Android source codes from the respective repositories.
Hence, most of the new and learning developers just fail at the first step: Downloading The Source Code!
So, here I present you with a thread, which contains links to download "HIGHLY COMPRESSED", untouched (unmodified) and full Android source codes of many different ROMs!
The links to the highly compressed source codes you will find here are not uploaded by me alone. There are many other people that have contributed.
Some of them are: @DigiGoon @MSF Jarvis and @regalstreak (me)


So, Let's begin!
First things first.
You should know what a repo is.
I quote XDA:

Quote:

What is Repo?
Repo is a repository management tool built on top of Git.

It’s first purpose is to downloads files from multiple git repositories into your local working directory (aka the source tree). That means that you won’t have to manually download or fetch the latest changes from about 300+ projects (depending on if you are downloading AOSP, CM or AOKP for example), repo will do it for you.

The second purpose of repo is to made it easy to submit your code contributions for review to a Gerrit server.

When you download a source code with repo, you get a folder named .repo in your working directory. It contains all the compressed .git format files that need to be in the source code.
After the source has been downloaded, the repo tool decompresses the files from the ".repo" folder and you get the source code in the working directory itself!
This project will give you a highly compressed shallow cloned and full tarball of the sources (for those who can't download it via repo or have limited speeds on github/aosp servers). More information is given in the FAQ section. It is must-read. Without it, you won't understand how to use these.

Note: You cannot go from CM12 source to CM12.1 or going CM12 to CM13 as these are different branches on the CyanogenMod repo. No way doing that. You will have to manually download the new source.


So, We are done with the information!
Now, The interesting part. The sources!

Note: All links on this thread are tap friendly! They open in new tabs

I have divided this into several sections for ease of reading and getting the sources. They are:
The Following 125 Users Say Thank You to regalstreak For This Useful Post: [ View ] Gift regalstreak Ad-Free
 
 
22nd October 2015, 08:28 PM |#2  
regalstreak's Avatar
OP Recognized Contributor
Flag Mumbai
Thanks Meter: 4,462
 
Donate to Me
More
Database
As you know that we have been using the Skadoosh script recently, which is made by me (@regalstreak), @MSF Jarvis and @DigiGoon, all our sources are being uploaded to one common folder on AndroidFileHost.
This is an automated process in which you submit a Pull Request on the Skadoosh's git and the required source will be available to you soon after it.
More information regarding the process is on Post 3 by @MSF Jarvis
The link to the folder where all the sources are uploaded is Here.
The old upload afh folder can be found Here
If you have any other issues regarding the sources, please mention us here. We will be happy to help you. Please read the FAQ before doing stuff.
The Following 67 Users Say Thank You to regalstreak For This Useful Post: [ View ] Gift regalstreak Ad-Free
22nd October 2015, 08:28 PM |#3  
MSF Jarvis's Avatar
Recognized Contributor
Flag Ghaziabad
Thanks Meter: 3,850
 
Donate to Me
More
Database
Originally, we have had a "Ask on the thread, we'll try" approach to how things work. This is changing now.
While this worked good enough for those asking for the sources, the people who did the actual work were overburdened. Frankly, the process was pretty sketchy. I personally faced the burden part when there were about 6 or 7 ROMs to do! I actually forgot about one guy who made the request earliest, which kinda sucked.
Going forward, this won't happen now. We have a script up on @regalstreak's Github. Updates to it are synced to my server and executed.


The process for requesting sources is now something like this :
  • Go to the Github repo and edit the compress.bash script
  • Start a Pull Request
  • Wait for it to be merged
  • Wait for even more time to let it upload and one of us to send the confirmation here.
  • Do whatever the heck you want with those sources!


NOTE: The compress.bash looks like this in a classic example of how to do it WRONG.
Code:
name=AOSP
manifest=https://android.googlesource.com/platform/manifest -b android-4.0.1_r1
branch=android-6.0.1_r55

./skadoo.sh $name $manifest $branch
This was after This PR was merged and is being shown as the perfect way to mess it up. You are ALREADY passing the branch parameter separately, so adding '-b android-4.0.1_r1' looks like a shining example of blind copy paste. Don't do that. Change the name, manifest and branch with some general application of the faculty of common sense.

Interested users are also suggested to read this strongly worded post.
The Following 36 Users Say Thank You to MSF Jarvis For This Useful Post: [ View ] Gift MSF Jarvis Ad-Free
22nd October 2015, 08:29 PM |#4  
regalstreak's Avatar
OP Recognized Contributor
Flag Mumbai
Thanks Meter: 4,462
 
Donate to Me
More
Question
FAQ

Q1> How should I extract the source?
Ans:

First you will have to join the archive parts into one big archive. Download all the parts. Then put all parts in one folder. Verify md5sum by
Code:
md5sum -c *.md5sum
Then do
Code:
cat *.tar.* > yourbigarchivename.tar.xz
Just quote me if you don't understand this. I'll help you out.

If your archive is in .tar.xz format, do this:
  • Open Terminal
  • Now cd to the drive where you have downloaded the sources
  • Extract it
    Code:
    tar -xvJf (file name here).tar.xz

If your archive is in .tar.gz format, so do this:
  • Open Terminal
  • Now cd to the drive where you have downloaded the sources
  • Extract it
    Code:
    tar -xvzf (file name here).tar.gz

Now you have extracted the source.

Q2> I am not able to extract the source. What should I do?
Ans: You cannot extract source with GUI on the Archive Extractor. So, try the method I mentioned.

Q3> Is the size of all files 2GB? I saw the size 2GB on AndroidFileHost!
Ans: The mentioned size on AFH is incorrect. AndroidFileHost has some problems while showing file sizes for files above 2GB. You need to click on Download once to view the correct size!

Q4> How do you compress them? I mean, I need the command so that I can help you out!
Ans: Our script is open source. You can view it here: https://github.com/regalstreak/skadoosh

Q5> What are shallow and full sources?
Ans: Shallow sources are the ones that just have the latest or the HEAD commits in each subproject. You can read more about it from here. Full are the ones that have all the bits from the starting of the subprojects and hence the archives have a large file size.

Q6> How do I use these sources?
Ans: First, you will have to extract them as mentioned above. You should get a .repo folder. In the same folder itself (not inside .repo but the folder that contains .repo), you will have to update the local work tree. You can update it by using
Code:
repo sync -c -f --force-sync --no-clone-bundle --no-tags -j8
This command will help you to use minimum data/internet as it does not download extra tags or clone bundles.
If you do not want to use data at all, you can use this:
Code:
repo sync -c -f --force-sync --no-clone-bundle --no-tags -j8 --local-only
This will not fetch anything from the internet. Happy compiling!

Please press the "Thanks Button" if we helped you and quote us if you have a problem!
The Following 51 Users Say Thank You to regalstreak For This Useful Post: [ View ] Gift regalstreak Ad-Free
22nd October 2015, 08:29 PM |#5  
regalstreak's Avatar
OP Recognized Contributor
Flag Mumbai
Thanks Meter: 4,462
 
Donate to Me
More
Announcements and General Stuff
Automation also has been made opensource now. You can view the source of the automation stuff at https://github.com/regalstreak/skadhook.git

All status of the sources is here: https://github.com/regalstreak/skado...pr+is%3Aclosed
The Following 28 Users Say Thank You to regalstreak For This Useful Post: [ View ] Gift regalstreak Ad-Free
23rd October 2015, 07:21 PM |#6  
regalstreak's Avatar
OP Recognized Contributor
Flag Mumbai
Thanks Meter: 4,462
 
Donate to Me
More
Reserved
Reserved for stuff.
The Following 52 Users Say Thank You to regalstreak For This Useful Post: [ View ] Gift regalstreak Ad-Free
24th October 2015, 01:18 PM |#8  
MSF Jarvis's Avatar
Recognized Contributor
Flag Ghaziabad
Thanks Meter: 3,850
 
Donate to Me
More
What if it's in tar.xz @regalstreak, most people including @DigiGoon use it for its extreme compression.

Sent from a Cool Phone stuck with crappy KingUser
The Following User Says Thank You to MSF Jarvis For This Useful Post: [ View ] Gift MSF Jarvis Ad-Free
25th October 2015, 05:35 PM |#9  
regalstreak's Avatar
OP Recognized Contributor
Flag Mumbai
Thanks Meter: 4,462
 
Donate to Me
More
Replies.. Replies only!
Quote:
Originally Posted by FireLord

Thanks mate.....

No problemo bruh!

Quote:
Originally Posted by MSF Jarvis

What if it's in tar.xz @regalstreak, most people including @DigiGoon use it for its extreme compression.

Sent from a Cool Phone stuck with crappy KingUser

I have mentioned the steps in the FAQ! Please see it
The Following User Says Thank You to regalstreak For This Useful Post: [ View ] Gift regalstreak Ad-Free
25th October 2015, 06:21 PM |#10  
Junior Member
Flag London
Thanks Meter: 7
 
More
Wow amazing work!
25th October 2015, 06:41 PM |#11  
regalstreak's Avatar
OP Recognized Contributor
Flag Mumbai
Thanks Meter: 4,462
 
Donate to Me
More
Quote:
Originally Posted by AsadP2013

Wow amazing work!

Thanks!
Hope it helps!
The Following User Says Thank You to regalstreak For This Useful Post: [ View ] Gift regalstreak Ad-Free
Post Reply Subscribe to Thread

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes