After 7 years since the release of the last significant update, the GSmartControl 2.0 project has been launched, enhancing the graphical interface for the smartmontools toolkit, which allows monitoring the status of drives that support S.M.A.R.T. (Self-Monitoring, Analysis, and Reporting Technology). It supports operation with PATA and SATA drives, NVMe storage, USB converters, and certain RAID controllers. The project code is written in C using the GTK library and is distributed under the GPL 3.0 license.
The program allows you to run internal functionality tests of storage devices and inspect the results of their executions. Additionally, features such as enabling/disabling SMART, generating reports and detecting anomalies, configuring device-specific SMART parameters, and outputting detailed drive information are available. Reports can be generated by querying the storage device or by uploading a text file that contains the output of the smartctl command saved from another system. Support is provided for Linux, Windows, macOS, FreeBSD, and other BSD systems.
The new release is notable for adding support for NVMe drives and transitioning to the use of JSON format for parsing the output of the smartctl utility. Code refactoring has been implemented, and the project now uses features introduced in C++17 and C++20 (compilation now requires a compiler that supports C++20, such as GCC 13+, Clang 17+, and Apple Clang 15+). The Autotools toolkit has been replaced with the CMake build system. The interface now employs icons from the Oxygen set instead of Crystal.

Source: opennet.ru
