Repository navigation
protium v0.2.0
The first release that carries Wine itself.
New
protium runtime installinstalls the Wine runtime this release was
built with, instead of building one on your Mac. protium downloads it from
this release and installs it only if its SHA-256 matches the one compiled
into protium, which the release's signature covers. Because protium downloads
it rather than a browser, macOS does not quarantine it.protium buildstill
builds the same Wine on your Mac.- The runtime is built by the release itself, on a GitHub macOS 15 runner,
and published with the exact source archives it was built from. It carries
every licence text its contents need, inlicenses/. - macOS 15 and later. The runtime is built for macOS 15.0. It was checked
on macOS 15 by the workflow that built it, and played on macOS 26. protium buildbuilds FreeType, GnuTLS, Nettle and GMP itself, from
pinned, signature-checked sources, where it used to require them prebuilt.
Every download is pinned by SHA-256, and retried when the failure may pass.- New prefixes get Wine Mono without Wine's "download Wine Mono?" dialog:
protium prefix newfetches it once and checks it against the hash Wine
pins. .NET programs run in a new prefix. protium runfinds Steam games in every Steam library, deeper, and by
title, and setsSteamAppIdfrom Steam's manifest.protium d3dmetal installreplacesprotium redist. It takes Apple's
Game Porting Toolkit.dmg, the evaluation environment in it, either one
mounted, or itsredist/libfolder, and with no path uses the
Game_Porting_Toolkit_*.dmgin~/Downloads. It checks Apple's payload and
merges it into the runtime, keeping Wine's own Direct3D modules aside, so
there is no longer a second, destructive install method to choose between.
protium d3dmetal checkreports the runtime's D3DMetal, or what Apple's
download holds. Tab-completion knows both.protium redistis gone.
Fixed
- A program protium finds is started in its own directory, as Steam and
Explorer start it. Elden Ring 2.7.1.0 stopped at start-up when it was started
anywhere else. - The Wine build no longer picks up Homebrew's libraries through
pkg-config. It linked Homebrew's GnuTLS headers on a Mac that had them, and
failed on a machine whose Homebrew FreeType was arm64.
Known issues
- Elden Ring ends in a Wine crash report when you quit it from its menu, after
the game has already stopped. Seedocs/quit-crash.md.
Licences
THIRD-PARTY-NOTICES.mdlists the eighteen libraries Wine links into its
own DLLs, the libraries a runtime carries inlib/, and Wine Mono, which is
fetched and never shipped.
What is in this download
For Apple silicon Macs:
protium-v0.2.0-macos-aarch64.tar.gz: theprotiumbinary and its
licence texts. This is the one you download.wine-…-macos-x86_64.tar.gz: the Wine runtime this release was built with.
You need not download it yourself:protium runtime installfetches it and
installs it only if its SHA-256 matches the one compiled into protium. It
loads on macOS 15 and later. It was checked on macOS 15 by the workflow that
built it, and played on macOS 26. Its licence texts are inside it, in
licenses/.- The source archives that runtime was built from: CrossOver's published
sources, which carry Wine and the libraries it links in, and FreeType,
GnuTLS, Nettle and GMP.
It does not hold D3DMetal, which comes from Apple's Game Porting Toolkit
and which you download yourself (see the README); protium d3dmetal install
then installs it into the runtime. Apple's D3DMetal 4.0b2 needs macOS 26.4 or
later. Wine Mono, Wine's .NET runtime, is fetched by
protium prefix new when it creates a prefix.
This software is based in part on the work of the Independent JPEG Group.
Verifying this download
Every release is signed by the GitHub Actions workflow that built it. The
signature covers SHA256SUMS, which pins the archive by hash, and travels
beside it as SHA256SUMS.sigstore.json. Download the archive, SHA256SUMS and
SHA256SUMS.sigstore.json into one directory, then run these two steps from
it, in this order.
1. Check the signature over the checksums. Install
cosign
(brew install cosign), then:
cosign verify-blob SHA256SUMS \
--bundle SHA256SUMS.sigstore.json \
--certificate-identity https://github.com/Benehiko/protium/.github/workflows/release.yml@refs/tags/v0.2.0 \
--certificate-oidc-issuer https://token.actions.githubusercontent.comIt must print Verified OK. Anything else means SHA256SUMS was not signed by
the release workflow for this tag: stop, and do not run anything from the
download.
The identity is the workflow file in this repository at this tag, and the
issuer is GitHub Actions. There is no person's key or account behind it, and
the signature is recorded in Sigstore's public transparency log.
2. Check the archive against the checksums.
shasum -a 256 -c --ignore-missing SHA256SUMSThe archive must be listed as OK. SHA256SUMS also lists the runtime and its
sources, and --ignore-missing skips the ones you did not download.
Step 1 is what makes step 2 mean anything: checksums downloaded from the same
page as the archive only prove the two agree, not that either came from us.
Installing
Once both checks pass:
tar -xzf protium-v0.2.0-macos-aarch64.tar.gz
sudo install -m 755 protium-v0.2.0-macos-aarch64/protium /usr/local/bin/protium
protium versionAny directory on your PATH will do in place of /usr/local/bin; without
sudo, ~/.local/bin works if it is on your PATH.
Then let protium tell you what is left to do:
protium runtime install # the Wine this release was built with
protium d3dmetal install # Apple's D3DMetal, from the toolkit DMG in ~/Downloads
protium status # where the installation is, and the next stepprotium d3dmetal install also takes a path: the Game Porting Toolkit .dmg,
the evaluation environment inside it, either one mounted, or its redist/lib
folder. It opens a disk image in your terminal, where hdiutil asks you to
accept Apple's licence.
To build the same Wine on your Mac instead, run protium doctor and then
protium build in place of protium runtime install.
If you downloaded the runtime archive from this page yourself, give its path:
protium runtime install ~/Downloads/wine-…-macos-x86_64.tar.gz. It is checked
against the same SHA-256, and the installed files are not quarantined. Do not
unpack it in Finder and copy the folder into place: that skips the check, and
Archive Utility passes the download's quarantine on to every file it extracts.
The README covers where to get Apple's download, and protium shell-init
prints the line that makes prefixes automatic in every new terminal.
"cannot be opened" or "Apple could not verify"
protium is signed ad hoc, not with an Apple Developer ID, and is not
notarized. A web browser marks what it downloads as quarantined, and macOS
refuses to run a quarantined binary it cannot trace to a registered developer.
The message reads "protium" cannot be opened because the developer cannot be
verified, or, on macOS 15 and later, Apple could not verify "protium" is free
of malware.
Verify the download first (above), then clear the quarantine from the
unpacked directory, before installing:
tar -xzf protium-v0.2.0-macos-aarch64.tar.gz
xattr -dr com.apple.quarantine protium-v0.2.0-macos-aarch64Or, after the first refusal: System Settings → Privacy & Security → scroll to
the message about protium → Open Anyway.
Downloads made with curl or gh release download are not quarantined and
need neither step.