DriverRollback Content-addressed restore points for a driver store Techlosoft - Device Reliability Center WHAT IT IS ========== DriverRollback answers one question the rest of the Device Reliability Center line does not: "that driver update broke the machine - how do I get the exact bytes back?" You take a snapshot of a driver-store directory tree before you touch it. DriverRollback SHA-256s every file, copies each unique blob into a content-addressed object store exactly once, and writes a JSON manifest of path -> {hash, size, mode, modtime}. Take twenty snapshots of a tree that barely changes and the store grows by roughly what actually changed, because identical content is never stored twice. When you need to go back, DriverRollback computes the minimal set of operations that turns the tree back into the snapshot state and PRINTS IT. That is all it does unless you explicitly pass --apply. When you do apply it, nothing is deleted: every file it would overwrite or remove is MOVED into a timestamped quarantine directory first, and every file it writes is re-hashed against the manifest before the run is called a success. Its sibling DeviceDriver seals and verifies a driver store. DriverRollback snapshots and restores one. A driver store here is modelled as an ordinary directory tree, which is why this runs and is testable on Linux and macOS as happily as on Windows. INSTALL ======= Pre-built binaries are in dist/. There is nothing to install - copy the one for your platform anywhere on your PATH and run it. dist/driverrollback-linux-amd64 Linux, x86-64 dist/driverrollback-darwin-arm64 macOS, Apple Silicon dist/driverrollback-darwin-amd64 macOS, Intel dist/driverrollback-windows-amd64.exe Windows, x86-64 On macOS and Linux you may need to mark it executable: chmod +x driverrollback-linux-amd64 To build from source you need Go 1.24 or newer. There are no dependencies of any kind, no cgo and no network access required: go build -o driverrollback . go test ./... COMMANDS ======== driverrollback snapshot --source [--store ] [--name