This project is now superceded by my MHL Media Trust Tools
PiqueMHL was an experimental macOS Quick Look extension for .mhl Media Hash List previews. Forked from Pique
Select an .mhl file in Finder, press Space, and get a readable verification preview with creator metadata, source metadata, file counts, sizes, hashes, and the raw XML source.
| Format | Extensions |
|---|---|
| Media Hash List | .mhl |
Media Hash List files are rendered as verification manifests with creator metadata, source metadata, file counts, total size, per-file hashes, and the raw XML source.
This project is aimed at XML-based Media Hash List files used in camera card verification and offload workflows.
macOS 15.6 or later.
You can build from source with Xcode:
xcodebuild -project Pique.xcodeproj -scheme Pique -config ReleaseFor local signing, copy Config/Signing.local.example.xcconfig to Config/Signing.local.xcconfig, set your team and signing identity there, and keep that local file out of Git.
Or use the pkg installer available in Releases.
- Copy
Config/Signing.local.example.xcconfigtoConfig/Signing.local.xcconfig. - Set your own
DEVELOPMENT_TEAMandCODE_SIGN_IDENTITYin that local file. - Run:
./install_local.zsh- Launch
PiqueMHL.apponce if needed. - Enable Pique MHL in System Settings > Login Items & Extensions > Quick Look Extensions.
- Select an
.mhlfile in Finder and press Space to test the preview.
On macOS 15.6 and later, Quick Look extensions may need to be explicitly allowed. When you first launch PiqueMHL, you may see a notification:
Go to System Settings > Login Items & Extensions > Quick Look Extensions and enable Pique MHL.
If .mhl files stop previewing in Quick Look after building in Xcode, the usual cause is a stale extension registration from Xcode DerivedData or ArchiveIntermediates.
Check the registered Quick Look entries:
pluginkit -m -A -D -v -p com.apple.quicklook.preview | rg piquemhlThe active installed extension should point to:
/Applications/PiqueMHL.app/Contents/PlugIns/PiqueMHLPreview.appex
If you see additional PiqueMHL entries from ~/Library/Developer/Xcode/DerivedData/..., remove the stale registrations and re-register the installed app:
pluginkit -r /Applications/PiqueMHL.app/Contents/PlugIns/PiqueMHLPreview.appex
pluginkit -a /Applications/PiqueMHL.app/Contents/PlugIns/PiqueMHLPreview.appex
pluginkit -e use -i io.macvfx.piquemhl.preview
killall FinderOr use:
./refresh_quicklook.zshIf needed, remove stale Xcode build products from ~/Library/Developer/Xcode/DerivedData/ and repeat the commands above.
Recommended workflow:
- Build/sign locally.
- Copy the finished app to
/Applications/PiqueMHL.app. - Re-register the installed extension with
pluginkit. - Avoid relying on
DerivedDatabuild products as your active installed copy.
Copyright 2026 Declarative IT GmbH
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
