wine-ge-11.1nbdy_overlay
download
# Copyright 2025-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit wrapper
MY_PV="${PV//./-}"
MY_P="GE-Proton${MY_PV}"
DESCRIPTION="GloriousEggroll's custom Proton build with gaming optimizations"
HOMEPAGE="https://github.com/GloriousEggroll/proton-ge-custom"
SRC_URI="https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton${MY_PV}/${MY_P}.tar.gz"
LICENSE="BSD BSD-2 LGPL-2.1+ ZLIB gsm libpng2 libtiff MIT OPENLDAP"
SLOT="${PV}"
KEYWORDS="-* ~amd64"
IUSE="+abi_x86_32 +abi_x86_64"
REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )"
RDEPEND="
app-emulation/wine-desktop-common
dev-libs/glib:2
dev-libs/libgcrypt:0
media-libs/alsa-lib
media-libs/fontconfig
media-libs/freetype:2
media-libs/libglvnd
media-libs/libpulse
media-libs/libsdl2
media-libs/vulkan-loader
net-libs/gnutls
sys-apps/dbus
sys-libs/zlib
x11-libs/libX11
x11-libs/libXcomposite
x11-libs/libXcursor
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libXi
x11-libs/libXrandr
x11-libs/libXrender
x11-libs/libXxf86vm
abi_x86_32? (
dev-libs/glib:2[abi_x86_32]
media-libs/alsa-lib[abi_x86_32]
media-libs/fontconfig[abi_x86_32]
media-libs/freetype:2[abi_x86_32]
media-libs/libglvnd[abi_x86_32]
media-libs/vulkan-loader[abi_x86_32]
x11-libs/libX11[abi_x86_32]
x11-libs/libXext[abi_x86_32]
)
"
IDEPEND=">=app-eselect/eselect-wine-2"
RESTRICT="mirror strip"
S="${WORKDIR}/${MY_P}"
WINE_PREFIX="/usr/lib/${PN}-${PV}"
WINE_DATADIR="/usr/share/${PN}-${PV}"
WINE_INCDIR="/usr/include/${PN}-${PV}"
QA_PREBUILT="*"
src_install() {
dodir "${WINE_PREFIX}/bin"
dodir "${WINE_PREFIX}/lib/wine"
dodir "${WINE_PREFIX}/share/wine"
dodir "${WINE_INCDIR}/wine"
# Install binaries
if [[ -d "${S}/files/bin" ]]; then
exeinto "${WINE_PREFIX}/bin"
doexe "${S}/files/bin"/*
fi
# Install wine libs to lib/wine/ (where the binary expects them)
if [[ -d "${S}/files/lib/wine" ]]; then
cp -a "${S}/files/lib/wine/"* "${ED}${WINE_PREFIX}/lib/wine/" || die
fi
# Create symlink wine -> lib/wine for eselect-wine compatibility
dosym -r "${WINE_PREFIX}/lib/wine" "${WINE_PREFIX}/wine"
# Install share data to prefix/share/wine (where binary expects ../share/wine)
if [[ -d "${S}/files/share/wine" ]]; then
cp -a "${S}/files/share/wine/"* "${ED}${WINE_PREFIX}/share/wine/" || die
fi
# Create share symlink for eselect-wine (must point to existing dir)
dosym -r "${WINE_PREFIX}/share" "${WINE_DATADIR}"
keepdir "${WINE_INCDIR}/wine"
# Create variant wrappers for eselect-wine
local bin
for bin in "${ED}${WINE_PREFIX}/bin"/*; do
[[ -f ${bin} && -x ${bin} ]] || continue
local binname="${bin##*/}"
make_wrapper "${binname}-${PN#wine-}-${PV}" "${WINE_PREFIX}/bin/${binname}"
done
}
pkg_postinst() {
eselect wine update --if-unset
elog "To select this Wine version:"
elog " eselect wine set ${PN}-${PV}"
elog ""
elog "GE-Proton features: Media Foundation, FSR, game-specific patches"
elog "FSR4: PROTON_FSR4_UPGRADE=1"
}
pkg_postrm() {
eselect wine update --if-unset
}