Hi,

So, AFAIK build.meego.com is closed, so many people probably don't
know what it means to maintain a package in MeeGo. Let's shine some
light on that.

Say you have a package that has a spec file that is distro-agnostic,
like git does[1]. In Fedora, openSUSE, and other RPM-based distros,
all you need to do is make sure that the spec file conforms to their
guidelines, which are pretty similar among distros. Since there's so
much common ground, it's possible to have a distro-agnostic spec file
that conforms to the guidelines of many distros, and if not, probably
require minor modifications.

So one would expect that such distro-agnostic spec file can be use in
MeeGo too, right?

Wrong. MeeGo doesn't use spec files at all (which is how RPMs are
supposed to be built). Instead, maintainers are supposed to write
spectacle YAML files which are used in turn to generate spec files.

It's still being discussed internally whether spectacle YAML files are
mandatory or not, but it seems they will be since "there is tooling
around them", so at the very least distro-agnostic spec files need to
be converted to spectacle YAMLs.

Even if spectacle YAMLs are not mandatory, the %changes section would
have to be removed from the spec file, instead, a separate ".changes"
file should be provided which should follow a completely custom
format.

At this point it's clear that whatever format ends up being used to
generate packages is not RPM, but a deviation from it. Needless to
say, it's pretty far from the conventions of the community of
RPM-based distros, and doesn't allow distro-agnostic spec files.

Not to mention that the %{dist} tag is not allowed in the Release
filed of the spec file. Even if OBS automatically replaces the whole
Release field. So there's no functional reason; it's just a random
guideline. (it is enforced; my packages are rejected because of this)

And note that this has nothing to do with OBS; build.meego.com is
happy to handle conventional spec files; my packages are built just
fine without warnings.

It is purely a MeeGo guideline issue.

I discussed this internally without much success, so now I bring it to
the community. What is your take on this? I think it's preposterous.

[1] http://git.kernel.org/?p=git/git.git;a=blob;f=git.spec.in
[2] http://wiki.meego.com/Spectacle
[3] https://fedoraproject.org/wiki/Packaging/DistTag

-- 
Felipe Contreras
_______________________________________________
MeeGo-dev mailing list
[email protected]
http://lists.meego.com/listinfo/meego-dev

Reply via email to