[Fedora-packaging] disttag

Dag Wieers dag at wieers.com
Fri Feb 25 01:07:01 UTC 2005

On Thu, 24 Feb 2005, Tom 'spot' Callaway wrote:

> On Fri, 2005-02-25 at 00:49 +0100, Dag Wieers wrote:
> >With the high probability of being flamed again, RPMforge settled for:
> >
> >0.el2 < 0.rh7 < 0.rh8 < 0.rh9 < 1.el3 < 1.fc1 < 1.fc2 < 1.fc3 < 2.el4 < 2.fc4 < 2.fc5
> >
> >with the advantage of having an upgrade path between EL and FC. I know 
> >it's controversial but at least if fulfills an important goal (even though 
> >Red Hat does not support upgrades between Fedora and Enterprise).
> The very topic is outside of the scope of Fedora Extras, however, no one
> is trying to make life harder for anyone upgrading between Fedora and
> Enterprise (their life is painful enough).
> I'm not opposed to it. Would you be willing to try and modify the macros
> I posted earlier to fit that schema?
> >Disttags are never part of the SPEC file in our case but the 
> >pre-processing of the SPEC file before building makes sure it is there 
> >when it is needed.
> The goal of the macros is to have %{disttag} defined by the build
> environment, and thus, always be correct, rather than having to pass a
> value to the spec for some packages that use it, since some packages
> won't.

Ok, in my opinion it's better to have every package adore to the disttag 
for the sole reason that you have a grip on what is upgraded and what 
isn't. Of course, that's what the Distribution-header can be used for (if 
Red Hat starts using it ! :))

On the other hand the Distribution-header does not make up for unique 
filenames, which I think is in favor of mandatory disttags. (Although 
filenames could be renamed to reflect the disttag, without 'polluting' the 

Previous threads have touched the same subject with all the different 
opinions attached to it :)

PS Another reason why we do not have the disttag inside a macro is because 
the SRPMs are distribution agnostic too. If the 'dot' is part of the macro 
and the macro is void when building the SRPM you can achieve the same 
result. But a single rpmbuild --rebuild will no longer be sufficient, 
unless you rewrite the SPEC file and define the voided disttag. If you do 
that, you might as well pre-process the SPEC file before building anyway.

> >We also have a special disttag '0' to indicate a distribution-agnostic 
> >package. Which we mainly use for big packages (artwork, game data, ...).
> IMHO, these packages don't need a disttag at all if they're truly
> distribution agnostic.

I agree, but on the other hand, tools should be able to tell (by using 
globs) what packages are distribution agnostic, and a single '0' is 
something you can more easily glob onto, than the absence of any disttag.

I know this is not the best reason to have '0', but checking each file to 
see if it does not have the disttag (out of a list of disttags) is much 
harder than just looking of there is a '0' before the repotag. 

	ln -sf packages/*/*.0.$repotag.$arch.rpm redhat/el3/$arch/$repotag/

And the '0' is harmless.

--   dag wieers,  dag at wieers.com,  http://dag.wieers.com/   --
[all I want is a warm bed and a kind word and unlimited power]

More information about the Fedora-packaging mailing list