Compare commits

..

No commits in common. "rawhide" and "f19" have entirely different histories.

6 changed files with 120 additions and 241 deletions

15
.gitignore vendored
View file

@ -1,16 +1 @@
vnstat-1.11.tar.gz
/vnstat-1.14.tar.gz
/vnstat-1.15.tar.gz
/vnstat-1.16.tar.gz
/vnstat-1.17.tar.gz
/vnstat-1.18.tar.gz
/vnstat-2.2.tar.gz
/vnstat-2.3.tar.gz
/vnstat-2.4.tar.gz
/vnstat-2.5.tar.gz
/vnstat-2.6.tar.gz
/vnstat-2.7.tar.gz
/vnstat-2.8.tar.gz
/vnstat-2.9.tar.gz
/vnstat-2.10.tar.gz
/vnstat-2.13.tar.gz

View file

@ -1 +1 @@
SHA512 (vnstat-2.13.tar.gz) = 9b5d7b5085ab2ae39fd6b0d59afe56eb927b6e4ca1ca30ee7710afe2a412c4a1a8d756e095e9c3c81d182e3d6bb2efcd9a2a266e0048cac249477a09c1368969
a5a113f9176cd61fb954f2ba297f5fdb vnstat-1.11.tar.gz

25
vnstat-run-vnstat.diff Normal file
View file

@ -0,0 +1,25 @@
--- a/src/vnstatd.c 2011-06-01 00:29:51.000000000 +0200
+++ b/src/vnstatd.c 2011-12-22 22:23:22.512967108 +0100
@@ -482,10 +482,18 @@
/* lock / pid file */
pidfile = open(cfg.pidfile, O_RDWR|O_CREAT, 0644);
if (pidfile<0) {
- perror("pidfile");
- snprintf(errorstring, 512, "pidfile failed, exiting.");
- printe(PT_Error);
- exit(EXIT_FAILURE); /* can't open */
+ /* for Fedora's move to systemd and /run check
+ * for /run/vnstat/vnstat.pid, so that it needs no changes
+ * to the config file */
+ pidfile = open("/run/vnstat/vnstat.pid", O_RDWR|O_CREAT, 0644);
+ if (pidfile<0) {
+ perror("pidfile");
+ snprintf(errorstring, 512, "pidfile failed, exiting.");
+ printe(PT_Error);
+ exit(EXIT_FAILURE); /* can't open */
+ } else {
+ strncpy(cfg.pidfile, "/run/vnstat/vnstat.pid", 512);
+ }
}
if (lockf(pidfile,F_TLOCK,0)<0) {
perror("pidfile lock");

10
vnstat.service Normal file
View file

@ -0,0 +1,10 @@
[Unit]
Description=VnStat - Lightweight Network Traffic Monitor
After=network.target
[Service]
User=vnstat
ExecStart=/usr/sbin/vnstatd -d
[Install]
WantedBy=multi-user.target

View file

@ -1,10 +0,0 @@
--- a/examples/systemd/vnstat.service 2015-12-01 08:05:12.053856367 +0100
+++ b/examples/systemd/vnstat.service 2015-12-01 08:05:07.967936194 +0100
@@ -4,6 +4,7 @@
StartLimitBurst=4
[Service]
+User=vnstat
ExecStart=/usr/sbin/vnstatd --nodaemon
ExecReload=/bin/kill -HUP $MAINPID
Restart=on-failure

View file

@ -1,77 +1,99 @@
Summary: Console-based network traffic monitor
Name: vnstat
Version: 2.13
Release: 3%{?dist}
Version: 1.11
Release: 14%{?dist}
# Automatically converted from old format: GPLv2 - review is highly recommended.
License: GPL-2.0-only
License: GPLv2
Group: System Environment/Daemons
URL: http://humdi.net/vnstat/
Source0: http://humdi.net/vnstat/vnstat-%{version}.tar.gz
Patch0: vnstat.service.patch
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
BuildRequires: make
BuildRequires: gcc
Source1: vnstat.service
Requires(pre): shadow-utils
Requires(post): systemd-units
Requires(preun): systemd-units
Requires(postun): systemd-units
BuildRequires: gd-devel
BuildRequires: systemd
BuildRequires: sqlite-devel
Patch0: vnstat-run-vnstat.diff
%description
vnStat is a console-based network traffic monitor that keeps a log of daily
network traffic for the selected interface(s). vnStat isn't a packet sniffer.
The traffic information is analyzed from the /proc file-system, so vnStat can
be used without root permissions. See the web-page for few 'screenshots'.
%package vnstati
Summary: Image output support for vnstat
Recommends: %{name} = %{version}-%{release}
%description vnstati
The purpose of vnstati is to provide image output support for statistics
collected using vnstat. The image file format is limited to png. All basic
outputs of vnStat are supported excluding live traffic features. The image can
be outputted either to a file or to standard output.
The traffic information is analyzed from the /proc-filesystem, so vnStat can
be used without root permissions. See the webpage for few 'screenshots'.
%prep
%setup -q
%patch -P0 -p1
%patch0 -p1
# disable maximum bandwidth setting and change pidfile location
sed -i -e "s,/var/run/,/run/vnstat/,g; \
s,MaxBandwidth 100,MaxBandwidth 0,g;" \
cfg/vnstat.conf
# Create a sysusers.d config file
cat >vnstat.sysusers.conf <<EOF
u vnstat - 'vnStat user' %{_localstatedir}/lib/%{name} -
EOF
# Use -p everywhere, -s nowhere
%{__sed} -i -e "s,install \(-s \)\?,install -p ," Makefile
%build
%{configure}
%{__make} %{?_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" all
%install
%{__mkdir_p} $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}
%{__mkdir_p} $RPM_BUILD_ROOT%{_sysconfdir}/cron.d
%{__mkdir_p} $RPM_BUILD_ROOT%{_unitdir}
%{__mkdir_p} $RPM_BUILD_ROOT%{_tmpfilesdir}
%{__mkdir_p} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig
%{__mkdir_p} $RPM_BUILD_ROOT%{_sysconfdir}/tmpfiles.d
%{__mkdir_p} %{buildroot}/run/
%{__install} -d -m 0700 %{buildroot}/run/%{name}/
%{__make} install DESTDIR=$RPM_BUILD_ROOT
%{__install} -p -m 644 examples/systemd/vnstat.service $RPM_BUILD_ROOT%{_unitdir}/
%{__install} -p -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_unitdir}/
%{__rm} -rf examples/init.d
%{__rm} -rf examples/systemd
%{__rm} -rf examples/launchd
%{__rm} -rf examples/upstart
%{__chmod} 644 examples/vnstat.cgi
%{__chmod} 644 examples/vnstat.cron
%{__cat} >> $RPM_BUILD_ROOT/%{_tmpfilesdir}/%{name}.conf << END
%{__cat} >> $RPM_BUILD_ROOT%{_sysconfdir}/cron.d/%{name} << END
MAILTO=root
# to enable interface monitoring via vnstat remove comment on next line
# */5 * * * * vnstat %{_sbindir}/%{name}.cron
END
%{__cat} >> $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/%{name} << END
# see also: vnstat(1)
#
# starting with vnstat-1.6 vnstat can also be
# configured via %{_sysconfdir}/vnstat.conf
#
# the following sets vnstat up to monitor eth0
VNSTAT_OPTIONS="-u -i eth0"
END
%{__cat} >> $RPM_BUILD_ROOT%{_sbindir}/%{name}.cron << END
#!/bin/bash
# this script (%{_sbindir}/%{name}.cron) reads %{_sysconfdir}/sysconfig/%{name}
# to start %{_bindir}/%{name}.
# example for %{_sysconfdir}/sysconfig/%{name}:
# VNSTAT_OPTIONS="-u -i eth0"
# see also: vnstat(1)
VNSTAT_CONF=%{_sysconfdir}/sysconfig/%{name}
if [ ! -f \$VNSTAT_CONF ]; then
exit 0
fi
. \$VNSTAT_CONF
%{_bindir}/%{name} \$VNSTAT_OPTIONS
END
%{__cat} >> $RPM_BUILD_ROOT/%{_sysconfdir}/tmpfiles.d/vnstat.conf << END
D /run/vnstat 0700 vnstat vnstat
END
install -m0644 -D vnstat.sysusers.conf %{buildroot}%{_sysusersdir}/vnstat.conf
%pre
getent group %{name} > /dev/null || %{_sbindir}/groupadd -r %{name}
getent passwd %{name} > /dev/null || %{_sbindir}/useradd -r -g %{name} -M \
-d %{_localstatedir}/lib/%{name} -s /sbin/nologin -c "vnStat user" %{name}
%post
%systemd_post vnstat.service
@ -82,187 +104,34 @@ install -m0644 -D vnstat.sysusers.conf %{buildroot}%{_sysusersdir}/vnstat.conf
%postun
%systemd_postun_with_restart vnstat.service
%triggerun -- vnstat < 1.11-8
# Save the current service runlevel info
# User must manually run systemd-sysv-convert --apply httpd
# to migrate them to systemd targets
/usr/bin/systemd-sysv-convert --save vnstat >/dev/null 2>&1 ||:
# Run these because the SysV package being removed won't do them
/sbin/chkconfig --del vnstat >/dev/null 2>&1 || :
/bin/systemctl try-restart vnstat.service >/dev/null 2>&1 || :
%files
%license COPYING
%doc CHANGES FAQ README INSTALL examples
%defattr(-,root,root,-)
%doc CHANGES COPYING FAQ README INSTALL examples
%config(noreplace) %{_sysconfdir}/%{name}.conf
%config(noreplace) %{_sysconfdir}/cron.d/%{name}
%{_unitdir}/%{name}.service
%{_tmpfilesdir}/%{name}.conf
%{_mandir}/man1/vnstat.1*
%{_mandir}/man5/vnstat.conf.5*
%{_mandir}/man8/vnstatd.8*
%config(noreplace) %{_sysconfdir}/sysconfig/%{name}
%{_sysconfdir}/tmpfiles.d/vnstat.conf
%{_mandir}/man*/*
%{_bindir}/vnstat
%{_bindir}/vnstati
%{_sbindir}/vnstatd
%attr(-,vnstat,vnstat)%dir /run/%{name}/
%attr(755,root,root)%{_sbindir}/%{name}.cron
%attr(-,vnstat,vnstat)%{_localstatedir}/lib/%{name}
%{_sysusersdir}/vnstat.conf
%files vnstati
%license COPYING
%{_mandir}/man1/vnstati.1*
%{_bindir}/vnstati
%changelog
* Fri Jul 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 2.13-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
* Sat Jan 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 2.13-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Wed Dec 10 2025 Adrian Reber <adrian@lisas.de> - 2.13-1
- Upgrade to 2.13 (#2232896)
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.10-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Tue Feb 11 2025 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2.10-8
- Add sysusers.d config file to allow rpm to create users/groups automatically
* Sun Jan 19 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.10-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Mon Jul 29 2024 Miroslav Suchý <msuchy@redhat.com> - 2.10-6
- convert license to SPDX
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.10-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.10-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.10-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.10-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Fri Dec 09 2022 Adrian Reber <adrian@lisas.de> - 2.10-1
- Upgrade to 2.10 (#2137399)
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.9-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Wed May 18 2022 Adrian Reber <adrian@lisas.de> - 2.9-2
- Upgrade to 2.9 (#2044224)
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Tue Dec 14 2021 Adrian Reber <adrian@lisas.de> - 2.8-1
- Upgrade to 2.8 (#1961015)
- Create sub-package for vnstati and its libgd dependency (#1993650)
* Mon Aug 30 2021 Adrian Reber <adrian@lisas.de> - 2.7-1
- Upgrade to 2.7 (#1961015)
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2.6-5
- Rebuilt for updated systemd-rpm-macros
See https://pagure.io/fesco/issue/2583.
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Tue Jan 21 2020 Adrian Reber <adrian@lisas.de> - 2.6-1
- Upgrade to 2.6 (#1791158)
* Wed Jan 15 2020 Adrian Reber <adrian@lisas.de> - 2.5-1
- Upgrade to 2.5 (#1791158)
* Wed Nov 06 2019 Adrian Reber <adrian@lisas.de> - 2.4-1
- Upgrade to 2.4
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri Jun 12 2019 Adrian Reber <adrian@lisas.de> -2.3-1
- Upgrade to 2.3
* Sun Apr 28 2019 Adrian Reber <adrian@lisas.de> -2.2-1
- Upgrade to 2.2 (#1703811)
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.18-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Sat Jul 14 2018 Adrian Reber <adrian@lisas.de> - 1.18-1
- Upgrade to 1.18 (#1551364)
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.17-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.17-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.17-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.17-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Fri Feb 17 2017 Adrian Reber <adrian@lisas.de> - 1.17-1
- Upgrade to 1.17 (#1423060)
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.16-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Wed Jan 04 2017 Adrian Reber <adrian@lisas.de> - 1.16-1
- Upgrade to 1.16 (#1408565)
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.15-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Wed Jan 13 2016 Adrian Reber <adrian@lisas.de> - 1.15-1
- Upgrade to 1.15 (#1296771)
* Tue Dec 01 2015 Adrian Reber <adrian@lisas.de> - 1.14-3
- Fixed "Service fails to start because it's run as root" (#1278027)
* Tue Aug 11 2015 Adrian Reber <adrian@lisas.de> - 1.14-2
- Use %%license for COPYING
* Tue Aug 11 2015 Adrian Reber <adrian@lisas.de> - 1.14-1
- Upgrade to 1.14
- Remove cron based setup (removed functionality)
- Remove systemd unit file (now included)
- Remove unnecessary patches
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.11-23
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Sun Oct 26 2014 Adrian Reber <adrian@lisas.de> - 1.11-22
- install unit file as 644 and not 755 (fixes #1157199)
* Thu Aug 21 2014 Kevin Fenzi <kevin@scrye.com> - 1.11-21
- Rebuild for rpm bug 1131960
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.11-20
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.11-19
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Wed Aug 07 2013 Adrian Reber <adrian@lisas.de> - 1.11-18
- fix bogus dates
- added patch for
"vnstat.c:489:22: warning: iteration 12u invokes undefined behavior [-Waggressive-loop-optimizations]"
* Wed Aug 07 2013 Mathieu Bridon <bochecha@fedoraproject.org> - 1.11-17
- Fix the build by adding the missing BR on systemd.
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.11-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Tue Jun 11 2013 Remi Collet <rcollet@redhat.com> - 1.11-15
- rebuild for new GD 2.1.0
* Fri Mar 08 2013 Adrian Reber <adrian@lisas.de> - 1.11-14
- spec cleanup
@ -354,22 +223,22 @@ install -m0644 -D vnstat.sysusers.conf %{buildroot}%{_sysusersdir}/vnstat.conf
* Fri Sep 15 2006 Adrian Reber <adrian@lisas.de> - 1.4-8
- rebuilt
* Fri Mar 17 2006 Adrian Reber <adrian@lisas.de> - 1.4-7
* Fri Mar 18 2006 Adrian Reber <adrian@lisas.de> - 1.4-7
- rebuilt; fixed dist tag
* Fri Mar 17 2006 Adrian Reber <adrian@lisas.de> - 1.4-6
* Fri Mar 18 2006 Adrian Reber <adrian@lisas.de> - 1.4-6
- rebuilt
* Sun May 22 2005 Jeremy Katz <katzj@redhat.com> - 1.4-5
- rebuild on all arches
* Fri Apr 8 2005 Michael Schwendt <mschwendt[AT]users.sf.net>
* Fri Apr 7 2005 Michael Schwendt <mschwendt[AT]users.sf.net>
- rebuilt
* Mon Feb 28 2005 Adrian Reber <adrian@lisas.de> 1.4-3
- removed occurences of VNSTAT_DISABLED in
%%{_sysconfdir}/sysconfig/%%{name} and
%%{_sbindir}/%%{name}.cron
%%{_sbindir}/%{name}.cron
* Thu Feb 24 2005 Adrian Reber <adrian@lisas.de> 1.4-2
- removed "#--------------"