dev-util/unrpyc: initial version

This is a very effecient rpyc decompiler for RenPy games.

Package-Manager: Portage-2.3.82, Repoman-2.3.20
Signed-off-by: Andrew Savchenko <bircoph@gentoo.org>
This commit is contained in:
Andrew Savchenko
2020-05-10 14:04:16 +03:00
parent 8a4b2930cb
commit 670b891301
3 changed files with 72 additions and 0 deletions

1
dev-util/unrpyc/Manifest Normal file
View File

@@ -0,0 +1 @@
DIST unrpyc-1.1.3.tar.gz 77662 BLAKE2B e2fdf9015e67ee389ff84c49bd89c64d65178a26aaa7b8600202f491291e03a568bec2d8d09e47c407a9bcd025dab3b84e5167f07c9673d19bdb5bf7846c1eed SHA512 5883d58e11b2f52cffdeae744e17bf6bf2039340e53365f8ce58f716b991011bbca71c6473395a9d70c32bc77529eea3e7a9e3b8da7dc3cc8362cc0fdcbe5cf0

View File

@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>bircoph@gentoo.org</email>
<name>Andrew Savchenko</name>
</maintainer>
<longdescription>
Unrpyc is a script to decompile Ren'Py (http://www.renpy.org/) compiled
.rpyc script files. It will not extract files from .rpa archives.
For that, use <pkg>app-arch/unrpa</pkg>.
</longdescription>
<upstream>
<remote-id type="github">CensoredUsername/unrpyc</remote-id>
</upstream>
<use>
<flag name="module">Build un.rpyc module for run-time decompiling</flag>
<flag name="proto0">Use pickle protocol 0 for un-rpyc module. May be usefule for very old games</flag>
<flag name="proto1">Use pickle protocol 1 for un-rpyc module. Default if no protocol is selected</flag>
<flag name="proto2">Use pickle protocol 2 for un-rpyc module</flag>
</use>
</pkgmetadata>

View File

@@ -0,0 +1,49 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python2_7 )
inherit distutils-r1
SRC_URI="https://github.com/CensoredUsername/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
DESCRIPTION="Ren'Py's rpyc scripts decompiler"
HOMEPAGE="https://github.com/CensoredUsername/unrpyc"
LICENSE="BSD-1 BSD"
SLOT="0"
IUSE="+module proto0 proto1 proto2"
DEPEND="module? ( dev-python/picklemagic[${PYTHON_USEDEP}] )"
src_prepare() {
sed -i 's/unrpyc.py/unrpyc/g' README.md setup.py || die
mv unrpyc.py unrpyc || die
distutils-r1_src_prepare
}
src_compile() {
distutils-r1_src_compile
if use module; then
local proto=1
use proto0 && proto=0
use proto1 && proto=1
use proto2 && proto=2
cd un.rpyc || die
python_setup 'python2*'
./compile.py -p${proto} || die
fi
}
src_install() {
distutils-r1_src_install
if use module; then
install -Dpm 0644 -t "${ED}/usr/share/${PN}" un.rpyc/un.rpyc || die
einfo "For run-time rpyc decompiling copy ${EPREFIX}/usr/share/${PN}/un.rpyc to your game dir."
newdoc un.rpyc/README.md README-un.rpyc.md
fi
}