Bug 498248

Summary: Review Request: viewmol - An open source graphical front end for computational chemistry programs
Product: [Fedora] Fedora Reporter: Susi Lehtola <susi.lehtola>
Component: Package ReviewAssignee: Christoph Wickert <christoph.wickert>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: christoph.wickert, fedora-package-review, notting
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: 2009-08-09 07:19:28 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: 501177    
Bug Blocks:    

Description Susi Lehtola 2009-04-29 15:37:31 UTC
Spec URL:
http://theory.physics.helsinki.fi/~jzlehtol/rpms/viewmol.spec

SRPM URL:
http://theory.physics.helsinki.fi/~jzlehtol/rpms/viewmol-2.4.1-1.fc10.src.rpm

Description:
Viewmol is an open source graphical front end for computational chemistry
programs. It is able to graphically aid in the generation of molecular
structures for computations and to visualize their results. Viewmol has
originally been developed by Jörg-Rüdiger Hill and Andreas Bleiber in the
Quantum Chemistry Group of Humboldt University with contributions by Arne
Dummer, Mariann Krossner, Andreas Bünger, and Andries de Man. Viewmol was
named an outstanding product in the German/Austrian Academic Software Award
1993.

rpmlint output:
viewmol.x86_64: E: script-without-shebang /usr/lib64/viewmol/readdmol.awk
3 packages and 0 specfiles checked; 1 errors, 0 warnings.

Comment 1 Christoph Wickert 2009-05-03 12:01:39 UTC
Desktop file includes a mime type, but you are not updating the desktop-database, see 
https://fedoraproject.org/wiki/Packaging/ScriptletSnippets#desktop-database

Plus you are not installing the mime stuff, see kde/install.

Comment 2 Susi Lehtola 2009-05-03 12:24:51 UTC
(In reply to comment #1)
> Desktop file includes a mime type, but you are not updating the
> desktop-database, see 
> https://fedoraproject.org/wiki/Packaging/ScriptletSnippets#desktop-database

Done. I'll post the new spec after you have reviewed other stuff as well.

> Plus you are not installing the mime stuff, see kde/install.  

Okay, about half the files are missing from chemical-mime-data. These really should go there as they are not application specific files.

Comment 3 Susi Lehtola 2009-05-17 08:51:01 UTC
I've contacted chemical-mime upstream to ask them to add the missing types. In the mean time, I've included them into this package.

http://theory.physics.helsinki.fi/~jzlehtol/rpms/viewmol.spec
http://theory.physics.helsinki.fi/~jzlehtol/rpms/viewmol-2.4.1-2.fc10.src.rpm

Comment 4 Christoph Wickert 2009-05-17 09:05:47 UTC
(In reply to comment #2)
> 
> Done. I'll post the new spec after you have reviewed other stuff as well.

What other stuff are you referring to? Anwthing else than bug # 498246?

Comment 5 Susi Lehtola 2009-05-17 09:41:14 UTC
(In reply to comment #4)
> (In reply to comment #2)
> > 
> > Done. I'll post the new spec after you have reviewed other stuff as well.
> 
> What other stuff are you referring to? Anwthing else than bug # 498246?  

No, I was thinking that I'd belay posting a new spec until you have done the review, then I could have fixed everything at once. However I've now posted a new spec&srpm which update the desktop database (and add the mime types as well).

Comment 6 Christoph Wickert 2009-05-24 21:30:22 UTC
REVIEW for viewmol-2.4.1-2.fc10.src.rpm  

FIX - MUST: rpmlint must be run on every package. The output should be posted in the review.

rpmlint Downloads/viewmol-2.4.1-2.fc12.i586.rpm 
viewmol.i586: E: script-without-shebang /usr/lib/viewmol/readdmol.awk
viewmol.i586: W: dangerous-command-in-%post mv
1 packages and 0 specfiles checked; 1 errors, 1 warnings.

OK - MUST: The package is named according to the Package Naming Guidelines.
OK - MUST: The spec file name matches the base package %{name}, in the format %{name}.spec.
OK - MUST: The package meets the Packaging Guidelines.
OK - MUST: The package is licensed with a Fedora approved license and meets the Licensing Guidelines: GPLv2+
OK - MUST: The License field in the package spec file matches the actual license.
OK - MUST: The license file from the source package is included in %doc.
OK - MUST: The spec file is in American English.
OK - MUST: The spec file for the package is legible.
OK - MUST: The sources used to build the package match the upstream source by MD5 c88cc5641bffc14d749e9759a1c813ac
OK - MUST: The package successfully compiles and builds into binary rpms on i386
N/A - MUST: If the package does not successfully compile, build or work on an architecture, then those architectures should be listed in the spec in ExcludeArch.
OK - MUST: All build dependencies are listed in BuildRequires.
N/A - MUST: The spec file handles locales properly with the %find_lang macro.
N/A - 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 call ldconfig in %post and %postun.
N/A - MUST: If the package is designed to be relocatable, the packager must state this fact in the request for review, along with the rationalization for relocation of that specific package.
OK - MUST: The package owns all directories that it creates.
OK - MUST: The package does not contain any duplicate files in the %files listing.
OK - MUST: Permissions on files are set properly. Every %files section includes a %defattr(...) line.
OK - MUST: The package has a %clean section, which contains rm -rf %{buildroot}.
OK - MUST: The package consistently uses macros, as described in the macros section of Packaging Guidelines.
OK - MUST: The package contains code, or permissable content.
??? - MUST: Large documentation files should go in a -doc subpackage.
OK - MUST: Files included as %doc do not affect the runtime of the application.
N/A - 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 (e.g. libfoo.so.1.1), then library files that end in .so (without suffix) 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: Requires: %{name} = %{version}-%{release}
OK - MUST: The package does not contain any .la libtool archives.
OK - MUST: The package contains a GUI application and includes a %{name}.desktop file, and that file is properly installed with desktop-file-install in the %install section.
OK - MUST: The packages does not own files or directories already owned by other packages.
OK - MUST: At the beginning of %install, the package runs rm -rf %{buildroot}.
OK - MUST: All filenames in rpm packages are valid UTF-8.


SHOULD Items:
N/A - SHOULD: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it.
N/A - SHOULD: The description and summary sections in the package spec file should contain translations for supported Non-English languages, if available.
OK - SHOULD: The the package builds in mock.
OK - SHOULD: The package should compile and build into binary rpms on all supported architectures.
OK - SHOULD: The package functions as described.
FIX - SHOULD: If scriptlets are used, those scriptlets must be sane. This is vague, and left up to the reviewers judgement to determine sanity.
N/A - SHOULD: Usually, subpackages other than devel should require the base package using a fully versioned dependency.
N/A - SHOULD: The placement of pkgconfig(.pc) files depends on their usecase, and this is usually for development purposes, so should be placed in a -devel pkg.
N/A - SHOULD: If the package has file dependencies outside of /etc, /bin, /sbin, /usr/bin, or /usr/sbin consider requiring the package which provides the file instead of the file itself.
OK - optflags honored
OK - timestamps preserved


Issues: 
- the mime scriptlet is not sane. There is no way to uninstall the magic bits
- does readdmol.awk really need exec perms?
- does it make sense to package docs and examples in a noarch -doc package
- desktop file lacks categories. I suggest Education;Science;Chemistry;Physics
- there also is another issue with desktop that you could fix.

+ desktop-file-install --dir=/builddir/build/BUILDROOT/viewmol-2.4.1-2.fc10.i386/usr/share/applications kde/applications/viewmol.desktop
/builddir/build/BUILDROOT/viewmol-2.4.1-2.fc10.i386/usr/share/applications/viewmol.desktop: warning: value "viewmol.png" for key "Icon" in group "Desktop Entry" is an icon name with an extension, but there should be no extension as described in the Icon Theme Specification if the value is not an absolute path

Comment 7 Christoph Wickert 2009-08-08 16:06:47 UTC
Ping!

Comment 8 Susi Lehtola 2009-08-08 18:41:43 UTC
Pong.

The mime data (including the magic bits) should really be in chemical-mime-data, I really wouldn't include them in this package as the software by itself will anyway work fine, the mime stuff might be needed by other packages as well and they might conflict with other packages. If that is OK with you, that is.

Comment 9 Christoph Wickert 2009-08-09 00:55:30 UTC
OK, drop the mime stuff. What about the rest?

- does readdmol.awk really need exec perms?
- package docs and examples in a noarch -doc package?
- desktop file lacks categories. I suggest Education;Science;Chemistry;Physics
- remove extension from Icon key in desktop file

Comment 10 Susi Lehtola 2009-08-09 07:19:28 UTC
I have fixed the issues. However, the program segfaults straight away.

Actually, I don't think there is much sense in packaging this. The latest release is from 2004, and this program has been the basis for a commercial product so I doubt that anything new will happen with it. Given that the build & install is a mess, I wouldn't want to maintain the package either.

So I think it's best to cancel this whole review. Closing as WONTFIX.