Bug 188625

Summary: Review Request: AllegroOGG - Ogg library for use with the Allegro game library
Product: [Fedora] Fedora Reporter: Hans de Goede <hdegoede>
Component: Package ReviewAssignee: Wart <wart>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Package Reviews List <fedora-package-review>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhide   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-04-30 07:41:09 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 163779, 190267    

Description Hans de Goede 2006-04-11 20:31:02 UTC
Spec URL: http://home.zonnet.nl/jwrdegoede/AleegroOgg.spec
SRPM URL: http://home.zonnet.nl/jwrdegoede/AleegroOgg-1.0.3-1.src.rpm
Description:
AllegroOGG is an Allegro wrapper for the Ogg Vorbis decoder from the Xiph.org
foundation. This lib lets you play OGGs and convert OGGs to Allegro SAMPLEs
amongst a lot of other capabilites.

Comment 1 Hans de Goede 2006-04-11 20:37:27 UTC
Before I forget the ugly name is because there are 2 alogg libraries out there,
one which is called just alogg and one which is called AllegroOgg but still use
alogg as soname. I hope we never need the other alogg otherwise I see a problem,
but with this name atleast its clear which alogg this is.


Comment 2 Ville Skyttä 2006-04-11 20:58:17 UTC
s/AllegroOgg/allegro-ogg/ ?  BTW, the name is so ugly that you seem to have
misspelled it in the URLs (AleegroOgg) :)

Comment 3 Hans de Goede 2006-04-12 04:25:25 UTC
Indeed I have working URL's:
Spec URL: http://home.zonnet.nl/jwrdegoede/AllegroOgg.spec
SRPM URL: http://home.zonnet.nl/jwrdegoede/AllegroOgg-1.0.3-1.src.rpm

Comment 4 Hans de Goede 2006-04-12 04:26:30 UTC
Oops,

Hit "Save Changes" a bit too soon. Anybody else have opinions on the name? I
personally like AllegroOgg better, esp. because that is what upstream uses
including the Capitalization.


Comment 5 Christopher Stone 2006-04-13 19:35:05 UTC
allegro-ogg makes me think that it's part of the allego source packages. 
AllegoOgg seems fine to me.

Comment 6 Ville Skyttä 2006-04-13 19:58:31 UTC
(In reply to comment #5)
> allegro-ogg makes me think that it's part of the allego source packages. 

FWIW, it's a usual way of naming addon/plugin packages to which people are
accustomed to.
http://fedoraproject.org/wiki/Packaging/NamingGuidelines#head-e865dfbf5ffb4156a1bdf299ace96f48af903a7a

Comment 7 Hans de Goede 2006-04-13 21:02:32 UTC
I still don't like allegro-ogg because:
-people won't be able to find allegroogg if they are looking for it, if
 I want to see if something is already in FE, usualy because I need it as a 
 requierement I usualy do a yum list "*<name>*". Now I know if the <name> is
 perl-* or *-perl or the samewith python to only search for the * part, but in 
 this case I'm seriously concerned that people won't be able to find it.
-it indeed suggests that its a subpackage of allegro, which make the unique 
 identifier part purely -ogg, but the problem in the first place is that there
 are 2 alogg's:
 http://lyrian.obnix.com/alogg/
 http://nekros.freeshell.org/delirium/alogg.html

Since I want to avoid confusion I _really?_ want to use the upstream name,
including ugly caps, so I guess I should name it AlegroOGG althouhg I find
AllegroOgg better (less ugly) and that also makes it clear which alogg it is.

 

Comment 8 Wart 2006-04-18 14:07:59 UTC
The real conflict with these two libraries is that they both create libraries
with the basename of 'alogg'.  If you're worried about conflicts, then renaming
the spec file isn't enough.

The packaging guidelines don't give an unambiguous answer about the name, however:
"When naming a package, the name should match the upstream tarball or project
name from which this software came."
In this case, the upstream tarball and project name don't match.  As a fallback:
"If this package has been packaged by other distributions/packagers in the past,
then you should try to match their name for consistency."
In this case, I wasn't able to find any other distributions that package this
particular library.  I did find the other 'alogg' in Debian, however.  I would
interpret the guidelines to mean that this other alogg should get priority for
the 'alogg' name, and Hans' choice to use AllegroOgg to match the upstream
package name is entirely appropriate.

Comment 9 Wart 2006-04-19 00:01:01 UTC
MUST
====
* rmplint output:
W: AllegroOgg-devel no-documentation
docs are included in the base package; this warning can be ignored.

* Package name acceptible (see earlier discussion)
* Spec file name matches package name
* Source matches upstream
  b4e99081acdb4bedb3206bdfb3b4d209  alogg.zip
* BSD license ok, license file included
* Spec file legible and in Am. English
* Package builds in mock on multiple platforms:
  FC4-i386, FC4-x86_64, FC5-i386, FC5-x86_64
* BR ok with one exception (see below)
* No Locales
* ldconfig called for shared libs
* Not relocatable
* Doesn't create any directories that it needs to own
* No duplicate %files
* header files and .so (no suffix) live in -devel package
* No .desktop file needed
* No .la files included
* -devel requires base package

MUSTFIX
=======
* libogg-devel is already required by libvorbis-devel

The blocker is minor, so feel free to remove it after importing.

APPROVED.


Comment 10 Hans de Goede 2006-04-23 21:20:28 UTC
Mike,

Thanks for the review! I've not imported this sofar, because the fact that
debian has the other alogg packaged worries me, this means that the other one is
used by some free software too, so sooner or later we will need to package it
too. I think I'll just start packaging the other one right away so that I can
find any conflicts now and come up with a resolution, before a bunch of packages
depends on one or the other.

Once I've got a new version I'll get back to you through this BZ-ticket. This
weekend all my time has been sunk into packaging gcompris, a bit of a !#$% to
package but well worth it if you feel like doing an interesting review take a
look at bug 189717 .





Comment 11 Hans de Goede 2006-04-26 09:52:31 UTC
I've decided to discuss how to best handle this on the fedora-games-list see:
https://www.redhat.com/archives/fedora-games-list/2006-April/msg00042.html


Comment 12 Hans de Goede 2006-04-29 08:46:07 UTC
There wasn't much discusion, so I'm going to "fix" this by doing things as
suggested in my initial proposal to the list:

So there we are 2 different ogg support for use with allegro support libraries
both installing:

/usr/lib/libalogg.so

One of them installs:
alogg.h

And the other:
alogg/alogg.h


Which also seems like an accident waiting to happen. I'm thinking of solving
this by:

-give AllegroOGG a new soname: libAllegroOGG.so, or should I give them
 both a new name, and in that case what should I use for alogg?
-putting all the header files of both in seperate dirs under include:
 /usr/include/allog/(alogg/alogg.h)
 /usr/include/AllegroOGG/(allogg.h)
-modifying allog-config todo the right thing for alogg
-use pkgconfig for AllegroOgg
-patch AllegroOGG using programs to use pkgconfig. Currently only raidem
 can use AllegroOGG (I have a new version ready which adds ogg support
 as a replacement for the stripped out mp3 support, giving raidem its
 background music back).


I'll post links to a new specfile and SRPM once I'm done, in the mean time I'm
resetting this to FE-REVIEW :|

Comment 13 Hans de Goede 2006-04-29 11:45:54 UTC
New version:
* Sat Apr 20 2006 Hans de Goede <j.w.r.degoede> 1.0.3-2
- Rename .so file from liballog.so(.0) to libAllegroOGG.so(.0) and put the
  headers in /usr/include/AllegroOGG to avoid any future conflicts with the
  (unpackaged) alogg library which unsurprisingly installs libalogg.so too.
- Add a pkgconfig file to allow apps to get the proper CFLAGS and LIBS for
  this change. (bz 188625)

Spec URL: http://home.zonnet.nl/jwrdegoede/AllegroOGG.spec
SRPM URL: http://home.zonnet.nl/jwrdegoede/AllegroOGG-1.0.3-2.src.rpm


Comment 14 Wart 2006-04-30 03:00:25 UTC
Most of the initial review still holds true, so I'll only comment on the new
changes:

* pkgconfig file part of -devel
* header file and .so (no suffix) part of -devel
* Package named correctly (Ogg -> OGG is fine, and even matches upstream better)

rpmlint output:
W: AllegroOGG-devel no-documentation
...which is ok to ignore since there is no -devel specific documentation and
-devel requires the base package, which provides the package documentation.

APPROVED

Comment 15 Hans de Goede 2006-04-30 06:55:01 UTC
Thanks (twice!),

Imported & Build.


Comment 16 Hans de Goede 2006-05-06 07:27:01 UTC
Modifying the Summary, because it seems that:
http://fedoraproject.org/wiki/Extras/PackageStatus

Gets confused by the change in capatialization done from Ogg to OGG in the name
to even better match the upstream name.