wine

locale-gen
[multilib]
Include = /etc/pacman.d/mirrorlist
  • install wine
pacman -S wine
  • install optional dependencies
  • install winetricks (basically a package manger inside wine)
pacman -S winetricks
  • install zenity (GUI for winetricks, you could just use the CLI)
pacman -S zenity
  • wine-mono for .NET
pacamn -S wine-mono
  • if getting an error about ntlm_auth when installing things with winetricks, install samba
pacman -S samba
  • most visual novels are 32-bit, so set WINEARCH to win32
set -gx WINEARCH win32
set -gx DOTNET_CLI_TELEMETRY_OPTOUT 1
  • set windows version to windows XP, sometimes helpful
winecfg
  • "Applications" -> "Windows Version:" change to "Windows XP"

extra packages and fonts

  • if game doesn't work, try installing more libraries
pacman -S giflib lib32-giflib libpng lib32-libpng libldap lib32-libldap gnutls lib32-gnutls mpg123 lib32-mpg123 openal lib32-openal v4l-utils lib32-v4l-utils libpulse lib32-libpulse libgpg-error lib32-libgpg-error alsa-plugins lib32-alsa-plugins alsa-lib lib32-alsa-lib libjpeg-turbo lib32-libjpeg-turbo sqlite lib32-sqlite libxcomposite lib32-libxcomposite libxinerama lib32-libgcrypt libgcrypt lib32-libxinerama ncurses lib32-ncurses libxslt lib32-libxslt libva lib32-libva gtk3 lib32-gtk3 gst-plugins-base-libs lib32-gst-plugins-base-libs lib32-gst-plugins-good vulkan-icd-loader lib32-vulkan-icd-loader
  • if game doesn't work, try installing more libraries with winetricks
winetricks d3dx9 dirac dotnet35 dotnet40 dxvk lavfilters vcrun2003 vcrun2005 vcrun2008
  • disable wine DLL overrides
winetricks alldlls=default
  • start winetricks
winetricks
  • "Select the default wineprefix" -> "Install a font" -> check cjkfonts and corefonts

running a game

  • mount .iso as usual, unpack
sudo mount game.iso /mnt
sudo cp -r /mnt/* game/
  • run game
LC_ALL="ja_JP.UTF-8" TZ="Asia/Tokyo" wine game.exe
  • kill game
wineserver --kill

CDemu

  • if error along the lines of "disk not plugged in"
  • try restarting
  • if that doesn't work, use cdemu
sudo pacman -S cdemu-client cdemu-daemon
  • start daemon
cdemu-daemon
  • mount iso
cdemu load 0 game.iso
  • check mount point
lsblk
  • for me, either /dev/sr0 or /dev/sr1, check by file size / run lsblk before loading and after
  • mount
mount /dev/sr0 /mnt
  • add mount point to wine
winecfg
  • "Drives" -> "Add...", pick arbitrary letter ("E:" is typical), change "Path:" or click on "Browse..." to /mnt
  • run game as usual, hopefully just works