website annotate en/devel/index.html @ rev 461

en: Prepare for Chinese links
author Paul Issott <paul@slitaz.org>
date Sat May 09 18:14:38 2009 +0000 (2009-05-09)
parents 4980c0fb2688
children 25bd49d28303
rev   line source
pankso@6 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
pankso@6 2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
pankso@6 3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
pankso@6 4 <head>
pankso@6 5 <title>SliTaz - Developers corner</title>
pankso@6 6 <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
pankso@6 7 <meta name="description" content="SliTaz GNU/Linux project information overview" />
pankso@6 8 <meta name="keywords" lang="en" content="about slitaz, gnu, linux, mini distro, livecd" />
pankso@6 9 <meta name="robots" content="index, follow, all" />
pankso@6 10 <meta name="revisit-after" content="7 days" />
pankso@6 11 <meta name="expires" content="never" />
MikeDSmith25@117 12 <meta name="modified" content="2008-07-16 21:45:00" />
pankso@6 13 <meta name="author" content="Christophe Lincoln"/>
pankso@6 14 <meta name="publisher" content="www.slitaz.org" />
pankso@6 15 <link rel="shortcut icon" href="../../favicon.ico" />
pankso@6 16 <link rel="stylesheet" type="text/css" href="../../slitaz.css" />
pankso@85 17 <link rel="Content" href="#content" />
pankso@6 18 </head>
pankso@6 19 <body bgcolor="#ffffff">
pankso@6 20 <!-- Header -->
pankso@6 21 <div id="header">
pankso@6 22 <a name="top"></a>
pankso@6 23 <!-- Access -->
pankso@6 24 <div id="access">
pankso@76 25 Language:
paul@461 26 <a href="../../de/devel/">Deutsch</a> |
paul@461 27 <a href="../../fr/devel/" title="Développement en français">Français</a> |
paul@461 28 <a href="../../pt/devel/">Português</a>
pankso@6 29 </div>
pankso@6 30 <a href="http://www.slitaz.org/en/"><img id="logo"
pankso@6 31 src="../../pics/website/logo.png" title="www.slitaz.org/en" alt="www.slitaz.org"
pankso@6 32 style="border: 0px solid ; width: 200px; height: 74px;" /></a>
pankso@6 33 <p id="titre">#!/GNU/Linux</p>
pankso@6 34 </div>
pankso@6 35 <div id="nav">
pankso@6 36 <div id="nav_top"></div>
pankso@424 37 <!-- General -->
pankso@424 38 <ul>
pankso@424 39 <li><a href="../about/" title="Information about the SliTaz project">About the project</a></li>
pankso@424 40 <li><a href="../asso/" title="SliTaz non-profit association">Association</a></li>
pankso@424 41 <li><a href="../get/" title="Download - LiveCD ISO">Get SliTaz</a></li>
pankso@424 42 <li><a href="../doc/" title="LiveCD usage and howto">Documentation</a></li>
pankso@424 43 <li><a href="../packages/" title="Packaged software">Packages</a></li>
pankso@424 44 <li><a href="../devel/" title="Developers corner">Development</a></li>
pankso@424 45 <li><a href="../artwork/" title="Artwork, colors and images">Artwork</a></li>
pankso@424 46 </ul>
pankso@424 47 <!-- Support -->
pankso@424 48 <ul>
pankso@424 49 <li><a href="http://forum.slitaz.org/#idx2" title="Forum for help and support">Support Forum</a></li>
pankso@424 50 <li><a href="../mailing-list.html" title="Support, contact and collaboration">Mailing List</a></li>
pankso@424 51 <li><a href="../search.html" title="Search engine">Search</a></li>
pankso@424 52 <li><a href="../sitemap.html" title="Web site overview">Sitemap</a></li>
pankso@424 53 </ul>
pankso@424 54 <!-- Wiki and Labs -->
pankso@424 55 <ul>
pankso@424 56 <li><a href="http://wiki.slitaz.org/" title="Wiki communities">Wiki Resources</a></li>
pankso@424 57 <li><a href="http://labs.slitaz.org/" title="SliTaz Laboratories">SliTaz Labs</a></li>
pankso@424 58 <li><a href="http://labs.slitaz.org/issues" title="Bug Tracking system">Bug Tracking</a></li>
pankso@424 59 </ul>
pankso@6 60 <div id="nav_bottom">
pankso@6 61 <div id="nav_bottom_img"></div>
pankso@6 62 </div>
pankso@6 63 </div>
pankso@6 64
pankso@6 65 <!-- Content top. -->
pankso@6 66 <div id="content_top">
pankso@6 67 <div class="top_left"></div>
pankso@6 68 <div class="top_right"></div>
pankso@6 69 </div>
pankso@6 70
pankso@6 71 <!-- Content -->
pankso@6 72 <div id="content">
pankso@6 73 <a name="content"></a>
pankso@6 74
paul@270 75 <h1><font color="#3e1220">Development</font></h1>
pankso@6 76 <h2><font color="#df8f06">SliTaz Developers corner</font></h2>
pankso@6 77
pankso@17 78 <ul>
paul@256 79 <li><a href="#tank">Build host &amp; home.</a></li>
pankso@17 80 <li><a href="#repos">Mercurial repositories.</a></li>
pankso@17 81 <li><a href="#pkgs">Tazpkg packages.</a></li>
pankso@17 82 <li><a href="#website">Website Management.</a></li>
pankso@21 83 <li><a href="../mailing-list.html">Mailing List.</a></li>
pankso@21 84 <li><a href="../doc/cookbook/wok-tools.html">Wok &amp; Tools.</a></li>
pankso@343 85 <li>Mercurial Repositories: <a href="http://hg.slitaz.org" >hg.slitaz.org</a></li>
pankso@343 86 <li>SliTaz Laboratories: <a href="http://labs.slitaz.org/">labs.slitaz.org</a></li>
pankso@17 87 </ul>
pankso@17 88
pankso@6 89 <p>
pankso@6 90 SliTaz is an open source and community driven distribution. Everyone is welcome
paul@166 91 to join and contribute, from users, to hackers and developers, there is always
pankso@6 92 something to do, ie. Proofreading or writing documentation, sending bugs or
pankso@6 93 patches to the Mailing list, gaining access to the wok and pushing some new
pankso@17 94 packages or simply to help others on the Mailing list or forum. SliTaz has got
pankso@17 95 Mercurial repositories hosted on a SliTaz system, developers can ask for a new
pankso@17 96 repo if needed and contributors have write access to correct typos, scripts, etc.
pankso@17 97 </p>
pankso@17 98
pankso@17 99 <p>
paul@155 100 SliTaz is a tiny community and listens to its users. There are several
pankso@17 101 developers who are active on the <a href="http://forum.slitaz.org/">forum</a>
pankso@17 102 and the <a href="../mailing-list.html">Mailing List</a>.
pankso@6 103 </p>
pankso@6 104
paul@256 105 <a name="tank"></a>
paul@256 106 <h3>Tank - Build host &amp; home</h3>
paul@256 107 <p>
paul@256 108 Each contributor may have an account on the project server with secure access,
paul@256 109 disk space, a public directory and all development tools. Developers can compile
paul@256 110 packages and maintainers of the mirror can handle sychronization. Tank also
paul@256 111 hosts the website, web boot and mercurial repositories:
paul@256 112 <a href="http://tank.slitaz.org/">tank.slitaz.org</a>
paul@256 113 </p>
paul@256 114
pankso@6 115 <a name="repos"></a>
pankso@6 116 <h3>Mercurial repositories</h3>
pankso@6 117 <p>
pankso@6 118 SliTaz Mercurial or Hg repos can be browsed or cloned by anyone using the URL:
pankso@6 119 <a href="http://hg.slitaz.org/">http://hg.slitaz.org/</a>. People with write
paul@166 120 access can directly use <code>repos.slitaz.org</code> which requires authentication.
pankso@6 121 Mercurial uses Python and is installable with:
pankso@6 122 <code>tazpkg get-install mercurial</code>
pankso@6 123 </p>
pankso@6 124 <h4>~/.hgrc</h4>
pankso@6 125 <p>
paul@166 126 Before you push your first commit onto the server, be sure that you have a correct
paul@166 127 Hg configuration file with your name and email address, and remember to check
pankso@6 128 that you are not root. Personal ~/.hgrc file example:
pankso@6 129 </p>
pankso@6 130 <pre class="script">
pankso@6 131 [ui]
MikeDSmith25@117 132 username = FirstName LastName &lt;you@example.org&gt;
pankso@6 133 </pre>
pankso@6 134 <h4>Clone, modify, commit and push</h4>
pankso@6 135 <p>
paul@256 136 Clone a repo, example for wok:
pankso@6 137 </p>
pankso@6 138 <pre>
paul@256 139 $ hg clone http://repos.slitaz.org/wok
pankso@6 140 </pre>
pankso@6 141 <p>
paul@256 142 Change directory to wok, note you must be in the repository to be able
pankso@6 143 to use 'hg' commands. To check all logs or just the last log:
pankso@6 144 </p>
pankso@6 145 <pre>
pankso@6 146 $ hg log
pankso@6 147 $ hg head
pankso@6 148 </pre>
pankso@6 149 <p>
paul@256 150 Add or modify one or more files and commit:
pankso@6 151 </p>
pankso@6 152 <pre>
paul@256 153 $ hg add
pankso@6 154 $ hg status
pankso@6 155 $ hg commit -m "Log message..."
pankso@6 156 $ hg log
pankso@6 157 </pre>
pankso@6 158 <p>
pankso@6 159 Note that you can use the command <code>rollback</code> to roll back to the last
paul@166 160 transaction. Before pushing changes to the server, it is safe to pull once:
pankso@6 161 </p>
pankso@6 162 <pre>
pankso@6 163 $ hg pull
pankso@6 164 $ hg push
pankso@6 165 </pre>
pankso@6 166 <p>
pankso@6 167 Done, your changes, code or corrections are now on the server.
pankso@6 168 </p>
paul@256 169 <h4>Updating a local wok</h4>
paul@256 170 <p>
paul@257 171 To update your wok with the local server (<em>pull</em> to pull the changes):
paul@256 172 </p>
paul@256 173 <pre>
paul@256 174 $ hg pull
paul@256 175 $ hg update
paul@256 176 </pre>
paul@257 177 <h4>Useful commands</h4>
paul@256 178 <p>
paul@256 179 Hg commands that can be used.
paul@256 180 </p>
paul@256 181 <ul>
paul@256 182 <li><code>hg help</code> : Display the full list of commands.</li>
paul@256 183 <li><code>hg rollback</code> : Undo the last action performed (commit,
paul@256 184 pull, push).</li>
paul@256 185 <li><code>hg log &lt;package&gt;</code> : Display a package log.</li>
paul@256 186 <li><code>hg head</code> : Display the last log.</li>
paul@256 187 </ul>
pankso@6 188
pankso@17 189 <a name="pkgs"></a>
pankso@17 190 <h3>Tazpkg Packages</h3>
pankso@17 191 <p>
MikeDSmith25@117 192 The tazpkg packages in SliTaz are automatically created via Tazwok and a
MikeDSmith25@117 193 receipt in the wok. The Cookbook describes the
pankso@21 194 <a href="../doc/cookbook/wok-tools.html">use of tools</a>
MikeDSmith25@117 195 and the format of <a href="../doc/cookbook/receipts.html">receipts</a>.
pankso@17 196 These are required reading before we begin.
pankso@17 197 </p>
pankso@17 198 <p>
pankso@17 199 In terms of choice of package, the idea is to offer a package by task or
pankso@17 200 functionality, ie. the lightest application in the field and not duplicated.
pankso@17 201 Note that the current packages are not immutable, if you find an alternative
pankso@17 202 that is lighter, with more features or more <em>sexy</em> for a few extra KB,
pankso@17 203 you can suggest it on the Mailing List. Particular attention is given to
paul@159 204 packages for the LiveCD, these should be stripped, removing unnecesary
pankso@17 205 dependancies and compiler options. In general candidate packages for the core
pankso@17 206 LiveCD are discussed on the Mailing List.
pankso@17 207 </p>
pankso@17 208 <p>
pankso@17 209 Before you begin to compile and create packages for SliTaz, be sure that the
paul@256 210 work doesn't already exist in the wok undigest provided by the primary SliTaz
pankso@17 211 mirror. Don't forget that the members of the list are there to help you
pankso@17 212 and that the documentation of the
pankso@21 213 <a href="../doc/cookbook/wok-tools.html">wok and tools</a>
pankso@17 214 exists to help you get started.
pankso@17 215 </p>
pankso@17 216
paul@18 217 <a name="website"></a>
pankso@17 218 <h3>Website Management and Books</h3>
pankso@17 219 <p>
paul@256 220 The website and books (Handbook and Cookbook) are managed via
paul@257 221 a mercurial repository, they can be cloned by:
pankso@17 222 </p>
pankso@17 223 <pre>
paul@256 224 $ hg clone http://hg.slitaz.org/website
paul@256 225 Or if you have the proper permissions:
paul@256 226 $ hg clone http://repos.slitaz.org/website
pankso@17 227 </pre>
paul@256 228
pankso@17 229 <h4>Diff and patch</h4>
pankso@17 230 <p>
pankso@17 231 The utilities <code>diff</code> and <code>patch</code> are command-line tools
paul@256 232 for creating and implementing a file containing differences between two files.
paul@256 233 This technique is often used for collaboration and the changes made to the
paul@256 234 original file can be clearly extracted. To create a <code>diff</code> file
paul@256 235 readable by humans in a simple text editor, you must supply the <code>-u</code> option:
pankso@17 236 </p>
pankso@17 237 <pre>
pankso@17 238 $ diff -u file.orig file.new &gt; file.diff
pankso@17 239 </pre>
pankso@17 240 <p>
pankso@17 241 To apply a patch:
pankso@17 242 </p>
pankso@17 243 <pre>
pankso@17 244 $ patch file.orig file.diff
pankso@17 245 </pre>
pankso@6 246
pankso@6 247 <!-- End of content with round corner -->
pankso@6 248 </div>
pankso@6 249 <div id="content_bottom">
pankso@6 250 <div class="bottom_left"></div>
pankso@6 251 <div class="bottom_right"></div>
pankso@6 252 </div>
pankso@6 253
pankso@6 254 <!-- Start of footer and copy notice -->
pankso@6 255 <div id="copy">
pankso@6 256 <p>
MikeDSmith25@118 257 Last modification : 2008-07-16 21:45:00 -
pankso@6 258 <a href="#top">Top of the page</a>
pankso@6 259 </p>
pankso@6 260 <p>
pankso@364 261 Copyright &copy; 2009 <a href="http://www.slitaz.org/">SliTaz</a> -
pankso@6 262 <a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>
pankso@6 263 </p>
pankso@6 264 <!-- End of copy -->
pankso@6 265 </div>
pankso@6 266
pankso@6 267 <!-- Bottom and logo's -->
pankso@6 268 <div id="bottom">
pankso@6 269 <p>
pankso@6 270 <a href="http://validator.w3.org/check?uri=referer"><img
pankso@6 271 src="../../pics/website/xhtml10.png" alt="Valid XHTML 1.0"
pankso@6 272 title="Code validé XHTML 1.0"
pankso@6 273 style="width: 80px; height: 15px;" /></a>
pankso@6 274 </p>
pankso@6 275 </div>
pankso@6 276
pankso@6 277 </body>
pankso@6 278 </html>