Le blog de Jean David TECHER, un Réunionnais à Saint-Priest/Lyon

Aller au contenu | Aller au menu | Aller à la recherche


samedi 24 décembre 2016

Build Wine-Staging 2.0rc2 and Gallium Nine from Sources (including patches from wine-gaming-nine repo)

Below are my instructions to build Wine-Staging with Gallium-Nine

CURRENT_VERSION="2.0-rc2"
MAJOR_VERSION="2.0"

# Create main folder and get into this folder
mkdir Wine-Staging-${CURRENT_VERSION}_Gallium-Nine and move this new folder
cd Wine-Staging-${CURRENT_VERSION}_Gallium-Nine

# Download all sources
wget https://dl.winehq.org/wine/source/${MAJOR_VERSION}/wine-${CURRENT_VERSION}.tar.bz2
wget https://github.com/wine-compholio/wine-staging/archive/v${CURRENT_VERSION}.tar.gz
wget https://github.com/sarnex/wine-d3d9-patches/archive/wine-d3d9-${CURRENT_VERSION}.tar.gz
git clone https://aur.archlinux.org/wine-gaming-nine.git/

# Decompress Wine sources and Gallium Nine patches sources
tar xvjf wine-${CURRENT_VERSION}.tar.bz2 
tar xvzf wine-d3d9-${CURRENT_VERSION}.tar.gz

# Get into Wine folder and apply patches for Wine-Staging
cd wine-${CURRENT_VERSION}
tar xvzf ../v${CURRENT_VERSION}.tar.gz -C . --strip-component 1
./patches/patchinstall.sh DESTDIR="$(pwd)" --all

# Apply patches for Gallium Nine
patch -p1 < ../wine-d3d9-patches-wine-d3d9-${CURRENT_VERSION}/staging-helper.patch
patch -p1 < ../wine-d3d9-patches-wine-d3d9-${CURRENT_VERSION}/wine-d3d9.patch 

# Apply patches from wine-gaming-nine 
patch -p1 < ../wine-gaming-nine/heap_perf.patch
patch -p1 < ../wine-gaming-nine/increase_max_frag_samplers.patch
patch -p1 < ../wine-gaming-nine/steam.patch 
patch -p1 < ../wine-gaming-nine/wbemprox_query_v2.patch 
patch -p1 -R < ../wine-gaming-nine/keybindings.patch 

# Run autoconf so options for Gallium Nine will be taken into account by configure
autoconf

# Run configure
# Notice: gstreamer 1.6.3 is not part of my Linux system. I built it in /opt/gstreamer/1.6.3/
# That's the reason why I used PKG_CONFIG_PATH
PKG_CONFIG_PATH=/opt/gstreamer/1.6.3/lib/pkgconfig/ ./configure --prefix=/opt/wine/apps/Hounds_The_Last_Hope  \
--with-alsa --with-capi --with-cms --with-coreaudio --with-cups --with-curses --with-dbus --with-fontconfig \
--with-freetype --with-gettext --with-gettextpo --with-gphoto --with-glu --with-gnutls --with-gsm \
--with-gstreamer --with-gtk3 --without-hal --with-jpeg --with-ldap --with-mpg123 --with-netapi --with-openal \
--with-opencl --with-opengl --with-d3d9-nine --with-d3d9-nine-module=auto --with-d3d9-nine-headers-path=auto \
--with-osmesa --with-oss --with-pcap --with-png --with-pthread --with-pulse --with-sane --with-tiff \
--with-udev --with-v4l --with-xattr --with-xcomposite --with-xcursor --with-xcb --with-xinerama \
--with-xinput --with-xinput2 --with-xml --with-xrandr --with-xrender --with-xshape --with-xshm \
--with-xslt --with-xxf86vm --with-zlib --with-va --with-x

#Build
make -j4

# Install
make install

dimanche 11 décembre 2016

Build Wine-Staging 1.9.23 and Gallium Nine from Sources (including patches from wine-gaming-nine repo)

Below are my instructions to build Wine-Staging with Gallium-Nine

  • Create a main folder
    mkdir Wine-Staging-1.9.23_Gallium-Nine and move this new folder
    cd Wine-Staging-1.9.23_Gallium-Nine
     
  • Download all sources
    • Wine 1.9.23 Sources
    • Patches for Wine-Staging 1.9.23
    • Patches for Gallium Nine maintained by/from Sarnex's Repo
    wget https://dl.winehq.org/wine/source/1.9/wine-1.9.23.tar.bz2
    wget https://github.com/wine-compholio/wine-staging/archive/v1.9.23.tar.gz
    wget https://github.com/sarnex/wine-d3d9-patches/archive/wine-d3d9-1.9.23.tar.gz
    

    We will appy patches from ARCH repo wine-gaming-nine. You just have to clone repository for wine-gaming-nine from ARCH

    git clone https://aur.archlinux.org/wine-gaming-nine.git/
  • Decompress sources for Wine 1.9.23 sources and for Gallium Nine patches
    tar xvjf wine-1.9.23.tar.bz2 
    tar xvzf wine-d3d9-1.9.23.tar.gz 
    
  • Move to Wine folder. Decompress patches for Wine-Staging and apply patches
  • cd wine-1.9.23
    tar xvzf ../v1.9.23.tar.gz -C . --strip-component 1
    ./patches/patchinstall.sh DESTDIR="$(pwd)" --all

    Notice: If you need more information then please refer to https://github.com/wine-compholio/wine-staging/wiki/Packaging

  • Apply Gallium-Nine patches
    patch -p1 < ../wine-d3d9-patches-wine-d3d9-1.9.23/staging-helper.patch
    patch -p1 < ../wine-d3d9-patches-wine-d3d9-1.9.23/wine-d3d9.patch 
    
  • Now apply patches from wine-gaming-nine
    patch -p1 < ../wine-gaming-nine/heap_perf.patch
    patch -p1 < ../wine-gaming-nine/increase_max_frag_samplers.patch
    patch -p1 < ../wine-gaming-nine/steam.patch 
    patch -p1 < ../wine-gaming-nine/wbemprox_query_v2.patch 
    patch -p1 -R < ../wine-gaming-nine/keybindings.patch 
    

    Notice: Be informed that keybindings.patch has to be reversed (-R option) -- not to be applied --.

  • Now run autoreconf. That way options for Gallium Nine will be taken into account by configure
    autoreconf
  • On my side here is my own configure command
  • PKG_CONFIG_PATH=/opt/gstreamer/1.6.3/lib/pkgconfig/ ./configure --prefix=/opt/wine/apps/FFXIV_Benchmark/ \
    --with-alsa --with-capi --with-cms --with-coreaudio --with-cups --with-curses --with-dbus --with-fontconfig --with-freetype \
    --with-gettext --with-gettextpo --with-gphoto --with-glu --with-gnutls --with-gsm --with-gstreamer --with-gtk3 \
    --without-hal --with-jpeg --with-ldap --with-mpg123 --with-netapi --with-openal --with-opencl --with-opengl \
    --with-d3d9-nine --with-d3d9-nine-module=auto --with-d3d9-nine-headers-path=auto \
    --with-osmesa --with-oss --with-pcap --with-png --with-pthread --with-pulse --with-sane --with-tiff --with-udev \
    --with-v4l --with-xattr --with-xcomposite --with-xcursor --with-xcb --with-xinerama --with-xinput --with-xinput2 \
    --with-xml --with-xrandr --with-xrender --with-xshape --with-xshm --with-xslt --with-xxf86vm --with-zlib \
    -with-va --with-x

    Notice: gstreamer 1.6.3 is not included in my Linux system. I installed it in /opt/gstreamer/1.6.3/. That's the reason why I had to set up PKG_CONFIG_PATH.

lundi 5 décembre 2016

Necropolis Brutal Edition on Linux | Gallium Nine CSMT | Wine-Staging 1.9.22

Game works pretty well on Linux using Wine patched with Gallium Nine. I use the CSMT branch of iXit repo. Be careful this game can be pretty addictive!

Things you need to know

  1. You have to disable d3d11 through winecfg to get it to work.
  2. Gallium Nine is highly recommended to play this game. If you use Open Source Drivers and you switched Gallium Nine off through winecfg then you will get a green screen.
  3. It is highly recommended to use a xbox360 gamepad to play this game. My own solution was to use Antimicro so I can map keys from my keyboard with my xbox360 gamepad.
  4. If you get a crash while playing then it is related to graphical options. Try to switch off a few graphical options (Particules Effets etc)

jeudi 1 décembre 2016

Zula Europe on Linux | Wine-Staging 1.9.22 | Mesa 13.1 Dev |RadeonSI

Game works pretty well on Linux using Wine. Game can crash sometimes; Those crashes seem to be related to the game itself not Wine/Linux

I was not able to get this game to be played using Gallium Nine CSMT. At least it works with WineD3D/Mesa3D/RadeonSI