Build your Wine (staging) + Proton patches from source using Arch Docker image
1.7K
Build your own Wine (staging or stable) from scratch together with the Proton patches (or even protonified).
You a lot of configuration options to fine-tune your needs building your own Wine version, see customization.cfglater on.
This Docker image is based on Arch Linux, since TK-Glitch is creating the scripts made for Arch pacman builder: makepkg.
Thanks Tk-Glitch for the effort of creating and maintaining this Github repository.
On host system, clone the Tk-Glitch repository: git clone https://github.com/Tk-Glitch/PKGBUILDS.git ~/PKGBUILDS
(optionally) Change your configuration with your favorite editor: xed ~/PKGBUILDS/wine-tkg-git/customization.cfg
Hint: Since the Wine is meant to be run on your Debian/Ubuntu/Linux Mint, you may want to change the following 3 configuration options: _EXTERNAL_INSTALL to "true", _EXTERNAL_NOVER to "true" and _PKGNAME_OVERRIDE to "none". This way your system can support multiple Wine versions, and the Wine files will be landed in /opt/wine-tkg-opt-git.
docker run -it -u arch -w /home/arch/PKGBUILDS/wine-tkg-git -v /home/$USER/PKGBUILDS:/home/arch/PKGBUILDS danger89/wine-pkgbuilds:latest
Important note: Password of arch user is also: arch.
sudo pacman -Syu
makepkg -si
exit
cp -r ~/PKGBUILDS/wine-tkg-git/pkg/wine-tkg-*** ~/wine-build.OR deploy your Wine to the /opt destination in case you followed my advise :), via:
rm ~/PKGBUILDS/wine-tkg-git/pkg/wine-tkg-opt-git/.PKGINFO && \
rm ~/PKGBUILDS/wine-tkg-git/pkg/wine-tkg-opt-git/.MTREE && \
rm ~/PKGBUILDS/wine-tkg-git/pkg/wine-tkg-opt-git/.INSTALL && \
rm ~/PKGBUILDS/wine-tkg-git/pkg/wine-tkg-opt-git/.BUILDINFO && \
sudo cp -r ~/PKGBUILDS/wine-tkg-git/pkg/wine-tkg-opt-git/* /
Retrieve the Wine version:
/opt/wine-tkg-git/bin/wine --version
OR
~/wine-build/usr/bin/wine --version
Some usage examples.
If you followed my advise, your Wine is now installed at the /opt/wine-tkg-opt-git directory.
You may want to add: WINEARCH=win32 in your command below to ensure you create a 32-bit Wine bottle.
export PATH=/opt/wine-tkg-opt-git/bin:$PATH
WINEPREFIX=~/.winetest/ wine notepad.exe
Small note: If you did it everything correctly... You should now NOT be able to use wine due to a mismatch of the glibc version [Ubuntu Bionic is using glibc v2.27, while Arch is already on v2.30]. -,- If you are able to help me out, having knowledge about CFLAGS, LDFLAGS, etc, please contact me!!!
Another example starting some application from your Wine Bottle C:/ drive:
PATH=/opt/wine-tkg-opt-git/bin:$PATH WINEPREFIX=~/.winetest/ wine ~/.winetest/drive_c/some_folder/hello_world.exe
Example of Proton v4.11 and Wine is roll-out to the~/wine-build directory.
You can use Proton to first handle your Wine Prefix and install the game/application:
mkdir -p ~/WineApps/test
STEAM_COMPAT_DATA_PATH=~/WineApps/test ~/.steam/ubuntu12_32/steam-runtime/run.sh ~/.steam/steam/steamapps/common/Proton\ 4.11/proton run ~/Downloads/GameInstaller.exe
Launch the Game/App:
WINEPREFIX=~/WineApps/test/pfx LD_LIBRARY_PATH=$HOME/wine-build/usr/lib:$HOME/wine-build/usr/lib32:$LD_LIBRARY_PATH WINEDLLPATH=$HOME/wine-build/usr/lib/wine/:$HOME/wine-build/usr/lib32/wine PATH=$HOME/wine-build/usr/bin:$PATH ~/.steam/ubuntu12_32/steam-runtime/run.sh wine ~/WineApps/test/pfx/drive_c/some_folder/Launch.exe
Note the pfx that Proton appends to the Wine prefix by default.
More info:
_LOCAL_PRESET= in the config file.Install Docker if you haven't it already.
Installs deps:
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
Install Docker:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
bionic \
stable"
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo usermod -aG docker your-user
Content type
Image
Digest
Size
1.6 GB
Last updated
over 6 years ago
docker pull danger89/wine-pkgbuilds