[gnome-ostree] README updated



commit 895a8fa6b4e4719ee5aaf8ef8a960f0f69c97af2
Author: Andres Gomez <agomez igalia com>
Date:   Sat Jul 28 17:28:55 2012 +0200

    README updated

 README-build.md |  186 ++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 117 insertions(+), 69 deletions(-)
---
diff --git a/README-build.md b/README-build.md
index 0146c2e..4a64913 100644
--- a/README-build.md
+++ b/README-build.md
@@ -3,8 +3,8 @@ Overview
 
 The build process is divided into two levels:
 
-1) Yocto
-2) ostbuild
+1. Yocto
+2. ostbuild
 
 Yocto is used as a reliable, well-maintained bootstrapping tool.  It
 provides the basic filesystem layout as well as binaries for core
@@ -14,7 +14,7 @@ dependency problems.
 At the end, the Yocto build process generates two tarballs: one for a
 base "runtime", and one "devel" with all of the development tools like
 gcc.  We then import that into an OSTree branch
-e.g. "bases/yocto/gnomeos-3.4-i686-devel".
+e.g. "bases/yocto/gnomeos-3.6-i686-devel".
 
 At present, it's still (mostly) possible to put this data on an ext4
 filesystem and boot into it.
@@ -45,14 +45,17 @@ Yocto, some of which are hacky, others upstreamable.  The most
 important part though are the modifications to commit the generated
 root filesystem into OSTree.
 
+For every GNOME OS release, there is a branch on which the needed
+patches have landed. By now, that branch is "gnomeos-3.6".
+
 ostbuild details
 ----------------
 
 The simple goal of ostbuild is that it only takes as input a
 "manifest" which is basically just a list of components to build.  You
-can see this here:
+can see an example of this here:
 
-http://git.gnome.org/browse/ostree/tree/gnomeos/3.4/gnomeos-3.4-src.json
+http://git.gnome.org/gnome-ostree/gnomeos-3.6.json
 
 A component is a pure metadata file which includes the git repository
 URL and branch name, as well as ./configure flags (--enable-foo).
@@ -64,9 +67,9 @@ implementation perspective, versus having to maintain a version
 control abstraction layer.
 
 The result of a build of a component is an OSTree branch like
-"artifacts/gnomeos-3.4-i686-devel/libxslt/master".  Then, a "compose"
+"artifacts/gnomeos-3.6-i686-devel/libxslt/master".  Then, a "compose"
 process merges together the individual filesystem trees into the final
-branches (e.g. gnomeos-3.4-i686-devel).
+branches (e.g. gnomeos-3.6-i686-devel).
 
 Doing local builds
 ------------------
@@ -82,65 +85,110 @@ Following this process is equivalent to what we have set up on the
 ostree.gnome.org build server.  It will generate a completely new
 repository.
 
-srcdir=/src
-builddir=/src/build
-
-# First, you'll need "http://git.gnome.org/browse/linux-user-chroot/";
-# installed as setuid root.
-
-cd $srcdir
-
-git clone gnome:linux-user-chroot
-cd linux-user-chroot
-NOCONFIGURE=1 ./autogen.sh
-./configure
-make
-sudo make install
-sudo chown root:root /usr/local/bin/linux-user-chroot
-sudo chmod u+s /usr/local/bin/linux-user-chroot
-
-# We're going to be using Yocto.  You probably want to refer to:
-# http://www.yoctoproject.org/docs/current/yocto-project-qs/yocto-project-qs.html
-# Next, we're grabbing my Poky branch.
-
-git clone git://github.com/cgwalters/poky.git
-cd $builddir
-
-# This command enters the Poky environment, creating
-# a directory named gnomeos-build.
-. $srcdir/poky/oe-init-build-env gnomeos-build
-
-# Now edit conf/bblayers.conf, and add
-#   /src/poky/meta-gnomeos
-# to BBLAYERS.
-# Make sure tools-profile and tools-testapps are not in EXTRA_IMAGE_FEATURES
-# Also, you should choose useful values for BB_NUMBER_THREADS, PARALLEL_MAKE
-
-bitbake ostree-native
-bitbake gnomeos-contents-{runtime,devel}
-
-# This bit is just for shorthand convenience, you can skip it 
-cd $builddir
-ln -s tmp/deploy/images/repo repo
-
-# Now create a file ~/.config/ostbuild.cfg
-# example contents:
-# [global]
-# repo=/src/build/gnomeos-build/build/repo
-# mirrordir=/src/build/ostbuild/src
-# workdir=/src/build/ostbuild/work
-# manifest=/src/ostree/gnomeos/3.4/gnomeos-3.4-src.json
-
-# Now we want to use the "ostbuild" binary that was created
-# as part of "bitbake ostree-native".  You can do e.g.:
-
-export PATH=$builddir/build/tmp/sysroots/x86_64-linux/usr/bin:$PATH
-
-# This next command will download all of the source code to the
-# modules specified in $srcdir/ostree/gnomeos/3.4/manifest.json,
-# and create a file $workdir/manifest.json that has the
-# exact git commits we want to build.
-ostbuild resolve
-
-# This command builds everything
-ostbuild build
+    $ srcdir=/src
+    $ builddir=/src/build
+    
+    
+    # First, you'll need "http://git.gnome.org/browse/linux-user-chroot/";
+    # installed as setuid root.
+    
+    $ cd $srcdir
+    
+    $ git clone gnome:linux-user-chroot
+    $ cd linux-user-chroot
+    $ NOCONFIGURE=1 ./autogen.sh
+    $ ./configure
+    $ make
+    $ sudo make install
+    $ sudo chown root:root /usr/local/bin/linux-user-chroot
+    $ sudo chmod u+s /usr/local/bin/linux-user-chroot
+    
+    
+    # We're going to be using Yocto.  You probably want to refer to:
+    # http://www.yoctoproject.org/docs/current/yocto-project-qs/yocto-project-qs.html
+    # Next, we're grabbing my Poky branch.
+    
+    $ git clone git://github.com/cgwalters/poky.git
+    $ cd poky
+    $ git co gnomeos-3.6
+    $ cd $builddir
+    
+    
+    # This command enters the Poky environment, creating
+    # a directory named gnomeos-build.
+    
+    $ . $srcdir/poky/oe-init-build-env gnomeos-build
+    
+    
+    # Now edit conf/bblayers.conf, and add
+    #   /src/poky/meta-gnomeos
+    # to BBLAYERS.
+    #
+    # Check the conf/local.conf file and make sure "tools-profile" and
+    # "tools-testapps" are not in EXTRA_IMAGE_FEATURES
+    #
+    # Also, you should choose useful values for BB_NUMBER_THREADS and
+    # PARALLEL_MAKE
+    #
+    # For the meaning of this variables you can check:
+    # http://www.yoctoproject.org/docs/current/poky-ref-manual/poky-ref-manual.html#var-EXTRA_IMAGE_FEATURES
+    # http://www.yoctoproject.org/docs/current/poky-ref-manual/poky-ref-manual.html#var-BB_NUMBER_THREADS
+    # http://www.yoctoproject.org/docs/current/poky-ref-manual/poky-ref-manual.html#var-PARALLEL_MAKE
+    
+    $ bitbake ostree-native
+    
+    
+    # After this command, we will have a native compilation of OSTree
+    # e.g. tmp/work/x86_64-linux/ostree-native-1.0-r0/image/opt/gnome-os/tanty/build/gnomeos-build/tmp/sysroots/
+    
+    $ bitbake gnomeos-contents-{runtime,devel}
+    
+    
+    # At the end, the Yocto build process generates two tarballs: one for
+    # a base "runtime", and one "devel" with all of the development tools
+    # like gcc.  We then import that into an OSTree branch
+    # e.g. "bases/yocto/gnomeos-3.6-i686-devel".
+    
+    
+    # This bit is just for shorthand convenience, you can skip it
+    
+    $ cd $builddir
+    $ ln -s gnomeos-build/tmp/deploy/images/repo repo
+    
+    
+    # Now create a file ~/.config/ostbuild.cfg
+    # example contents:
+    # [global]
+    # repo=/src/build/repo
+    # mirrordir=/src/build/ostbuild/src
+    # workdir=/src/build/ostbuild/work
+    
+    
+    # And create the mirrordir and workdir directories
+    
+    $ mkdir -p $builddir/ostbuild/src
+    $ mkdir -p $builddir/ostbuild/work
+    
+    
+    # Now we want to use the "ostbuild" binary that was created
+    # as part of "bitbake ostree-native".  You can do e.g.:
+    
+    $ export PATH=$builddir/gnomeos-build/tmp/sysroots/x86_64-linux/usr/bin:$PATH
+    
+    
+    # This next command will download all of the source code to the
+    # modules specified in $gnome-ostree/gnomeos-3.6.json, and create a
+    # file $workdir/manifest.json that has the exact git commits we want
+    # to build.
+    
+    $ ostbuild resolve --manifest /src/gnome-ostree/gnomeos-3.6.json
+    
+    
+    # By then, you should create your own prefix for the builds of the
+    # OSTree
+    
+    $ ostbuild prefix my-prefix
+    
+    
+    # This command builds everything
+    $ ostbuild build-components --src-snapshot $builddir/ostbuild/work/snapshots/gnomeos-3.6-src-snapshot-<year>.<number>-<hash>.json



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]