Bug 474984 - Review Request: bandwidthd - Tracks network usage and builds html and graphs
Summary: Review Request: bandwidthd - Tracks network usage and builds html and graphs
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: manuel wolfshant
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2008-12-06 11:23 UTC by Jan ONDREJ
Modified: 2015-07-20 16:40 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-12-21 08:26:08 UTC
Type: ---
Embargoed:
manuel.wolfshant: fedora-review+
kevin: fedora-cvs+


Attachments (Terms of Use)

Description Jan ONDREJ 2008-12-06 11:23:32 UTC
Spec URL: http://www.salstar.sk/pub/fedora/SPECS/bandwidthd.spec
SRPM URL: http://www.salstar.sk/pub/fedora/SRPMS/10/bandwidthd-2.0.1-4.fc10.src.rpm
Description: 
Bandwidthd is a UNIX daemon/Windows service for graphing the traffic
generated by each machine on several configurable subnets.  It is much
easier to configure than MRTG, and provides significantly more useful
information.  MRTG only tells you how much bandwidth you are using, 
Bandwidthd tells you that, and who is using it.

Each IP address that has moved any significant volume of traffic has its
own graph.  The graphs are color coded to help you figure out at a glance
if your user is surfing the web, or surfing Kazaa.

Bandwidthd is targeted to run on my routing platforms.  It is very low   
overhead.  Easily graphing small business traffic on a 133Mhz Elan 486
every 2.5 minutes. My entire ISP (2000-3000 IP addresses across 4 states)
is graphed on a Celeron 450 every 10 minutes.

Comment 1 manuel wolfshant 2008-12-08 14:32:49 UTC
If you add the following lines to the spec and drop the versioned requires on libpcap, libpng and gd the result will work perfectly well on Centos-4. I have it in production for quite some time.

%if  "0%{?dist}" == "0.el4"
BuildRequires:  libpcap
%else
BuildRequires:  libpcap-devel
%endif

Comment 3 manuel wolfshant 2008-12-08 15:30:18 UTC
review under way

Comment 4 manuel wolfshant 2008-12-08 15:45:39 UTC
Package Review
==============

Key:
 - = N/A
 x = Check
 ! = Problem
 ? = Not evaluated

=== REQUIRED ITEMS ===
 [x] Package is named according to the Package Naming Guidelines.
 [x] Spec file name must match the base package %{name}, in the format %{name}.spec.
 [x] Package meets the Packaging Guidelines.
 [x] Package successfully compiles and builds into binary rpms on at least one supported architecture.
     Tested on: devel/x86_64
 [x] Rpmlint output: empty
 [x] Package is not relocatable.
 [x] Buildroot is correct (%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n))
 [x] Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines.
 [!] License field in the package spec file matches the actual license.
     License type as specified by source: GPLv2+?
     License file as specified by spec: GPLv3+
=> the README file says "any version", two of the source files say GPLv2+, most of the files do not say anything. I am not an expert, but I see no reason to restrict to GPLv3+
 [x] If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package is included in %doc.
 [x] Spec file is legible and written in American English.
 [x] Sources used to build the package match the upstream source, as provided in the spec URL.
     SHA1SUM of package: 81e920830239a6769164946e6466ff7386e7ce8e lzip-1.1.tar.bz2
 [x] Package is not known to require ExcludeArch
 [-] All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines.
 [-] The spec file handles locales properly.
 [-] ldconfig called in %post and %postun if required.
 [x] Package must own all directories that it creates.
 [x] Package requires other packages for directories it uses.
 [x] Package does not contain duplicates in %files.
 [x] Permissions on files are set properly.
 [x] Package has a %clean section, which contains rm -rf $RPM_BUILD_ROOT.
 [!] Package consistently uses macros.
=> please stick with either uppercase or lowercase macros
 [x] Package contains code, or permissable content.
 [-] Large documentation files are in a -doc subpackage, if required.
 [x] Package uses nothing in %doc for runtime.
 [-] Header files in -devel subpackage, if present.
 [-] Static libraries in -devel subpackage, if present.
 [-] Package requires pkgconfig, if .pc files are present.
 [-] Development .so files in -devel subpackage, if present.
 [-] Fully versioned dependency in subpackages, if present.
 [x] Package does not contain any libtool archives (.la).
 [-] Package contains a properly installed %{name}.desktop file if it is a GUI application.
 [x] Package does not own files or directories owned by other packages.
 [x] Final provides and requires are sane.

=== SUGGESTED ITEMS ===
 [x] Latest version is packaged.
 [x] Package does not include license text files separate from upstream.
 [-] Description and summary sections in the package spec file contains translations for supported Non-English languages, if available.
 [x] Reviewer should test that the package builds in mock.
     Tested on: devel/x86_64, F7/x86_64, EL-4/i386
 [x] Package should compile and build into binary rpms on all supported architectures.
     Tested on: i386, x86_64; no reason to believe it would not work on other archs
 [x] Package functions as described.
 [x] Scriptlets must be sane, if used.
 [-] The placement of pkgconfig(.pc) files is correct.
 [-] File based requires are sane.
 [-] %check is present and the test passes.


===ISSUES ===
1. please fix the license tag
2. please choose one kind of macros and use it everywhere. The current version of your spec makes use of both $RPM_BUILD_ROOT and %{buildroot}

Comment 5 manuel wolfshant 2008-12-08 15:57:52 UTC
Another issue comes from the fact that Fedora requires to have as much functionality as possible enabled by default. In this case, adding postgresql-devel as BR would enable building with the database bits in. Personally I think this would bring in cruft which would be useless for a small router, so I suggest one of the following two approaches
- either add a build conditional, which by default would compile the postgresql deps but would allow to rebuild with them off (something allow rpmbuild --define "db off"), or
- build a second package (say bandwithd-postgresql) with postgresql enabled

Comment 6 manuel wolfshant 2008-12-08 15:59:35 UTC
s/allow/along/

Comment 7 Jan ONDREJ 2008-12-08 16:22:54 UTC
Where do you see in README, that I can use any version? I see this in README:

You may use this software under any version of the GPL that is current          
as of your download.

Current today is GPLv3+. I don't remember, when I downloaded this package first time, maybe when there was no GPLv3. Even if I am most familiar with GPLv2, I think I can't ignore this line. Or is my understanding of english in this file wrong?

- buildroot macro fixed
- trying to build bandwithd-postgresql package

Comment 8 Jan ONDREJ 2008-12-08 18:15:35 UTC
* Mon Dec 8 2008 Jan ONDREJ (SAL) <ondrejj(at)salstar.sk> - 2.0.1-6
- buildroot macro replaced by RPM_BUILD_ROOT variable
- added autoconf into build-requires
- by default compiled with postgresql support 
- conditional build without postgresql (--without pgsql)   
- libpng removed from requires

SRPM: http://www.salstar.sk/pub/fedora/SRPMS/10/bandwidthd-2.0.1-6.fc10.src.rpm

Something else?

Are you sure, license have to be GPLv2+?

Comment 9 Tom "spot" Callaway 2008-12-08 19:45:58 UTC
Use: License: GPL+. No version is specified, and technically, all versions of the GPL are "current".

Comment 10 Jan ONDREJ 2008-12-08 20:10:14 UTC
(In reply to comment #9)
> Use: License: GPL+. No version is specified, and technically, all versions of
> the GPL are "current".

Done.

* Mon Dec 8 2008 Jan ONDREJ (SAL) <ondrejj(at)salstar.sk> - 2.0.1-7
- changed License to GPL+

SRPM: http://www.salstar.sk/pub/fedora/SRPMS/10/bandwidthd-2.0.1-7.fc10.src.rpm

Comment 11 manuel wolfshant 2008-12-12 22:03:28 UTC
Please remove one of the two occurrences of autoconf and also the "Requires: gd", rpmbuild will automatically require libgd.so.2()(64bit)
You could also remove "BR: libpng-devel", gd-devel brings it in automatically.

What do you feel about including the phphtdocs directory as docs? I'd say it becomes useful in the database context. I suggest using:
     %{?!_without_pgsql:%doc phphtdocs }
I have just tested, the package builds fine and php is not brought in as a Requires, leaving to the admin the decision to use these scripts or not.

Comment 12 Jan ONDREJ 2008-12-13 06:59:52 UTC
(In reply to comment #11)
> Please remove one of the two occurrences of autoconf
OK, removed.

> and also the "Requires:
> gd", rpmbuild will automatically require libgd.so.2()(64bit)
OK.

> You could also remove "BR: libpng-devel", gd-devel brings it in automatically.
OK.

> What do you feel about including the phphtdocs directory as docs? I'd say it
> becomes useful in the database context. I suggest using:
>      %{?!_without_pgsql:%doc phphtdocs }
> I have just tested, the package builds fine and php is not brought in as a
> Requires, leaving to the admin the decision to use these scripts or not.
Added.

SRPM: http://www.salstar.sk/pub/fedora/SRPMS/10/bandwidthd-2.0.1-8.fc10.src.rpm

%changelog
* Sat Dec 13 2008 Jan ONDREJ (SAL) <ondrejj(at)salstar.sk> - 2.0.1-8
- removed dependency on gd
- removed one line of autoconf
- removed dependency on libpng-devel
- phphtdocs added for pgsql build, execute bit for gif and sh removed

Comment 13 manuel wolfshant 2008-12-13 17:38:00 UTC
Great job, Jan! Package APPROVED.

Comment 14 Jan ONDREJ 2008-12-13 17:48:57 UTC
Thanks to you. :)

New Package CVS Request
=======================
Package Name: bandwidthd
Short Description: Tracks network usage and builds html and graphs
Owners: ondrejj
Branches: F-9 F-10 EL-4 EL-5
InitialCC:

Comment 15 Kevin Fenzi 2008-12-14 05:28:17 UTC
cvs done.

Comment 16 Fedora Update System 2008-12-14 11:34:10 UTC
bandwidthd-2.0.1-9.fc10 has been submitted as an update for Fedora 10.
http://admin.fedoraproject.org/updates/bandwidthd-2.0.1-9.fc10

Comment 17 Fedora Update System 2008-12-14 11:43:59 UTC
bandwidthd-2.0.1-9.fc9 has been submitted as an update for Fedora 9.
http://admin.fedoraproject.org/updates/bandwidthd-2.0.1-9.fc9

Comment 18 Fedora Update System 2008-12-18 00:36:44 UTC
bandwidthd-2.0.1-9.fc10 has been pushed to the Fedora 10 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update bandwidthd'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F10/FEDORA-2008-11323

Comment 19 Fedora Update System 2008-12-18 00:40:20 UTC
bandwidthd-2.0.1-9.fc9 has been pushed to the Fedora 9 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing-newkey update bandwidthd'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F9/FEDORA-2008-11370

Comment 20 Fedora Update System 2008-12-21 08:26:05 UTC
bandwidthd-2.0.1-9.fc9 has been pushed to the Fedora 9 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 21 Fedora Update System 2008-12-21 08:45:46 UTC
bandwidthd-2.0.1-9.fc10 has been pushed to the Fedora 10 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 22 Jan ONDREJ 2015-07-18 06:07:58 UTC
Package Change Request
======================
Package Name: bandwidthd
New Branches: epel7
Owners: ondrejj

Comment 23 Kevin Fenzi 2015-07-20 16:40:34 UTC
Git done (by process-git-requests).


Note You need to log in before you can comment on or make changes to this bug.