diff -Nru iotop-c-1.25/LICENSE iotop-c-1.26/LICENSE
--- iotop-c-1.25/LICENSE 2023-01-29 20:51:40.000000000 +0000
+++ iotop-c-1.26/LICENSE 2024-02-04 11:56:30.000000000 +0000
@@ -1,6 +1,6 @@
iotop - interactive monitor of Linux IO activity
Copyright (C) 2014 Vyacheslav Trushkin
-Copyright (C) 2020-2023 Boian Bonev
+Copyright (C) 2020-2024 Boian Bonev
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
diff -Nru iotop-c-1.25/Makefile iotop-c-1.26/Makefile
--- iotop-c-1.25/Makefile 2023-09-03 21:09:01.000000000 +0000
+++ iotop-c-1.26/Makefile 2024-02-04 11:56:30.000000000 +0000
@@ -7,7 +7,7 @@
# SPDX-License-Identifier: GPL-2.0-or-later
#
# Copyright (C) 2014 Vyacheslav Trushkin
-# Copyright (C) 2020-2023 Boian Bonev
+# Copyright (C) 2020-2024 Boian Bonev
#
# This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
#
diff -Nru iotop-c-1.25/README.md iotop-c-1.26/README.md
--- iotop-c-1.25/README.md 2023-01-29 20:51:40.000000000 +0000
+++ iotop-c-1.26/README.md 2024-02-04 11:56:30.000000000 +0000
@@ -72,6 +72,15 @@
sudo xbps-install iotop-c
+
+ Arch Linux
+
+
+Use the following command:
+
+ sudo pacman -S iotop-c
+
+
## How to build from source
Please note that the installation and the usage of this program require root access.
@@ -197,6 +206,8 @@
--show-exited show exited processes
-l, --no-color do not colorize values
--color colorize values
+ -T, --hide-time hide current time
+ --show-time show current time
--si use SI units of 1000 when printing values
--no-si use non-SI units of 1024 when printing values
--threshold=1..10 threshold to switch to next unit
@@ -224,6 +235,7 @@
Notable contributions (ordered by time of last contribution):
+- Christian Heusel <[christian@heusel.eu](mailto:christian@heusel.eu)> - Arch Linux packaging and testing
- Leah Neukirchen <[leah@vuxu.org](mailto:leah@vuxu.org)> - Void Linux packaging and testing
- Vitaly Chikunov <[vt@altlinux.org](mailto:vt@altlinux.org)> - ALT Linux packaging and testing
- Matteo Bernardini <[ponce@slackbuilds.org](mailto:ponce@slackbuilds.org)> - SlackBuilds packaging and testing
diff -Nru iotop-c-1.25/TODO iotop-c-1.26/TODO
--- iotop-c-1.25/TODO 2022-01-27 19:58:19.000000000 +0000
+++ iotop-c-1.26/TODO 1970-01-01 00:00:00.000000000 +0000
@@ -1,29 +0,0 @@
-
---- history of finished TODO items ---
-
-- Show prio of processes with threads as !be/4
-- Third mode proc+threads, to show threads under the process [change the threads mode instead of adding 3rd mode]
-- Add some gap between pseudo-graph and command line; use the gap to visually group threads of the same process
-- Aggregate thread data in process mode
-- Edit pid/user filters from interactive mode
-- Let 0 show all columns
-- Scrolling for the main view by UP/DOWN/PGUP/PGDN
-- Document exited threads/process display
-- Document the display of processes with different prio (e.g. !be/4)
-- Document the sorting order in thread view (threads always go after their main process)
-- Document pid/user filters interactive interface
-- Document 0 shows all columns
-- Document -u +123 command line
-- Document scrolling
-- Add scroll bar
-- Rework help to be like popup window
-- Add all missing keys to help window
-- Freezed, scrollable view of procs/threads for ionice selection (abandoned idea - exited processes should be kept track of)
-- ESC key close the help dialog
-- let the warning window about missing task_delayacct be closed by any key press and reappear on state change
-- add a small red indicator for missing kernel support for swapin/io
-- mask swapin/io columns and io graph data source if kernel support is disabled
-- do not sort on masked columns but continue to sort on hidden ones
-- add read/write/read+write data sources for the graph
-- add a toggle to select graph data source (as a side effect option 'only' will use the same)
-- restore some form of visible help on the bottom
diff -Nru iotop-c-1.25/archlinux/PKGBUILD iotop-c-1.26/archlinux/PKGBUILD
--- iotop-c-1.25/archlinux/PKGBUILD 2023-10-14 08:49:35.000000000 +0000
+++ iotop-c-1.26/archlinux/PKGBUILD 1970-01-01 00:00:00.000000000 +0000
@@ -1,34 +0,0 @@
-# Contributor: Rumen Jekov
-# Maintainer: Rumen Jekov
-# Maintainer: Boian Bonev
-
-pkgname=iotop-c
-pkgver=1.25
-pkgrel=1
-pkgdesc="simple top-like I/O monitor (implemented in C)"
-arch=('i686' 'x86_64' 'aarch64' 'armv7h' 'ppc64le')
-url="https://github.com/Tomas-M/iotop"
-license=('GPL2')
-depends=('ncurses')
-makedepends=('pkgconf')
-conflicts=('iotop' 'iotop-git')
-provides=('iotop')
-source=("${url}/releases/download/v${pkgver}/iotop-${pkgver}.tar.xz" "${url}/releases/download/v${pkgver}/iotop-${pkgver}.tar.xz.asc")
-validpgpkeys=('BA60BC20F37E59444D6D25001365720913D2F22D')
-md5sums=('SKIP' 'SKIP')
-
-prepare() {
- cd iotop-${pkgver}
- sed -i 's/sbin/bin/g' Makefile
-}
-
-build() {
- cd iotop-${pkgver}
- make DESTDIR="${pkgdir}" V=1
-}
-
-package() {
- cd iotop-${pkgver}
- unset PREFIX
- make DESTDIR="${pkgdir}" install
-}
diff -Nru iotop-c-1.25/debian/changelog iotop-c-1.26/debian/changelog
--- iotop-c-1.25/debian/changelog 2023-10-14 08:49:48.000000000 +0000
+++ iotop-c-1.26/debian/changelog 2024-02-03 13:45:39.000000000 +0000
@@ -1,3 +1,10 @@
+iotop-c (1.26-1) unstable; urgency=medium
+
+ * Update to new upstream release of 1.26
+ - Clock in upper right corner
+
+ -- Boian Bonev Sat, 03 Feb 2024 13:45:39 +0000
+
iotop-c (1.25-1) unstable; urgency=medium
* Update to new upstream release of 1.25
diff -Nru iotop-c-1.25/debian/copyright iotop-c-1.26/debian/copyright
--- iotop-c-1.25/debian/copyright 2023-01-29 20:51:40.000000000 +0000
+++ iotop-c-1.26/debian/copyright 2024-02-03 13:45:39.000000000 +0000
@@ -5,11 +5,11 @@
Files: *
Copyright: 2014 Vyacheslav Trushkin
- 2020-2023 Boian Bonev
+ 2020-2024 Boian Bonev
License: GPL-2.0+
Files: debian/*
-Copyright: 2020-2023 Boian Bonev
+Copyright: 2020-2024 Boian Bonev
License: GPL-2.0+
License: GPL-2.0+
diff -Nru iotop-c-1.25/fedora/iotop-c.spec iotop-c-1.26/fedora/iotop-c.spec
--- iotop-c-1.25/fedora/iotop-c.spec 2023-10-14 08:49:35.000000000 +0000
+++ iotop-c-1.26/fedora/iotop-c.spec 2024-02-04 11:56:30.000000000 +0000
@@ -1,5 +1,5 @@
Name: iotop-c
-Version: 1.25
+Version: 1.26
Release: 1%{?dist}
Summary: Simple top-like I/O monitor (implemented in C)
@@ -9,6 +9,9 @@
Source1: https://github.com/Tomas-M/iotop/releases/download/v%{version}/iotop-%{version}.tar.xz.asc
Source2: https://raw.githubusercontent.com/Tomas-M/iotop/v%{version}/debian/upstream/signing-key.asc
+Provides: iotop
+Obsoletes: iotop < 0.7
+
BuildRequires: gcc
BuildRequires: gnupg2
BuildRequires: ncurses-devel
@@ -42,16 +45,27 @@
%install
V=1 STRIP=: %make_install
-mv %{buildroot}%{_sbindir}/iotop %{buildroot}%{_sbindir}/iotop-c
-mv %{buildroot}%{_mandir}/man8/iotop.8 %{buildroot}%{_mandir}/man8/iotop-c.8
%files
%license COPYING
%license LICENSE
-%{_sbindir}/iotop-c
-%{_mandir}/man8/iotop-c.8*
+%{_sbindir}/iotop
+%{_mandir}/man8/iotop.8*
%changelog
+* Sat 03 Feb 2024 Boian Bonev - 1.26-1
+- Update to latest ver 1.26
+
+* Thu Feb 01 2024 Michal Hlavinka - 1.25-4
+- replace iotop https://fedoraproject.org/wiki/Changes/Replace_iotop_with_iotop-c
+- iotop-c executable renamed back to iotop
+
+* Wed Jan 24 2024 Fedora Release Engineering - 1.25-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
+
+* Sat Jan 20 2024 Fedora Release Engineering - 1.25-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
+
* Sat Oct 14 2023 Boian Bonev - 1.25-1
- Update to latest ver 1.25
diff -Nru iotop-c-1.25/glibcvertest.h iotop-c-1.26/glibcvertest.h
--- iotop-c-1.25/glibcvertest.h 2023-01-29 20:51:40.000000000 +0000
+++ iotop-c-1.26/glibcvertest.h 2024-02-04 11:56:30.000000000 +0000
@@ -1,7 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2014 Vyacheslav Trushkin
-Copyright (C) 2020-2023 Boian Bonev
+Copyright (C) 2020-2024 Boian Bonev
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
diff -Nru iotop-c-1.25/iotop.8 iotop-c-1.26/iotop.8
--- iotop-c-1.25/iotop.8 2023-09-03 21:09:01.000000000 +0000
+++ iotop-c-1.26/iotop.8 2024-02-04 11:56:30.000000000 +0000
@@ -1,4 +1,4 @@
-.TH IOTOP "8" "January 22, 2023"
+.TH IOTOP "8" "January 22, 2024"
.SH NAME
iotop \- simple top\-like I/O monitor
.SH SYNOPSIS
@@ -284,6 +284,12 @@
Colorize values. This will override the effect of the environment variable
\fBNO_COLOR\fR when explicitly specified on the command line.
.TP
+\fB\-T\fR, \fB\-\-hide\-time\fR
+Do not show time clock in upper right corner
+.TP
+\fB\-\-show\-time\fR
+Show time clock in upper right corner
+.TP
\fB\-\-si\fR
Use SI units of \fB1000\fR when printing values. The default is non\-SI
\fB1024\fR
@@ -398,6 +404,9 @@
\fBe\fR, \fBE\fR
Toggle the display of exited processes
.TP
+\fBT\fR
+Toggle the display of time clock in upper right corner
+.TP
\fBs\fR, \fBS\fR
Toggle freeze of data collection
.TP
@@ -484,7 +493,7 @@
The original Python iotop implementation was written by Guillaume Chazarain.
This rewrite in C was started in 2014 by Vyacheslav Trushkin and reworked to
include all missing features from the original Python code and several new ones
-from 2020 to 2023 by Boian Bonev.
+from 2020 to 2024 by Boian Bonev.
.PP
This manual page was started by Paul Wise for the Debian project and is placed
in the public domain.
diff -Nru iotop-c-1.25/src/arr.c iotop-c-1.26/src/arr.c
--- iotop-c-1.25/src/arr.c 2023-01-29 20:51:40.000000000 +0000
+++ iotop-c-1.26/src/arr.c 2024-02-04 11:56:30.000000000 +0000
@@ -1,7 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2014 Vyacheslav Trushkin
-Copyright (C) 2020-2023 Boian Bonev
+Copyright (C) 2020-2024 Boian Bonev
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
diff -Nru iotop-c-1.25/src/checks.c iotop-c-1.26/src/checks.c
--- iotop-c-1.25/src/checks.c 2023-01-29 20:51:40.000000000 +0000
+++ iotop-c-1.26/src/checks.c 2024-02-04 11:56:30.000000000 +0000
@@ -1,7 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2014 Vyacheslav Trushkin
-Copyright (C) 2020-2023 Boian Bonev
+Copyright (C) 2020-2024 Boian Bonev
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
diff -Nru iotop-c-1.25/src/configfile.c iotop-c-1.26/src/configfile.c
--- iotop-c-1.25/src/configfile.c 2023-01-29 20:51:40.000000000 +0000
+++ iotop-c-1.26/src/configfile.c 2024-02-04 11:56:30.000000000 +0000
@@ -1,7 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2014 Vyacheslav Trushkin
-Copyright (C) 2020-2023 Boian Bonev
+Copyright (C) 2020-2024 Boian Bonev
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
@@ -247,6 +247,9 @@
// --ascii
if (!config.f.unicode)
fprintf(cf,"--ascii\n");
+ // --hide-time
+ if (config.f.hideclock)
+ fprintf(cf,"--hide-time\n");
fclose(cf);
diff -Nru iotop-c-1.25/src/delayacct.c iotop-c-1.26/src/delayacct.c
--- iotop-c-1.25/src/delayacct.c 2023-01-29 20:51:40.000000000 +0000
+++ iotop-c-1.26/src/delayacct.c 2024-02-04 11:56:30.000000000 +0000
@@ -1,7 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2014 Vyacheslav Trushkin
-Copyright (C) 2020-2023 Boian Bonev
+Copyright (C) 2020-2024 Boian Bonev
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
diff -Nru iotop-c-1.25/src/ioprio.c iotop-c-1.26/src/ioprio.c
--- iotop-c-1.25/src/ioprio.c 2023-01-29 20:51:40.000000000 +0000
+++ iotop-c-1.26/src/ioprio.c 2024-02-04 11:56:30.000000000 +0000
@@ -1,7 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2014 Vyacheslav Trushkin
-Copyright (C) 2020-2023 Boian Bonev
+Copyright (C) 2020-2024 Boian Bonev
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
diff -Nru iotop-c-1.25/src/iotop.h iotop-c-1.26/src/iotop.h
--- iotop-c-1.25/src/iotop.h 2023-10-14 08:49:35.000000000 +0000
+++ iotop-c-1.26/src/iotop.h 2024-02-04 11:56:30.000000000 +0000
@@ -1,7 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2014 Vyacheslav Trushkin
-Copyright (C) 2020-2023 Boian Bonev
+Copyright (C) 2020-2024 Boian Bonev
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
@@ -27,7 +27,7 @@
#include
#include
-#define VERSION "1.25"
+#define VERSION "1.26"
typedef enum {
E_GR_IO,
@@ -62,6 +62,7 @@
int hideexited;
int nocolor;
int reverse_graph;
+ int hideclock;
int accumbw;
int unicode; // this and below are not part of opts
e_grtype grtype;
@@ -71,7 +72,7 @@
int base; // 1000 or 1024
int threshold; // 1..10
} f;
- int opts[22];
+ int opts[23];
} config_t;
typedef struct {
diff -Nru iotop-c-1.25/src/main.c iotop-c-1.26/src/main.c
--- iotop-c-1.25/src/main.c 2023-01-29 20:51:40.000000000 +0000
+++ iotop-c-1.26/src/main.c 2024-02-04 11:56:30.000000000 +0000
@@ -1,7 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2014 Vyacheslav Trushkin
-Copyright (C) 2020-2023 Boian Bonev
+Copyright (C) 2020-2024 Boian Bonev
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
@@ -47,6 +47,7 @@
#define OPT_UNICODE 0x115
#define OPT_COLOR 0x116
#define OPT_NO_ACCUM_BW 0x117
+#define OPT_SHOW_TIME 0x118
static const char *progname=NULL;
int maxpidlen=5;
@@ -65,7 +66,7 @@
params.user_id=-1;
}
-static const char str_opt[]="boPaktqc123456789xelRA";
+static const char str_opt[]="boPaktqc123456789xelRTA";
static inline void print_help(void) {
printf(
@@ -128,6 +129,8 @@
" --show-exited show exited processes\n"
" -l, --no-color do not colorize values\n"
" --color colorize values\n"
+ " -T, --hide-time hide current time\n"
+ " --show-time show current time\n"
" --si use SI units of 1000 when printing values\n"
" --no-si use non-SI units of 1024 when printing values\n"
" --threshold=1..10 threshold to switch to next unit\n"
@@ -211,6 +214,8 @@
{"show-graph",no_argument,NULL,OPT_SHOW_GRAPH},
{"hide-command",no_argument,NULL,'9'},
{"show-command",no_argument,NULL,OPT_SHOW_CMD},
+ {"hide-time",no_argument,NULL,'T'},
+ {"show-time",no_argument,NULL,OPT_SHOW_TIME},
{"dead-x",no_argument,NULL,'x'},
{"no-dead-x",no_argument,NULL,OPT_NO_DEADX},
{"hide-exited",no_argument,NULL,'e'},
@@ -229,7 +234,7 @@
{NULL,0,NULL,0}
};
- int c=getopt_long(argc,argv,"vhbon:d:p:u:Paktqc123456789xelRg:H:WA",long_options,NULL);
+ int c=getopt_long(argc,argv,"boPaktqc123456789xelRTAn:d:p:u:g:H:vhW",long_options,NULL);
if (c==-1) {
if (optind
+#include
#include
#include
#include
@@ -169,6 +170,7 @@
static char tcolr[200]="Toggle colorizing values [off]";
static char txxxi[200]="Toggle exited processes xxx/inverse [inverse]";
static char texit[200]="Toggle showing exited processes [off]";
+static char tcloc[200]="Toggle showing time clock [on]";
static char tfrez[200]="Toggle data freeze [off]";
static char units[200]="Toggle SI units [1024]";
static char unitt[200]="Cycle unit threshold [10]";
@@ -211,6 +213,7 @@
{.descr=tcolr,.t="Toggle colorizing values [%s]",.k2="l",.k3="L"},
{.descr=txxxi,.t="Toggle exited processes xxx/inverse [%s]",.k2="x",.k3="X"},
{.descr=texit,.t="Toggle showing exited processes [%s]",.k2="e",.k3="E"},
+ {.descr=tcloc,.t="Toggle showing time clock [%s]",.k2="T"},
{.descr=tfrez,.t="Toggle data freeze [%s]",.k2="s",.k3="S"},
{.descr=units,.t="Toggle SI units [%d]",.k1="",.k2="b",.k3=""},
{.descr=unitt,.t="Cycle unit threshold [%d]",.k1="",.k2="t",.k3=""},
@@ -513,9 +516,10 @@
sprintf(p->descr,p->t,!config.f.hidecmd?"on":"off");
break;
case 'g': {
- char *grt="";
+ char *grt;
switch (config.f.grtype) {
+ default:
case E_GR_IO:
grt="IO";
break;
@@ -560,8 +564,11 @@
case 't':
sprintf(p->descr,p->t,config.f.threshold);
break;
+ case 'T':
+ sprintf(p->descr,p->t,config.f.hideclock?"off":"on");
+ break;
case 0: { // only task_delayacct has no key
- char *tda="";
+ char *tda;
if (has_task_delayacct())
tda=read_task_delayacct()?"dynamic on":"dynamic off";
@@ -877,13 +884,15 @@
}
attroff(A_REVERSE);
- if ((dontrefresh||!has_tda)&&(maxx-maxcmdline+(config.f.hidecmd?0:strlen(COLUMN_L(0))+1)<(size_t)maxx)) {
+ if ((dontrefresh||!has_tda||!config.f.hideclock)&&(maxx-maxcmdline+(config.f.hidecmd?0:strlen(COLUMN_L(0))+1)<(size_t)maxx)) {
size_t xpos=maxx;
if (!has_tda)
xpos-=strlen("[T]");
if (dontrefresh)
xpos-=strlen("[frozen]");
+ if (!config.f.hideclock)
+ xpos-=strlen("(00:00:00)");
// don't step on column descriptions
if (xpos