h1. Replicant Sources h2. Browsing the source The Replicant source code is currently hosted at Gitorious: https://gitorious.org/replicant There is a branch per Replicant version, like @replicant-2.2@. h2. Code tree location Start by defining the place where you want to download Replicant tree. *Important: the name of the path to this location must not contain spaces!* h2. Installing the tools Then, download the @repo@ tool and set it executable:
mkdir tools cd tools wget http://commondatastorage.googleapis.com/git-repo-downloads/repo chmod a+x repo cd ../h2. Getting the source manifest The source manifest is the list of all the git repos that are present in the Replicant tree. There is one manifest per replicant version. h3. Replicant 4.2 If you don't setup your name and email in git, repo will complain:
Traceback (most recent call last): File "/home/gnutoo/embedded/replicant-4.2/.repo/repo/main.py", line 500, inSo we setup it correctly, replace the email and the name by a valid one:_Main(sys.argv[1:]) File "/home/gnutoo/embedded/replicant-4.2/.repo/repo/main.py", line 476, in _Main result = repo._Run(argv) or 0 File "/home/gnutoo/embedded/replicant-4.2/.repo/repo/main.py", line 155, in _Run result = cmd.Execute(copts, cargs) File "/home/gnutoo/embedded/replicant-4.2/.repo/repo/subcmds/init.py", line 395, in Execute self._ConfigureUser() File "/home/gnutoo/embedded/replicant-4.2/.repo/repo/subcmds/init.py", line 289, in _ConfigureUser name = self._Prompt('Your Name', mp.UserName) File "/home/gnutoo/embedded/replicant-4.2/.repo/repo/project.py", line 650, in UserName self._LoadUserIdentity() File "/home/gnutoo/embedded/replicant-4.2/.repo/repo/project.py", line 663, in _LoadUserIdentity u = self.bare_git.var('GIT_COMMITTER_IDENT') File "/home/gnutoo/embedded/replicant-4.2/.repo/repo/project.py", line 2483, in runner p.stderr)) error.GitError: manifests var: *** Please tell me who you are. Run git config --global user.email "you@example.com" git config --global user.name "Your Name" to set your account's default identity. Omit --global to set the identity only in this repository. fatal: empty ident name (for ) not allowed
git config --global user.email "you@example.com" git config --global user.name "Your Name"
mkdir replicant-4.2 cd replicant-4.2 ../tools/repo init -u git://gitorious.org/replicant/manifest.git -b replicant-4.2h3. Replicant 4.0
mkdir replicant-4.0 cd replicant-4.0 ../tools/repo init -u git://gitorious.org/replicant/manifest.git -b replicant-4.0h3. Replicant 2.3
mkdir replicant-2.3 cd replicant-2.3 ../tools/repo init -u git://gitorious.org/replicant/manifest.git -b replicant-2.3h3. Replicant 2.2
mkdir replicant-2.2 cd replicant-2.2 ../tools/repo init -u git://gitorious.org/replicant/manifest.git -b replicant-2.2h2. Downloading/Updating the source from the repos Now that you have configured the repository to use a manifest, you can start downloading Replicant sources for the desired version. *This step is very long and can take the whole day to complete!*
../tools/repo syncDepending on your internet bandwidth, using the @-j@ argument may speed up the process (if you encounter errors, retry without the @-j@ argument):
../tools/repo sync -j9You must redo this step each time you want to sync your tree, in order to keep it up to date. Future syncs are faster than the first one.