Difference between revisions of "Metro"

From Funtoo
Jump to: navigation, search
(Installation)
Line 30: Line 30:
 
}}
 
}}
  
{{Important|The {{f|/root/.metro}} file contains the system metro configuration, and defines where the build repository and other files should be stored. Defaults are typically fine for most users, and {{f|/home/mirror/funtoo}} will be used as the build repository path. For more information on configuration settings available, see [[Metro/Configuration]]}}.
+
{{Important|The {{f|/root/.metro}} file contains the system metro configuration, and defines where the build repository and other files should be stored. Defaults are typically fine for most users, and {{f|/home/mirror/funtoo}} will be used as the build repository path. For more information on configuration settings available, see [[Metro/Configuring Metro]].}}
  
 
You will now have a directory called {{c|/root/metro}} that contains all the Metro source code.
 
You will now have a directory called {{c|/root/metro}} that contains all the Metro source code.

Revision as of 02:09, February 17, 2019

Other languages:
English • ‎日本語 • ‎português do Brasil • ‎Türkçe
Description:
Metro is the Funtoo Linux automated build system, and is used to build Funtoo Linux stage tarballs.
Source Code:

Installation

Prerequisites

Ensure that dev-vcs/git, dev-python/requests, dev-python/sqlalchemy and dev-python/lxml are installed on your system.

root # emerge dev-vcs/git dev-python/requests dev-python/sqlalchemy dev-python/lxml

Cloning Metro

The recommended and supported method for installing metro is to clone metro's git repository to /root. Clone the master git repository as follows:

root # cd /root
root # git clone https://github.com/funtoo/metro
root # cp /root/metro/metro.conf ~/.metro
   Important

The /root/.metro file contains the system metro configuration, and defines where the build repository and other files should be stored. Defaults are typically fine for most users, and /home/mirror/funtoo will be used as the build repository path. For more information on configuration settings available, see Metro/Configuring Metro.

You will now have a directory called /root/metro that contains all the Metro source code.

Setting up ego

Now, we will set the ego, administration tool of Funtoo Linux. The way it is used with metro is independent from app-admin/ego installed on your box. This local cloned copy of ego allows metro to potentially use a newer version of ego than what is already installed on your system, or to function under other non-Funtoo distributions like Gentoo or Ubuntu. Setup is easy as follows:

root # cd /root
root # git clone https://github.com/funtoo/ego

This way you will have /root/ego directory with ego binary that is then used by metro.

Build Repository Setup

Metro uses a repository to store built stages and snapshots, which typically resides at /home/mirror/funtoo. There are two methods to set up your build repository -- it can be done manually or with our auto-setup script. The auto-setup script is of course faster and easier, while the manual method may give you a deeper understanding of how the build repository internals work.

First Build

Once your build repository has been set up, you can start your first build using a command similar to the one below:

root # /root/metro/scripts/ezbuild.sh 1.3-release-std x86-64bit amd64-zen full