PKGBUILDS/wine-tkg-git/proton-tkg/proton-tkg-profiles/sample-external-config.cfg

386 lines
20 KiB
INI

# 'Wine-to-rule-them-all' - Proton-TkG config file - external config example
##
## This config file is an example of external config (typical path: ~/.config/frogminer/proton-tkg.cfg)
## It contains most available options in a centralized way - The few missing options are part of wine-tkg-git and mostly not interesting for proton-tkg
##
# This is a simplified config file with minimal comments. See ../../wine-tkg-git/wine-tkg-profiles/sample-external-config.cfg for more details.
# Some options will be missing from this config file compared to wine-tkg-git as they are enforced.
#### NON-MAKEPKG OPTIONS (Won't affect makepkg builds) ####
# Set to true to get a prompt after the 64-bit part is built, enabling package switching before building the 32-bit side.
# This is a workaround for distros shipping broken devel packages that can't coexist as multilib
_nomakepkg_midbuild_prompt="false"
# Set to the distro of your choice to attempt dependency resolution. Valid options are "debuntu" (for debian, ubuntu and similar), "fedora" or "archlinux".
_nomakepkg_dep_resolution_distro=""
# Set to true if you want to skip the uninstaller at the end of proton-tkg building
_skip_uninstaller="false"
# Set to true if you do not want your build to be automatically moved to your compatibilitytools.d dir
_no_autoinstall="false"
####
# PROTON-TKG OPTIONS
# Proton branch to target for lsteamclient libs and steam helper on 4.x+ - When using a Wine 3.x base, "proton_3.16" branch will be enforced
_proton_branch="experimental_7.0"
# Proton SDL Joystick support, xinput hacks and other gamepad additions. _gamepad_additions depends on _sdl_joy_support.
# This might be required for some FFB steering wheels, but can break gamepad support in some games.
_sdl_joy_support="false"
# ! _gamepad_additions="true" can sometimes break more than it fixes depending on the game, so feel free to tweak this !
_gamepad_additions="true"
# SteamDeck support additions
_tabtip="true"
# Proton non-vr-related wined3d additions - Disabled on staging independently of this setting
_wined3d_additions="true"
# Proton wined3d-interop and friends for SteamVR support - Depends on _proton_fs_hack="true"
_steamvr_support="true"
# Disable nvapi and nvapi64 - Common fix for various games when using a Nvidia GPU
# Might create issues on some native vulkan game calling nvapi for some extremely dumb reason, such as Doom Eternal
_proton_nvapi_disable="false"
# Disable winedbg - (Used to fix GTA V online crash before Proton 5.0-4 02951753)
_proton_winedbg_disable="false"
# Disable conhost - Workaround for potential stalled conhost.exe process affecting performance negatively
# Some games or launchers might need the functionality but I couldn't find one
# Seems to be fixed as of 14b50ee1 & 8a47ef28 (Wine 6.0rc2)
_proton_conhost_disable="false"
# Enforce IMAGE_FILE_LARGE_ADDRESS_AWARE - Fixes 32-bit games hitting address space limitations.
# *Some* games might not like that (only known case so far is System Shock 2).
_proton_force_LAA="true"
# Set Pulseaudio latency to 60ms - Can help with sound crackling issues on some configs
_proton_pulse_lowlat="false"
# Until supported in wine, WMA playback needs external FAudio. Set to "false" to use wine builtin implementation
_prefer_external_faudio="true"
# Enforce driver shader cache path when Steam's shader pre-caching is disabled
_proton_shadercache_path=""
# Enable the use of winelib steam.exe to launch games that checks if Steam is running such as Assetto Corsa - Only works with a Wine 4.0+ base
# Will disable "server-Desktop_Refcount" and "ws2_32-TransmitFile" patchsets on staging past 4e7071e4 (4.7+)
_proton_use_steamhelper="true"
# Set to true to disable proton's steamclient lib substitution. Allows running windows steam client in proton (only affects 4.19+)
# ! This will prevent most Steam games to run directly from proton - You only want to use this as a secondary build for non-steam games or running windows steam/games from windows steam !
_steamclient_noswap="false"
# Enable Winetricks prompt on game launch - Will use your system winetricks, so you need it installed
_proton_winetricks="false"
# Enable DXVK's async pipecompiler on a compatible DXVK build. Also known as the "poe hack", that option *could* be unsafe regarding anticheats, so beware !
_proton_dxvk_async="false"
# DXVK options
# hud : https://github.com/doitsujin/dxvk#hud
# configfile : https://github.com/doitsujin/dxvk/wiki/Configuration#configuration-file
_proton_dxvk_hud=""
_proton_dxvk_configfile=""
# COMPILER/BUILD OPTIONS
# Custom compiler root dirs - Leave empty to use system compilers
# Example: CUSTOM_MINGW_PATH="/home/frog/PKGBUILDS/mostlyportable-gcc/mingw-mostlyportable-9.2.0"
# Example: CUSTOM_GCC_PATH="/home/frog/PKGBUILDS/mostlyportable-gcc/gcc-mostlyportable-9.2.0"
CUSTOM_MINGW_PATH=""
CUSTOM_GCC_PATH=""
_LOCAL_OPTIMIZED="true"
_GCC_FLAGS="-O2 -ftree-vectorize"
_LD_FLAGS="-Wl,-O1,--sort-common,--as-needed"
_CROSS_FLAGS="-O2 -ftree-vectorize"
_CROSS_LD_FLAGS="-Wl,-O1,--sort-common,--as-needed"
_NUKR="true"
_NOCOMPILE="false"
_NOINITIALPROMPT="false"
# Set the method used to do PE files fixups to please some DRMs and other checks - Default is "objcopy", alternative is "py" (which will run legacy pefixup.py proton script)
# !!! the "py" method allows Destiny 2 checks to pass but will get you banned !!!
_pefixup="objcopy"
# Set to true to forcefully disable using ccache (else it'll be used if detected).
_NOCCACHE="false"
# Optionally set additional make dependencies for makepkg builds. Multiple elements should be separated by a space.
# Only affects makepkg
_user_makedeps=""
# Strip libs for smaller footprint (--strip-unneeded) - Not recommended for debugging
_pkg_strip="true"
# Set to "true" to generate patchsets for each parts of the tree patching steps, found in `src/wine source dir` (default src/wine-mirror-git)
# 01-reverts - 02-pre-staging - 03-staging - 04-post-staging - 05-hotfixes - 06-userpatches - 07-tags-n-polish
_generate_patchsets="false"
# Set to "true" to log compiler warnings and errors to a debug.log file
_log_errors_to_file="false"
# Set to true to remove trailing patchmsg strings in logs - Useful to review the list of patches used without fluff
_nopatchmsg="false"
# Set to a desired additional tag to differentiate builds
_PROTON_NAME_ADDON=""
# WINE FLAVOUR SETTINGS
# Override config with one of the presets from /wine-tkg-profiles dir. Leave empty to be prompted.
# Custom presets for proton :
# "valve" (builds against current valve proton tree)
# "valve-exp" (builds against current valve proton-experimental tree)
# "valve-exp-bleeding" (builds against current valve proton-experimental-bleeding-edge tree)
# "none" - Silence the prompt
_LOCAL_PRESET=""
# Add GloriousEggroll game patches and hotfixes when using a Valve profile with staging enabled
# ! This will only affect Valve + staging trees !
# List of patches applied with this option enabled: assettocorsa-hud killer-instinct-winevulkan_fix FFVII-and-SpecialK-powerprof 65-proton-fake_current_res_patches unity_crash_hotfix Fix-regression-introduced-by-0e7fd41 15aa8c6-fix-star-citizen-bug-52956 0001-winex11.drv-Define-ControlMask-when-not-available 0002-include-Add-THREAD_POWER_THROTTLING_STATE-type 0003-ntdll-Fake-success-for-ThreadPowerThrottlingState
_use_GE_patches="true"
# Set to the path of a custom wine source repo if desired (i.e. https://github.com/ValveSoftware/wine). Leave empty to use official wine source.
# Use the _plain_version option to target a specific commit for this source
# ! Make sure to disable staging if your source isn't compatible with it or it will fail to apply !
_custom_wine_source=""
# fastsync - disable at runtime with WINE_DISABLE_FAST_SYNC=1 envvar - Set to true to enable winesync/fastsync support - https://repo.or.cz/wine/zf.git/shortlog/refs/heads/fastsync4
# !! on plain: Disables esync / fsync support !!
# !! on staging: Requires fsync support !!
_use_fastsync="false"
_use_esync="true"
_use_fsync="true"
# Allow making use of the futex2 kernel interface for fsync - Requires a patched kernel such as linux-tkg - https://gitlab.collabora.com/tonyk/wine/-/commits/experimental_5.13
_fsync_futex2="true"
# futex_waitv() API for fsync - Requires 5.16 kernel or kernel with backported patches - https://github.com/ValveSoftware/wine/pull/128
# !! Replaces previous fsync interfaces support !!
_fsync_futex_waitv="true"
# Add a configurable spin count to fsync - might help performance but can introduce stability issues/hanging. Try setting WINEFSYNC_SPINCOUNT=100 envvar
_fsync_spincounts="true"
_plain_version=""
_plain_mirrorsrc="true"
# Sets custom configure-args for 64-bit, separated by a space (example: "--without-mingw --with-vkd3d")
_configure_userargs64="--with-x --with-gstreamer --with-xattr"
# Sets custom configure-args for 32-bit, separated by a space (example: "--without-mingw --with-vkd3d")
_configure_userargs32="--with-x --with-gstreamer --with-xattr"
_use_staging="true"
_staging_version=""
# You can set _use_dxvk to either "prebuilt" (for builds made with dxvk-tools for example), "release" (using github's latest) or "false" (disabled)
# Setting it to "true" will default to "release"
_use_dxvk="git"
# Set to false to add DXVK configuration support to Wine's DXGI, allowing for VKD3D to run while keeping DXVK dxgi functionalities.
# !! For DXVK to work properly with this option set to false, you'll need a DXVK build that comes with dxvk_config.dll !!
# Keep in mind Wine's dxgi can be more unstable and less compatible when used with DXVK.
_dxvk_dxgi="true"
# Specify DXVK release version, ex: "v1.6.1", default is "latest"
_dxvk_version=""
_dxvk_async="false"
# staging
# You can optionally uncomment the _staging_userargs="" option below to disable desired wine-staging patchsets.
# For example, to disable the 'wined3d-Indexed_Vertex_Blending' patchset, the line below would look like this : _staging_userargs="-W wined3d-Indexed_Vertex_Blending"
# You can also disable multiple patchsets ('wined3d-WINED3D_RS_COLORWRITEENABLE' and 'wined3d-Indexed_Vertex_Blending'
# in the following example : _staging_userargs="-W wined3d-WINED3D_RS_COLORWRITEENABLE -W wined3d-Indexed_Vertex_Blending"
_staging_userargs="-W ntdll-NtAlertThreadByThreadId"
# vkd3dlib - We don't want to use vkd3d native library by default to allow for vkd3d-proton usage
# Set to "true" to enable explicit mainline vkd3d library support - default is "false"
_use_vkd3dlib="false"
# GAME-SPECIFIC PATCHES
# Enable support for Proton's Battleye runtime - Needs the package to be installed in Steam
_proton_battleye_support="true"
# Enable support for Proton's EAC bridge - Needs the package to be installed in Steam
_proton_eac_support="true"
_warframelauncher_fix="true"
_ffxivlauncher_fix="false"
_sims3_fix="false"
_mtga_fix="false"
_mwo_fix="false"
_childwindow_fix="true"
_lol920_fix="false"
_assettocorsa_hudperf_fix="true"
_staging_pulse_disable="false"
# Shared gpu resources support:
# Shared texture resources for d3d9 and d3d11 - https://github.com/doitsujin/dxvk/pull/2516
# Requires DXVK 1.10.1+
# ID3D11Fence and ID3D12Fence sharing - https://github.com/doitsujin/dxvk/pull/2608 https://github.com/HansKristian-Work/vkd3d-proton/pull/1175
# Requires DXVK 1.10.3+, VKD3D-Proton 2.7+
_shared_gpu_resources="false"
# Fixes for Mortal Kombat 11 - Requires staging, _proton_fs_hack="true", native mfplat (win7) or staging mfplat support and a different GPU driver than RADV
# On Wine 5.2 (up to b1c748c8) and lower, it needs to be toogled on with the WINE_LOW_USER_SPACE_LIMIT=1 envvar
_mk11_fix="true"
# ! _re4_fix="true" requires _wined3d_additions="false" or it will get ignored !
_re4_fix="false"
# Background music on King of Fighters 98 and 2002 is silent on Wine-staging and the `xactengine-initial` patchset was found to introduce the issue. Set to "true" to disable it as a workaround.
_kof98_2002_BGM_fix="false"
# Fix for Quake Champions by Paul Gofman for Proton - Depends on _protonify="true" and _use_staging="true"
# This patchset breaks Genshin Impact
_quake_champions_fix="true"
# OTHER PATCHES
# Set to "false" to disable building proton media converter - This is helpful for some games using unsupported video formats such as Resident Evil 8
# We're only supporting 64-bit version of the lib in -tkg at this point - https://github.com/ValveSoftware/Proton/tree/proton_6.3/media-converter
_build_mediaconv="true"
# Set to "true" to re-use previoulsy built gst-related libs (mediaconverter, gstreamer, ffmpeg, faudio)
# Set to "false" to explicitly not re-use previoulsy built gst-related libs
# Default (empty value) will prompt if an existing gst dir is found
# !!! There is not detection regarding what was and wasn't built, the previously built gst dir will be used as it was on last successfuly build, independently of the below options !!!
# !!! If you want to add features you didn't build before (for example ffmpeg or lib32), you'll need to enable those and rebuild without this option first !!!
_reuse_built_gst=""
# Set to "true" to enable building 64-bit patched gstreamer & plugins - This is helpful to support video formats no covered by your distro packages
# Will build orc, gstreamer, gst-plugins-base, gst-plugins-good, gst-plugins-bad, gst-plugins-ugly, gst-libav
# _build_mediaconv can be set to false when this is enabled and Steam's shader precaching is disabled
_build_gstreamer="false"
# Set to "true" to also enable building 32-bit patched gstreamer & plugins
# Depends on _build_gstreamer="true"
_lib32_gstreamer="false"
# Set to "true" to enable building ffmpeg
# Depends on _build_gstreamer="true"
# Enabling _lib32_gstreamer above will also enable lib32 for this option
_build_ffmpeg="true"
# Set to "true" to enable building FAudio
# Depends on _build_gstreamer="true"
# Enabling _lib32_gstreamer above will also enable lib32 for this option
_build_faudio="true"
_CSMT_toggle="true"
_GLSL_toggle="false"
_MIME_NOPE="true"
_lowlatency_audio="false"
_launch_with_dedicated_gpu="false"
_clock_monotonic="true"
_FS_bypass_compositor="true"
_proton_fs_hack="true"
_large_address_aware="true"
_stg_shared_mem_default="false"
_proton_mf_hacks="false"
_proton_rawinput="true"
# Joshua Ashton's take on making wine dialogs and menus less win95-ish - https://github.com/Joshua-Ashton/wine/tree/wine-better-theme
_use_josh_flat_theme="true"
# Enforce mscvrt Dlls to native then builtin - from Proton - Can be detrimental on 4.3+
_msvcrt_nativebuiltin="true"
# Set the default wine version to win10 (instead of win7)
_win10_default="true"
# Other misc proton patches and hacks - Notably contains fixes for some native vk games (such as Doom Eternal) as well as Rockstar launcher
# Also enables some winevulkan performance optimizations - https://github.com/Joshua-Ashton/proton-wine/tree/winevulkan-opt (fs hack) - https://github.com/Joshua-Ashton/wine/commits/winevulkan-opt-mainline (no fs hack)
_protonify="true"
#### LEGACY PATCHES - These are for older than current master - Some are enabled by default on such trees as they are considered harmless
# Sets the value of an additional fake refresh rate in virtual desktop mode. Leave empty to keep default - Deprecated as of 6f305dd8 (5.14-devel) unless FS hack is also enabled
_fake_refresh_rate=""
# legacy gallium nine - This is only available for 4.1-devel (prior to e24b162) and older wine versions - Use nine standalone instead for newer wine
_use_legacy_gallium_nine="false"
# pba - Enable with PBA_ENABLE=1 envvar, force-disabled on 3.19 & higher due to known broken state
_use_pba="true"
# The Sims 2 fix - On staging, disables wined3d-WINED3D_RS_COLORWRITEENABLE and wined3d-Indexed_Vertex_Blending patchsets - https://bugs.winehq.org/show_bug.cgi?id=8051 - Obsoleted by D9VK
_sims2_fix="false"
# Disable server-send_hardware_message staging patchset if found - Fixes FFXIV/Warframe/Crysis 3 (etc.) mouse jittering on 3.19 staging and lower. Will cause GTA V to freeze for a second or two on first keyboard input
_server_send_hwmsg_disable="true"
# Path of exile - Fixes DX11 mode not working - Doesn't seem to be needed anymore since Wine 4.1, supposedly since a game patch - https://bugs.winehq.org/show_bug.cgi?id=42695
_poe_fix="false"
# Overwatch mf crash fix from Guy1524 - https://bugs.winehq.org/show_bug.cgi?id=47385 - This will only apply against a wine tree missing b182ba882cfcce7b8769470f49f0fba216095c45, and ignored otherwise
_OW_fix="true"
# Python fix for <=3.18 (backported from zzhiyi's patches) - fix for python and needed for "The Sims 4" to work - replaces staging partial implementation - https://bugs.winehq.org/show_bug.cgi?id=44999 - This will only apply against a wine tree missing 3ebd2f0be30611e6cf00468c2980c5092f91b5b5, and ignored otherwise
_318python_fix="true"
# Workaround for F4SE/SkyrimSE Script Extender - This is a hack and could break stuff - https://github.com/hdmap/wine-hackery/tree/master/f4se - It was fixed upstream with 1aa963ef - 6672fc9d (4.13-devel)
_f4skyrimse_fix="false"
# steam crossover hack for store/web functionality - https://bugs.winehq.org/show_bug.cgi?id=39403
_steam_fix="true"
# Fix crashes or perf issues related to high core count setups - Fixed in 4.0 - https://bugs.winehq.org/show_bug.cgi?id=45453
_highcorecount_fix="true"
# Reverts c6b6935 due to https://bugs.winehq.org/show_bug.cgi?id=47752 - Fixed upstream with cb70373
_c6b6935_revert="true"
# Native dotnet workaround for 4.13+ - https://bugs.winehq.org/show_bug.cgi?id=47633
_nativedotnet_fix="true"
# USVFS (Mod Organizer 2's virtual filesystem) support patch - https://github.com/Tk-Glitch/PKGBUILDS/issues/300 - https://bugs.winehq.org/show_bug.cgi?id=47833
_usvfs_fix="false"
# Faudio - Use the currently installed Faudio packages (both 32 and 64-bit) for xaudio2 - Fixes sound issues in various games. Disables xaudio2 & winepulse staging patchsets
# Support is enabled by default in Wine 4.3+ as well as Wine-staging 4.13+, independently of this setting
_use_faudio="true"
# Revert moving various funcs to kernelbase & ntdll to fix some dll loading issues and ntdll crashes (with Cemu and Blizzard games notably)
# Deprecated as of b7db0b5 - Force-enabled on proton-tkg when using older than b7db0b5 tree
_kernelbase_reverts="false"
# Update winevulkan to whatever version I have pushed last, til next time, for new shiny and tasty vk extensions support. Thanks dadドイツ人 !
_update_winevulkan="false"
_plasma_systray_fix="false"
# Allow making use of the futex2 kernel interface for fsync - Requires a patched kernel such as linux-tkg - https://gitlab.collabora.com/tonyk/wine/-/commits/experimental_5.13
_fsync_futex2="true"
# USER PATCHES
# community patches - add patches (separated by a space) of your choice by name from the community-patches dir - https://github.com/Frogging-Family/community-patches - proton-tkg, just like wine-tkg-git, uses the wine-tkg-git patches subdir
# example: _community_patches="amdags.mypatch GNUTLShack.mypatch"
_community_patches="amdags-proton.mypatch atiadlxx-proton.mypatch FinalFantasyXVHack.mypatch ntdll_Map_top-down_if_dll_characteristics_include_DYNAMIC_BASE.mypatch Shell32-CreateDirectoryInDestinationInFileOp-Move-multiop.mypatch winex11_limit_resources-nmode.mypatch unhide-prefix-update-window.mypatch"
_user_patches="true"
_user_patches_no_confirm="false"
# Set to "false" to prompt about all non-critical hotfix patches at build time, or "ignore" to ignore all non-critical hotfix patches without confirmation
# Default ("true") will apply all non-critical hotfix patches without confirmation
_hotfixes_no_confirm="true"
# Set to false to disable staging mfplat restoration in case a hotfix is available and _hotfixes_no_confirm is set to "true"
_hotfixansw_staging_mfplat=""
# Set to false to disable staging pulseaudio restoration in case a hotfix is available and _hotfixes_no_confirm is set to "true"
_hotfixansw_staging_pulse=""