Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 1e007a96761035f261351a68e7601417 > files > 187

parrot-docs-3.6.0-2.fc15.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>Parrot  - Debian Packaging Guide</title>
        <link rel="stylesheet" type="text/css"
            href="../../../resources/parrot.css"
            media="all">
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

    </head>
    <body>
        <div id="wrapper">
            <div id="header">

                <a href="http://www.parrot.org">
                <img border=0 src="../../../resources/parrot_logo.png" id="logo" alt="parrot">
                </a>
            </div> <!-- "header" -->
            <div id="divider"></div>
            <div id="mainbody">
                <div id="breadcrumb">
                    <a href="../../../html/index.html">Home</a> &raquo; <a href="../../../html/developer.html">Developer Documentation</a> &raquo; Debian Packaging Guide
                </div>

<h1><a name="Debian_Packaging_Guide"
>Debian Packaging Guide</a></h1>

<p>This is a quick set of instructions for packaging Parrot for Debian.
See the Debian New Maintainer&#39;s Guide (<a href="http://www.debian.org/doc/maint&#45;guide">http://www.debian.org/doc/maint&#45;guide</a>) for more information.
The Ubuntu Packaging Guide is also a good resource (<a href="http://doc.ubuntu.com/ubuntu/packagingguide/C/">http://doc.ubuntu.com/ubuntu/packagingguide/C/</a>).</p>

<p>This guide assumes that you&#39;re running in a chroot environment set up as in: <a href='https://trac.parrot.org/parrot/wiki/ChrootSetup'>https://trac.parrot.org/parrot/wiki/ChrootSetup</a>.
For other configurations,
see that page for a list of Debian packages you will need to install before building the Parrot packages.</p>

<p>To package Parrot for Debian:</p>

<dl>
<dt><a name="0."
>0.</a></dt>
Download the latest tarball.
<dt><a name="1."
>1.</a></dt>
Compile it and run the tests,
just to be sure the tarball is sound (especially useful if you&#39;re running in a chroot environment different than your usual dev environment).
<dt><a name="2."
>2.</a></dt>
Create a new directory.
(The name is irrelevant,
but we&#39;ll use ~/deb/parrot for the sake of illustration.)Create a fresh extract of the tarball in the ~/deb/parrot directory.
The directory should be named &#34;parrot&#45;&#60;version&#62;&#34; (it will be by default).Copy the debian/ directory from the Parrot source tree into the fresh tarball extract.
<pre>  cp &#45;r &#60;path/to/parrot/git&#62;/ports/debian ~/deb/parrot/parrot&#45;&#60;version&#62;/.</pre>
Copy the original tarball into ~/deb/parrot, naming it &#34;parrot_&#60;version&#62;.orig.tar.gz&#34; (note the &#34;_&#34; in place of dash).
<dt><a name="3."
>3.</a></dt>
Update the debian/changelog file in ~/deb/parrot/parrot&#45;&#60;version&#62;/. The format of the changelog file is strict (automatically parsed). The first line of the log entry gives the package version and categorization. For a new version upload, the version number is the Parrot version number followed by &#45;1. For example:
<pre>  parrot (0.5.1&#45;1) unstable; urgency=low</pre>
The next few lines are the changelog record entries. These record changes in the Debian packaging of Parrot, not changes in Parrot itself. New package versions should include the line:
<pre>  * New upstream release.</pre>
Please note any closed bugs related to the Parrot packages with an entry that includes the text &#34;(Closes: #&#60;bugnum&#62;)&#34;.The final line gives the maintainer&#39;s name, email address, and the date. The date must be in RFC822 format, and can be generated by running <code>date &#45;R</code>. (Note that two spaces are required between the email and the date.)
<pre>   &#45;&#45; Your Name &#60;you@example.org&#62;  Sun, 30 Dec 2007 17:21:45 +0000</pre>

<dt><a name="4."
>4.</a></dt>
Update the debian/control.in file in ~/deb/parrot/parrot&#45;&#60;version&#62;/. Make sure you are listed in &#34;Uploaders&#34;. The &#34;Maintainer&#34; will always be &#34;Debian Parrot Maintainers &#60;pkg&#45;parrot&#45;devel@lists.alioth.debian.org&#62;&#34;.
<dt><a name="5."
>5.</a></dt>
Update the debian/copyright file in ~/deb/parrot/parrot&#45;&#60;version&#62;/. Check for any removed files that no longer need copyright notices. Update the years in the Parrot Foundation copyright line if needed.
<dt><a name="6."
>6.</a></dt>
Make sure you have <code>quilt</code> installed. Run:
<pre>  $ aptitude install quilt</pre>

<dt><a name="7."
>7.</a></dt>
Regenerate the debian/control file. From the ~/deb/parrot/parrot&#45;&#60;version&#62;/ directory, run:
<pre>  $ debian/rules debian&#45;control&#45;stamp</pre>

<dt><a name="8."
>8.</a></dt>
Install all dependencies:
<pre>  $ sudo /usr/lib/pbuilder/pbuilder&#45;satisfydepends</pre>

<dt><a name="9."
>9.</a></dt>
Build the packages. From ~/deb/parrot/parrot_&#60;version&#62;/, run:
<pre>  $ export DEBSIGN_KEYID=&#34;&#60;gpg key id&#62;&#34;
  $ debuild</pre>

<dt><a name="10."
>10.</a></dt>
Check the package for errors. From ~/deb/parrot, run:
<pre>  $ lintian &#45;i parrot_&#60;version&#62;.changes</pre>

<dt><a name="11."
>11.</a></dt>
Commit all changes made to the files in the debian/ directory to the Parrot repository.
<dt><a name="12."
>12.</a></dt>
Upload the packages to <a href="http://alioth.debian.org.">http://alioth.debian.org.</a> (If you don&#39;t have admin privileges, ask someone who does.) From any of the project pages, click on the &#34;Admin&#34; tab, then the &#34;FRS Admin&#34; link on the bottom of the page, then the link to &#34;quick&#45;release a file&#34;.Select the appropriate &#34;Package ID&#34; for the file (the same as the filename without the version). For the &#34;Release Name&#34; use the current version number (e.g. 0.6.1). For the &#34;Release Date&#34; use the date and time you listed in the debian changelog file (the date and time the debian package was created, not Parrot&#39;s release date for that version). For the &#34;Release Notes&#34; use the standard release text (the email/website/press announcement) without the change list. For the &#34;Change Log&#34; use the change list from the standard release text. Also check &#34;Preserve my pre&#45;formatted text&#34;.</dl>

<h1><a name="SEE_ALSO"
>SEE ALSO</a></h1>

<p><em>README</em>, <em>RESPONSIBLE_PARTIES</em>.</p>

<h1><a name="Appendix_1"
>Appendix 1</a></h1>

<p>Parrot Debian Release Managers</p>

<pre> &#45; Allison Randal
 &#45; Nuno Carvalho
 &#45; Patrick Michaud</pre>

<p>Parrot Debian Sponsors</p>

<pre> &#45; Colin Watson
 &#45; Jeff Bailey
 &#45; Benjamin Mako Hill</pre>

<h1><a name="Appendix_2"
>Appendix 2</a></h1>

<p>Set up instructions for new Debian Parrot release managers.</p>

<dl>
<dt><a name="0."
>0.</a></dt>
Create an account on <a href="http://alioth.debian.org">http://alioth.debian.org</a> and request to join the group pkg&#45;parrot.
<dt><a name="1."
>1.</a></dt>
If you will be uploading through a sponsor, create an account on <a href="http://mentors.debian.net.">http://mentors.debian.net.</a>
<dt><a name="2."
>2.</a></dt>
Set up a chroot environment for building packages. See &#60;<a href="http://trac.parrot.org/parrot/wiki/ChrootSetup">http://trac.parrot.org/parrot/wiki/ChrootSetup</a>&#62;.</dl>
            </div> <!-- "mainbody" -->
            <div id="divider"></div>
            <div id="footer">
	        Copyright &copy; 2002-2011, Parrot Foundation.
            </div>
        </div> <!-- "wrapper" -->
    </body>
</html>