dotgnu-general
[Top][All Lists]
Advanced

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

[DotGNU]Mandrake RPMs release procedure (was Re: Comments Wanted: Releas


From: Stephen Compall
Subject: [DotGNU]Mandrake RPMs release procedure (was Re: Comments Wanted: Release Check List)
Date: Mon, 10 Feb 2003 01:03:46 -0600
User-agent: KMail/1.5

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

The following is done in XHTML, to be completely pedantic. Hope you can 
read it.

On Saturday 08 February 2003 04:13 am, Rhys Weatherley wrote:
> The important point is that we document the processes involved in
> sufficient detail that the average hamster can perform them in a
> pinch if someone has an emergency all of a sudden and can't build the
> rpm's or something.

<h3>Environment for Mandrake RPMs</h3>

<p>My rpm tree is /home/sirian/rpm; under that directory are directories 
<tt>BUILD</tt>, <tt>RPMS</tt>, <tt>SOURCES</tt>, <tt>SPECS</tt>, 
<tt>SRPMS</tt>. When I refer to one of those names, it's that 
directory.</p>

<p>This should be in ~/.rpmrc:
<br /><pre>buildarchtranslate: i386: i586
buildarchtranslate: i486: i586
buildarchtranslate: i586: i586
buildarchtranslate: i686: i586</pre></p>

<p>This is my ~/.rpmmacros, modify it appropriately to match your paths:
<br /><pre>%_topdir               /home/sirian/rpm
%_tmppath              /home/sirian/rpm/tmp

%_signature            gpg
%_gpg_name             Stephen Compall
%_gpg_path             ~/.gnupg
%distribution          Mandrake Linux
%vendor                Stephen Compall</pre></p>

<h3>Procedure for Mandrake RPMs</h3>

<ol>
<li>Remove old installs of treecc, pnet, and pnetlib; should be easy if 
you used the previous version's RPMs :)</li>

<li>Download new tarballs of treecc, pnet, and pnetlib to 
<tt>SOURCES</tt>.</li>

<li>Write <tt>treecc.spec.in</tt> from the treecc CVS tree to 
<tt>SPECS/treecc.spec</tt>.</li>

<li>Change `Version: @VERSION@' to `Version: 0.2.2', with `0.2.2' being 
whatever the version triplet is for this release. Change `Release: ...' 
to `Release: 1mdk'. If the RPM turns out bad, you'll do another one 
with `2mdk', etc. Probably the first one will be fine though. WARNING: 
the treecc version numbers are <em>different</em> than the pnet version 
numbers.</li>

<li>Change `Group: Development/Tools' to `Group: 
Development/Other'.</li>

<li>Remove `Vendor: DotGNU'.</li>

<li>Add a changelog entry to the top of the existing ones at the bottom 
of the spec. Note: I have several <var>x</var>mdk entries in my local 
treecc specs, but duplicating these are not vital. Here's a model 
changelog entry:<br /><pre
>* Fri Feb 07 2003 Stephen Compall &lt;address@hidden> 0.2.2-1mdk
- - 0.2.2</pre></li>

<li>Save your spec, cd into <tt>SPECS</tt>, and run: <tt>rpm --sign -ba 
treecc.spec</tt> If you forget the --sign part, you can do <tt>rpm 
- --addsign on the resulting SRPM and RPM in their respective 
directories; if you don't have a <a 
href="http://www.gnupg.org";>GnuPG</a> signature, go get one.</li>

<li>Install the treecc RPM; it's in <tt>RPMS/i586</tt>. Pnet depends on 
it being installed as an RPM, so your source `make install' won't do. 
<tt>rpm -i ../RPMS/i586/treecc-0.2.2-1mdk.i586.rpm</tt>, for 
example.</li>

<li>Do the same with pnet:</li>
<ul>
<li>Write pnet.spec.in to <tt>SPECS/pnet.spec</tt></li>
<li>Change version and release</li>
<li>Change groups to `Development/Other' (note: there are 4 places to do 
this in pnet.spec</li>
<li>Remove `Vendor: DotGNU'</li>
<li>add-change-log-entry</li>
<li>rpm --sign -ba (note, this makes 3 binary packages)</li>
<li>uninstall old, install new</li>
</ul>

If you get weird libtool errors, er, I dunno, but to take a wild guess, 
I took /usr/local/bin (where I have the latest version of libtool 
installed) out of my path, and they went away. Go figure.</li>

<li>pnetlib is the same, except you don't have to install it (as there's 
nothing left to build :). Also, I use Group: System/Libraries for it, 
so fix that up.</li>

<li>Upload all the pnet, pnetlib, and treecc RPMs in <tt>SRPMS</tt>, 
<tt>RPMS/noarch</tt>, and <tt>RPMS/i586</tt> (replaced with correct 
platform) onto csserver, all in same directory: 
<tt>/home/sc87/www_home/dotgnu/pnet-rpm/Mandrake/</tt> is the 
directory. You can't really do this if you're not me <tt>:-]</tt></li>

<li>Change the links in 
<tt>/home/sc87/www_home/dotgnu/pnet-rpm/index.html</tt> to point to the 
new RPMs. You can't do this if you're not me either. Maybe you can host 
the RPMs and SRPMs yourself.</li>

<li>Tell <a href="http://dotgnu.org/people.html";>Gopal.V</a> about the 
new RPMs (and, er, their locations), so he can update the downloads 
site. Your work is done!</li>
</ol>

- -- 
Stephen Compall - Also known as S11001001
DotGNU `Contributor' -- http://dotgnu.org
Jabber ID: address@hidden

Theoretically [raising copyright duration from 75 to 95 years] would
increase the incentive to write new works; but any publisher that
claims to need this extra incentive should substantiate the claim with
projected balance sheets for the year 2075.
        -- RMS, "Misinterpreting Copyright"
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE+R07W2AceYinZ4EgRAtw/AJ9sqId9aXD5pF9YPbvUNEJrF2DSjwCbBwL6
UfSoLJ1VeZpdF2eUltCdupM=
=5dZF
-----END PGP SIGNATURE-----



reply via email to

[Prev in Thread] Current Thread [Next in Thread]