-
Notifications
You must be signed in to change notification settings - Fork 64
wine tkg git
Wine-tkg-git is a PKGBUILD for custom wine builds creation. It can also build clean plain wine or wine-staging.
The customization takes place in config files.
The default config file is next to the PKGBUILD and called "customization.cfg". You can edit it directly or create your own modified copy in a custom path (~/config/frogminer/wine-tkg.cfg
by default). You only need to add the options you want to customize. The missing ones will use the default settings found in customization.cfg
.
If you want to use patches that aren't already provided by wine-tkg-git, you can add them to the wine-tkg-userpatches
directory and follow the rules detailed HERE.
On Arch and other pacman distros, the PKGBUILD will resolve the required dependencies for you.
For Debian, Ubuntu and derivatives:
Debian based OSes have extremely poor multilib support, requiring a quirky workaround:
!! note: Pop!_OS is the worst at this, and can't build lib32-wine in a multilib env currently. !!
You'll need to run sudo dpkg --add-architecture i386
and sudo apt get update
to allow for multilib work.
1- First set _nomakepkg_midbuild_prompt="true"
in your .cfg file
2- Then install 64-bit dependencies ONLY (without the 32-bit ones)
3- Launch wine-tkg-git/proton-tkg build script and wait until the 64-bit side is built, displaying a prompt:
64-bit side has been built, 32-bit will follow.
This is the time to install the 32-bit devel packages you might need.
When ready, press enter to continue..
4- Don't hit enter just yet and install the 32-bit dependencies now, replacing conflicting packages as needed
5- You can now hit enter and wait until the build is done
For building again, you'll have to re-do steps 2-5 to get back the 64-bit dependencies that got replaced in step 4
(sudo apt install)
64-bit
git autoconf bison ccache debhelper desktop-file-utils docbook-to-man docbook-utils docbook-xsl flex fontforge gawk gettext libacl1-dev libasound2-dev libcapi20-dev libcups2-dev libdbus-1-dev libgif-dev libglu1-mesa-dev libgphoto2-dev libgsm1-dev libgtk-3-dev libkrb5-dev liblcms2-dev libldap2-dev libmpg123-dev libncurses5-dev libopenal-dev libosmesa6-dev libpcap-dev libpulse-dev libsane-dev libssl-dev libtiff5-dev libudev-dev libv4l-dev libva-dev libxslt1-dev libxt-dev ocl-icd-opencl-dev oss4-dev prelink sharutils unixodbc-dev valgrind schedtool libfreetype6-dev xserver-xorg-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gcc-multilib g++-multilib curl fonttools libsdl2-dev python3-tk libvulkan1 libc6-dev linux-libc-dev libkdb5-9 libppl14 libcolord2 libvulkan-dev libgnutls28-dev libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev libpng-dev libkadm5clnt-mit11 libkadm5srv-mit11 libavcodec-dev libavutil-dev libswresample-dev libavcodec58 libswresample3 libavutil56 libfaudio0 libfaudio-dev libvkd3d-dev libxinerama-dev libxcursor-dev libxrandr-dev libxcomposite-dev
32-bit
xserver-xorg-dev:i386 libfreetype6-dev:i386 libfontconfig1-dev:i386 libglu1-mesa-dev:i386 libosmesa6-dev:i386 libvulkan-dev:i386 libvulkan1:i386 libpulse-dev:i386 libopenal-dev:i386 libncurses-dev:i386 libfaudio0:i386 libfaudio-dev:i386 libvkd3d-dev:i386 libgnutls28-dev:i386 libtiff-dev:i386 libldap-dev:i386 libcapi20-dev:i386 libpcap-dev:i386 libxml2-dev:i386 libmpg123-dev:i386 libgphoto2-dev:i386 libsane-dev:i386 libcupsimage2-dev:i386 libkrb5-dev:i386 libgsm1-dev:i386 libxslt1-dev:i386 libv4l-dev:i386 libgstreamer-plugins-base1.0-dev:i386 libudev-dev:i386 libxi-dev:i386 liblcms2-dev:i386 libibus-1.0-dev:i386 libsdl2-dev:i386 ocl-icd-opencl-dev:i386 libxinerama-dev:i386 libxcursor-dev:i386 libxrandr-dev:i386 libxcomposite-dev:i386 libavcodec58:i386 libswresample3:i386 libavutil56:i386
For proton-tkg you'll also need Steam.
For Fedora, you'll need: (sudo dnf install)
64-bit
git make ccache gcc-c++ mingw32-gcc mingw64-gcc SDL2-devel openal-soft-devel opencl-headers ocl-icd-devel libFAudio-devel libvkd3d-devel icoutils vulkan-devel lcms2-devel gstreamer1-devel gstreamer1-plugins-base-devel libmpg123-devel gtk3-devel libva-devel fontforge fontpackages-devel gsm-devel libjpeg-turbo-devel libudev-devel libv4l-devel pulseaudio-libs-devel lzma audiofile-devel giflib-devel ImageMagick-devel libpcap-devel libXxf86dga-devel mesa-libOSMesa-devel libgphoto2-devel libusb-devel alsa-lib-devel autoconf bison coreutils cups-devel dbus-devel desktop-file-utils flex fontconfig-devel freetype-devel freeglut-devel gawk xz gettext-devel gnutls-devel krb5-devel libattr-devel libieee1284-devel libpng-devel librsvg2 librsvg2-devel libstdc++-devel libtiff-devel libX11-devel libXcomposite-devel libXcursor-devel libXext-devel libXi-devel libXinerama-devel libxml2-devel libXmu-devel libXrandr-devel libXrender-devel libxslt-devel libXxf86vm-devel mesa-libGL-devel mesa-libGLU-devel ncurses-devel openldap-devel sane-backends-devel unixODBC-devel unzip util-linux zlib-devel fonttools
32-bit
pkgconf.i686 gcc-c++.i686 glibc-devel.i686 libX11-devel.i686 libXcomposite-devel.i686 libXcursor-devel.i686 libXext-devel.i686 libXi-devel.i686 libXinerama-devel.i686 libxml2-devel.i686 libXmu-devel.i686 libXrandr-devel.i686 libXrender-devel.i686 libxslt-devel.i686 libXxf86vm-devel.i686 mesa-libGL-devel.i686 mesa-libGLU-devel.i686 ncurses-devel.i686 openldap-devel.i686 freetype-devel.i686 SDL2-devel.i686 openal-soft-devel.i686 ocl-icd-devel.i686 libFAudio-devel.i686 libvkd3d-devel.i686 lcms2-devel.i686 gstreamer1-devel.i686 gstreamer1-plugins-base-devel.i686 gtk3-devel.i686 libva-devel.i686 giflib-devel.i686 libpcap-devel.i686 libXxf86dga-devel.i686 mesa-libOSMesa-devel.i686 libgphoto2-devel.i686 libusb-devel.i686 alsa-lib-devel.i686 cups-devel.i686 dbus-devel.i686 fontconfig-devel.i686 libpng-devel.i686 libjpeg-turbo-devel.i686 pulseaudio-libs-devel.i686 gnutls-devel.i686 krb5-devel.i686 krb5-libs.i686 libtiff-devel.i686 vulkan-loader-devel.i686 libv4l-devel.i686 gsm-devel.i686 sane-backends-devel.i686 libXfixes-devel.i686
For proton-tkg you'll also need Steam, which requires enabling its repo.