Print the OEM Windows product key from firmware (#7480)

* Print the OEM Windows product key from firmware

Machines that shipped with Windows keep the OEM key in the ACPI MSDM
table. `omarchy windows license key` reads it with strings, then cat.

* Rename the firmware key command to omarchy-windows-key
This commit is contained in:
David Heinemeier Hansson
2026-08-19 13:59:25 +02:00
committed by GitHub
parent 238021cd67
commit 2684c4b02e
3 changed files with 108 additions and 0 deletions
+65
View File
@@ -0,0 +1,65 @@
#!/bin/bash
set -euo pipefail
source "$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)/base-test.sh"
command="$ROOT/bin/omarchy-windows-key"
tmp=$(mktemp -d)
trap 'rm -rf "$tmp"' EXIT
rg -q '/sys/firmware/acpi/tables/MSDM' "$command" ||
fail "windows key helper reads the ACPI MSDM table"
pass "windows key helper reads the ACPI MSDM table"
rg -q 'read_msdm strings' "$command" ||
fail "windows key helper tries strings first"
pass "windows key helper tries strings first"
rg -q 'read_msdm cat' "$command" ||
fail "windows key helper falls back to cat"
pass "windows key helper falls back to cat"
write_msdm() {
local path=$1
local payload=$2
python3 -c 'import pathlib, sys
pathlib.Path(sys.argv[1]).write_bytes(b"MSDM" + b"\x00" * 52 + sys.argv[2].encode())
' "$path" "$payload"
}
run_helper() {
OMARCHY_MSDM_PATH=$1 PATH="$ROOT/bin:$PATH" "$command"
}
key="XXXXX-XXXXX-XXXXX-XXXXX-XXXXX"
write_msdm "$tmp/msdm" "$key"
output=$(run_helper "$tmp/msdm")
[[ $output == "$key" ]] || fail "windows key helper prints the firmware key" "actual: $output"
pass "windows key helper prints the firmware key"
mkdir -p "$tmp/bin"
cat >"$tmp/bin/strings" <<'EOF'
#!/bin/bash
exit 0
EOF
chmod +x "$tmp/bin/strings"
output=$(PATH="$tmp/bin:$ROOT/bin:$PATH" OMARCHY_MSDM_PATH="$tmp/msdm" "$command")
[[ $output == "$key" ]] || fail "windows key helper falls back to cat when strings finds nothing" "actual: $output"
pass "windows key helper falls back to cat when strings finds nothing"
write_msdm "$tmp/empty" "no-product-key-here"
if OMARCHY_MSDM_PATH="$tmp/empty" PATH="$ROOT/bin:$PATH" "$command" >"$tmp/out" 2>"$tmp/err"; then
fail "windows key helper fails when the table has no key"
fi
[[ $(<"$tmp/err") == "Firmware license table found, but no Windows product key could be extracted." ]] ||
fail "windows key helper reports a missing key" "actual: $(<"$tmp/err")"
pass "windows key helper reports a missing key"
if OMARCHY_MSDM_PATH="$tmp/missing" PATH="$ROOT/bin:$PATH" "$command" >"$tmp/out" 2>"$tmp/err"; then
fail "windows key helper fails when firmware has no MSDM table"
fi
[[ $(<"$tmp/err") == "No Windows license key found in firmware." ]] ||
fail "windows key helper reports missing firmware table" "actual: $(<"$tmp/err")"
pass "windows key helper reports missing firmware table"