Skip to content

RenouveauOS/android

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Renouveau

Getting started

To get started with building from Renouveau sources, you'll need to get familiar with establishing a build environment.

How to build Renouveau for your device

Build Environment

  • Tested and working on Linux Mint 19.1 (64-bit), but any distribution based on Ubuntu should suffice
  • Any form of terminal access
  • Decent hardware (minimum of at least a quad-core CPU and 16 GB of RAM)
  • A storage unit of any kind
    • We recommend utilizing SSDs as mechanical HDDs slow down the build proccess drastically and the minimum storage size is 70GB
    • Having more space will be useful with CCache
  • Required packages should have been installed

Required Packages

Simply copy and paste this in a terminal window:

[Hint: This command updates your package lists and installs the required version of Java]

 $ sudo apt-get update && sudo apt-get install openjdk-8-jdk

Let that install and then proceed.

More copy and paste:

[Hint: Running this command updates your package lists and installs the other required packages to build Android]

 $ sudo apt-get update && sudo apt-get install bc git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.8-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev openjdk-8-jre openjdk-8-jdk pngcrush schedtool libxml2 libxml2-utils xsltproc lzop libc6-dev schedtool g++-multilib lib32z1-dev lib32ncurses5-dev lib32readline-gplv2-dev gcc-multilib maven tmux screen w3m ncftp

Getting the source

  • Making required directories
  • Obtaining the repo binary
  • Adding repo binary to your path
  • Giving the repo binary proper permissions
  • Initializing an empty repo
  • Syncing the repo

Alright, so now we’re getting there. I have outlined the basics of what we’re about to do and broke them down as I know them. This is all pretty much going to be copy/paste so it’ll be fairly difficult to screw this up :)

Make the directory for the repo binary if it doesn't already exist
  $ mkdir ~/bin
Add the directory for the repo binary to your PATH
  $ PATH=~/bin:$PATH
Download the repo binary and place it in the proper directory
  $ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
Give the repo binary the proper permissions
  $ chmod a+x ~/bin/repo
Create the directory for where the Renouveau repo will be stored and synced
  $ mkdir ~/Renouveau
  $ cd ~/Renouveau
Initialize the Renouveau repo and download the manifest
  $  repo init -u https://github.com/RenouveauOS/android.git -b renouveau-9.0
Sync the source code

[Hint: This might take a long time as the source is ~26GB]

  $  repo sync --force-sync --no-clone-bundle --no-tags

Building Renouveau

  • Preparing required binaries and device drivers
  • Setting up CCache (optional)
  • Building Renouveau

Congratulations on the succesfull build initialization! Now, we shall go ahead and prepare to build for your device!

Preparing Renouveau for devices
Setting Up CCache
  • CCache is a method of utilizing a specified amount of storage space to speed up building. It can be referred to as the same caching your Android device does to speed up application and system boot times. In this case, CCache will help build Renouveau faster than standard build times (it's able to cut-down ~50% of the time it normally takes to build).

  • To set up CCache, run the following commands:

      $ echo "export USE_CCACHE=1" >> ~/.bashrc
      
      $ source ~/.bashrc
    
      $ ~/Renouveau/prebuilts/misc/linux-x86/ccache/ccache -M 50G
    

    -M 50G The number before the letter G at the end specifies the amount of space CCache can use in your storage unit. As such, ensure that not too much space is specified as this might result in unexpected errors. Although, with the more storage you have, its recommended to have more CCache as it will increase the build times. Most efficient build systems are able to utilize CCache to about 120G or more.

To build Renouveau
  $ cd ~/Renouveau
  $ . build/envsetup.sh && brunch <device>
Obtaining the install ZIP created from the build process

To get the ZIP file that has been built, navigate to the following directory and find the ZIP file:

  $ cd ~/Renouveau/out/target/product/<devicename>/

If you found it, then congratulations! If you didn't, try retrying the build process but before doing so, ensure you do the following to make sure your next build is clean;

  $ cd ~/Renouveau
  $ make clean
  $ repo sync --force-sync --no-clone-bundle --no-tags

After doing so, redo everything stated from the Building Section.

For those who successfully built Renouveau

Well, congratulations on your victory! Now, you have a .zip file that is flashable to your device! Share it to the internet as you wish but be sure to contribute back and also give credit to the LineageOS, Resurrection Remix, and Renouveau teams and their contributors! Also keep in mind that if an official build exists for a device, no unofficial builds should be released publicly. Do come and build Renouveau another time as the source code is routinely being improved upon. If you wish to contibute, feel free to make a pull request to the proper repository! See you again builder!

Note: If you decide to create a thread on XDA, please limit the thread to only one per device. More than one thread will not be allowed per device as it creates confusion amongst users and makes it hard for us to track bug reports.

Support

For help and support with Renouveau (or to join others in feedback and community), visit the Renouveau Discord server!

Licenses

Please read and adhere to all licenses found in each repository for the Renouveau project. Failure to do so can lead to legal action being taken against you.

Donations

All donations are highly appreciated. They will help pay for server costs to spit out builds for your devices once a stable monthly flow of donations is received, and even help point my attention to Renouveau to fix issues and implement newer and better features!

Donate