diff options
Diffstat (limited to 'games-emulation/pcsx2_patches/pcsx2_patches-0_p20230623.ebuild')
-rw-r--r-- | games-emulation/pcsx2_patches/pcsx2_patches-0_p20230623.ebuild | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/games-emulation/pcsx2_patches/pcsx2_patches-0_p20230623.ebuild b/games-emulation/pcsx2_patches/pcsx2_patches-0_p20230623.ebuild new file mode 100644 index 000000000000..97b5bf34a19b --- /dev/null +++ b/games-emulation/pcsx2_patches/pcsx2_patches-0_p20230623.ebuild @@ -0,0 +1,54 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) +inherit python-any-r1 + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/PCSX2/pcsx2_patches.git" +else + HASH_PCSX2_PATCHES=665e8779d10ef046da2a46118c2d1efc02d8cb2c + SRC_URI=" + https://github.com/PCSX2/pcsx2_patches/archive/${HASH_PCSX2_PATCHES}.tar.gz + -> ${P}.tar.gz" + S=${WORKDIR}/${PN}-${HASH_PCSX2_PATCHES} + KEYWORDS="~amd64" +fi + +DESCRIPTION="Collection of game patches for use with PCSX2 (e.g. widescreen hacks)" +HOMEPAGE="https://github.com/PCSX2/pcsx2_patches/" + +# these are normally distributed by upstream with PCSX2 which is GPL-3+ +LICENSE="GPL-3+" +SLOT="0" + +BDEPEND="${PYTHON_DEPS}" + +src_compile() { + # upstream uses a constantly replaced "latest" patches.zip (currently no + # real releases), and github's .zip archives cannot be used either due to + # having the patches/ subdirectory -- so we use a snapshot and repack + # (could use app-arch/zip, but python is more likely to skip a dependency) + ebegin "Creating patches.zip" + "${PYTHON}" - <<-EOF + import pathlib + from zipfile import ZipFile, ZIP_DEFLATED + + patches = pathlib.Path("patches/") + + with ZipFile("patches.zip", "w", ZIP_DEFLATED, compresslevel=9) as archive: + for file in patches.iterdir(): + archive.write(file, arcname=file.name) + EOF + eend ${?} || die +} + +src_install() { + insinto /usr/share/pcsx2/resources + doins patches.zip + + einstalldocs +} |