Bug 526866

Summary: Review Request: torium - A minimalistic, easily configurable torrent client for Linux
Product: [Fedora] Fedora Reporter: leigh scott <leigh123linux>
Component: Package ReviewAssignee: Christoph Wickert <christoph.wickert>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: fedora-package-review, notting, pahan, peter
Target Milestone: ---Flags: christoph.wickert: fedora-review+
kevin: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-11-22 17:30:11 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:

Description leigh scott 2009-10-02 08:12:42 UTC
Spec URL: http://leigh123linux.fedorapeople.org/pub/review/torium/1/torium.spec

SRPM URL: http://leigh123linux.fedorapeople.org/pub/review/torium/1/torium-0.4.2-2.fc11.src.rpm

Description: A minimalistic, easily configurable torrent client for Linux.

Comment 1 leigh scott 2009-10-02 08:34:19 UTC
It builds OK at koji.

http://koji.fedoraproject.org/koji/taskinfo?taskID=1723819

Comment 2 Christoph Wickert 2009-10-02 09:48:16 UTC
Stay tuned for a full review.

Comment 3 Christoph Wickert 2009-10-03 00:19:43 UTC
OK - MUST: rpmlint is silent:
$ rpmlint /var/lib/mock/fedora-rawhide-x86_64/result/torium-*
3 packages and 0 specfiles checked; 0 errors, 0 warnings.
OK - MUST: named according to the Package Naming Guidelines
OK - MUST: spec file name matches the base package %{name}
OK - MUST: package meets the Packaging Guidelines
OK - MUST: Fedora approved license and meets the Licensing Guidelines: ISC
OK - MUST: license field in spec file matches the actual license
OK - MUST: license file included in %doc
OK - MUST: spec is in American English
OK - MUST: spec is legible
OK - MUST: sources match the upstream source by MD5 fa1980cef7e248dbd82526f247541442
OK - MUST: successfully compiles and builds into binary rpms on x86_64
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: handles locales properly with %find_lang
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
OK - MUST: owns all directories that it creates (none)
OK - MUST: no duplicate files in the %files listing
OK - MUST: Permissions on files are set properly, includes %defattr(...)
OK - MUST: package has a %clean section, which contains rm -rf $RPM_BUILD_ROOT.
FIX - MUST: macro usage not consistent, you are mixing different styles
OK - MUST: package contains code, or permissible content
N/A - MUST: Large documentation files should go in a -doc subpackage
OK - MUST: Files included as %doc do not affect the runtime of the application
OK - 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 that end in .so must go in a -devel package.
N/A - MUST: devel packages must require the base package using a fully versioned dependency
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: packages does not own files or directories already owned by other packages.
OK - MUST: at the beginning of %install, the package runs rm -rf $RPM_BUILD_ROOT.
OK - MUST: all filenames valid UTF-8


SHOULD Items:
OK - SHOULD: Source package includes license text(s) as a separate file.
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: builds in mock.
OK - SHOULD: compiles and builds into binary rpms on all supported architectures.
OK - SHOULD: functions as described.
OK - SHOULD: Scriptlets are sane.
N/A - SHOULD: Usually, subpackages other than devel should require the base package using a fully versioned dependency.
N/A - SHOULD: pkgconfig(.pc) files 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.


Other items:
OK - latest stable version
OK - SourceURL valid
OK - Fedora specific compiler flags honored
OK - Debuginfo complete


Issues:
- You are using both $RPM_BUILD_ROOT and %{buildroot}, please only use one for consistency.
- No need to remove the flags as the flag policy was revoked. If you want to remove them, make a -flags subpackage.
- Timestamp of Source0 does not match. Although this is minor I'd like to ask you to download it again and keeping the timestamps intact, see
https://fedoraproject.org/wiki/Packaging/Guidelines#Timestamps
- I'm not happy with the desktop file: "Encoding" is obsolete and IMO the app should also been shown in KDE. And it should hate FileTransfer as additional category to allow nested menus. You can fix this in the spec with

desktop-file-install                                    \
--delete-original                                       \
--add-category=FileTransfer                             \
--remove-key=Encoding                                   \
--remove-key=NotShowIn                                  \
--dir=%{buildroot}%{_datadir}/applications              \
%{buildroot}/%{_datadir}/applications/torium.desktop


Note:
During %configure I see
- ./configure: line 5288: gconftool-2: command not found
although gconf is not needed: I guess this is just a relict of borrowing the Makefile from another package, so we ignore it.

Comment 4 leigh scott 2009-10-03 08:14:14 UTC
OK I have made the changes that you recommended.


Spec URL: http://leigh123linux.fedorapeople.org/pub/review/torium/2/torium.spec

SRPM URL:
http://leigh123linux.fedorapeople.org/pub/review/torium/2/torium-0.4.2-3.fc11.src.rpm



>Note:
>During %configure I see
>- ./configure: line 5288: gconftool-2: command not found
>although gconf is not needed: I guess this is just a relict of borrowing the
>Makefile from another package, so we ignore it.

gconf can be used in torium for schemas I have added --disable-schemas-install to the ./configure options, is this OK.

Comment 5 Christoph Wickert 2009-10-03 09:53:16 UTC
Really? I can't see a reverence to gconf in the code.

Anyway:
OK - macro usage consistent
OK - torium.desktop is fine
OK - timestamp of Source0 matches

One last thing: Please Add
INSTALL='install -p' to make install to preserve the time stamps of the flags. It didn't matter before, because all files were generated or changed during build, but for static data like the flags the timestamps should be preserved.

Not a blocker, change it later, the package is APPROVED.

Comment 6 leigh scott 2009-10-03 11:33:18 UTC
Thanks for the review.

Comment 7 leigh scott 2009-10-03 11:36:01 UTC
New Package CVS Request
=======================
Package Name: torium
Short Description: A minimalistic, easily configurable torrent client for Linux
Owners: leigh123linux
Branches: F-10 F-11 F-12 
InitialCC: leigh123linux

Comment 8 Kevin Fenzi 2009-10-03 21:20:15 UTC
cvs done.

Comment 9 Christoph Wickert 2009-10-06 00:26:06 UTC
You will need to rebuild torium in rawhide once again because rb_libtorrent had a soname bump, see 
https://www.redhat.com/archives/fedora-devel-announce/2009-October/msg00001.html

Comment 10 leigh scott 2009-10-06 08:37:20 UTC
(In reply to comment #9)
> You will need to rebuild torium in rawhide once again because rb_libtorrent had
> a soname bump, see 
> https://www.redhat.com/archives/fedora-devel-announce/2009-October/msg00001.html  


Thanks for the info, I checked the buildroot log and it was built against the new version.

DEBUG util.py:256:  ================================================================================
DEBUG util.py:256:   Package                  Arch     Version                        Repository
DEBUG util.py:256:                                                                             Size
DEBUG util.py:256:  ================================================================================
DEBUG util.py:256:  Installing:
DEBUG util.py:256:   boost-devel              x86_64   1.39.0-6.fc12                  build   4.0 M
DEBUG util.py:256:   desktop-file-utils       x86_64   0.15-8.fc12                    build    44 k
DEBUG util.py:256:   gtkmm24-devel            x86_64   2.18.1-1.fc12                  build   538 k
DEBUG util.py:256:   libnotify-devel          x86_64   0.4.5-3.fc12                   build    21 k
DEBUG util.py:256:   rb_libtorrent-devel      x86_64   0.14.6-1.fc13                  build   885 k



Should I apply to rel-eng for a buildroot override for rb_libtorrent in F12 so I can build qbittorrent and torium against the new version.

Comment 11 Christoph Wickert 2009-10-06 13:48:39 UTC
No, because we shouldn't do any version upgrades during freeze. Peter, what do you think?

Comment 12 Christoph Wickert 2009-10-29 21:00:30 UTC
Hmm, I think you'll need a rebuild because rb_libtorrent-0.14.6 was also built for F-12.

Comment 13 leigh scott 2009-10-29 21:22:41 UTC
(In reply to comment #12)
> Hmm, I think you'll need a rebuild because rb_libtorrent-0.14.6 was also built
> for F-12.  


rb_libtorrent-0.14.6 isn't included in the F12 build system.

http://koji.fedoraproject.org/static-repos/dist-rawhide-current/i386/pkglist

http://koji.fedoraproject.org/static-repos/dist-f12-build-current/i386/pkglist

Comment 14 Christoph Wickert 2009-10-29 21:27:47 UTC
It's in updates-testing for F12:

$ koji list-tagged dist-f12 rb_libtorrent
Build                                     Tag                   Built by
----------------------------------------  --------------------  ----------------
rb_libtorrent-0.14.4-3.fc12               dist-f12              tmraz
$ koji list-tagged dist-f12-updates-candidate rb_libtorrent
Build                                     Tag                   Built by
----------------------------------------  --------------------  ----------------
rb_libtorrent-0.14.6-1.fc12               dist-f12-updates-candidate  pgordon

Comment 15 leigh scott 2009-10-29 21:39:11 UTC
It's not available @ koji so I can't build against it. (that's why I wanted the buildroot override ).

Comment 16 Christoph Wickert 2009-10-29 21:49:02 UTC
Then go ahead and request it. :)

Comment 17 leigh scott 2009-10-29 22:11:39 UTC
(In reply to comment #16)
> Then go ahead and request it. :)  


Ticket filed.

https://fedorahosted.org/rel-eng/ticket/2904

Comment 18 Christoph Wickert 2009-11-22 17:30:11 UTC
Closing as it's in updates-released now.