commit: aaa7955f5bedee960d6313bed96ed7a9238048cf Author: Andrew Savchenko <bircoph <AT> gentoo <DOT> org> AuthorDate: Sun May 31 19:40:31 2015 +0000 Commit: Andrew Savchenko <bircoph <AT> gentoo <DOT> org> CommitDate: Sun May 31 19:40:31 2015 +0000 URL: https://gitweb.gentoo.org/dev/bircoph.git/commit/?id=aaa7955f
renpy: fix bug 550854 Add renpy.1 manual page. games-engines/renpy/ChangeLog | 276 +++++++++++++++++++++ games-engines/renpy/Manifest | 6 + .../renpy/files/renpy-6.18.3-multiple-abi.patch | 271 ++++++++++++++++++++ games-engines/renpy/files/renpy.1 | 163 ++++++++++++ games-engines/renpy/metadata.xml | 39 +++ games-engines/renpy/renpy-6.18.3.ebuild | 112 +++++++++ profiles/categories | 1 + 7 files changed, 868 insertions(+) diff --git a/games-engines/renpy/ChangeLog b/games-engines/renpy/ChangeLog new file mode 100644 index 0000000..372d61d --- /dev/null +++ b/games-engines/renpy/ChangeLog @@ -0,0 +1,276 @@ +# ChangeLog for games-engines/renpy +# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/games-engines/renpy/ChangeLog,v 1.54 2015/04/08 18:10:15 mgorny Exp $ + + 08 Apr 2015; Michał Górny <mgo...@gentoo.org> renpy-6.14.1-r1.ebuild, + renpy-6.15.7.ebuild, renpy-6.16.5.ebuild: + Drop old Python implementations + + 31 Mar 2015; Ulrich Müller <u...@gentoo.org> renpy-6.14.1-r1.ebuild, + renpy-6.15.7.ebuild, renpy-6.16.5.ebuild, renpy-6.17.7.ebuild, + renpy-6.18.2.ebuild, renpy-6.18.3.ebuild: + Update dependency after package move of eselect modules to app-eselect. + + 25 Nov 2014; Agostino Sarubbo <a...@gentoo.org> renpy-6.17.7.ebuild: + Stable for x86, wrt bug #518182 + +*renpy-6.18.3 (27 Oct 2014) + + 27 Oct 2014; Julian Ospald <hasuf...@gentoo.org> + +files/renpy-6.18.3-multiple-abi.patch, +renpy-6.18.3.ebuild: + version bump + + 10 Oct 2014; Julian Ospald <hasuf...@gentoo.org> -renpy-6.18.0-r1.ebuild, + -renpy-6.18.1.ebuild, -files/renpy-6.18.0-multiple-abi.patch, + -files/renpy-6.18.1-multiple-abi.patch: + rm old + +*renpy-6.18.2 (10 Oct 2014) + + 10 Oct 2014; Julian Ospald <hasuf...@gentoo.org> +renpy-6.18.2.ebuild, + +files/renpy-6.18.2-multiple-abi.patch: + version bump + +*renpy-6.18.1 (23 Sep 2014) + + 23 Sep 2014; Julian Ospald <hasuf...@gentoo.org> +renpy-6.18.1.ebuild, + +files/renpy-6.18.1-multiple-abi.patch: + version bump + +*renpy-6.18.0-r1 (23 Aug 2014) + + 23 Aug 2014; Julian Ospald <hasuf...@gentoo.org> -renpy-6.18.0.ebuild, + +renpy-6.18.0-r1.ebuild: + fix dependencies + + 20 Aug 2014; Julian Ospald <hasuf...@gentoo.org> -renpy-6.17.4.ebuild, + -renpy-6.17.6.ebuild, -files/renpy-6.17.4-multiple-abi.patch, + -files/renpy-6.17.6-multiple-abi.patch: + rm old + +*renpy-6.18.0 (20 Aug 2014) + + 20 Aug 2014; Julian Ospald <hasuf...@gentoo.org> + +files/renpy-6.18.0-multiple-abi.patch, +renpy-6.18.0.ebuild: + version bump + + 30 Jul 2014; Chema Alonso <nim...@gentoo.org> renpy-6.17.7.ebuild: + Stable for amd64 wrt bug #518182 + +*renpy-6.17.7 (11 Jul 2014) + + 11 Jul 2014; Julian Ospald <hasuf...@gentoo.org> +renpy-6.17.7.ebuild, + +files/renpy-6.17.7-multiple-abi.patch: + version bump + + 06 Jul 2014; Michał Górny <mgo...@gentoo.org> renpy-6.14.1-r1.ebuild, + renpy-6.15.7.ebuild, renpy-6.16.5.ebuild, renpy-6.17.4.ebuild, + renpy-6.17.6.ebuild: + Clean up obsolete dependencies on virtual/python-argparse and virtual/python- + unittest2 (those packages were only required for <=python-2.6). + + 10 May 2014; Julian Ospald <hasuf...@gentoo.org> + +files/renpy-6.17.6-multiple-abi.patch: + add missing patch + +*renpy-6.17.6 (10 May 2014) + + 10 May 2014; Julian Ospald <hasuf...@gentoo.org> +renpy-6.17.6.ebuild: + version bump + + 28 Apr 2014; Julian Ospald <hasuf...@gentoo.org> -renpy-6.17.3.ebuild, + renpy-6.17.4.ebuild, -files/renpy-6.17.3-multiple-abi.patch: + fix missing dep wrt #509012, remove old + + 28 Apr 2014; Julian Ospald <hasuf...@gentoo.org> renpy-6.15.7.ebuild, + +files/renpy-6.15.7-freetype.patch: + fix more freetype related breakage + + 28 Apr 2014; Julian Ospald <hasuf...@gentoo.org> + files/renpy-6.14.1-freetype.patch: + make this work on both stable and unstable arch + + 28 Apr 2014; Julian Ospald <hasuf...@gentoo.org> renpy-6.14.1-r1.ebuild, + +files/renpy-6.14.1-freetype.patch: + fix build + +*renpy-6.17.4 (22 Apr 2014) + + 22 Apr 2014; Julian Ospald <hasuf...@gentoo.org> +renpy-6.17.4.ebuild, + +files/renpy-6.17.4-multiple-abi.patch: + version bump + + 19 Mar 2014; Julian Ospald <hasuf...@gentoo.org> renpy-6.16.5.ebuild, + renpy-6.17.3.ebuild: + fix development USE flag wrt #505120 + + 19 Mar 2014; Julian Ospald <hasuf...@gentoo.org> renpy-6.16.5.ebuild: + amd64 stable wrt #499832 + +*renpy-6.17.3 (05 Mar 2014) + + 05 Mar 2014; Julian Ospald <hasuf...@gentoo.org> -renpy-6.17.1.ebuild, + -files/renpy-6.17.1-multiple-abi.patch, -renpy-6.17.2.ebuild, + -files/renpy-6.17.2-multiple-abi.patch, +renpy-6.17.3.ebuild, + +files/renpy-6.17.3-multiple-abi.patch: + version bump, remove old + + 02 Mar 2014; Michał Górny <mgo...@gentoo.org> renpy-6.16.5.ebuild, + renpy-6.17.1.ebuild, renpy-6.17.2.ebuild: + Update to use dev-lang/python-exec. Again. + +*renpy-6.17.2 (01 Mar 2014) + + 01 Mar 2014; Julian Ospald <hasuf...@gentoo.org> -renpy-6.17.0.ebuild, + -files/renpy-6.17.0-multiple-abi.patch, +renpy-6.17.2.ebuild, + +files/renpy-6.17.2-multiple-abi.patch: + version bump, remove old + +*renpy-6.17.1 (25 Feb 2014) + + 25 Feb 2014; Julian Ospald <hasuf...@gentoo.org> +renpy-6.17.1.ebuild, + +files/renpy-6.17.1-multiple-abi.patch: + version bump + + 24 Feb 2014; Pawel Hajdan jr <phajdan...@gentoo.org> renpy-6.16.5.ebuild: + x86 stable wrt bug #499832 + + 30 Jan 2014; Julian Ospald <hasuf...@gentoo.org> -renpy-6.15.4.ebuild, + -files/renpy-6.15.4-multiple-abi.patch, -renpy-6.16.2.ebuild, + -files/renpy-6.16.2-multiple-abi.patch, -renpy-6.16.3.ebuild, + -files/renpy-6.16.3-multiple-abi.patch: + cleanup old + +*renpy-6.17.0 (21 Jan 2014) + + 21 Jan 2014; Julian Ospald <hasuf...@gentoo.org> +renpy-6.17.0.ebuild, + +files/renpy-6.17.0-multiple-abi.patch: + version bump + +*renpy-6.16.5 (18 Dec 2013) + + 18 Dec 2013; Julian Ospald <hasuf...@gentoo.org> -renpy-6.16.4.ebuild, + -files/renpy-6.16.4-multiple-abi.patch, +renpy-6.16.5.ebuild, + +files/renpy-6.16.5-multiple-abi.patch: + version bump + +*renpy-6.16.4 (17 Dec 2013) + + 17 Dec 2013; Julian Ospald <hasuf...@gentoo.org> + +files/renpy-6.16.4-multiple-abi.patch, +renpy-6.16.4.ebuild: + version bump + +*renpy-6.16.3 (02 Dec 2013) + + 02 Dec 2013; Julian Ospald <hasuf...@gentoo.org> -renpy-6.16.0.ebuild, + -files/renpy-6.16.0-multiple-abi.patch, -renpy-6.16.1.ebuild, + -files/renpy-6.16.1-multiple-abi.patch, +renpy-6.16.3.ebuild, + +files/renpy-6.16.3-multiple-abi.patch: + version bump, remove old + +*renpy-6.16.2 (22 Nov 2013) + + 22 Nov 2013; Julian Ospald <hasuf...@gentoo.org> + +files/renpy-6.16.2-multiple-abi.patch, +renpy-6.16.2.ebuild: + version bump + +*renpy-6.16.1 (10 Nov 2013) + + 10 Nov 2013; Julian Ospald <hasuf...@gentoo.org> + +files/renpy-6.16.1-multiple-abi.patch, +renpy-6.16.1.ebuild: + version bump + + 30 Oct 2013; Michał Górny <mgo...@gentoo.org> renpy-6.14.1-r1.ebuild, + renpy-6.15.4.ebuild, renpy-6.15.7.ebuild, renpy-6.16.0.ebuild: + Update the dep to use dev-lang/python-exec. + +*renpy-6.16.0 (26 Oct 2013) + + 26 Oct 2013; Julian Ospald <hasuf...@gentoo.org> +renpy-6.16.0.ebuild, + +files/renpy-6.16.0-multiple-abi.patch: + version bump + + 28 Aug 2013; Agostino Sarubbo <a...@gentoo.org> renpy-6.15.7.ebuild: + Stable for x86, wrt bug #480786 + + 13 Aug 2013; Agostino Sarubbo <a...@gentoo.org> renpy-6.15.7.ebuild: + Stable for amd64, wrt bug #480786 + +*renpy-6.15.7 (27 Jun 2013) + + 27 Jun 2013; Julian Ospald <hasuf...@gentoo.org> -renpy-6.15.5.ebuild, + -files/renpy-6.15.5-multiple-abi.patch, +renpy-6.15.7.ebuild, + +files/renpy-6.15.7-multiple-abi.patch: + version bump, remove old + +*renpy-6.15.5 (05 Jun 2013) + + 05 Jun 2013; Julian Ospald <hasuf...@gentoo.org> -renpy-6.15.3.ebuild, + -files/renpy-6.15.3-multiple-abi.patch, +renpy-6.15.5.ebuild, + +files/renpy-6.15.5-multiple-abi.patch: + version bump, remove old + + 26 May 2013; Agostino Sarubbo <a...@gentoo.org> renpy-6.14.1-r1.ebuild: + Stable for x86, wrt bug #470726 + + 23 May 2013; Agostino Sarubbo <a...@gentoo.org> renpy-6.14.1-r1.ebuild: + Stable for amd64, wrt bug #470726 + + 20 May 2013; Agostino Sarubbo <a...@gentoo.org> renpy-6.15.4.ebuild: + Stable for x86, wrt bug #469952 + + 17 May 2013; Agostino Sarubbo <a...@gentoo.org> renpy-6.15.4.ebuild: + Stable for amd64, wrt bug #469952 + +*renpy-6.15.4 (19 Apr 2013) + + 19 Apr 2013; Julian Ospald <hasuf...@gentoo.org> +renpy-6.15.4.ebuild, + +files/renpy-6.15.4-multiple-abi.patch: + version bump + + 01 Apr 2013; Julian Ospald <hasuf...@gentoo.org> -renpy-6.15.2.ebuild, + -files/renpy-6.15.2-multiple-abi.patch: + remove old + +*renpy-6.15.3 (01 Apr 2013) + + 01 Apr 2013; Julian Ospald <hasuf...@gentoo.org> +renpy-6.15.3.ebuild, + +files/renpy-6.15.3-multiple-abi.patch: + version bump + +*renpy-6.15.2 (29 Mar 2013) + + 29 Mar 2013; Julian Ospald <hasuf...@gentoo.org> -renpy-6.15.0.ebuild, + -files/renpy-6.15.0-multiple-abi.patch, +renpy-6.15.2.ebuild, + +files/renpy-6.15.2-multiple-abi.patch: + version bump + + 17 Mar 2013; Markos Chandras <hwoar...@gentoo.org> metadata.xml: + Add proxy-maintainers to metadata.xml + + 13 Mar 2013; Julian Ospald <hasuf...@gentoo.org> renpy-6.14.1-r1.ebuild, + renpy-6.15.0.ebuild: + fix eselect logic wrt #461518 + +*renpy-6.15.0 (04 Mar 2013) + + 04 Mar 2013; Julian Ospald <hasuf...@gentoo.org> +renpy-6.15.0.ebuild, + +files/renpy-6.15.0-multiple-abi.patch: + version bump + + 27 Feb 2013; Julian Ospald <hasuf...@gentoo.org> metadata.xml: + add proxy-maintainer + +*renpy-6.14.1-r1 (27 Feb 2013) + + 27 Feb 2013; Julian Ospald <hasuf...@gentoo.org> -renpy-6.14.1.ebuild, + +renpy-6.14.1-r1.ebuild: + update dependencies, update new eselect-module in pkg_postinst + +*renpy-6.14.1 (27 Feb 2013) + + 27 Feb 2013; Julian Ospald <hasuf...@gentoo.org> +renpy-6.14.1.ebuild, + +files/renpy-6.14.1-av_close_input_stream.patch, + +files/renpy-6.14.1-multiple-abi.patch, + +files/renpy-6.14.1-remove-AVFormatParameters.patch, +metadata.xml: + initial import wrt #301324 diff --git a/games-engines/renpy/Manifest b/games-engines/renpy/Manifest new file mode 100644 index 0000000..a198b8e --- /dev/null +++ b/games-engines/renpy/Manifest @@ -0,0 +1,6 @@ +AUX renpy-6.18.3-multiple-abi.patch 8880 SHA256 8b5c5131542685fca8e0df84daf651004cb50c78138f46da84715faab00b78f6 SHA512 5162aabbfd2ca6d9ddd56f2f78b7224833a729a9512785663f4782c9a4ff9993f70d56594bc416658353ce3bd02cac1105d9df540c0ac11ac1403ceb555d1b99 WHIRLPOOL 852fbb06cf8b268e9b1e0d87b8dc23ef03514830c9fb4b4f6725ae7f6405f4e1ff77eddfac3f54dc1df2c09dff1f091752d08dab34a1e512f873923bc39199c3 +AUX renpy.1 4642 SHA256 249fb33053da00de6a8156b33b8d29df2536238016e353f4e69d8eb5d8bf851b SHA512 2727a6ff9675a2b82a979faf5d75e7b3b96915f4c7382d22bba35d74674e613f45d4e8437e24edb410aac45cd8d219cc68e118387e538aafb32b0c312443b066 WHIRLPOOL 1319d4587c2cecb2563aeb198e9aa98bd31733899e275bce137e12e0e806c9bc396e9ac6f2180c993acb2174c4bfc221c79d568a4ba051f5e6558e3bfb042bb3 +DIST renpy-6.18.3-source.tar.bz2 23244450 SHA256 c0c6af79ceb529e69cebfdb0e9849e50dc27e424dc2fd2b322c13d6ec938cba6 SHA512 7ea99adaf1fbea7a499790fb5b37349fc797f383fb633956a43955c80885b259e26570469c430f4c4c103e62444f60082690489ee6400809f5e9024693261e55 WHIRLPOOL 6e4e68228bc38c709af4387f209717e4644efccae47fb04b7071783b0c01d6fbe4ca65d7c712a32e159cd59c663873457e54c3851e9e4a84d3d4e4ed05271102 +EBUILD renpy-6.18.3.ebuild 2671 SHA256 c4620715be017f2f61cab712c65819f44c9f5d775d1e86b2006ab2386084ffad SHA512 367fea0149d45b9407c63ba7aeab6f3712e53b1fd847da9b10771b29b334f4fd47397be3bf51e7b4191933be8294ab6ac7748dd0e6ce7ba2bab3141d76361f33 WHIRLPOOL bc8c1f7d866c9330f48d6563d9667aa842ba526265dbcc84c3207a6a950fede89fade60464faa1da88de50d1e6265c5adc9dbbb8394c56b584c62ae4ff6471fa +MISC ChangeLog 9189 SHA256 acbb24bf21ff9bb29bc0f384d15d186cd60bb5fd0978642da75ebe178dcbbb14 SHA512 3ce6a44b3e5076ac4f320fbfcbd80705bb2911894978798220c2c3e135d714b2a16e52d3fa238ff6ba85ce0a85c2e9d14ccd4e25bd738212f7d778f9cbc1db7d WHIRLPOOL 0bc9a9b06b1b09100d02eeac293a522deb4dec1486a00d2c992b1ecbea7ffebf519d9e9743fa5f7b3a7beb5ce110e3bb01b2060645b1ad462fbf5ace08ed2877 +MISC metadata.xml 1320 SHA256 87e82c53eca026840f61ba025e6bc8fce59f30c42c12e0560acccf25b00229c8 SHA512 13c3728b2c8f65d8795163aa95bcfc3e7a7875e1a360c283f7ceeb29bda2ef7060323f31b34dd885820294e836fa255c1433d250b7828081b1b14074e2e1e786 WHIRLPOOL 0697e087d393802545ac1163aa96a387f90adf99975f57013f5f73553a61906f3ec87460584d4e66ea3c7864b0195222e190997618cd4babe20f0fd81327bfcb diff --git a/games-engines/renpy/files/renpy-6.18.3-multiple-abi.patch b/games-engines/renpy/files/renpy-6.18.3-multiple-abi.patch new file mode 100644 index 0000000..a569fa4 --- /dev/null +++ b/games-engines/renpy/files/renpy-6.18.3-multiple-abi.patch @@ -0,0 +1,271 @@ +Author: hasufell <hasuf...@gentoo.org> +Date: Tue Jan 21 01:02:00 2014 +0100 + + fix multiple abi support + +--- renpy.py ++++ renpy.py +@@ -29,92 +29,9 @@ + import sys + import warnings + +-# Functions to be customized by distributors. ################################ +- +-# Given the Ren'Py base directory (usually the directory containing +-# this file), this is expected to return the path to the common directory. +-def path_to_common(renpy_base): +- return renpy_base + "/renpy/common" +- +-# Given a directory holding a Ren'Py game, this is expected to return +-# the path to a directory that will hold save files. +-def path_to_saves(gamedir): +- import renpy #@UnresolvedImport +- +- # Makes sure the permissions are right on the save directory. +- def test_writable(d): +- try: +- fn = os.path.join(d, "test.txt") +- open(fn, "w").close() +- open(fn, "r").close() +- os.unlink(fn) +- return True +- except: +- return False +- +- +- # Android. +- if renpy.android: +- paths = [ +- os.path.join(os.environ["ANDROID_OLD_PUBLIC"], "game/saves"), +- os.path.join(os.environ["ANDROID_PRIVATE"], "saves"), +- os.path.join(os.environ["ANDROID_PUBLIC"], "saves"), +- ] +- +- for rv in paths: +- if os.path.isdir(rv) and test_writable(rv): +- break +- +- print "Using savedir", rv +- +- # We return the last path as the default. +- +- return rv +- +- +- # No save directory given. +- if not renpy.config.save_directory: +- return gamedir + "/saves" +- +- # Search the path above Ren'Py for a directory named "Ren'Py Data". +- # If it exists, then use that for our save directory. +- path = renpy.config.renpy_base +- +- while True: +- if os.path.isdir(path + "/Ren'Py Data"): +- return path + "/Ren'Py Data/" + renpy.config.save_directory +- +- newpath = os.path.dirname(path) +- if path == newpath: +- break +- path = newpath +- +- # Otherwise, put the saves in a platform-specific location. +- if renpy.macintosh: +- rv = "~/Library/RenPy/" + renpy.config.save_directory +- return os.path.expanduser(rv) +- +- elif renpy.windows: +- if 'APPDATA' in os.environ: +- return os.environ['APPDATA'] + "/RenPy/" + renpy.config.save_directory +- else: +- rv = "~/RenPy/" + renpy.config.save_directory +- return os.path.expanduser(rv) +- +- else: +- rv = "~/.renpy/" + renpy.config.save_directory +- return os.path.expanduser(rv) +- +- +-# Returns the path to the Ren'Py base directory (containing common and +-# the launcher, usually.) +-def path_to_renpy_base(): +- renpy_base = os.path.dirname(os.path.realpath(sys.argv[0])) +- renpy_base = os.path.abspath(renpy_base) +- +- return renpy_base +- +-############################################################################## ++from distutils.sysconfig import get_python_lib ++sys.path.append(get_python_lib() + "/renpy@SLOT@") ++import renpy.common as common + + # The version of the Mac Launcher and py4renpy that we require. + macos_version = (6, 14, 0) +@@ -142,7 +59,7 @@ + + def main(): + +- renpy_base = path_to_renpy_base() ++ renpy_base = common.path_to_renpy_base() + + # Add paths. + if os.path.exists(renpy_base + "/module"): +--- /dev/null ++++ renpy/common.py +@@ -0,0 +1,127 @@ ++# This file is part of Ren'Py. The license below applies to Ren'Py only. ++# Games and other projects that use Ren'Py may use a different license. ++ ++# Copyright 2004-2014 Tom Rothamel <py...@bishoujo.us> ++# ++# Permission is hereby granted, free of charge, to any person ++# obtaining a copy of this software and associated documentation files ++# (the "Software"), to deal in the Software without restriction, ++# including without limitation the rights to use, copy, modify, merge, ++# publish, distribute, sublicense, and/or sell copies of the Software, ++# and to permit persons to whom the Software is furnished to do so, ++# subject to the following conditions: ++# ++# The above copyright notice and this permission notice shall be ++# included in all copies or substantial portions of the Software. ++# ++# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF ++# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE ++# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION ++# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION ++# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ++ ++import os ++import sys ++import warnings ++from distutils.sysconfig import get_python_lib ++ ++# Functions to be customized by distributors. ################################ ++ ++# Given the Ren'Py base directory (usually the directory containing ++# this file), this is expected to return the path to the common directory. ++def path_to_common(renpy_base): ++ return renpy_base + "/renpy/common" ++ ++# Given a directory holding a Ren'Py game, this is expected to return ++# the path to a directory that will hold save files. ++def path_to_saves(gamedir): ++ import renpy #@UnresolvedImport ++ ++ # Makes sure the permissions are right on the save directory. ++ def test_writable(d): ++ try: ++ fn = os.path.join(d, "test.txt") ++ open(fn, "w").close() ++ open(fn, "r").close() ++ os.unlink(fn) ++ return True ++ except: ++ return False ++ ++ ++ # Makes sure the permissions are right on the save directory. ++ def test_writable(d): ++ try: ++ fn = os.path.join(d, "test.txt") ++ open(fn, "w").close() ++ open(fn, "r").close() ++ os.unlink(fn) ++ return True ++ except: ++ return False ++ ++ ++ ++ # Android. ++ if renpy.android: ++ paths = [ ++ os.path.join(os.environ["ANDROID_OLD_PUBLIC"], "game/saves"), ++ os.path.join(os.environ["ANDROID_PRIVATE"], "saves"), ++ os.path.join(os.environ["ANDROID_PUBLIC"], "saves"), ++ ] ++ ++ for rv in paths: ++ if os.path.isdir(rv) and test_writable(rv): ++ break ++ ++ print "Using savedir", rv ++ ++ # We return the last path as the default. ++ ++ return rv ++ ++ ++ # No save directory given. ++ if not renpy.config.save_directory: ++ return gamedir + "/saves" ++ ++ # Search the path above Ren'Py for a directory named "Ren'Py Data". ++ # If it exists, then use that for our save directory. ++ path = renpy.config.renpy_base ++ ++ while True: ++ if os.path.isdir(path + "/Ren'Py Data"): ++ return path + "/Ren'Py Data/" + renpy.config.save_directory ++ ++ newpath = os.path.dirname(path) ++ if path == newpath: ++ break ++ path = newpath ++ ++ # Otherwise, put the saves in a platform-specific location. ++ if renpy.macintosh: ++ rv = "~/Library/RenPy/" + renpy.config.save_directory ++ return os.path.expanduser(rv) ++ ++ elif renpy.windows: ++ if 'APPDATA' in os.environ: ++ return os.environ['APPDATA'] + "/RenPy/" + renpy.config.save_directory ++ else: ++ rv = "~/RenPy/" + renpy.config.save_directory ++ return os.path.expanduser(rv) ++ ++ else: ++ rv = "~/.renpy/" + renpy.config.save_directory ++ return os.path.expanduser(rv) ++ ++ ++# Returns the path to the Ren'Py base directory (containing common and ++# the launcher, usually.) ++def path_to_renpy_base(): ++ renpy_base = os.path.dirname(os.path.realpath(sys.argv[0])) ++ renpy_base = get_python_lib() + "/renpy@SLOT@" ++ renpy_base = os.path.abspath(renpy_base) ++ ++ return renpy_base +--- renpy/main.py ++++ renpy/main.py +@@ -25,7 +25,7 @@ import os + import sys + import time + import zipfile +-import __main__ ++import renpy.common as common + + + def run(restart): +@@ -167,7 +167,7 @@ def main(): + renpy.config.searchpath = [ renpy.config.gamedir ] + + # Find the common directory. +- commondir = __main__.path_to_common(renpy.config.renpy_base) # E1101 @UndefinedVariable ++ commondir = common.path_to_common(renpy.config.renpy_base) # E1101 @UndefinedVariable + + if os.path.isdir(commondir): + renpy.config.searchpath.append(commondir) +@@ -230,7 +230,7 @@ def main(): + + # Find the save directory. + if renpy.config.savedir is None: +- renpy.config.savedir = __main__.path_to_saves(renpy.config.gamedir) # E1101 @UndefinedVariable ++ renpy.config.savedir = common.path_to_saves(renpy.config.gamedir) # E1101 @UndefinedVariable + + if renpy.game.args.savedir: #@UndefinedVariable + renpy.config.savedir = renpy.game.args.savedir #@UndefinedVariable diff --git a/games-engines/renpy/files/renpy.1 b/games-engines/renpy/files/renpy.1 new file mode 100644 index 0000000..e8b7a2b --- /dev/null +++ b/games-engines/renpy/files/renpy.1 @@ -0,0 +1,163 @@ +.\" Copyright © 2015 Andrew Savchenko +.\" Distributed under the terms of GNU FDL-1.3+ license, +.\" based on original Ren'Py documentation licensed under MIT. +.TH renpy 1 "31 May 2015" "Ren'Py" "Ren'Py Gentoo's manual" +.SH NAME +renpy \- a visual novel engine + +.SH SYNOPSIS +.BI renpy " game_directory" +.\" **************************************************************** +.SH DESCRIPTION + +.B renpy +(Ren'Py) is a visual novel engine \- used by hundreds of creators +from around the world \- that helps you use words, images, and +sounds to tell interactive stories that run on computers and mobile +devices. These can be both visual novels and life simulation games. +The easy to learn script language allows anyone to efficiently +write large visual novels, while its +.BR python (1) +scripting is enough for complex simulation games. +.\" **************************************************************** +.SH RUNNING A GAME + +In order to run a game, provide +.I game_directory +as an argument to +.BR renpy . +Exact directory name may vary depending or a game, but usually +this path corresponds to +.I */game +wildcard and contains +.I script_version.rpy* +file within. Game directory usually contains other +.IR *.rpy* " and " *.rpa " files." + +One may use +.BR find (1) +tool to locate required directory within unpacked game top +directory: +.RS + +find -O3 +.I top_directory +-type f -iname "script_version.rpy*" + +.RE +A directory one level above may be provided as an argument as well. +.\" **************************************************************** +.SH PORTABILITY + +All +.B renpy +games are written in +.BR python (1), +so one can run then on any platform and architecture. + +As you may have noticed, Ren'Py games are often distributed in +different archives for different architectures. This happens due to +bundling of +.BR python (1) +interpreter and required libraries in a game's tarball. Since you +are using OS native +.B renpy +setup, you should be able to run any of these games. +.\" **************************************************************** +.SH GAMES CATALOGUE + +A large catalogue of Ren'Py powered games is available at +.IR http://games.renpy.org/ . +.\" **************************************************************** +.SH TROUBLESHOOTING + +In some cases game may fail to run with current +.B renpy +version due to various errors. + +In such case please try to use the closest +.B renpy +version to one used by game developer. Most games contain +.IR script_version.rpy " file in the " game " directory." +This file actually contains +.B renpy +version used during a game build. +You may install multiple slots of +.B renpy +in Gentoo and use +.BI eselect " renpy" +module to switch between various versions. + +If +.I game +directory contains both +.IR *.rpyc " (or " *.rpyo ") and " *.rpy " files, delete" +.IR *.rpyc " (or " *.rpyo ") files, they will be regenerated by" +the interpreter. +Another solution will be to switch between version of +.BR python (1) +using +.IR eselect (1) +tool in order to find one suitable to interpret game's +.IR *.rpyc " files." + +Some games may lack general media files, e.g. +.I click.ogg +sound, so you should create or download one and place in the +.I game +directory. + +Also please pay attention to +.I problems.html +page from +.B renpy +html documentation, see +.B FURTHER READING +section. +.\" **************************************************************** +.SH ENVIRONMENT VARIABLES + +.B renpy +supports a number of environment variables to control its +behaviour. Please refer to html docs for further details +(see +.B FURTHER READING +section). +.\" **************************************************************** +.SH FURTHER READING + +.B renpy +comes with extensive html documentation. To use it install +.B renpy +with +.I USE="doc" +and go to +.I /usr/share/doc/renpy-*/html/doc/index.html + +Alternatively one may refer to online documentation: +.IR http://www.renpy.org/doc/html/ . +Be warned that online docs maybe different from your current active +version, so it recommended to use shipped documentation instead. +.\" **************************************************************** +.SH BUGS + +Any bugs related to Gentoo packaging (e.g. omitted dependencies) +please report on bugzilla: +.IR https://bugs.gentoo.org . + +For bugs in the Ren'Py engine itself, please contact upstream: +.I https://github.com/renpy/renpy/issues +and add a Gentoo bug if you feel it necessary. + +For issues with games themselves please contact corresponding +authors. +.\" **************************************************************** +.SH SEE ALSO + +.BR python (1) +\- an interpreter used by Ren'Py engine. + +.BR unrpa (1) +\- a tool to unpack +.I *.rpa +data files (Ren'Py Archives). diff --git a/games-engines/renpy/metadata.xml b/games-engines/renpy/metadata.xml new file mode 100644 index 0000000..81a8e71 --- /dev/null +++ b/games-engines/renpy/metadata.xml @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>games</herd> + <herd>proxy-maintainers</herd> + <maintainer> + <email>hasuf...@gentoo.org</email> + <name>Julian Ospald</name> + <description>Maintainer. Assign bugs to him</description> + </maintainer> + <maintainer> + <email>maksver...@geocities.com</email> + <name>Maks Verver</name> + <description>Proxy maintainer. CC him on bugs</description> + </maintainer> + <longdescription> + Ren'Py is a free and cross-platform visual novel engine that + helps you use words, + pictures, and sounds to tell stories with the computer. + It`s easy and efficient script language makes it possible for + non-programmers to make visual novels, + while its Python support allows for complex simulation games. + </longdescription> + <use> + <flag name='development'>Install IDE for game developers and + an empty game template</flag> + </use> + <upstream> + <maintainer status='active'> + <email>py...@bishoujo.us</email> + <name>Tom Rothamel</name> + </maintainer> + <changelog>http://www.renpy.org/latest.html</changelog> + <bugs-to>https://github.com/renpy/renpy/issues</bugs-to> + <doc>http://renpy.org/wiki/renpy/doc</doc> + <remote-id type='github'>renpy/renpy</remote-id> + </upstream> +</pkgmetadata> + diff --git a/games-engines/renpy/renpy-6.18.3.ebuild b/games-engines/renpy/renpy-6.18.3.ebuild new file mode 100644 index 0000000..83cbf29 --- /dev/null +++ b/games-engines/renpy/renpy-6.18.3.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/games-engines/renpy/renpy-6.18.3.ebuild,v 1.2 2015/03/31 19:25:35 ulm Exp $ + +EAPI=5 +PYTHON_COMPAT=( python2_7 ) +DISTUTILS_IN_SOURCE_BUILD=1 +inherit eutils toolchain-funcs python-r1 versionator gnome2-utils games distutils-r1 + +DESCRIPTION="Visual novel engine written in python" +HOMEPAGE="http://www.renpy.org" +SRC_URI="http://www.renpy.org/dl/${PV}/${P}-source.tar.bz2" + +LICENSE="MIT" +SLOT="$(get_version_component_range 1-2)" +MYSLOT=$(delete_all_version_separators ${SLOT}) +KEYWORDS="~amd64 ~x86" +IUSE="development doc examples" +REQUIRED_USE="examples? ( development )" + +RDEPEND=" + >=app-eselect/eselect-renpy-0.5 + dev-libs/fribidi + dev-python/pygame[X,${PYTHON_USEDEP}] + >=dev-lang/python-exec-0.3[${PYTHON_USEDEP}] + media-libs/glew + media-libs/libpng:0 + media-libs/libsdl[X,video] + media-libs/freetype:2 + sys-libs/zlib + virtual/ffmpeg" +DEPEND="${RDEPEND} + dev-python/cython[${PYTHON_USEDEP}] + virtual/pkgconfig" + +S=${WORKDIR}/${P}-source + +pkg_setup() { + games_pkg_setup + export CFLAGS="${CFLAGS} $($(tc-getPKG_CONFIG) --cflags fribidi)" +} + +python_prepare_all() { + # wooosh! this should fix multiple abi + epatch "${FILESDIR}"/${P}-multiple-abi.patch + + einfo "Deleting precompiled python files" + find . -name '*.py[co]' -print -delete || die + + sed -i \ + -e "s/@SLOT@/${MYSLOT}/" \ + renpy.py renpy/common.py || die "setting slot failed!" + + distutils-r1_python_prepare_all +} + +python_compile() { + cd "${S}"/module || die + distutils-r1_python_compile +} + +python_install() { + cd "${S}"/module || die + distutils-r1_python_install --install-lib="$(python_get_sitedir)/renpy${MYSLOT}" + + cd "${S}" || die + python_scriptinto "${GAMES_BINDIR}" + python_newscript renpy.py ${PN}-${SLOT} + + python_moduleinto renpy${MYSLOT} + python_domodule renpy + if use development ; then + python_domodule launcher templates + fi + if use examples ; then + python_domodule the_question tutorial + fi +} + +python_install_all() { + if use development; then + newicon -s 32 launcher/game/images/logo32.png ${P}.png + make_desktop_entry ${PN}-${SLOT} "Ren'Py ${PV}" ${P} + fi + + if use doc; then + dohtml -r doc + fi + newman "${FILESDIR}/${PN}.1" "${P}.1" + + prepgamesdirs +} + +pkg_preinst() { + games_pkg_preinst + use development && gnome2_icon_savelist +} + +pkg_postinst() { + games_pkg_postinst + use development && gnome2_icon_cache_update + + einfo "running: eselect renpy update --if-unset" + eselect renpy update --if-unset +} + +pkg_postrm() { + use development && gnome2_icon_cache_update + + einfo "running: eselect renpy update --if-unset" + eselect renpy update --if-unset +} diff --git a/profiles/categories b/profiles/categories index 88194a1..9419142 100644 --- a/profiles/categories +++ b/profiles/categories @@ -6,6 +6,7 @@ app-vim dev-libs dev-python dev-util +games-engines games-strategy media-gfx media-libs