Skip to content

A simple Qt application written in C++ designed to display system resource usage and performance metrics, similar to the Windows Task Manager.

License

Notifications You must be signed in to change notification settings

wheat32/QtTaskManager

Repository files navigation

Qt Task Manager

Disclaimer: This is pre-alpha software and is not intended to be used as a replacement for the KDE Task Manager or any other production-grade task manager. It is still in early development and may be unstable or incomplete. Please use with caution.

A simple Qt application written in C++ designed to display system resource usage and performance metrics, similar to the Windows Task Manager. It is built to work on Linux-based systems and relies on the lscpu and lm_sensors tools to gather system information.


Features

  • Display CPU utilization and performance statistics.
  • Show memory usage, including RAM and cache (TODO).
  • Monitor CPU temperature (requires lm_sensors).
  • Simple and clean user interface, built using the Qt 6 framework.

Screenshots

image


Prerequisites

To run this application, ensure the following dependencies are installed:

  • Qt 6
  • lscpu (for CPU information)
  • lm_sensors (for temperature and sensor information)
  • polkit
  • dmidecode
  • CMake 3.31 or higher (for building the project)

Installation Instructions:

  1. Install required dependencies:
  • For Debian/Ubuntu-based distributions:

sudo apt-get install lscpu lm-sensors qt6-qmake qt6-base-dev cmake

  • For Arch Linux:

sudo pacman -S lscpu lm_sensors qt6-base cmake

  1. Install lm_sensors and run it to detect your sensors:
  • If lm_sensors is not already configured, you can run the following command to configure it:

sudo sensors-detect

  • Follow the prompts and say "yes" to allow the tool to detect your sensors.
  1. Clone the repository and build the project

  2. Create a build directory and configure the project using CMake:

mkdir build
cd build
cmake ..
  1. Build the project using CMake:

cmake --build .

  1. Run the application:

./TaskManager


How It Works

  • The application uses the lscpu command to gather CPU architecture and performance data, such as the number of cores, CPU frequency, and cache sizes.
  • Temperature readings are obtained using lm_sensors. These readings are then displayed in the application's GUI.
  • Cache size and memory utilization information is updated dynamically every second.

Limitations

  • Linux-only support: This application is currently designed to work only on Linux-based systems. There are no plans to change this.
  • The program relies on the availability of lscpu and lm_sensors for gathering system data. These tools must be installed and properly configured.

Future Improvements

  • Process management features (similar to Windows Task Manager).

License

This project is licensed under the GPLv2 - see the LICENSE file for details.

Acknowledgments

  • The Qt framework for building the cross-platform GUI.
  • The lscpu and lm_sensors tools for providing hardware-related information on Linux.

About

A simple Qt application written in C++ designed to display system resource usage and performance metrics, similar to the Windows Task Manager.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors