summaryrefslogtreecommitdiffstats
path: root/doc/book-enea-linux-release-info/doc/getting_enea_linux.xml
blob: 93a5c594d6c6a6fbd1aa00a95d4cf54b082bb424 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<chapter id="relinfo-getting-enea-linux">
  <title>Getting Enea Linux</title>

  <section id="relinfo-getting-pre-built-images">
    <title>Getting Pre-built Binaries</title>

    <para>Application developers will download pre-complied images from the
    Enea Portal or will receive prebuilt images from the platform developers.
    For further information on this see <olink
    targetdoc="book_enea_linux_app_dev_guide"
    targetptr="book_enea_linux_app_dev_guide">Enea Linux Application
    Development Guide</olink>.</para>
  </section>

  <section id="relinfo-getting-source">
    <title>Getting the Source</title>

    <para>The source for this Enea Linux release is available for cloning from
    a set of Git repositories. To manage the different repositories, Google's
    repo tool is used. The basic idea is to store a list with (repo-URL,
    version) tuples in a separate file, known as the manifest. The repo tool
    is then used to traverse the list and clone the specified versions of the
    repositories. See <ulink
    url="https://code.google.com/p/git-repo/">https://code.google.com/p/git-repo/</ulink>
    for more info.</para>

    <para>To use repo tool to download the source for Enea Linux, follow the
    steps below:</para>

    <orderedlist>
      <listitem>
        <para>Make sure that the repo tool is installed. If not, follow the
        instructions below:</para>

        <para><programlisting>$ curl https://storage.googleapis.com/git-repo-downloads/repo &gt; ~/bin/repo
$ chmod a+x ~/bin/repo</programlisting>The instruction assumes that ~/bin
        exists and is included in the PATH variable.</para>
      </listitem>

      <listitem>
        <para>Use the repo tool to download the source:<remark>FIXME: At final
        release the tag for the manifest must be set in mainfest_conf.mk as
        MANIFESTHASH, typically something like refs/tags/EL6. Before final
        release, it is possible to set MANIFESTHASH on the make command line
        to override the value, e.g. with a commit hash string for a release
        candidate to be tested</remark></para>

        <programlisting>$ mkdir enea-linux
$ cd enea-linux
$ repo init -u	<xi:include href="../../s_docsrc_common/pardoc-distro.xml"
            xmlns:xi="http://www.w3.org/2001/XInclude"
            xpointer="element(EneaLinux_MANIFESTURL/1)" /> \
            -b <xi:include href="../../s_docsrc_common/pardoc-distro.xml"
            xmlns:xi="http://www.w3.org/2001/XInclude"
            xpointer="element(EneaLinux_MANIFESTHASH/1)" /> \
            -m &lt;manifest file&gt;
$ repo sync</programlisting>

        <para>The parameter &lt;manifest file&gt; depends on the target. Use
        the following:</para>

        <xi:include element="manifestfiles/1"
                    href="manifestfiles_generated.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" />
      </listitem>
    </orderedlist>

    <para>The source code is now downloaded. Current directory will contain a
    README file with instructions on how to build the distro and boot the
    target. For convenience, these instructions are also copied into this
    document. See <xref linkend="relinfo-build-boot" />.</para>

    <para>It is not necessary to explicitly clone the manifest repository
    since that is done automatically by the repo tool. To see the current
    manifest, e.g. to get a list of the repositories, use the following
    command:</para>

    <programlisting>$ repo manifest</programlisting>

    <remark>The UG should be updated with instructions on how to add
    customisations. That section should also contain some more info about the
    manifest: The manifest templates, using a branch instead of the tag EL6,
    ... When this is done a reference from here should be added.</remark>
  </section>
</chapter>