From 2c4b20e68403b103126d9972e131fd425075cd6b Mon Sep 17 00:00:00 2001 From: Paul Menzel Date: Mon, 15 Jun 2026 12:20:50 +0200 Subject: [PATCH 1/7] wine: Add version 11.11 https://www.winehq.org/ Stabile Version: Wine 11.0 (Neuerungen (en)) Entwicklungsversion: Wine 11.11 (Neuerungen (en)) --- wine-11.11-0.build.sh | 127 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 127 insertions(+) create mode 100755 wine-11.11-0.build.sh diff --git a/wine-11.11-0.build.sh b/wine-11.11-0.build.sh new file mode 100755 index 0000000..63c064b --- /dev/null +++ b/wine-11.11-0.build.sh @@ -0,0 +1,127 @@ +#! /bin/bash + +# COOKIE=$(mcookie|cut -c-8); grep -v V_GREP_ME $0 > /dev/shm/runme-$COOKIE.sh ; sleep 0.3; exec bash /dev/shm/runme-$COOKIE.sh +# TESTING=1 + +set -e +umask 022 + +PKG=wine +VERSION=11.11 +BUILD=0 + +PATH=/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/package/bin +PREFIX=/pkg/$PKG-$VERSION-$BUILD +if [ -n "$TESTING" ]; then PREFIX=/scratch/local2/$PKG-$VERSION-$BUILD ; fi + +mkdir -p $PREFIX +cat >$PREFIX/profile <<-EOF + PATH=$PREFIX/bin:\$PATH + if [ -d $PREFIX/.compatlibs ]; then export LD_LIBRARY_PATH=$PREFIX/.compatlibs\${LD_LIBRARY_PATH:+:}\$LD_LIBRARY_PATH ; fi +EOF + +source $PREFIX/profile + +BUILD_TMPDIR=/scratch/local2/$PKG-$VERSION-$BUILD.$USER.build.tmp +test -d $BUILD_TMPDIR && ( chmod -R u+rwx $BUILD_TMPDIR || true ; rm -rf $BUILD_TMPDIR ) +mkdir -p $BUILD_TMPDIR/home +# embedded patches, copy script to an accessible location +cp $0 $BUILD_TMPDIR; ME="$BUILD_TMPDIR/$(basename $0)" +export TMPDIR=$BUILD_TMPDIR +export HOME=$BUILD_TMPDIR/home + +NPROC=$(( $(nproc) * 4 / 5 + 1 )) + +mkdir -p $PREFIX/build +cd $PREFIX/build + +( + VERSION=20240105 + # orig: https://github.com/Winetricks/winetricks/archive/20240105/winetricks-20240105.tar.gz + BEEHIVE=https://beehive.molgen.mpg.de/3d21aa2867a0f638f36ffb9a33d3ed5f/winetricks-20240105.tar.gz + + test -e winetricks-$VERSION.tar.xz || wget -nv $BEEHIVE + test -d winetricks-$VERSION || tar -xf winetricks-$VERSION.tar.gz + + cd winetricks-$VERSION + + mkdir -p $PREFIX/bin + cp src/winetricks $PREFIX/bin + chmod -c 0755 $PREFIX/bin/winetricks + + mkdir -p $PREFIX/share/man/man1 + cp -p src/winetricks.1 $PREFIX/share/man/man1 +) + +# orig: https://dl.winehq.org/wine/source/11.x/wine-11.11.tar.xz +BEEHIVE=https://beehive.molgen.mpg.de/b443f980be556567eb7f25be995c9825/wine-11.11.tar.xz + +test -e wine-$VERSION.tar.xz || wget -nv $BEEHIVE +test -d wine-$VERSION || tar -xf wine-$VERSION.tar.xz + +cd wine-$VERSION + +# use a *working* clang/lld toolchain from llvm (lld-link is needed) +source /pkg/llvm-16.0.1-0/profile + +sed -ne '/^#Epatch:writecopy/ s/^#Epatch:\S* // p' $ME | patch -p1 --verbose +sed -ne '/^#Epatch:flex/ s/^#Epatch:\S* // p' $ME | patch -p1 --verbose + +./configure \ + --prefix=$PREFIX \ + --libdir=$PREFIX/lib \ + --with-x \ + --with-gnutls \ + --with-opengl \ + --without-vulkan \ + --without-wayland \ + --enable-win64 \ + --enable-archs=i386,x86_64 \ + --disable-tests + +make depend + +make -j $NPROC +make install + +exit + +# -------------------------------------------------------- Included patches + +# from https://slackbuilds.org/repository/15.0/system/wine/ + +# ## writecopy.patch +#Epatch:writecopy --- a/dlls/kernelbase/memory.c +#Epatch:writecopy +++ a/dlls/kernelbase/memory.c +#Epatch:writecopy @@ -481,7 +481,9 @@ BOOL WINAPI DECLSPEC_HOTPATCH VirtualLock( void *addr, SIZE_T size ) +#Epatch:writecopy */ +#Epatch:writecopy BOOL WINAPI DECLSPEC_HOTPATCH VirtualProtect( void *addr, SIZE_T size, DWORD new_prot, DWORD *old_prot ) +#Epatch:writecopy { +#Epatch:writecopy - return VirtualProtectEx( GetCurrentProcess(), addr, size, new_prot, old_prot ); +#Epatch:writecopy + BOOL ret = VirtualProtectEx( GetCurrentProcess(), addr, size, new_prot, old_prot ); +#Epatch:writecopy + if (*old_prot == PAGE_WRITECOPY) *old_prot = PAGE_READWRITE; +#Epatch:writecopy + return ret; +#Epatch:writecopy } +#Epatch:writecopy + +# ## flex.patch +#Epatch:flex --- a/programs/winhlp32/macro.lex.l +#Epatch:flex +++ b/programs/winhlp32/macro.lex.l +#Epatch:flex @@ -20,7 +20,7 @@ +#Epatch:flex * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA +#Epatch:flex */ +#Epatch:flex %} +#Epatch:flex -%option noinput nounput never-interactive 8bit +#Epatch:flex +%option noinput nounput never-interactive 8bit noyywrap +#Epatch:flex %x quote +#Epatch:flex %{ +#Epatch:flex #include +#Epatch:flex @@ -366,7 +366,3 @@ WINHELP_WINDOW* MACRO_CurrentWindow(void) +#Epatch:flex { +#Epatch:flex return lex_data ? lex_data->window : Globals.active_win; +#Epatch:flex } +#Epatch:flex - +#Epatch:flex -#ifndef yywrap +#Epatch:flex -int yywrap(void) { return 1; } +#Epatch:flex -#endif + From afbb5df109f90a385a6fa1eeee32f3390aac581e Mon Sep 17 00:00:00 2001 From: Paul Menzel Date: Mon, 15 Jun 2026 12:21:57 +0200 Subject: [PATCH 2/7] wine-11.11-0: Remove nproc 80 % limitation --- wine-11.11-0.build.sh | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/wine-11.11-0.build.sh b/wine-11.11-0.build.sh index 63c064b..44e6b11 100755 --- a/wine-11.11-0.build.sh +++ b/wine-11.11-0.build.sh @@ -30,8 +30,6 @@ cp $0 $BUILD_TMPDIR; ME="$BUILD_TMPDIR/$(basename $0)" export TMPDIR=$BUILD_TMPDIR export HOME=$BUILD_TMPDIR/home -NPROC=$(( $(nproc) * 4 / 5 + 1 )) - mkdir -p $PREFIX/build cd $PREFIX/build @@ -81,7 +79,7 @@ sed -ne '/^#Epatch:flex/ s/^#Epatch:\S* // p' $ME | patch -p1 --verbose make depend -make -j $NPROC +make -j "$(nproc)" make install exit From 40f9376a1503ed8b7a9dc05c770673e58fd96f04 Mon Sep 17 00:00:00 2001 From: Paul Menzel Date: Mon, 15 Jun 2026 12:24:31 +0200 Subject: [PATCH 3/7] wine-11.11-0: Update Winetricks from 20240105 to 20260125 --- wine-11.11-0.build.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/wine-11.11-0.build.sh b/wine-11.11-0.build.sh index 44e6b11..d194f0e 100755 --- a/wine-11.11-0.build.sh +++ b/wine-11.11-0.build.sh @@ -34,9 +34,9 @@ mkdir -p $PREFIX/build cd $PREFIX/build ( - VERSION=20240105 - # orig: https://github.com/Winetricks/winetricks/archive/20240105/winetricks-20240105.tar.gz - BEEHIVE=https://beehive.molgen.mpg.de/3d21aa2867a0f638f36ffb9a33d3ed5f/winetricks-20240105.tar.gz + VERSION=20260125 + # orig: https://github.com/Winetricks/winetricks/archive/20260125/winetricks-20260125.tar.gz + BEEHIVE=https://beehive.molgen.mpg.de/bec36705f1cd1cdb295c73722e3a7da5/winetricks-20260125.tar.gz test -e winetricks-$VERSION.tar.xz || wget -nv $BEEHIVE test -d winetricks-$VERSION || tar -xf winetricks-$VERSION.tar.gz From ba3191a03e8c891e2bee2be2b340bb4edf00aa31 Mon Sep 17 00:00:00 2001 From: Paul Menzel Date: Mon, 15 Jun 2026 12:26:37 +0200 Subject: [PATCH 4/7] wine-11.11-0: Remove Slackware patches No idea, if still needed. --- wine-11.11-0.build.sh | 43 ------------------------------------------- 1 file changed, 43 deletions(-) diff --git a/wine-11.11-0.build.sh b/wine-11.11-0.build.sh index d194f0e..31c41c7 100755 --- a/wine-11.11-0.build.sh +++ b/wine-11.11-0.build.sh @@ -62,9 +62,6 @@ cd wine-$VERSION # use a *working* clang/lld toolchain from llvm (lld-link is needed) source /pkg/llvm-16.0.1-0/profile -sed -ne '/^#Epatch:writecopy/ s/^#Epatch:\S* // p' $ME | patch -p1 --verbose -sed -ne '/^#Epatch:flex/ s/^#Epatch:\S* // p' $ME | patch -p1 --verbose - ./configure \ --prefix=$PREFIX \ --libdir=$PREFIX/lib \ @@ -83,43 +80,3 @@ make -j "$(nproc)" make install exit - -# -------------------------------------------------------- Included patches - -# from https://slackbuilds.org/repository/15.0/system/wine/ - -# ## writecopy.patch -#Epatch:writecopy --- a/dlls/kernelbase/memory.c -#Epatch:writecopy +++ a/dlls/kernelbase/memory.c -#Epatch:writecopy @@ -481,7 +481,9 @@ BOOL WINAPI DECLSPEC_HOTPATCH VirtualLock( void *addr, SIZE_T size ) -#Epatch:writecopy */ -#Epatch:writecopy BOOL WINAPI DECLSPEC_HOTPATCH VirtualProtect( void *addr, SIZE_T size, DWORD new_prot, DWORD *old_prot ) -#Epatch:writecopy { -#Epatch:writecopy - return VirtualProtectEx( GetCurrentProcess(), addr, size, new_prot, old_prot ); -#Epatch:writecopy + BOOL ret = VirtualProtectEx( GetCurrentProcess(), addr, size, new_prot, old_prot ); -#Epatch:writecopy + if (*old_prot == PAGE_WRITECOPY) *old_prot = PAGE_READWRITE; -#Epatch:writecopy + return ret; -#Epatch:writecopy } -#Epatch:writecopy - -# ## flex.patch -#Epatch:flex --- a/programs/winhlp32/macro.lex.l -#Epatch:flex +++ b/programs/winhlp32/macro.lex.l -#Epatch:flex @@ -20,7 +20,7 @@ -#Epatch:flex * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA -#Epatch:flex */ -#Epatch:flex %} -#Epatch:flex -%option noinput nounput never-interactive 8bit -#Epatch:flex +%option noinput nounput never-interactive 8bit noyywrap -#Epatch:flex %x quote -#Epatch:flex %{ -#Epatch:flex #include -#Epatch:flex @@ -366,7 +366,3 @@ WINHELP_WINDOW* MACRO_CurrentWindow(void) -#Epatch:flex { -#Epatch:flex return lex_data ? lex_data->window : Globals.active_win; -#Epatch:flex } -#Epatch:flex - -#Epatch:flex -#ifndef yywrap -#Epatch:flex -int yywrap(void) { return 1; } -#Epatch:flex -#endif - From c79207ea15a11d2f1f8622d9e04cc92d42f2ea8c Mon Sep 17 00:00:00 2001 From: Paul Menzel Date: Mon, 15 Jun 2026 12:30:01 +0200 Subject: [PATCH 5/7] wine-11.11-0: Enable Wayland Needs a [newer libxkbcommon][1]. [1]: https://github.molgen.mpg.de/mariux64/bee-files/pull/3376 --- wine-11.11-0.build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wine-11.11-0.build.sh b/wine-11.11-0.build.sh index 31c41c7..270bf83 100755 --- a/wine-11.11-0.build.sh +++ b/wine-11.11-0.build.sh @@ -68,8 +68,8 @@ source /pkg/llvm-16.0.1-0/profile --with-x \ --with-gnutls \ --with-opengl \ + --with-wayland \ --without-vulkan \ - --without-wayland \ --enable-win64 \ --enable-archs=i386,x86_64 \ --disable-tests From b80b246a11bc616c750e97ea157f1ce1093f6026 Mon Sep 17 00:00:00 2001 From: Paul Menzel Date: Mon, 15 Jun 2026 16:28:04 +0200 Subject: [PATCH 6/7] wine: Add version 11.0 11.11 does not build --- wine-11.0-0.build.sh | 82 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100755 wine-11.0-0.build.sh diff --git a/wine-11.0-0.build.sh b/wine-11.0-0.build.sh new file mode 100755 index 0000000..e001fdf --- /dev/null +++ b/wine-11.0-0.build.sh @@ -0,0 +1,82 @@ +#! /bin/bash + +# COOKIE=$(mcookie|cut -c-8); grep -v V_GREP_ME $0 > /dev/shm/runme-$COOKIE.sh ; sleep 0.3; exec bash /dev/shm/runme-$COOKIE.sh +# TESTING=1 + +set -e +umask 022 + +PKG=wine +VERSION=11.0 +BUILD=0 + +PATH=/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/package/bin +PREFIX=/pkg/$PKG-$VERSION-$BUILD +if [ -n "$TESTING" ]; then PREFIX=/scratch/local2/$PKG-$VERSION-$BUILD ; fi + +mkdir -p $PREFIX +cat >$PREFIX/profile <<-EOF + PATH=$PREFIX/bin:\$PATH + if [ -d $PREFIX/.compatlibs ]; then export LD_LIBRARY_PATH=$PREFIX/.compatlibs\${LD_LIBRARY_PATH:+:}\$LD_LIBRARY_PATH ; fi +EOF + +source $PREFIX/profile + +BUILD_TMPDIR=/scratch/local2/$PKG-$VERSION-$BUILD.$USER.build.tmp +test -d $BUILD_TMPDIR && ( chmod -R u+rwx $BUILD_TMPDIR || true ; rm -rf $BUILD_TMPDIR ) +mkdir -p $BUILD_TMPDIR/home +# embedded patches, copy script to an accessible location +cp $0 $BUILD_TMPDIR; ME="$BUILD_TMPDIR/$(basename $0)" +export TMPDIR=$BUILD_TMPDIR +export HOME=$BUILD_TMPDIR/home + +mkdir -p $PREFIX/build +cd $PREFIX/build + +( + VERSION=20260125 + # orig: https://github.com/Winetricks/winetricks/archive/20260125/winetricks-20260125.tar.gz + BEEHIVE=https://beehive.molgen.mpg.de/bec36705f1cd1cdb295c73722e3a7da5/winetricks-20260125.tar.gz + + test -e winetricks-$VERSION.tar.xz || wget -nv $BEEHIVE + test -d winetricks-$VERSION || tar -xf winetricks-$VERSION.tar.gz + + cd winetricks-$VERSION + + mkdir -p $PREFIX/bin + cp src/winetricks $PREFIX/bin + chmod -c 0755 $PREFIX/bin/winetricks + + mkdir -p $PREFIX/share/man/man1 + cp -p src/winetricks.1 $PREFIX/share/man/man1 +) + +# orig: https://dl.winehq.org/wine/source/11.0/wine-11.0.tar.xz +BEEHIVE=https://beehive.molgen.mpg.de/f69dbda081555c439de07c28ab1dcdb5/wine-11.0.tar.xz + +test -e wine-$VERSION.tar.xz || wget -nv $BEEHIVE +test -d wine-$VERSION || tar -xf wine-$VERSION.tar.xz + +cd wine-$VERSION + +# use a *working* clang/lld toolchain from llvm (lld-link is needed) +source /pkg/llvm-16.0.1-0/profile + +./configure \ + --prefix=$PREFIX \ + --libdir=$PREFIX/lib \ + --with-x \ + --with-gnutls \ + --with-opengl \ + --with-wayland \ + --without-vulkan \ + --enable-win64 \ + --enable-archs=i386,x86_64 \ + --disable-tests + +make depend + +make -j "$(nproc)" +make install + +exit From 4a46e49141acfe6b6dab3b54f81dd9067d8eadae Mon Sep 17 00:00:00 2001 From: Paul Menzel Date: Mon, 15 Jun 2026 17:52:00 +0200 Subject: [PATCH 7/7] wine-11.11-0: Remove due to build errors Wine 11.11 [fails to build ][1]. Wine 11.0 builds, so use it for the time being. Probably, Wine 11.10 would build too. [1]: https://gitlab.winehq.org/wine/wine/-/merge_requests/11025#note_143135 --- wine-11.11-0.build.sh | 82 ------------------------------------------- 1 file changed, 82 deletions(-) delete mode 100755 wine-11.11-0.build.sh diff --git a/wine-11.11-0.build.sh b/wine-11.11-0.build.sh deleted file mode 100755 index 270bf83..0000000 --- a/wine-11.11-0.build.sh +++ /dev/null @@ -1,82 +0,0 @@ -#! /bin/bash - -# COOKIE=$(mcookie|cut -c-8); grep -v V_GREP_ME $0 > /dev/shm/runme-$COOKIE.sh ; sleep 0.3; exec bash /dev/shm/runme-$COOKIE.sh -# TESTING=1 - -set -e -umask 022 - -PKG=wine -VERSION=11.11 -BUILD=0 - -PATH=/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/package/bin -PREFIX=/pkg/$PKG-$VERSION-$BUILD -if [ -n "$TESTING" ]; then PREFIX=/scratch/local2/$PKG-$VERSION-$BUILD ; fi - -mkdir -p $PREFIX -cat >$PREFIX/profile <<-EOF - PATH=$PREFIX/bin:\$PATH - if [ -d $PREFIX/.compatlibs ]; then export LD_LIBRARY_PATH=$PREFIX/.compatlibs\${LD_LIBRARY_PATH:+:}\$LD_LIBRARY_PATH ; fi -EOF - -source $PREFIX/profile - -BUILD_TMPDIR=/scratch/local2/$PKG-$VERSION-$BUILD.$USER.build.tmp -test -d $BUILD_TMPDIR && ( chmod -R u+rwx $BUILD_TMPDIR || true ; rm -rf $BUILD_TMPDIR ) -mkdir -p $BUILD_TMPDIR/home -# embedded patches, copy script to an accessible location -cp $0 $BUILD_TMPDIR; ME="$BUILD_TMPDIR/$(basename $0)" -export TMPDIR=$BUILD_TMPDIR -export HOME=$BUILD_TMPDIR/home - -mkdir -p $PREFIX/build -cd $PREFIX/build - -( - VERSION=20260125 - # orig: https://github.com/Winetricks/winetricks/archive/20260125/winetricks-20260125.tar.gz - BEEHIVE=https://beehive.molgen.mpg.de/bec36705f1cd1cdb295c73722e3a7da5/winetricks-20260125.tar.gz - - test -e winetricks-$VERSION.tar.xz || wget -nv $BEEHIVE - test -d winetricks-$VERSION || tar -xf winetricks-$VERSION.tar.gz - - cd winetricks-$VERSION - - mkdir -p $PREFIX/bin - cp src/winetricks $PREFIX/bin - chmod -c 0755 $PREFIX/bin/winetricks - - mkdir -p $PREFIX/share/man/man1 - cp -p src/winetricks.1 $PREFIX/share/man/man1 -) - -# orig: https://dl.winehq.org/wine/source/11.x/wine-11.11.tar.xz -BEEHIVE=https://beehive.molgen.mpg.de/b443f980be556567eb7f25be995c9825/wine-11.11.tar.xz - -test -e wine-$VERSION.tar.xz || wget -nv $BEEHIVE -test -d wine-$VERSION || tar -xf wine-$VERSION.tar.xz - -cd wine-$VERSION - -# use a *working* clang/lld toolchain from llvm (lld-link is needed) -source /pkg/llvm-16.0.1-0/profile - -./configure \ - --prefix=$PREFIX \ - --libdir=$PREFIX/lib \ - --with-x \ - --with-gnutls \ - --with-opengl \ - --with-wayland \ - --without-vulkan \ - --enable-win64 \ - --enable-archs=i386,x86_64 \ - --disable-tests - -make depend - -make -j "$(nproc)" -make install - -exit