summaryrefslogtreecommitdiffstats
path: root/build_tools/larch7/larch0/docs/html/gui_larchify.html
blob: 9e2e318298e78c376f5f8dbd613319395869c562 (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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<title>GUI Tab: Larchify</title>
<!-- (en) Add your meta data here -->

<link href="css/larchdocs.css" rel="stylesheet" type="text/css"/>
<!--[if lte IE 7]>
<link href="css/yaml/core/iehacks.css" rel="stylesheet" type="text/css" />
<![endif]-->
</head>

<body>
<!-- skip link navigation -->
<ul id="skiplinks">
    <li><a class="skip" href="#col1">Skip to main content (Press Enter).</a></li>
</ul>

<div class="page_margins">
  <div class="page">
    <div id="top"><div id="tm"></div></div>
     <!-- begin: #col1 -->
      <div id="col1" role="main">
        <div id="col1_content">
          <div id="header" role="banner">
            <h1><span><em>live Arch Linux</em> builder</span></h1>
          </div>

      <!-- begin: #col3 navigation column -->
      <div id="col3" role="complementary">
        <div id="col3_content">
          <img class="indent2" alt="larch logo" src="css/screen/larch150x.png" width="150" height="150" />
              <div class="vlist">
                <ul>
                  <li><a href="index.html"><h6>Table Of Contents</h6></a></li>
                  <li><a href="gui_medium.html"><h6>Next:</h6>
                    <div class="indent1">GUI Tab: Preparing the Medium</div></a></li>
                  <li><a href="gui_installation.html"><h6>Previous:</h6>
                    <div class="indent1">GUI Tab: Installation</div></a></li>
                </ul>
              </div>
        </div>
      </div>
      <!-- end: #col3 -->

<div class="larchdocs">

<h2 id="pagetitle" level="2">GUI Tab: Larchify</h2>

<p>You can repeat the 'larchify' command as often as you like,
to test various configurations or to build differently configured
<em>live</em> systems with the same underlying packages. This works
because the 'larchify' process itself does not change anything within the
installation - all the files it generates are placed in the 'overlay',
which (thanks to <em>aufs</em>) will just cover up any old versions of
the added files in the underlying installation. At present <em>larch</em>
does not support the 'deletion' of installation files, they can only be
overlayed by replacements.
</p>

<h3>User accounts</h3>
<p>You can enter or edit user accounts to be added during the creation of
the <em>live</em> system. Any of the columns except the first (the login
name) may be empty.
</p>
<p>A password can be set for the new user by entering this (plain text -
I'm guessing this is alright in this situation ...). An empty password
field will allow passwordless logins (at least on the console).
</p>
<p>The primary group of a new user can be set in the 'Group' column.
When this is empty, it takes the <em>useradd</em> default, which is
defined by settings in '/etc/login.defs' and '/etc/default/useradd'. Note
that the default in <em>Arch Linux</em> is a group with the same name as
the user, this is set by 'USERGROUPS_ENAB yes' in 'etc/login.defs'. You can
override this by adding an 'expert' option, or by placing a modified version
of this file in the profile's 'rootoverlay' directory.
</p>
<p>By default the UID number will be chosen automatically, but a specific
number may be entered here. In <em>Arch Linux</em> the UIDs normally start
at 1000.
</p>
<p>The 'skel'-directory column determines how the user's home
directory will be initialized. The default (empty cell) is to copy the
contents from '/etc/skel'. The editor popup shows a list of the available
alternatives (folders within the profile beginning with 'skel_').
</p>
<p>The additional groups to which this user should belong can also be
specified. Entries in this column are initialized to some default value
which should be adequate for normal use, but may well need tweaking.
This is a comma separated list <strong>without spaces</strong>.
</p>
<p>The final column allows you to pass further options to the system
'useradd' command used to add the new user. Do not use double-quotes in this
option string. Read 'man useradd' for more information about the available
options.
</p>

<h4>Editing the table</h4>
<p>Click on a cell in the selected row to cause an editor popup to appear.
Clicking on an unselected row selects that row.
</p>

<h3>The overlay</h3>
<p>Apart from the few customization options offered by the GUI directly, it
is possible to include any files in the <em>live</em> system by adding them
at the appropriate path within the overlay directory ('rootoverlay') of
the profile. This button opens a file browser on the 'rootoverlay' directory
of the current profile.
</p>

<h3>Locales</h3>
<p>You can select the (glibc) locales supported by the <em>live</em>
system by editing the /etc/locale.gen file in the overlay. If there is
no such file initially it will be copied from the new installation's
(not the host's!) version. See (for example) the <em>Arch Wiki</em> for
more information about locales. Note that <em>larch</em> tries to leave
the locale files in the installation itself unchanged, new files are
placed in the overlay.
</p>

<h3><em>Arch</em> configuration: /etc/rc.conf</h3>
<p>This is the central configuration file for an <em>Arch Linux</em>
system. You can edit it here (see for example the <em>Arch Wiki</em> for
more information about this file).
</p>

<h3>Reuse existing system.sqf</h3>

<p>After 'larchify' has been run, the base installation will have been
'squashed' into a compressed archive. Setting this option will prevent
the repetition of this compression (which is quite a lengthy process) on
the next run of 'larchify'. This should only be enabled if no changes
have been made to the base installation (otherwise these changes will
not be picked up).
</p>

<h3>Advanced options - the defaults are normally fine</h3>

<h4>mkinitcpio.conf</h4>
<p>Here you can edit the mkinitcpio.conf used for building the
<em>initramfs</em> for the <em>live</em> system. N.B. The details of
<em>mkinitcpio</em> handling in <em>larch</em> are a bit complicated,
so if you change something here please be careful - you are not editing
'/etc/mkinitcpio.conf', but rather 'etc/mkinitcpio.conf.larch0' in the
'rootoverlay' directory of the profile (see
<a href="larchify.html#mkinitcpio">here</a> for further details).
Also, don't change the <em>larch</em> hooks.
</p>

<h4>ssh-keys</h4>
<p>See <a href="larch_ssh.html#ssh_hostkeys">ssh host keys</a>. The default
is to generate these keys (if the <em>openssh</em> package is installed).
</p>

<h4>Reuse existing locales</h4>

<p>For people generating a lot of locales this can save a bit of time on
a rerun, so long as nothing significant (like <em>glibc</em>, or
/etc/locale.gen) has changed in the installation.
</p>

</div>



          <div class="topref"><a href="#top">Top</a></div>
        </div>
    <!-- begin: #footer -->
    <div id="footer">
      <div id="footer-content" role="contentinfo">© 2010 Michael Towers<br />
        Page layout assisted by <a href="http://www.yaml.de/">YAML</a> and
        <a href="http://www.kuwata-lab.com/tenjin/">pyTenjin</a>
      </div>
    </div>
    <!-- end: #footer -->
      </div>
      <!-- end: #col1 -->
    <div id="bottom"><div id="bl"><div id="bm"></div></div></div>
  </div>
</div>
<!-- full skiplink functionality in webkit browsers -->
<script src="css/yaml/core/js/webkit-focusfix.js" type="text/javascript"></script>
</body>
</html>