Presently (Spring 2020) there is no linux installer for Yuzu. Unfortunately, the earlyaccess
channel is only available via the installer. Meaning that in order to get an early access version of the emulator you first need to download the source onto a windows virtual machine, to be built on your linux machine.
This script removes the requirement of using the installer. It downloads the windows version directly from https://api.yuzu-emu.org/, patches it to be compatible with linux, and builds it in a user defined directory.
Note, in order to access the earlyaccess
branch follow the instructions on https://yuzu-emu.org/help/early-access/
For building EA, you may get your login token from https://profile.yuzu-emu.org For many users, the simplest usage will be like the following:
wget https://github.com/RealJohnGalt/yuzu-linux-downloader/raw/master/yuzu-linux-downloader.sh chmod +x ./yuzu-linux-downloader.sh ./yuzu-linux-downloader.sh
Full arguments:
./yuzu-linux-downloader.sh [-c CHANNEL ] [-d DIRECTORY] [-i INSTALLDIR] [-g] [-o] [-l] [-w] [LOGIN_TOKEN]
Additional flags exist that don’t take arguments: -g for an apitrace compatible build with debug symbols enabled. -o to enable experimental optimizations that may cause regressions. If used, be sure to test without -o before reporting bugs upstream. -l to use llvm tools with clang to build. Paired with -o, it will utilize lld, ThinLTO, and Polly optimizations. If used, be sure to test without -l before reporting bugs upstream. -w for building with qt webengine support. You must have proper dependencies installed, even then build may fail for some configurations.
- Get your
LOGIN_TOKEN
from https://profile.yuzu-emu.org/
CHANNEL
can be earlyaccess
or mainline
DIRECTORY
is where the yuzu program will be downloaded and compiled. It Defaults to pwd.
INSTALLDIR
is where yuzu will be copied. Must have write privileges. Defaults to $HOME/.yuzubin.
BUILDNAME
is dictated by https://api.yuzu-emu.org/
- Ask user if they want to download if the file already exists
- Modify to allow for easy automation (check for update every 24 hours and build)