Giter VIP home page Giter VIP logo

manifest's Introduction

xosp_generic_banner_git

Getting Started

In order to build XOSP for your device, first of all you need to get familiar with Git and Repo.

To initialize your local repository using the XOSP trees, use a command like this:

repo init -u git://github.com/XOSP-Project/platform_manifest.git -b xosp-n-rebase

Then to sync up:

repo sync -c -f -j<number_of_threads> --force-sync --no-clone-bundle --no-tags

Contributing to XOSP

We love contributions from the community so if you want to submit patches you can do it by pushing on our gerrit: review.xosp.org:8081

  • First make sure that your Name and Email are named globally on Git:

    $ git config --global user.name "YourName"
    $ git config --global user.email "YourEmail"
    
  • Create a SSH Key and add it to your Gerrit Profile, otherwise you will not be able to push your changes, to do so just follow the steps foundable here: https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/

  • Now, select the repo/s you're interested to contribute to from here: http://review.xosp.org:8081/#/admin/projects/

  • Clone it with the SSH method like here for example:

    $ git clone ssh://[email protected]:29418/your_repo
    
  • Make your changes and commit as usual,when pusing do like this:

    $ git push origin HEAD:refs/for/xosp-n-rebase
    
  • Perfect! you now uploaded your very first patch on Gerrit. Please allow time for it to be verified, depending by the change it could take from very less to very much time

  • If you want to assign a topic to your commit just push the commit as follow:

    $ git clone ssh://[email protected]:29418/your_repo -o topic=your_topic
    
  • If you made mistakes or new changes were made to the current commit just use amend:

    $ git add -A
    $ git commit -s --amend --no-edit
    

If you're on Linux you can use directly the command git-review to push instead of git push which is much more automated

Building XOSP for your device

Build Environment

  • Tested and Working on any version of Ubuntu - 15.10 & 16.04 16.10 (64-bit)
  • Any other distribution based of the Ubuntu Distro such as Lubuntu, Xubuntu and etc.
  • A Terminal window
  • A Good specs of hardware like 8 GB of RAM and an Intel I3 dual core (Minimum)
  • A storage unit of any kind (minimum 100 GB). It would be better to use SSD because is more fast during the compliation process
  • Some dependencies that should be installed

Building XOSP ROM for your device

  • Preparing Required Binaries and Device Drivers
  • Set CCache for Faster Building (Optional)
  • Build phase

Set CCache

  $ export USE_CCACHE=1
  $ prebuilts/misc/linux-x86/ccache/ccache -M 150G

Congratulations,the sources are initialized!

Preparing XOSP for your device

To know how to include propietary vendors files from your device, follow this guide which explains everything you need to know: (http://forum.xda-developers.com/showpost.php?p=54118631&postcount=4)

Once you finished setting up your device tree, you will need to add this line into the xosp.mk of your device:

  $(call inherit-product, vendor/xosp/config/xosp.mk)

If you want to include ROOT support in your build you will have to specify a parameter in xosp.mk which includes 2 possibilities: "supersu" and "magisk":

  ROOT_METHOD := supersu OR ROOT_METHOD := magisk

To build XOSP ROM

  $ cd ~/XOSP
  $ source build/./envsetup.sh
  $ brunch <device> -j<number_of_threads>   (USE brunch ALWAYS!)

Obtaining the zip created from the build process

To get the zip file that has been built, navigate to the out directory and find for the zip file there. If you found it, then congratulations! If you didn't, try retrying the build process but before doing so, ensure you do the following:

  $ cd ~/XOSP
  $ make clean

When you done the initialization once you're free to build now without making that again.

For those who finally get the compilation process done

Well you made it my friend, after all these hours passed now you finally got the ROM ready to be flashed through the recovery of your device. Share it on XDA or on every forum,blog site etc... (as you wish). We expect you to contribute as well and to give credits to the XOSP Team and their contributors! Don't forget to sync your repo everytime and build XOSP more than just one because the source get changed almost everyday with new fixes or new features. Don't hesitate to make pull requests because we will take them all in consideration.

manifest's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

manifest's Issues

repo-sync error

fatal: Couldn't find remote ref refs/heads/xosp-n
error: Cannot fetch android_vendor_xosp

error: Exited sync due to fetch errors

error xosp apps

i build xosp rev2 for zf5 successful , but xosp apps album and keyboard stop

No Groups In xosp_devices_deps.xml

I did repo init like this to reduce bandwidth as I don't need to download the code for devices I am not building.

repo init -u git://github.com/XOSP-Project/platform_manifest.git -b xosp-n --depth=1 --groups=all,-notdefault,-device,-darwin,-x86,-mips,-exynos5,-intel,-eclipse

However, xosp_devices_deps.xml doesnt contain the groups tag so I ended up cloning a whole load of extra repos :(

Please add groups="device" to the manifest.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.