Repository navigation
Components and Updates
Distiller runs games with components: Wine builds, graphics layers and winetricks (see Key ideas). This page covers the Components section, keeping components up to date, choosing versions per game, restore points, rebuilding a game's bottle, and updating Distiller itself.
Components in the sidebar lists what's installed, grouped into Wine builds, Graphics layers and Winetricks, with each version's architecture and kind. Under the title, a line says what the last update check found ("Up to date · checked 2 minutes ago", or "1 update available").
The toolbar has:
| Button | What it does |
|---|---|
| Check for Updates (↻) | Checks for newer Wine builds, graphics layers and winetricks now, in any update mode. |
| Setup Assistant | Checks what Distiller needs and installs what's missing (see Installing Distiller). |
| Add Component | Download DXMT or DXVK; Import D3DMetal from Game Porting Toolkit… (the disk image you downloaded from Apple); Import Wine Build… (a Wine build from a folder or archive, with its family and version). |
On a component's row:
- 11.22 available with an Update button, when a newer release exists.
- A checkmark on the active version, when more than one version is installed.
- Kept for Game, when a game stays on that version.
- Not needed, for an old version no game needs; it's removed with the next update.
Right-click a component for Make Active, Show in Finder and Move to Trash.
Above the list, notices appear only when there's something to do: Update All when several updates are waiting, a source that couldn't be checked, and old versions no game needs, with Remove.
Settings ▸ Updates sets how Distiller keeps Wine builds, graphics layers and winetricks current:
| Mode | What happens |
|---|---|
| Check, and ask before installing (the default) | Distiller checks when it starts and once a day. Updates appear on their components' rows in Components, and the sidebar shows how many are waiting. Nothing installs until you click Update or Update All. |
| Install updates automatically | The same checks, and Distiller installs what it finds (except components you're keeping on an older version), then removes old versions no game needs. |
| Don't check; keep components as they are | No automatic checks. |
Check for Updates in Components, Check Now in Settings and Distiller ▸ Check for Updates… check right away in every mode.
Distiller checks each component it can download again (Wine Staging and Devel builds, DXVK, DXMT and winetricks) against its publisher's latest release. D3DMetal and Wine builds you imported aren't checked, since they come from your own downloads. If one source can't be reached, the others are still checked, and a notice says which one failed.
An update installs next to the version it replaces, and becomes the active version.
Each component has one active version: new games use it, and games that follow updates move to it the next time they start. Normally that's the newest version installed.
To go back to an older version for everything, right-click it in Components and choose Make Active. That holds the component: automatic updates skip it, and an update for it is shown with a note that you're keeping the older one. Making the newest version active again ends the hold.
A game's Wine only ever moves forward: Wine updates a game's bottle when it moves to a newer build, and older builds can't use it afterwards. So making an older Wine active doesn't move games that already ran on a newer one; they stay on theirs.
A game can follow updates (the default) or stay on a particular version of each component. Staying keeps a working game exactly as it is when Distiller updates, but it may miss fixes, or stop working with newer recipes.
In the recipe workshop, Bottle ▸ Versions has a choice for Wine, Graphics layer and winetricks: Follow updates (active version) or Stay on version. Wine can only stay on the build the game uses now or a newer one of the same kind.
A version a game stays on is never removed, and Components shows Kept for Game next to it. If a version a game stays on goes missing, the game says so when it starts, and Follow Updates in its Versions settings lets it use the active one.
From a terminal: distiller games versions <game> [--wine <id@version|follow>] [--graphics …] [--winetricks …].
Before a game moves to a newer Wine build, Distiller saves a restore point: a copy of the game's bottle, so the move can be undone.
- When you start the game (or run an installer or Wine tool in its bottle) and a newer Wine is active, Distiller copies the bottle (Saving a restore point for …) and updates the bottle with the new Wine (Updating …'s bottle to Wine …), then starts the game. If the update itself fails, the copy is put back straight away and the game stays as it was.
- After that first session, Distiller asks once: Did Game work on Wine X?
- It Works removes the copy.
- Roll Back puts the copy back and keeps the game on its old Wine (it stays there until you choose Follow updates in its Versions settings).
- Not Sure Yet keeps the copy for now.
- The copy is also in the workshop's Bottle ▸ Restore point section, with Roll Back… and Remove.
Rolling back puts the bottle back exactly as it was, so anything saved inside the bottle since then is lost (saves a game keeps under C:\users, for example).
How much space it takes: a copy is an APFS clone, so it costs almost nothing when it's made, and grows only as the game's bottle changes afterwards. A big game update inside the bottle does make it grow.
How long copies are kept: Settings ▸ Updates ▸ Keep restore points:
| Choice | |
|---|---|
| Until I confirm the game works | Kept until you choose It Works, with no time limit. |
| Up to 1 day, Up to 7 days (the default), Up to 30 days | Removed after that long, or as soon as you choose It Works. |
| Until I remove it | Kept even after It Works, until you remove it. |
One restore point is kept per game (the latest move). The Wine build a restore point needs stays installed while the restore point exists. Games that stay on a Wine build never move, so they never need one.
From a terminal: distiller games restore <game> [--works | --rollback | --discard].
When a game won't work after moving to newer components, Rebuild with Current Components… (workshop ▸ Bottle ▸ Rebuild) installs its recipe into a new bottle with the active Wine, graphics layer and winetricks:
- It runs in the install window, with the same steps as a fresh install, and can be cancelled.
- Files and folders the recipe asked you for are reused from the old bottle where possible: a game folder used in place on another drive is linked again, a copied folder is copied again, and files and downloaded installers are reused (and checked as usual). Anything missing is asked for.
- The game switches to the new bottle only if the rebuild succeeds. If it fails or you cancel, the new bottle is removed and the game is unchanged.
- The old bottle is kept until you decide. After the first session, Distiller asks Does Game work in its rebuilt bottle?: Keep New Bottle moves the old bottle to the Trash; Switch Back returns to the old bottle and moves the new one to the Trash. The same buttons are in Bottle ▸ Rebuild.
Not carried over: anything the game keeps inside its bottle, such as saves under C:\users, its settings, or a launcher's sign-in. Copy what you need from the old bottle's C: drive (Show C: Drive in Finder) before you keep the new one.
From a terminal: distiller games rebuild <game> [--file <id>=<path>] [--folder <id>=<path>], then --keep or --switch-back.
After an update, Distiller removes versions nothing needs any more:
- not the active version;
- no game stays on it;
- no restore point needs it;
- for a Wine build, every game's bottle can still be opened by another installed build;
- Distiller can download it again (imported components, such as D3DMetal, are never removed automatically).
Builds made from a removed version are removed with it, and anything a running game uses is left alone. Remove in Components (or distiller components clean) does the same by hand. You can always remove a component yourself with Move to Trash.
See Installing Distiller: Distiller checks for a newer version of itself along with the components, and installs it only when you choose Install and Relaunch, after checking it's genuine.
distiller components list # what's installed; "active" marks active versions
distiller components check # look for updates
distiller components update [<id>] # install updates, then remove what nothing needs
distiller components use wine-staging@11.21 # make a version active
distiller components clean [--dry-run] # remove versions nothing needs
distiller components updates [ask|auto|off] # show or set the update mode
distiller app check # a newer Distiller?Distiller is open source under the MIT licence · Website · Releases · Report a problem. Game names, icons and screenshots belong to their publishers.
Getting started
Playing
Recipes
Keeping things working
Command line