From: John Audia Date: Fri, 28 Feb 2025 20:23:07 +0000 (-0500) Subject: iotop: add new package X-Git-Url: http://git.99rst.org/?a=commitdiff_plain;h=aca8d8d088d41baa724d635d5965af4ea62a8f35;p=openwrt-packages.git iotop: add new package Iotop identifies processes that use high amount of input/output requests on your machine. It is similar to the well known top utility, but instead of showing you what consumes CPU the most, it lists processes by their IO usage. Inspired by iotop Python script from Guillaume Chazarain, rewritten in C by Vyacheslav Trushkin and improved by Boian Bonev so it runs without Python at all. Note that only targets that have KERNEL_TASKSTATS enabled will be able to build this package. Build system: x86/64 Build-tested: bcm27xx/bcm2712 Run-tested: bcm27xx/bcm2712 Signed-off-by: John Audia --- diff --git a/admin/iotop/Makefile b/admin/iotop/Makefile new file mode 100644 index 000000000..292402af1 --- /dev/null +++ b/admin/iotop/Makefile @@ -0,0 +1,45 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=iotop +PKG_VERSION:=1.30 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://codeload.github.com/Tomas-M/iotop/tar.gz/v$(PKG_VERSION)? +PKG_HASH:=862e3d3d0263e4171aa9c5aaed2dd7d76ca746afa58ecbb6eca002717e9fa240 + +PKG_LICENSE:=GPL-2.0-or-later +PKG_LICENSE_FILES:=LICENSE +PKG_CPE_ID=cpe:/a:iotop:iotop + +include $(INCLUDE_DIR)/package.mk + +define Package/iotop + SECTION:=admin + CATEGORY:=Administration + TITLE:=A top utility for IO + DEPENDS:=+libncurses @KERNEL_TASKSTATS + URL:=https://github.com/Tomas-M/iotop + PKG_MAINTAINER:=John Audia +endef + +define Package/iotop/description + Iotop identifies processes that use high amount of input/output + requests on your machine. It is similar to the well known top utility + but instead of showing you what consumes CPU the most, it lists + processes by their IO usage. +endef + +define Build/Compile + $(MAKE) -C "$(PKG_BUILD_DIR)" \ + CC="$(TARGET_CC)" \ + CFLAGS="$(TARGET_CFLAGS)" \ + LDFLAGS="$(TARGET_LDFLAGS)" +endef + +define Package/iotop/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/iotop $(1)/usr/bin/ +endef + +$(eval $(call BuildPackage,iotop))