Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save amazingfate/adaccec998482a6280f9a80ac53968f2 to your computer and use it in GitHub Desktop.
Save amazingfate/adaccec998482a6280f9a80ac53968f2 to your computer and use it in GitHub Desktop.
opensuse wine
FROM opensuse/tumbleweed
COPY . /srv/wineappimage
WORKDIR /srv/wineappimage
RUN /srv/wineappimage/deployscript/opensuse-winedeploy.sh
#!/bin/bash
zypper refresh
zypper in -y wget file tar grep bzip2
# Get Wine
wget -nv -c https://www.playonlinux.com/wine/binaries/linux-x86/PlayOnLinux-wine-3.10-linux-x86.pol
tar xfj PlayOnLinux-wine-*-linux-x86.pol wineversion/
wineworkdir=(wineversion/*)
cd $wineworkdir
wget -nv -c https://github.com/Hackerl/Wine_Appimage/releases/download/v0.9/libhookexecv.so -O bin/libhookexecv.so
wget -nv -c https://github.com/Hackerl/Wine_Appimage/releases/download/v0.9/wine-preloader_hook -O bin/wine-preloader_hook
chmod +x bin/wine-preloader_hook
zypper refresh
zypper in -d -y fontconfig wine
rm /var/cache/zypp/packages/*/*/wine*
rm /var/cache/zypp/packages/*/*/wine-32bit*
rm /var/cache/zypp/packages/*/*/wine-gecko*
rm /var/cache/zypp/packages/*/*/wine-mono*
rm /var/cache/zypp/packages/*/*/winetricks*
for i in $(ls /var/cache/zypp/packages/*/*/*.rpm)
do
rpm2cpio $i | cpio -i --make-directories --preserve-modification-time
done
# appimage
cd -
wget -nv -c "https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage" -O appimagetool.AppImage
chmod +x appimagetool.AppImage
cat > AppRun <<\EOF
#!/bin/bash
HERE="$(dirname "$(readlink -f "${0}")")"
export LD_LIBRARY_PATH="$HERE/usr/lib64":$LD_LIBRARY_PATH
export LD_LIBRARY_PATH="$HERE/usr/lib":$LD_LIBRARY_PATH
export LD_LIBRARY_PATH="$HERE/lib":$LD_LIBRARY_PATH
#Sound Library
export LD_LIBRARY_PATH="$HERE/usr/lib/pulseaudio":$LD_LIBRARY_PATH
export LD_LIBRARY_PATH="$HERE/usr/lib/alsa-lib":$LD_LIBRARY_PATH
#Font Config
export FONTCONFIG_PATH="$HERE/etc/fonts"
#LD
export WINELDLIBRARY="$HERE/lib/ld-linux.so.2"
LD_PRELOAD="$HERE/bin/libhookexecv.so" "$WINELDLIBRARY" "$HERE/bin/wine" "$@" | cat
EOF
chmod +x AppRun
cp AppRun $wineworkdir
cp resource/* $wineworkdir
./appimagetool.AppImage --appimage-extract
export ARCH=x86_64; squashfs-root/AppRun $wineworkdir
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment