Skip to content

Wineprefixes

A WINEPREFIX is simply a folder that Wine uses as a separate Windows environment on your Linux system. Think of it as a virtual "C: drive" where Windows applications believe they're running in Windows.[1][2]

A clean prefix (also called a vanilla wineprefix) is a fresh Wine environment with nothing extra installed - just the basics.

In simple terms, a wineprefix:

  1. Acts like a mini Windows computer inside your Linux system
  2. Lets Wine translate Windows programs to work on Linux
  3. Keeps all Windows-related files and settings in one place

Why This Matters

It's good practice to use different wineprefixes for different Windows applications. This keeps them separate, like having multiple Windows computers for different tasks. If one application breaks, it won't affect the others.

Types of Wineprefixes

Main Wineprefixes

These are recommended for most visual novels:

PrefixPurposeWhen to Use
proton_geGeneral compatibilityFirst choice for most VNs
vanillaClean Wine setupWhen proton_ge has issues

Special-Purpose Wineprefixes

For games with specific codec or component requirements:

PrefixPrimary Use Case
wmp11quartzWindows Media Player 11 + QuartzCore
lavfiltersLAV Video/Audio Filters
mciqtz32MCI + QuartzCore codecs
ffdshowFFDShow multimedia codecs
wmp11Windows Media Player 11
xactDirectX Audio codecs
quartz_dxDirectX + Quartz
wmp10quartzWindows Media Player 10 + QuartzCore

Choosing the Right Prefix

  1. Check the visual novel compatibility list for the recommended prefix.
  2. If your game isn't listed:
    • Try prefixes used by games from the same engine or developer.
    • Start with proton_ge, as it provides broad compatibility.
    • If that fails, try vanilla.
    • For persistent video or audio issues, test the specialized media prefixes above.

TIP

In most cases, either proton_ge or vanilla will work. Start with these before exploring the specialized setups.

WARNING

Don't forget to enable Japanese Locale and install appropriate font files inside the prefix if you encounter missing or broken text.

Creating Wineprefixes

NOTE

This assumes you're using Lutris, but ignoring this, you can use the command line just as easily to run your applications.

Recommended wineprefixes

If starting out, setup the basic wineprefixes only.

If you have any issues, visit the Visual Novel Compatibility page. Specific details about other wineprefixes are in this section.

WARNING

You only need to make the prefix one time. Do not modify the prefix once created.

1. Create prefix folders

Create folders for each prefix you'll need. You can use this command to create them all at once:

Basic wineprefixes

bash
mkdir proton_ge vanilla

Special-purpose wineprefixes

bash
mkdir wmp11quartz lavfilters mciqtz32 ffdshow wmp11 xact quartz_dx wmp10quartz

2. Configure prefix settings

In Lutris, visit any game's config and enter these settings:

Game Options:

  • Wine prefix: path_to_your_wineprefix_folder (The location of the folder created in step 1)
  • Prefix architecture: 64bit (32bit for wmp10 & wmp10quartz)

3. Select Wine version

Based on the prefix type, select the appropriate Wine runner:

Prefix TypeRecommended RunnerInstallation SourceNotes
vanillaWine 10protonUp-qt Kron4ek Builds-
proton_geProton-GE 9.13+protonUp-qtOr newer versions
OthersLutris 7.2DefaultDo NOT use Lutris 7.2.2 (video playback issues)
Disable DXVK for these prefixes

4. Install components (optional)

NOTE

Not every visual novel needs extra components.

To know if your visual novel needs extra components, visit the Visual Novel Compatibility List and search.

For each prefix:

  1. Click the 🍷 wine bottle icon (usually on the bottom toolbar), then click Bash Terminal
  2. Depending on your wineprefix (e.g., wmp11, lavfilters...), copy the installation command from the Component Installation section below
  3. Paste it into the terminal using Ctrl + Shift + V
  4. Hit Enter and wait for the installation to complete

After this, done! Run your visual novels!

Component Installation

Warning

If you change the Wine version, you must remake the prefix, as all components will be overwritten by Wine defaults.

Basic Prefixes

vanilla (64bit)

Needs GStreamer libraries for video playback.

  • System Lutris: Make sure you have these libraries installed:

    bash
    gstreamer gst-plugins-ugly gst-plugins-good gst-plugins-base-libs gst-plugins-base gst-plugins-bad gst-plugins-bad-libs gst-plugin-pipewire gst-libav lib32-gstreamer lib32-gst-plugins-base-libs
  • Flatpak Lutris or Steam Deck: No need to install anything as these come bundled in.

proton GE (64bit)

No extra components needed; should work out of the box.

  • If using outside Steam (like Lutris), install umu-launcher.
  • Flatpak Lutris bundles umu-launcher.

Media Prefixes

Special Codecs

We use a special helper script to install extra codecs, which have additional patches. Download Special Codecs to a folder like ~/Documents. Update paths in the commands below to where you downloaded them (example, ~/Documents/vn_winestuff-main/codec.sh).

For more detailed information about the script, see the Special Codecs page.

wmp11quartz (64bit)

bash
sh ~/Documents/vn_winestuff-main/codec.sh wmp11 quartz2

wmp11 (64bit)

bash
sh ~/Documents/vn_winestuff-main/codec.sh wmp11

quartz_dx (64bit)

bash
sh ~/Documents/vn_winestuff-main/codec.sh wmp11 quartz_dx

lavfilters (64bit)

bash
sh ~/Documents/vn_winestuff-main/codec.sh lavfilters

mciqtz32 (64bit)

bash
sh ~/Documents/vn_winestuff-main/codec.sh mciqtz32

xact (64bit)

bash
winetricks -q --force xact

ffdshow (64bit)

bash
winetricks ffdshow

IMPORTANT

Manually enable ALL codecs for ffdshow (including MPEG-1/2!) when the popup occurs at the end.

Legacy Prefixes (Currently Broken)

wmp10 (32bit)

bash
winetricks -q --force wmp10

wmp10quartz (32bit)

bash
winetricks -q --force wmp10 && sh ~/Documents/vn_winestuff-main/codec.sh quartz2

Font Installation

Installing Windows Japanese Fonts

  1. Download the Windows Japanese Fonts Pack
  2. Extract the fonts
  3. Place them in each prefix's fonts directory:
text
your_wineprefix/drive_c/Windows/Fonts

To avoid duplicating fonts across multiple prefixes:

  1. Store fonts in one location (e.g., ~/Desktop/Fonts/)
  2. Remove the existing Fonts folder inside the prefix
  3. Create a symbolic link:
bash
ln -s "~/Desktop/Fonts/" <your-wineprefix-path>/drive_c/windows/

Tips and Troubleshooting

Common Issues

Video Playback Issues

If you have video playback or lag issues in old VNs, make sure DXVK is disabled.

Text Rendering Issues

For rendering text issues in-game, ensure fonts are in the prefix and use the Japanese locale environment variable:

bash
LANG="ja_JP.UTF-8"

WMP11 32-bit Installation

The 32bit installer for wmp11 is broken, but a fix is available. For now, use a 64bit prefix (as of April 21, 2023) with Lutris 7.2.

Wine Configuration Tips

Wayland Support

For Wine 9.22+ (staging) or 10.0+ (stable), the native Wayland driver is enabled by default. The X11 driver still takes precedence if both are available, but you can force Wayland by unsetting the DISPLAY variable:

bash
env -u DISPLAY wine bin.exe

For Wine 9.21 and older, enable the driver with:

bash
wine reg add 'HKEY_CURRENT_USER\Software\Wine\Drivers' /v Graphics /t REG_SZ /d 'x11,wayland'

FFmpeg Backend

From Wine 10.0 (stable), a new opt-in FFmpeg-based backend is available as an alternative to GStreamer. Enable it by setting: DisableGstByteStreamHandler=1 in the HKCU\Software\Wine\MediaFoundation registry key.

Registry Keys

See the list of useful registry keys maintained by Wine for advanced configuration options.

Version Compatibility Notes

  • Avoid Lutris 7.2.2 due to video playback issues
  • Lutris 7.x versions generally work fine
  • Some codecs like mciqtz32 don't work with newer Wine versions
  • wmp11_quartz can be installed in newer Proton prefixes

Additional Resources

Contributors

Changelog


  1. Technically, a wineprefix is controlled by the WINEPREFIX environment variable that points to the directory containing the virtual Windows environment. By default, it's located at ~/.wine/ if not specified. ↩︎

  2. Answer from https://askubuntu.com/questions/956244/what-is-a-wineprefix ↩︎