A native GTK4 / libadwaita desktop front-end for the Hard Disk Sentinel Linux console tool. Built with TypeScript and React-style components using GTKX, it renders as a fully native Linux application - no webview involved.
The app displays disk health, S.M.A.R.T. attributes, temperatures and RAM module information in real time, using the official Hard Disk Sentinel binary as its data backend.
- Disk overview with performance and health progress bars
- Current temperature and maximum temperature over the entire disk lifespan
- S.M.A.R.T. attribute table with values and thresholds
- Separate handling and icons for SATA, NVMe and removable USB drives
- Partition listing per drive
- RAM module details (size, type, speed, form factor, voltages) via
dmidecode - Live refresh of sensor data (approximately every second)
- Light / dark / system color scheme
- English and Hungarian UI languages
- On first launch the app looks for the official
HDSentinelbinary at~/.cache/hdsentinel/exec/HDSentinel. - If it is not found, a setup window appears where you can drag and drop the extracted
HDSentinelbinary (a download link is provided in-app). - Once available, the app starts a privileged helper script through
pkexecthat dumps RAM information once (dmidecode --type memory) and repeatedly runsHDSentinel -xml -dump, about once per second. - The XML output is parsed to JSON and rendered by the UI.
Download the latest AppImage from the GitHub Releases page:
chmod +x HDSentinelUI-x86_64.AppImage
./HDSentinelUI-x86_64.AppImage- Download Hard Disk Sentinel for Linux console from the official website (the app shows a direct download link).
- Extract the archive and drag the
HDSentinelfile onto the application window. - The file is copied to
~/.cache/hdsentinel/exec/HDSentineland marked executable. - Monitoring runs with elevated privileges - enter your password when the
pkexecprompt appears.
- x86_64 Linux distribution
- GTK4 and libadwaita runtime libraries (installed by default on GNOME systems)
pkexec(PolicyKit) for privilege elevation- Node.js on the host system (used to run the bundled JavaScript)
dmidecode(optional, needed for RAM information)
Settings are stored as JSON:
| File | Purpose |
|---|---|
~/.cache/hdsentinel/config/settings.json |
Color scheme and language |
~/.cache/hdsentinel/config/measure.json |
Measurement data cache |
~/.cache/hdsentinel/exec/HDSentinel |
Your copy of the HDSentinel binary |
- Node.js and npm (or pnpm)
git clone https://github.com/fablevi/HD_Sentinel_UI_Linux.git
cd HD_Sentinel_UI_Linux
npm install
npm run dev # start in development mode
npm run typecheck # codegen + TypeScript checknpm run script # runs build_appimage.shThe script builds the project, assembles an AppDir, and packages it into:
built_files/HDSentinelUI-x86_64.AppImage