diff --git a/.gitignore b/.gitignore index 6afb65f..d606f84 100644 --- a/.gitignore +++ b/.gitignore @@ -9,11 +9,3 @@ atop-1.23.tar.gz /atop-2.6.0.tar.gz /atop-2.7.0.tar.gz /atop-2.7.1.tar.gz -/atop-2.8.0.tar.gz -/atop-2.8.1.tar.gz -/atop-2.9.0.tar.gz -/atop-2.10.0.tar.gz -/atop-2.11.0.tar.gz -/atop-2.11.1.tar.gz -/atop-2.12.0.tar.gz -/atop-2.12.1.tar.gz diff --git a/atop-2.3.0-newer-gcc.patch b/atop-2.3.0-newer-gcc.patch new file mode 100644 index 0000000..efa1858 --- /dev/null +++ b/atop-2.3.0-newer-gcc.patch @@ -0,0 +1,35 @@ +From 7bf30c52a37118ff4f211e67e1736099f3d1dcb3 Mon Sep 17 00:00:00 2001 +From: Gerlof Langeveld +Date: Sat, 22 Sep 2018 11:50:50 +0200 +Subject: [PATCH] Own macro's added to determine major/minor of logical volume. + The standard 'minor' and 'major' macro's are not available any more in gcc8. + +--- + photosyst.c | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/photosyst.c b/photosyst.c +index 19cbbe1..019b9e0 100644 +--- a/photosyst.c ++++ b/photosyst.c +@@ -184,6 +184,9 @@ static const char rcsid[] = "$Id: photosyst.c,v 1.38 2010/11/19 07:40:40 gerlof + + #define MAXCNT 64 + ++#define MAJOR(x) ((((unsigned long long)x>>8)&0xfff)|((unsigned int)((unsigned long long)x>>32)&~0xfff)) ++#define MINOR(x) ((x&0xff)|((unsigned int)((unsigned long long)x>>12)&~0xff)) ++ + /* return value of isdisk() */ + #define NONTYPE 0 + #define DSKTYPE 1 +@@ -1479,8 +1482,8 @@ lvmmapname(unsigned int major, unsigned int minor, + */ + strncpy(dmp->name, dentry->d_name, MAXDKNAM); + dmp->name[MAXDKNAM-1] = 0; +- dmp->major = major(statbuf.st_rdev); +- dmp->minor = minor(statbuf.st_rdev); ++ dmp->major = MAJOR(statbuf.st_rdev); ++ dmp->minor = MINOR(statbuf.st_rdev); + + hashix = DMHASH(dmp->major, dmp->minor); + diff --git a/atop.spec b/atop.spec index c7c32b4..1dc453e 100644 --- a/atop.spec +++ b/atop.spec @@ -1,23 +1,27 @@ %define _hardened_build 1 Name: atop -Version: 2.12.1 -Release: 2%{?dist} +Version: 2.7.1 +Release: 1%{?dist} Summary: An advanced interactive monitor to view the load on system and process level -License: GPL-2.0-or-later +License: GPLv2+ URL: https://www.atoptool.nl Source0: https://www.atoptool.nl/download/%{name}-%{version}.tar.gz Source1: atop.d -Patch0: atop-sysconfig.patch +Patch0: nvme_support.patch +Patch1: atop-sysconfig.patch +Patch2: atop-2.3.0-newer-gcc.patch BuildRequires: gcc BuildRequires: zlib-devel -BuildRequires: ncurses-devel -BuildRequires: glib2-devel +BuildRequires: ncurses-devel BuildRequires: systemd -BuildRequires: make +BuildRequires: make +#%%if 0%%{?rhel} >= 8 || 0%%{?fedora} +#Requires: python3-py3nvml +#%%endif Requires(post): systemd Requires(preun): systemd @@ -40,13 +44,15 @@ performance-monitors: %prep %setup -q -%patch -P 0 -p0 -b .sysconfig +%patch0 -p0 -b .nvme +%patch1 -p0 -b .sysconfig +%patch2 -p1 -b .newer-gcc # Correct unit file path sed -i "s|/etc/default/atop|/etc/sysconfig/atop|g" atop.service %build -make %{?_smp_mflags} CFLAGS="$RPM_OPT_FLAGS $(pkg-config --cflags glib-2.0) -I. -std=gnu17" +make %{?_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" %install install -Dp -m 0755 atop $RPM_BUILD_ROOT%{_bindir}/atop @@ -54,7 +60,6 @@ install -Dp -m 0755 atopconvert $RPM_BUILD_ROOT%{_bindir}/atopconvert ln -s atop $RPM_BUILD_ROOT%{_bindir}/atopsar install -Dp -m 0644 man/atop.1 $RPM_BUILD_ROOT%{_mandir}/man1/atop.1 install -Dp -m 0644 man/atopsar.1 $RPM_BUILD_ROOT%{_mandir}/man1/atopsar.1 -install -Dp -m 0644 man/atopacctd.8 $RPM_BUILD_ROOT%{_mandir}/man8/atopacctd.8 install -Dp -m 0755 atop.daily $RPM_BUILD_ROOT%{_datadir}/atop/atop.daily install -Dp -m 0644 atop.default $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/atop install -Dp -m 0755 %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}/atopd @@ -93,7 +98,7 @@ install -Dp -m 0644 atop-rotate.* $RPM_BUILD_ROOT%{_unitdir}/ %else %license COPYING %endif -%doc README* +%doc AUTHOR README* %config(noreplace) %{_sysconfdir}/sysconfig/atop %{_bindir}/atopsar %{_bindir}/atop @@ -101,7 +106,6 @@ install -Dp -m 0644 atop-rotate.* $RPM_BUILD_ROOT%{_unitdir}/ %{_bindir}/atopconvert %{_mandir}/man1/atop.1.gz %{_mandir}/man1/atopsar.1.gz -%{_mandir}/man8/atopacctd.8.gz %attr(0755,root,root) %dir %{_localstatedir}/log/atop %{_unitdir}/atop*.service %{_unitdir}/atop*.timer @@ -112,66 +116,6 @@ install -Dp -m 0644 atop-rotate.* $RPM_BUILD_ROOT%{_unitdir}/ #%%endif %changelog -* Fri Jan 16 2026 Fedora Release Engineering - 2.12.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild - -* Tue Sep 23 2025 Gwyn Ciesla - 2.12.1-1 -- 2.12.1 - -* Wed Jul 23 2025 Fedora Release Engineering - 2.12.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Mon Jun 16 2025 Gwyn Ciesla - 2.12.0-1 -- 2.12.0 - -* Mon Mar 31 2025 Gwyn Ciesla - 2.11.1-1 -- 2.11.1 - -* Thu Jan 16 2025 Fedora Release Engineering - 2.11.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Mon Jul 29 2024 Gwyn Ciesla - 2.11.0-1 -- 2.11.0 - -* Wed Jul 17 2024 Fedora Release Engineering - 2.10.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Mon Jan 22 2024 Fedora Release Engineering - 2.10.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Fri Jan 19 2024 Fedora Release Engineering - 2.10.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Thu Jan 04 2024 Gwyn Ciesla - 2.10.0-1 -- 2.10.0 - -* Wed Jul 19 2023 Fedora Release Engineering - 2.9.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Mon May 15 2023 Gwyn Ciesla - 2.9.0-1 -- 2.9.0 - -* Sun Mar 05 2023 Gwyn Ciesla - 2.8.1-3 -- migrated to SPDX license - -* Wed Jan 18 2023 Fedora Release Engineering - 2.8.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Mon Jan 09 2023 Gwyn Ciesla - 2.8.1-1 -- 2.8.1 - -* Tue Jan 03 2023 Gwyn Ciesla - 2.8.0-1 -- 2.8.0 - -* Wed Dec 07 2022 Gwyn Ciesla - 2.7.1-4 -- Include atopacctd man page - -* Wed Jul 20 2022 Fedora Release Engineering - 2.7.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Wed Jan 19 2022 Fedora Release Engineering - 2.7.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - * Tue Jan 11 2022 Gwyn Ciesla - 2.7.1-1 - 2.7.1 - Drop atopgpud as it requires proprietary NVIDIA drivers. diff --git a/nvme_support.patch b/nvme_support.patch new file mode 100644 index 0000000..bc144a6 --- /dev/null +++ b/nvme_support.patch @@ -0,0 +1,11 @@ +diff -up ./photosyst.c.orig ./photosyst.c +--- ./photosyst.c.orig 2017-03-25 11:00:03.000000003 +0200 ++++ ./photosyst.c 2017-12-08 01:31:13.795157092 +0200 +@@ -1537,6 +1537,7 @@ static struct { + { "^dasd[a-z][a-z]*$", {0}, nullmodname, DSKTYPE, }, + { "^mmcblk[0-9][0-9]*$", {0}, nullmodname, DSKTYPE, }, + { "^emcpower[a-z][a-z]*$", {0}, nullmodname, DSKTYPE, }, ++ { "^nvme[0-9][a-z][0-9]*$", {0}, nullmodname, DSKTYPE, }, + }; + + static int diff --git a/sources b/sources index 5ba284b..b2f76b0 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (atop-2.12.1.tar.gz) = e01db51bf025598e7bad585f62761e10d23a77f6c7be96418bc8919a72c74628851ae5cbdc0c12ed752f80b44f5b72f2102692dbbb3210cacc59b32340107ce7 +SHA512 (atop-2.7.1.tar.gz) = f5013dbc25b86f07c9892555705bb3db2eeb949478f53e6e5545308b0c7c173c4c7a8ed0eae1f173e075210f81fceee09d7a9d90de76c4f011e38ad4a76b780b