Mailinglist Archive: opensuse-packaging (57 mails)

< Previous Next >
Re: [opensuse-packaging] packaging made simple.
  • From: David Bolt <bcrafhfr-cnpxntvat@xxxxxxxxxx>
  • Date: Sat, 19 Aug 2006 22:21:18 +0100
  • Message-id: <CwGieMOOD45EFwB6@xxxxxxxxxxxxxxxxxxx>
On Sat, 19 Aug 2006, Pascal Bleser <pascal.bleser@xxxxxxxxx> wrote:-

>jdd wrote:
>> Pascal Bleser a écrit :
>>> "packaging made simple" - I'm afraid it's not simple, at least making
>>> good packages isn't.
>>
>> I'm sure there are case where it's simple.
>> sometime a small hammer is better than a big one :-)
>
>Of course, you're right, I maintain RPMs for over 700 projects and it's
>just about 4 or 5 years I'm building RPMs every single day.

This is where a "thank you" gets inserted. Not only for the work doing
the packaging, as well as all those others that are doing the same, but
also for being here so that others can pick you brains :)

<Snip>

>So, what do you want ? Us to make the spec file for you or *learn* how
>to build RPMs ?

You do realise that those two options aren't actually exclusive? I'm
still learning[0] how to build RPMs and, as a starter, I used other spec
files as examples[1]. To help me understand things, I also used the
Maximum RPM guide, a quite older version than the one the Fedora project
maintains.

The SUSE Package Conventions helped with some (okay, a lot) of the
SUSE-specific things. Added to this I spent some time looking at other
links found using Google.

Finally, this list has also helped. There are things I've learnt by
reading threads here that I probably missed while skimming through the
other documents.

Just as examples, the thread about "Packaging style guidelines" showed
me that I really should use %{optflags}[2] or %{buildroot}.

The thread "The beginning of a repo" showed me that using %configure
instead of using ./configure <loads of options here> would save a load
of typing, as well as setting all the options I was likely to require.
You might remember that one as well, since even you moved over to using
it at because of that thread.


In other words, writing the spec out for someone can help them learn as
long as there is an explanation of what each part does. This is
something I failed with when I wrote the spec for jdd. I didn't add
enough comments to explain things.

Of course, there is also the point about the person actually wanting to
learn. Without that, a lot of the effort is wasted. The good news is
that the effort wouldn't be completely wasted though. There's likely to
be other people that will read and learn from the information given,
even if the person you're trying to teach doesn't at the time.


[0] And don't expect to stop learning at any point this side of my
grave. I'm presently trying to figure out how to make a base RPM that is
architecture specific, at the same time as making a development RPM that
isn't.

[1] Which is why there was a "rm -rf %{buildroot}" in the install
section. IIRC, I picked that up from a Mandrake/Mandriva spec file I was
converting, and just carried it across to other files that I wrote from
scratch. My lesson for today is "Don't Do That Again(tm)." It also looks
like your guess of 60% of spec files being wrong isn't just applicable
to SUSE packages, but may also apply to other RPM based distributions as
well.

[2] something I hadn't been doing, nor need to when I use %configure.

Regards,
David Bolt

--
Member of Team Acorn checking nodes at 50 Mnodes/s: http://www.distributed.net/
AMD1800 1Gb WinXP/SUSE 9.3 | AMD2400 256Mb SuSE 9.0 | A3010 4Mb RISCOS 3.11
AMD2400(32) 768Mb SUSE 10.0 | Falcon 14Mb TOS 4.02 | A4000 4Mb RISCOS 3.11
AMD2600(64) 512Mb SUSE 10.0 | | RPC600 129Mb RISCOS 3.6
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-packaging+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-packaging+help@xxxxxxxxxxxx

< Previous Next >
Follow Ups