HWCheck
> 🚀 A bootable USB stick that inspects a used laptop’s hardware before you buy it — no operating system required on the machine you are testing.
Buying a used laptop is a gamble. The seller boots it, it starts, the screen lights up — and you hand over the money. What you cannot see is the SSD that has been reallocated 400 sectors, the battery at 61% of its original capacity, the RAM that only fails under load, the fan that stopped turning two years ago.
You cannot install diagnostic software on a machine that has no operating system, and you should not trust a seller’s freshly installed Windows anyway. So HWCheck boots from your own USB stick, runs its own Linux, tests everything, and prints a verdict before you pay.
🔍 What it checks
- Machine identity — manufacturer, model, BIOS version and date, whether the reported model matches the chassis
- CPU — model, cores, base and boost clocks, a real load test, thermal throttling under sustained stress
- RAM — size, speed, slot layout, and a full memory pattern test
- Storage — SMART health, power-on hours, reallocated sectors, remaining life; distinguishes a healthy drive from a worn one from a dying one
- Battery — design capacity vs current capacity, wear percentage, cycle count
- Display — resolution, refresh rate, plus full-screen dead-pixel and backlight-bleed testing
- Audio — speakers and microphone, playback and recording
- Keyboard — every key, captured from the raw input device so nothing is missed
- Touchpad — movement, tapping, scrolling, click buttons
- Webcam — captures a real frame into the report
- Network — Wi-Fi adapter, bands, visible networks, Ethernet
- USB ports — every port, enumerated and identified
- Sensors & fans — temperatures and fan response under load
- Chassis — the physical checks that need your eyes and hands
⚖️ The verdict
Every run ends in one of four verdicts, with hard failures listed separately from the things worth arguing about:
- GOOD — buy it
- ACCEPTABLE — minor wear, fair for the price
- BUY WITH CAUTION — specific faults, use them to negotiate
- DO NOT BUY / RENEGOTIATE — a failing SSD, a dead battery or unstable RAM is not a bargaining chip, it is a repair bill
Reports are written onto the USB stick as printable HTML, plain text and JSON, so you can keep the evidence, show it to the seller, or compare two machines side by side.
📷 Screenshots

💾 What is on the stick
The stick is a Ventoy multiboot drive — it boots on both UEFI and legacy BIOS machines, and everything sits as plain files you can still edit from any computer:
- SparkyLinux 8.4 Xfce (Debian 13, kernel 6.12 LTS) — the live desktop, so the graphical checks work
- MemTest86+ — an independent memory test, as its own boot entry
- The HWCheck payload — the checker, the launcher and the offline packages
- A 17 MB offline package set — 14 .deb files, so the live session needs no internet at all
The whole payload fits a 4 GB stick.
🚀 Using it
Plug the stick into the laptop you are considering, open its boot menu — F12 on most Lenovo and Dell machines, F9 on HP, Esc on Asus — and pick the live entry. The launcher asks for a language, then which checks to run, then walks you through the interactive ones. Nothing is written to the target machine’s storage.
🌍 Three languages
The interface, the prompts and the printed report are complete in English, French and Arabic — 416 messages per language — with the Arabic report rendered right-to-left. This matters when the seller is standing next to you: you can hand them the report in the language they read.
🛠️ Under the hood
The interesting part of this project is not the checks, it is that it records machine identities by design — serial numbers, BIOS versions, disk models, battery data — which makes its own test output the easiest thing in the world to leak. So the repo carries a privacy scanner that refuses to publish if it finds absolute home paths, hardware addresses, MAC or IP addresses, e-mail addresses or DMI fingerprints, and that scanner runs automatically on every push through GitHub Actions.
The same CI runs a translation completeness check, an i18n self-test that loads the real translation layer in all three languages, a compile pass over every Python file, a syntax check on every shell script, and an assertion that all fourteen check sections are actually wired into the run plan — because a check that exists but was never added to the plan would silently never run.
📦 Building the stick
git clone https://github.com/dailybarid/hwcheck
cd hwcheck
# the two ISOs the kit boots from
wget -P iso/ https://sourceforge.net/projects/sparkylinux/files/xfce/sparkylinux-8.4-x86_64-xfce.iso/download
wget -P iso/ https://www.memtest.org/download/v8.10/mt86plus_8.10_x86_64.iso.zip
# write the kit onto the stick ⚠ DESTRUCTIVE - it erases the target
sudo ./build-usb.sh /dev/sdX
Full instructions, checksum verification and the engineering log — including the defects found while building it and an explicit list of what is and is not verified — are in the repository.
📜 License
MIT. Use it, fork it, ship it on your own stick.
💡 Author
Built by Khaled Mimoune. Source code, releases and the full README: github.com/dailybarid/hwcheck.


Leave a Reply
You must be logged in to post a comment.