Bug 483863

Summary: Review Request: g3dviewer - A 3D file/object viewer
Product: [Fedora] Fedora Reporter: Fabian Affolter <mail>
Component: Package ReviewAssignee: Susi Lehtola <susi.lehtola>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: bjrosen, fedora-package-review, notting, susi.lehtola
Target Milestone: ---Flags: susi.lehtola: fedora-review+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-12-16 09:58:55 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: 483859    
Bug Blocks:    

Description Fabian Affolter 2009-02-03 23:49:43 UTC
Spec URL: http://fab.fedorapeople.org/packages/SRPMS/g3dviewer.spec
SRPM URL: http://fab.fedorapeople.org/packages/SRPMS/g3dviewer-0.2.99.4-1.fc10.src.rpm

Project URL: http://automagically.de/g3dviewer/

Description:
G3DViewer is a 3D file viewer for GTK+ supporting a variety of file types:

* 3D Studio (.3ds, .prj)
* LightWave (.lw, .lwb, .lwo)
* Alias Wavefront (.obj)
* Impulse TurboSilver / Imagine (.iob)
* AutoCAD (.dxf)
* Quake II Models (.md2)
* Quake III Models (.md3)
* Neutral File Format (.nff)
* 3D Metafile (.3dmf, .3mf, .b3d)
* Caligari TrueSpace Objects (.cob)
* Quick3D Objects & Scenes (.q3o, q3s)
* VRML 1.0 files (.wrl, .vrml)
* AC3D objects (.ac, .acc)
* LeoCAD Models (.lcd)
* Racer car models (.ar, .dof)
* Ultimate Stunts car models (.glb)
* VDrift car models (.joe, .car)
* COLLADA & G**gle Earth (.dae, .kmz)
* LDraw (.dat, .mpd)
* ASCII Scene Exporter (.ase)


Koji scratch build:
depends on libg3d

rpmlint output:
[fab@laptop24 i386]$ rpmlint g3dviewer*
2 packages and 0 specfiles checked; 0 errors, 0 warnings.

[fab@laptop24 SRPMS]$ rpmlint g3dviewer-0.2.99.4-1.fc10.src.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.

Comment 1 Joshua Rosen 2009-08-14 20:38:55 UTC
This is an informal review, I'm just learning the packaging process.

I can't find libg3d-devel in any repository, where do I get it from?

Also wouldn't it be better to submit a package based on a recent version of this program? On
the upstream site the current version is 0.8, this is for 0.2.99.4 which is from 2006.


#  MUST: rpmlint must be run on every package. The output should be posted in the review.[1]	OK
/home/bjrosen/rpmbuild/SPECS> rpmlint g3dviewer.spec 
0 packages and 1 specfiles checked; 0 errors, 0 warnings.

# MUST: The package must be named according to the Package Naming Guidelines .	OK
# MUST: The spec file name must match the base package %{name}, in the format %{name}.spec unless your package has an exemption. [2] . OK
# MUST: The package must meet the Packaging Guidelines . ??
# MUST: The package must be licensed with a Fedora approved license and meet the Licensing Guidelines . OK
# MUST: The License field in the package spec file must match the actual license. [3] OK
# MUST: The spec file must be written in American English. [5] OK
# MUST: The spec file for the package MUST be legible. [6] OK
# MUST: The sources used to build the package must match the upstream source ** This is a 3 year old version, the current version is 0.0.8. Wouldn't it be better to submit a current package?"
# MUST: The package MUST successfully compile and build into binary rpms on at least one primary architecture. ??
# MUST: If the package does not successfully compile, build or work on an architecture, ??
# MUST: All build dependencies must be listed in BuildRequires ??
# MUST: The spec file MUST handle locales properly. ??
# MUST: Every binary RPM package (or subpackage) which stores shared library files (not just symlinks) in any of the dynamic linker's default paths ??
# MUST: If the package is designed to be relocatable, ??
# MUST: A package must own all directories that it creates. ??
# MUST: A Fedora package must not list a file more than once in the spec file's %files listings. OK
# MUST: Permissions on files must be set properly. Executables should be set with executable permissions, OK
# MUST: Each package must have a %clean section, which contains rm -rf %{buildroot} (or $RPM_BUILD_ROOT). OK
# MUST: Each package must consistently use macros. OK
# MUST: The package must contain code, or permissable content. OK
# MUST: Large documentation files must go in a -doc subpackage. ??
# MUST: If a package includes something as %doc, it must not affect the runtime of the application. ??
# MUST: Header files must be in a -devel package. ??
# MUST: Static libraries must be in a -static package. ??
# MUST: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig' (for directory ownership and usability). ??
# MUST: If a package contains library files with a suffix (e.g. libfoo.so.1.1), then library files that end in .so (without suffix) must go in a -devel package. ??
# MUST: In the vast majority of cases, devel packages must require the base package using a fully versioned dependency: Requires: %{name} = %{version}-%{release} OK
# MUST: Packages must NOT contain any .la libtool archives, these must be removed in the spec if they are built.??
# MUST: Packages containing GUI applications must include a %{name}.desktop file, and that file must be properly installed with desktop-file-install in the %install section. OK
# MUST: Packages must not own files or directories already owned by other packages. OK
# MUST: At the beginning of %install, each package MUST run rm -rf %{buildroot} (or $RPM_BUILD_ROOT). OK
# MUST: All filenames in rpm packages must be valid UTF-8 OK

Comment 2 Susi Lehtola 2009-08-14 21:17:45 UTC
Joshua: this bug depends on bug 483859, i.e. libg3d.


Taking over review.

Comment 3 Susi Lehtola 2009-08-14 21:25:27 UTC
Fabian: please update to newest version available.

Comment 4 Fabian Affolter 2009-08-14 22:24:43 UTC
(In reply to comment #1)
> Also wouldn't it be better to submit a package based on a recent version of
> this program? On
> the upstream site the current version is 0.8, this is for 0.2.99.4 which is
> from 2006.

I can't find any details on the upstream website that 0.2.99.4 isn't the latest release.  libg3d 0.0.8 was released at 2009-01-19.

Comment 5 Joshua Rosen 2009-08-14 22:34:02 UTC
I mistook the library for the application. It specifies libg3d for the 2009 releases whereas the 2006 releases just say Preview edition. I assumed they were the same but I was wrong.

Comment 6 Susi Lehtola 2009-08-14 22:43:57 UTC
Fooled me too, didn't check carefully enough :D

Joshua: please do the full review. You need to build the dependency first and build this package using it. It's possible in mock by making a local repository.

Comment 7 Joshua Rosen 2009-08-16 22:24:04 UTC
This is an informal review, I'm just learning the packaging process.

I've built and installed this package on 32 bit F11. The application appears on the Applications/Graphics menu which is the logical place for it. I starts up correctly.

#  MUST: rpmlint must be run on every package. The output should be posted in the review.[1]	OK
/home/bjrosen/rpmbuild/SPECS> rpmlint g3dviewer.spec 
0 packages and 1 specfiles checked; 0 errors, 0 warnings.

# MUST: The package must be named according to the Package Naming Guidelines .	OK
# MUST: The spec file name must match the base package %{name}, in the format %{name}.spec unless your package has an exemption. [2] . OK
# MUST: The package must meet the Packaging Guidelines . OK
# MUST: The package must be licensed with a Fedora approved license and meet the Licensing Guidelines . OK
# MUST: The License field in the package spec file must match the actual license. [3] OK
# MUST: The spec file must be written in American English. [5] OK
# MUST: The spec file for the package MUST be legible. [6] OK
# MUST: The sources used to build the package must match the upstream source. OK
# MUST: The package MUST successfully compile and build into binary rpms on at least one primary architecture. OK
# MUST: If the package does not successfully compile, build or work on an architecture, NA
# MUST: All build dependencies must be listed in BuildRequires OK
# MUST: The spec file MUST handle locales properly. OK
# MUST: Every binary RPM package (or subpackage) which stores shared library files (not just symlinks) in any of the dynamic linker's default paths OK
# MUST: If the package is designed to be relocatable, NA
# MUST: A package must own all directories that it creates. OK
# MUST: A Fedora package must not list a file more than once in the spec file's %files listings. OK
# MUST: Permissions on files must be set properly. Executables should be set with executable permissions, OK
# MUST: Each package must have a %clean section, which contains rm -rf %{buildroot} (or $RPM_BUILD_ROOT). OK
# MUST: Each package must consistently use macros. OK
# MUST: The package must contain code, or permissable content. OK
# MUST: Large documentation files must go in a -doc subpackage. NA
# MUST: If a package includes something as %doc, it must not affect the runtime of the application. OK
# MUST: Header files must be in a -devel package. OK
# MUST: Static libraries must be in a -static package. OK, --disable-static switch in the %build section
# MUST: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig' (for directory ownership and usability). NA
# MUST: If a package contains library files with a suffix (e.g. libfoo.so.1.1), then library files that end in .so (without suffix) must go in a -devel package. OK
# MUST: In the vast majority of cases, devel packages must require the base package using a fully versioned dependency: Requires: %{name} = %{version}-%{release} OK
# MUST: Packages must NOT contain any .la libtool archives, these must be removed in the spec if they are built. OK
# MUST: Packages containing GUI applications must include a %{name}.desktop file, and that file must be properly installed with desktop-file-install in the %install section. OK
# MUST: Packages must not own files or directories already owned by other packages. OK
# MUST: At the beginning of %install, each package MUST run rm -rf %{buildroot} (or $RPM_BUILD_ROOT). OK
# MUST: All filenames in rpm packages must be valid UTF-8 OK

Comment 8 Susi Lehtola 2009-08-17 06:41:53 UTC
rpmlint output is clean.


MUST: The package does not yet exist in Fedora. The Review Request is not a duplicate. OK

MUST: The spec file for the package is legible and macros are used consistently. ~OK
- For consistency I'd change
 %{_bindir}/g3d*
to
 %{_bindir}/%{name}
 %{_bindir}/g3d-thumbnailer
(It's better style to use %{name} consistently in %files.)

MUST: The package must be named according to the Package Naming Guidelines. OK
MUST: The spec file name must match the base package %{name}. OK
MUST: The package must be licensed with a Fedora approved license and meet the  Licensing Guidelines. OK
MUST: The License field in the package spec file must match the actual license. OK
MUST: The sources used to build the package must match the upstream source, as provided in the spec URL. OK
MUST: The package MUST successfully compile and build into binary rpms. OK
MUST: The spec file MUST handle locales properly. OK
MUST: Optflags are used and time stamps preserved. OK
MUST: Packages containing shared library files must call ldconfig. N/A
MUST: A package must own all directories that it creates or require the package that owns the directory. OK
MUST: Files only listed once in %files listings. OK
MUST: Debuginfo package is complete. OK
MUST: Permissions on files must be set properly. OK
MUST: Clean section exists. OK
MUST: Large documentation files must go in a -doc subpackage. N/A

MUST: All relevant items are included in %doc. Items in %doc do not affect runtime of application. NEEDSWORK
- Missing CREDITS.

MUST: Header files must be in a -devel package. N/A
MUST: Static libraries must be in a -static package. N/A
MUST: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig'. N/A
MUST: If a package contains library files with a suffix then library files ending in .so must go in a -devel package. N/A
MUST: In the vast majority of cases, devel packages must require the base package using a fully versioned dependency. N/A
MUST: Packages does not contain any .la libtool archives. N/A
MUST: Desktop files are installed properly. OK
MUST: No file conflicts with other packages and no general names. OK
MUST: Buildroot cleaned before install. OK
SHOULD: %{?dist} tag is used in release. OK
SHOULD: If the package does not include license text(s) as separate files from upstream, the packager should query upstream to include it. OK
SHOULD: The package builds in mock. OK

**

Joshua: you missed the missing file in %doc. (However, we don't ship files related to installation such as INSTALL.)

**

The issues are minor; with these notes the package is 

APPROVED

please fix the issues before CVS import.

Comment 9 Fabian Affolter 2009-10-02 09:13:00 UTC
Thanks guys...as soon libg3d (#483859) is done this package will go into the Fedora Package Collection

Comment 10 Susi Lehtola 2010-01-01 22:56:07 UTC
OK, let's hope libg3d gets reviewed soon so that we can close this bug.

Comment 11 Susi Lehtola 2011-12-16 09:58:55 UTC
Well, looks like libg3d isn't going anywhere, so there's no sense in keeping this bug open. Closing as WONTFIX.