Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: games-engines/renpy/files/, profiles/, games-engines/renpy/
Date: Sat, 30 Jan 2021 23:21:15
Message-Id: 1612048741.d299c77adbcdaeae8a7f5c056f675448e89a3ff4.mgorny@gentoo
1 commit: d299c77adbcdaeae8a7f5c056f675448e89a3ff4
2 Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
3 AuthorDate: Sat Jan 30 23:19:01 2021 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Sat Jan 30 23:19:01 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d299c77a
7
8 games-engines/renpy: Remove last-rited pkg
9
10 Closes: https://bugs.gentoo.org/735358
11 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
12
13 games-engines/renpy/Manifest | 2 -
14 .../renpy-6.99.12.4-compat-infinite-loop.patch | 42 ---
15 .../renpy/files/renpy-6.99.12.4-compat-style.patch | 43 ---
16 .../files/renpy-6.99.12.4-compat-window.patch | 51 ---
17 .../renpy/files/renpy-6.99.12.4-multiple-abi.patch | 357 ---------------------
18 .../renpy/files/renpy-7.3.5-system-path.patch | 19 --
19 .../files/renpy-7.3.5-use-system-fribidi.patch | 42 ---
20 games-engines/renpy/files/renpy.1 | 163 ----------
21 games-engines/renpy/metadata.xml | 30 --
22 games-engines/renpy/renpy-6.99.12.4-r4.ebuild | 108 -------
23 games-engines/renpy/renpy-7.3.5.ebuild | 108 -------
24 profiles/package.mask | 1 -
25 12 files changed, 966 deletions(-)
26
27 diff --git a/games-engines/renpy/Manifest b/games-engines/renpy/Manifest
28 deleted file mode 100644
29 index 2a93fb3d8cc..00000000000
30 --- a/games-engines/renpy/Manifest
31 +++ /dev/null
32 @@ -1,2 +0,0 @@
33 -DIST renpy-6.99.12.4-source.tar.bz2 18192453 BLAKE2B eb00db04fc6ed0aafa0428c3ba0ffe986634f8b536a7cd6c88c6082789554f6d9631f433baa3e34ab91d19509ccef5617e3fe8ec410b96f4b87d489656cc893b SHA512 375b67e15630fc21915136e70bc93db6da7c2da192d39b1256822513ae44974124522c85f1976f2af62df27b5fa11493af488b02abcf0081eeae03e1a69dfca5
34 -DIST renpy-7.3.5-source.tar.bz2 68211972 BLAKE2B 46d8e1c788398515005eba9b668020aa2c9527e4f9207c95661d8fe86f4bbb6bc1832fc3e6808023355e2ff67666bc6d3b03f89ef58afa77d5a3abc965192175 SHA512 5a34412379682628d0be9cbbca0dfc95d5e52f8ffa871cdab0c20d028c532233b0d94a7dfdec67fec5294a789e9ca16b61dc30ef138e303d476007eaffff0d2f
35
36 diff --git a/games-engines/renpy/files/renpy-6.99.12.4-compat-infinite-loop.patch b/games-engines/renpy/files/renpy-6.99.12.4-compat-infinite-loop.patch
37 deleted file mode 100644
38 index 3a2942cb04f..00000000000
39 --- a/games-engines/renpy/files/renpy-6.99.12.4-compat-infinite-loop.patch
40 +++ /dev/null
41 @@ -1,42 +0,0 @@
42 -Adapted from git HEAD:
43 -commit ff308191a190bf7c5c2118a31f3d8569a0904c04
44 -Author: Andrew Savchenko <bircoph@×××××.com>
45 -Date: Mon Jul 17 08:00:07 2017 +0300
46 -
47 - Increase infinite loop hardcoded values
48 -
49 - On many old hardware, e.g on my Atom netbook games hit this limit,
50 - but otherwise work fine. Increasing the limit helps. People are
51 - also reporting this issue in many cases (old laptops, stow tablets,
52 - etc where games fail due to this issue and work otherwise):
53 -
54 - https://translationprojectvisualnovels.blogspot.ru/2016/09/monster-girl-quest-android-15092016.html
55 - https://lemmasoft.renai.us/forums/viewtopic.php?f=8&t=30521&start=90
56 - https://steamcommunity.com/app/356530/discussions/0/365163686036650662/
57 - (and many more, just google)
58 -
59 -index 00c7562..a7e361c 100644
60 ---- a/renpy/display/core.py
61 -+++ b/renpy/display/core.py
62 -@@ -2845,7 +2845,7 @@ class Interface(object):
63 -
64 - while rv is None:
65 -
66 -- renpy.execution.not_infinite_loop(10)
67 -+ renpy.execution.not_infinite_loop(50)
68 -
69 - # Check for a change in fullscreen preference.
70 - if ((self.fullscreen != renpy.game.preferences.fullscreen) or
71 -diff --git a/renpy/main.py b/renpy/main.py
72 -index 6f14d77..960d2fd 100644
73 ---- a/renpy/main.py
74 -+++ b/renpy/main.py
75 -@@ -318,7 +318,7 @@ def main():
76 - game.contexts = [ renpy.execution.Context(False) ]
77 - game.contexts[0].init_phase = True
78 -
79 -- renpy.execution.not_infinite_loop(60)
80 -+ renpy.execution.not_infinite_loop(300)
81 -
82 - # Load the script.
83 - renpy.game.exception_info = 'While loading the script.'
84
85 diff --git a/games-engines/renpy/files/renpy-6.99.12.4-compat-style.patch b/games-engines/renpy/files/renpy-6.99.12.4-compat-style.patch
86 deleted file mode 100644
87 index 122ebf1e43e..00000000000
88 --- a/games-engines/renpy/files/renpy-6.99.12.4-compat-style.patch
89 +++ /dev/null
90 @@ -1,43 +0,0 @@
91 -commit 1d350d993d2b51df7880e92b48ed103e059ec385
92 -Author: Andrew Savchenko <bircoph@×××××.com>
93 -Date: Sun Jul 16 17:07:27 2017 +0300
94 -
95 - Fix compatibility problem With ElvenRelations-1.2:
96 -
97 - When starting game:
98 -
99 - Full traceback:
100 - File "/home/andrew/src/_compat/styles.rpymc", line 22, in script
101 - File "/usr/lib64/python2.7/site-packages/renpy699/renpy/ast.py", line 814, in execute
102 - renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
103 - File "/usr/lib64/python2.7/site-packages/renpy699/renpy/python.py", line 1719, in py_exec_bytecode
104 - exec bytecode in globals, locals
105 - File "renpy/common/_compat/styles.rpym", line 374, in <module>
106 - style.selected_button = _SelectedCompat('button')
107 - File "renpy/common/_compat/styles.rpym", line 347, in __init__
108 - self.target = target
109 - File "renpy/style.pyx", line 378, in renpy.style.StyleCore.__setattr__ (gen/renpy.style.c:6236)
110 - raise Exception("Style property {} is not known.".format(name))
111 - Exception: Style property target is not known.
112 -
113 - "button*" properties are no longer present in RenPy, so relevant
114 - code is removed.
115 -
116 -diff --git a/renpy/common/_compat/styles.rpym b/renpy/common/_compat/styles.rpym
117 -index d83eeb0..174f0b6 100644
118 ---- a/renpy/common/_compat/styles.rpym
119 -+++ b/renpy/common/_compat/styles.rpym
120 -@@ -371,13 +371,6 @@ init python:
121 - self.property_updates = [ ]
122 -
123 -
124 -- style.selected_button = _SelectedCompat('button')
125 -- style.selected_button_text = _SelectedCompat('button_text')
126 -- style.gm_nav_selected_button = _SelectedCompat('gm_nav_button')
127 -- style.gm_nav_selected_button_text = _SelectedCompat('gm_nav_button_text')
128 -- style.prefs_selected_button = _SelectedCompat('prefs_button')
129 -- style.prefs_selected_button_text = _SelectedCompat('prefs_button_text')
130 --
131 - def _apply_selected_compat():
132 - for scs in _selected_compat:
133 - scs.apply()
134
135 diff --git a/games-engines/renpy/files/renpy-6.99.12.4-compat-window.patch b/games-engines/renpy/files/renpy-6.99.12.4-compat-window.patch
136 deleted file mode 100644
137 index 8c8bd21b4f6..00000000000
138 --- a/games-engines/renpy/files/renpy-6.99.12.4-compat-window.patch
139 +++ /dev/null
140 @@ -1,51 +0,0 @@
141 -commit cf3f7fd4cb69c154f43a5e00c7501463a6d63ff5
142 -Author: Andrew Savchenko <bircoph@×××××.com>
143 -Date: Sun Jul 16 16:59:14 2017 +0300
144 -
145 - Fix compatibility problem with Katawa Shoujo 1.3.1
146 -
147 - The game fails to start with renpy-6.99.12.4:
148 -
149 - I'm sorry, but an uncaught exception occurred.
150 -
151 - While running game code:
152 - File "game/ui_settings.rpy", line 21, in <module>
153 - File "renpy/common/00compat.rpy", line 134, in _set_script_version
154 - config.window_auto_hide.remove("call screen")
155 - ValueError: list.remove(x): x not in list
156 -
157 - -- Full Traceback ------------------------------------------------------------
158 -
159 - Full traceback:
160 - File "/home/rondo/ui_settings.rpyc", line 2, in script
161 - File "/usr/lib64/python2.7/site-packages/renpy699/renpy/ast.py", line 814, in execute
162 - renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
163 - File "/usr/lib64/python2.7/site-packages/renpy699/renpy/python.py", line 1695, in py_exec_bytecode
164 - exec bytecode in globals, locals
165 - File "game/ui_settings.rpy", line 21, in <module>
166 - File "/usr/lib64/python2.7/site-packages/renpy699/renpy/defaultstore.py", line 92, in __setattr__
167 - renpy.store._set_script_version(value) # E1101 @UndefinedVariable
168 - File "renpy/common/00compat.rpy", line 134, in _set_script_version
169 - config.window_auto_hide.remove("call screen")
170 - File "/usr/lib64/python2.7/site-packages/renpy699/renpy/python.py", line 610, in do_mutation
171 - return method(self, *args, **kwargs)
172 - ValueError: list.remove(x): x not in list
173 -
174 - This happens because "call screen" element is being unconditionally
175 - removed from config.window_auto_hide list, though it is not always
176 - present there. A simple if check fixes this.
177 -
178 -diff --git a/renpy/common/00compat.rpy b/renpy/common/00compat.rpy
179 -index c16ad1d..eefb8e0 100644
180 ---- a/renpy/common/00compat.rpy
181 -+++ b/renpy/common/00compat.rpy
182 -@@ -131,7 +131,8 @@ init -1900 python:
183 - if version <= (6, 99, 10):
184 - config.new_translate_order = False
185 - config.old_say_args = True
186 -- config.window_auto_hide.remove("call screen")
187 -+ if "call screen" in config.window_auto_hide:
188 -+ config.window_auto_hide.remove("call screen")
189 - config.quit_action = ui.gamemenus("_quit_prompt")
190 - config.enforce_window_max_size = False
191 - config.splashscreen_suppress_overlay = False
192
193 diff --git a/games-engines/renpy/files/renpy-6.99.12.4-multiple-abi.patch b/games-engines/renpy/files/renpy-6.99.12.4-multiple-abi.patch
194 deleted file mode 100644
195 index 3a7355e60be..00000000000
196 --- a/games-engines/renpy/files/renpy-6.99.12.4-multiple-abi.patch
197 +++ /dev/null
198 @@ -1,357 +0,0 @@
199 -From 7aa51dae5eb2f2123fee9bca23a2ce2f1b1c3f10 Mon Sep 17 00:00:00 2001
200 -From: hasufell <hasufell@g.o>
201 -Date: Thu, 20 Aug 2015 01:10:58 +0200
202 -Subject: [PATCH] Fix multiple abi support
203 -
204 ----
205 - renpy.py | 128 ++--------------------------------------------------
206 - renpy/common.py | 137 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
207 - renpy/main.py | 6 +--
208 - 3 files changed, 144 insertions(+), 127 deletions(-)
209 - create mode 100644 renpy/common.py
210 -
211 -diff --git a/renpy.py b/renpy.py
212 -index 7548cf6..8ec7353 100644
213 ---- a/renpy.py
214 -+++ b/renpy.py
215 -@@ -28,122 +28,9 @@
216 - import os
217 - import sys
218 - import warnings
219 --
220 --# Functions to be customized by distributors. ################################
221 --
222 --# Given the Ren'Py base directory (usually the directory containing
223 --# this file), this is expected to return the path to the common directory.
224 --
225 --
226 --def path_to_common(renpy_base):
227 -- return renpy_base + "/renpy/common"
228 --
229 --# Given a directory holding a Ren'Py game, this is expected to return
230 --# the path to a directory that will hold save files.
231 --
232 --
233 --def path_to_saves(gamedir, save_directory=None):
234 -- import renpy # @UnresolvedImport
235 --
236 -- if save_directory is None:
237 -- save_directory = renpy.config.save_directory
238 -- save_directory = renpy.exports.fsencode(save_directory)
239 --
240 -- # Makes sure the permissions are right on the save directory.
241 -- def test_writable(d):
242 -- try:
243 -- fn = os.path.join(d, "test.txt")
244 -- open(fn, "w").close()
245 -- open(fn, "r").close()
246 -- os.unlink(fn)
247 -- return True
248 -- except:
249 -- return False
250 --
251 -- # Android.
252 -- if renpy.android:
253 -- paths = [
254 -- os.path.join(os.environ["ANDROID_OLD_PUBLIC"], "game/saves"),
255 -- os.path.join(os.environ["ANDROID_PRIVATE"], "saves"),
256 -- os.path.join(os.environ["ANDROID_PUBLIC"], "saves"),
257 -- ]
258 --
259 -- for rv in paths:
260 -- if os.path.isdir(rv) and test_writable(rv):
261 -- break
262 --
263 -- print("Saving to", rv)
264 --
265 -- # We return the last path as the default.
266 --
267 -- return rv
268 --
269 -- if renpy.ios:
270 -- from pyobjus import autoclass
271 -- from pyobjus.objc_py_types import enum
272 --
273 -- NSSearchPathDirectory = enum("NSSearchPathDirectory", NSDocumentDirectory=9)
274 -- NSSearchPathDomainMask = enum("NSSearchPathDomainMask", NSUserDomainMask=1)
275 --
276 -- NSFileManager = autoclass('NSFileManager')
277 -- manager = NSFileManager.defaultManager()
278 -- url = manager.URLsForDirectory_inDomains_(
279 -- NSSearchPathDirectory.NSDocumentDirectory,
280 -- NSSearchPathDomainMask.NSUserDomainMask,
281 -- ).lastObject()
282 --
283 -- # url.path seems to change type based on iOS version, for some reason.
284 -- try:
285 -- rv = url.path().UTF8String().decode("utf-8")
286 -- except:
287 -- rv = url.path.UTF8String().decode("utf-8")
288 --
289 -- print("Saving to", rv)
290 -- return rv
291 --
292 -- # No save directory given.
293 -- if not save_directory:
294 -- return gamedir + "/saves"
295 --
296 -- # Search the path above Ren'Py for a directory named "Ren'Py Data".
297 -- # If it exists, then use that for our save directory.
298 -- path = renpy.config.renpy_base
299 --
300 -- while True:
301 -- if os.path.isdir(path + "/Ren'Py Data"):
302 -- return path + "/Ren'Py Data/" + save_directory
303 --
304 -- newpath = os.path.dirname(path)
305 -- if path == newpath:
306 -- break
307 -- path = newpath
308 --
309 -- # Otherwise, put the saves in a platform-specific location.
310 -- if renpy.macintosh:
311 -- rv = "~/Library/RenPy/" + save_directory
312 -- return os.path.expanduser(rv)
313 --
314 -- elif renpy.windows:
315 -- if 'APPDATA' in os.environ:
316 -- return os.environ['APPDATA'] + "/RenPy/" + save_directory
317 -- else:
318 -- rv = "~/RenPy/" + renpy.config.save_directory
319 -- return os.path.expanduser(rv)
320 --
321 -- else:
322 -- rv = "~/.renpy/" + save_directory
323 -- return os.path.expanduser(rv)
324 --
325 --
326 --# Returns the path to the Ren'Py base directory (containing common and
327 --# the launcher, usually.)
328 --def path_to_renpy_base():
329 -- renpy_base = os.path.dirname(os.path.realpath(sys.argv[0]))
330 -- renpy_base = os.path.abspath(renpy_base)
331 --
332 -- return renpy_base
333 --
334 --##############################################################################
335 -+from distutils.sysconfig import get_python_lib
336 -+sys.path.append(get_python_lib() + "/renpy@SLOT@")
337 -+import renpy.common as common
338 -
339 - # The version of the Mac Launcher and py4renpy that we require.
340 - macos_version = (6, 14, 0)
341 -@@ -154,21 +45,9 @@ except:
342 - print("Ren'Py requires at least python 2.6.")
343 - sys.exit(0)
344 -
345 --android = ("ANDROID_PRIVATE" in os.environ)
346 --
347 --# Android requires us to add code to the main module, and to command some
348 --# renderers.
349 --if android:
350 -- __main__ = sys.modules["__main__"]
351 -- __main__.path_to_renpy_base = path_to_renpy_base
352 -- __main__.path_to_common = path_to_common
353 -- __main__.path_to_saves = path_to_saves
354 -- os.environ["RENPY_RENDERER"] = "gl"
355 --
356 --
357 - def main():
358 -
359 -- renpy_base = path_to_renpy_base()
360 -+ renpy_base = common.path_to_renpy_base()
361 -
362 - # Add paths.
363 - if os.path.exists(renpy_base + "/module"):
364 -diff --git a/renpy/common.py b/renpy/common.py
365 -new file mode 100644
366 -index 0000000..0d60e36
367 ---- /dev/null
368 -+++ b/renpy/common.py
369 -@@ -0,0 +1,137 @@
370 -+# This file is part of Ren'Py. The license below applies to Ren'Py only.
371 -+# Games and other projects that use Ren'Py may use a different license.
372 -+
373 -+# Copyright 2004-2015 Tom Rothamel <pytom@××××××××.us>
374 -+#
375 -+# Permission is hereby granted, free of charge, to any person
376 -+# obtaining a copy of this software and associated documentation files
377 -+# (the "Software"), to deal in the Software without restriction,
378 -+# including without limitation the rights to use, copy, modify, merge,
379 -+# publish, distribute, sublicense, and/or sell copies of the Software,
380 -+# and to permit persons to whom the Software is furnished to do so,
381 -+# subject to the following conditions:
382 -+#
383 -+# The above copyright notice and this permission notice shall be
384 -+# included in all copies or substantial portions of the Software.
385 -+#
386 -+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
387 -+# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
388 -+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
389 -+# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
390 -+# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
391 -+# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
392 -+# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
393 -+
394 -+import os
395 -+import sys
396 -+import warnings
397 -+from distutils.sysconfig import get_python_lib
398 -+
399 -+# Given the Ren'Py base directory (usually the directory containing
400 -+# this file), this is expected to return the path to the common directory.
401 -+def path_to_common(renpy_base):
402 -+ return renpy_base + "/renpy/common"
403 -+
404 -+# Given a directory holding a Ren'Py game, this is expected to return
405 -+# the path to a directory that will hold save files.
406 -+def path_to_saves(gamedir, save_directory=None):
407 -+ import renpy #@UnresolvedImport
408 -+
409 -+ if save_directory is None:
410 -+ save_directory = renpy.config.save_directory
411 -+
412 -+ # Makes sure the permissions are right on the save directory.
413 -+ def test_writable(d):
414 -+ try:
415 -+ fn = os.path.join(d, "test.txt")
416 -+ open(fn, "w").close()
417 -+ open(fn, "r").close()
418 -+ os.unlink(fn)
419 -+ return True
420 -+ except:
421 -+ return False
422 -+
423 -+
424 -+ # Android.
425 -+ if renpy.android:
426 -+ paths = [
427 -+ os.path.join(os.environ["ANDROID_OLD_PUBLIC"], "game/saves"),
428 -+ os.path.join(os.environ["ANDROID_PRIVATE"], "saves"),
429 -+ os.path.join(os.environ["ANDROID_PUBLIC"], "saves"),
430 -+ ]
431 -+
432 -+ for rv in paths:
433 -+ if os.path.isdir(rv) and test_writable(rv):
434 -+ break
435 -+
436 -+ print "Saving to", rv
437 -+
438 -+ # We return the last path as the default.
439 -+
440 -+ return rv
441 -+
442 -+ if renpy.ios:
443 -+ from pyobjus import autoclass
444 -+ from pyobjus.objc_py_types import enum
445 -+
446 -+ NSSearchPathDirectory = enum("NSSearchPathDirectory", NSDocumentDirectory=9)
447 -+ NSSearchPathDomainMask = enum("NSSearchPathDomainMask", NSUserDomainMask=1)
448 -+
449 -+ NSFileManager = autoclass('NSFileManager')
450 -+ manager = NSFileManager.defaultManager()
451 -+ url = manager.URLsForDirectory_inDomains_(
452 -+ NSSearchPathDirectory.NSDocumentDirectory,
453 -+ NSSearchPathDomainMask.NSUserDomainMask,
454 -+ ).lastObject()
455 -+
456 -+ # url.path seems to change type based on iOS version, for some reason.
457 -+ try:
458 -+ rv = url.path().UTF8String().decode("utf-8")
459 -+ except:
460 -+ rv = url.path.UTF8String().decode("utf-8")
461 -+
462 -+ print "Saving to", rv
463 -+ return rv
464 -+
465 -+ # No save directory given.
466 -+ if not save_directory:
467 -+ return gamedir + "/saves"
468 -+
469 -+ # Search the path above Ren'Py for a directory named "Ren'Py Data".
470 -+ # If it exists, then use that for our save directory.
471 -+ path = renpy.config.renpy_base
472 -+
473 -+ while True:
474 -+ if os.path.isdir(path + "/Ren'Py Data"):
475 -+ return path + "/Ren'Py Data/" + save_directory
476 -+
477 -+ newpath = os.path.dirname(path)
478 -+ if path == newpath:
479 -+ break
480 -+ path = newpath
481 -+
482 -+ # Otherwise, put the saves in a platform-specific location.
483 -+ if renpy.macintosh:
484 -+ rv = "~/Library/RenPy/" + save_directory
485 -+ return os.path.expanduser(rv)
486 -+
487 -+ elif renpy.windows:
488 -+ if 'APPDATA' in os.environ:
489 -+ return os.environ['APPDATA'] + "/RenPy/" + save_directory
490 -+ else:
491 -+ rv = "~/RenPy/" + renpy.config.save_directory
492 -+ return os.path.expanduser(rv)
493 -+
494 -+ else:
495 -+ rv = "~/.renpy/" + save_directory
496 -+ return os.path.expanduser(rv)
497 -+
498 -+
499 -+# Returns the path to the Ren'Py base directory (containing common and
500 -+# the launcher, usually.)
501 -+def path_to_renpy_base():
502 -+ renpy_base = os.path.dirname(os.path.realpath(sys.argv[0]))
503 -+ renpy_base = get_python_lib() + "/renpy@SLOT@"
504 -+ renpy_base = os.path.abspath(renpy_base)
505 -+
506 -+ return renpy_base
507 -diff --git a/renpy/main.py b/renpy/main.py
508 -index 73e7239..6807ba1 100644
509 ---- a/renpy/main.py
510 -+++ b/renpy/main.py
511 -@@ -27,7 +27,7 @@ import os
512 - import sys
513 - import time
514 - import zipfile
515 --import __main__
516 -+import renpy.common as common
517 -
518 -
519 - last_clock = time.time()
520 -@@ -273,7 +273,7 @@ def main():
521 - renpy.config.searchpath = [ renpy.config.gamedir ]
522 -
523 - # Find the common directory.
524 -- commondir = __main__.path_to_common(renpy.config.renpy_base) # E1101 @UndefinedVariable
525 -+ commondir = common.path_to_common(renpy.config.renpy_base) # E1101 @UndefinedVariable
526 -
527 - if os.path.isdir(commondir):
528 - renpy.config.searchpath.append(commondir)
529 -@@ -371,7 +371,7 @@ def main():
530 -
531 - # Find the save directory.
532 - if renpy.config.savedir is None:
533 -- renpy.config.savedir = __main__.path_to_saves(renpy.config.gamedir) # E1101 @UndefinedVariable
534 -+ renpy.config.savedir = common.path_to_saves(renpy.config.gamedir) # E1101 @UndefinedVariable
535 -
536 - if renpy.game.args.savedir: # @UndefinedVariable
537 - renpy.config.savedir = renpy.game.args.savedir # @UndefinedVariable
538 -diff --git a/renpy/script.py b/renpy/script.py
539 -index 73e7239..6807ba1 100644
540 ---- a/renpy/script.py
541 -+++ b/renpy/script.py
542 -@@ -150,8 +150,8 @@ import os
543 - if renpy.loader.loadable(i):
544 - return None
545 -
546 -- import __main__
547 -- backups = __main__.path_to_saves(renpy.config.gamedir, "backups") # @UndefinedVariable
548 -+ import renpy.common as common
549 -+ backups = common.path_to_saves(renpy.config.gamedir, "backups") # @UndefinedVariable
550 -
551 - if backups is None:
552 - return
553 ---
554 -2.5.0
555 -
556
557 diff --git a/games-engines/renpy/files/renpy-7.3.5-system-path.patch b/games-engines/renpy/files/renpy-7.3.5-system-path.patch
558 deleted file mode 100644
559 index fc5d54aceea..00000000000
560 --- a/games-engines/renpy/files/renpy-7.3.5-system-path.patch
561 +++ /dev/null
562 @@ -1,19 +0,0 @@
563 ---- renpy-7.3.5-source/renpy.py.orig 2019-10-18 02:35:19.000000000 +0300
564 -+++ renpy-7.3.5-source/renpy.py 2020-05-09 13:38:24.989131947 +0300
565 -@@ -32,6 +32,7 @@
566 - import warnings
567 -
568 - # Functions to be customized by distributors. ################################
569 -+from distutils.sysconfig import get_python_lib
570 -
571 - # Given the Ren'Py base directory (usually the directory containing
572 - # this file), this is expected to return the path to the common directory.
573 -@@ -140,7 +141,7 @@
574 - # Returns the path to the Ren'Py base directory (containing common and
575 - # the launcher, usually.)
576 - def path_to_renpy_base():
577 -- renpy_base = os.path.dirname(os.path.realpath(sys.argv[0]))
578 -+ renpy_base = get_python_lib()
579 - renpy_base = os.path.abspath(renpy_base)
580 -
581 - return renpy_base
582
583 diff --git a/games-engines/renpy/files/renpy-7.3.5-use-system-fribidi.patch b/games-engines/renpy/files/renpy-7.3.5-use-system-fribidi.patch
584 deleted file mode 100644
585 index e4b0258f984..00000000000
586 --- a/games-engines/renpy/files/renpy-7.3.5-use-system-fribidi.patch
587 +++ /dev/null
588 @@ -1,42 +0,0 @@
589 -diff '--color=auto' -Naurd renpy-7.3.5-source.orig/module/renpybidicore.c renpy-7.3.5-source/module/renpybidicore.c
590 ---- renpy-7.3.5-source.orig/module/renpybidicore.c 2018-10-12 08:37:06.000000000 +0300
591 -+++ renpy-7.3.5-source/module/renpybidicore.c 2020-05-09 12:46:30.811881811 +0300
592 -@@ -1,5 +1,5 @@
593 - #include <Python.h>
594 --#include <fribidi-src/lib/fribidi.h>
595 -+#include <fribidi.h>
596 - #include <stdlib.h>
597 -
598 - #ifndef alloca
599 ---- renpy-7.3.5-source.orig/module/setup.py 2019-08-09 05:11:58.000000000 +0300
600 -+++ renpy-7.3.5-source/module/setup.py 2020-05-09 12:46:46.463942266 +0300
601 -@@ -119,28 +119,13 @@
602 - sdl + [ png, 'z', 'm' ])
603 -
604 - FRIBIDI_SOURCES = """
605 --fribidi-src/lib/fribidi.c
606 --fribidi-src/lib/fribidi-arabic.c
607 --fribidi-src/lib/fribidi-bidi.c
608 --fribidi-src/lib/fribidi-bidi-types.c
609 --fribidi-src/lib/fribidi-deprecated.c
610 --fribidi-src/lib/fribidi-joining.c
611 --fribidi-src/lib/fribidi-joining-types.c
612 --fribidi-src/lib/fribidi-mem.c
613 --fribidi-src/lib/fribidi-mirroring.c
614 --fribidi-src/lib/fribidi-run.c
615 --fribidi-src/lib/fribidi-shape.c
616 - renpybidicore.c
617 - """.split()
618 - cython(
619 - "_renpybidi",
620 - FRIBIDI_SOURCES,
621 -- includes=[
622 -- BASE + "/fribidi-src/",
623 -- BASE + "/fribidi-src/lib/",
624 -- ],
625 -+ libs=["fribidi"],
626 - define_macros=[
627 -- ("FRIBIDI_ENTRY", ""),
628 - ("HAVE_CONFIG_H", "1"),
629 - ])
630 -
631
632 diff --git a/games-engines/renpy/files/renpy.1 b/games-engines/renpy/files/renpy.1
633 deleted file mode 100644
634 index e8b7a2b6195..00000000000
635 --- a/games-engines/renpy/files/renpy.1
636 +++ /dev/null
637 @@ -1,163 +0,0 @@
638 -.\" Copyright © 2015 Andrew Savchenko
639 -.\" Distributed under the terms of GNU FDL-1.3+ license,
640 -.\" based on original Ren'Py documentation licensed under MIT.
641 -.TH renpy 1 "31 May 2015" "Ren'Py" "Ren'Py Gentoo's manual"
642 -.SH NAME
643 -renpy \- a visual novel engine
644 -
645 -.SH SYNOPSIS
646 -.BI renpy " game_directory"
647 -.\" ****************************************************************
648 -.SH DESCRIPTION
649 -
650 -.B renpy
651 -(Ren'Py) is a visual novel engine \- used by hundreds of creators
652 -from around the world \- that helps you use words, images, and
653 -sounds to tell interactive stories that run on computers and mobile
654 -devices. These can be both visual novels and life simulation games.
655 -The easy to learn script language allows anyone to efficiently
656 -write large visual novels, while its
657 -.BR python (1)
658 -scripting is enough for complex simulation games.
659 -.\" ****************************************************************
660 -.SH RUNNING A GAME
661 -
662 -In order to run a game, provide
663 -.I game_directory
664 -as an argument to
665 -.BR renpy .
666 -Exact directory name may vary depending or a game, but usually
667 -this path corresponds to
668 -.I */game
669 -wildcard and contains
670 -.I script_version.rpy*
671 -file within. Game directory usually contains other
672 -.IR *.rpy* " and " *.rpa " files."
673 -
674 -One may use
675 -.BR find (1)
676 -tool to locate required directory within unpacked game top
677 -directory:
678 -.RS
679 -
680 -find -O3
681 -.I top_directory
682 --type f -iname "script_version.rpy*"
683 -
684 -.RE
685 -A directory one level above may be provided as an argument as well.
686 -.\" ****************************************************************
687 -.SH PORTABILITY
688 -
689 -All
690 -.B renpy
691 -games are written in
692 -.BR python (1),
693 -so one can run then on any platform and architecture.
694 -
695 -As you may have noticed, Ren'Py games are often distributed in
696 -different archives for different architectures. This happens due to
697 -bundling of
698 -.BR python (1)
699 -interpreter and required libraries in a game's tarball. Since you
700 -are using OS native
701 -.B renpy
702 -setup, you should be able to run any of these games.
703 -.\" ****************************************************************
704 -.SH GAMES CATALOGUE
705 -
706 -A large catalogue of Ren'Py powered games is available at
707 -.IR http://games.renpy.org/ .
708 -.\" ****************************************************************
709 -.SH TROUBLESHOOTING
710 -
711 -In some cases game may fail to run with current
712 -.B renpy
713 -version due to various errors.
714 -
715 -In such case please try to use the closest
716 -.B renpy
717 -version to one used by game developer. Most games contain
718 -.IR script_version.rpy " file in the " game " directory."
719 -This file actually contains
720 -.B renpy
721 -version used during a game build.
722 -You may install multiple slots of
723 -.B renpy
724 -in Gentoo and use
725 -.BI eselect " renpy"
726 -module to switch between various versions.
727 -
728 -If
729 -.I game
730 -directory contains both
731 -.IR *.rpyc " (or " *.rpyo ") and " *.rpy " files, delete"
732 -.IR *.rpyc " (or " *.rpyo ") files, they will be regenerated by"
733 -the interpreter.
734 -Another solution will be to switch between version of
735 -.BR python (1)
736 -using
737 -.IR eselect (1)
738 -tool in order to find one suitable to interpret game's
739 -.IR *.rpyc " files."
740 -
741 -Some games may lack general media files, e.g.
742 -.I click.ogg
743 -sound, so you should create or download one and place in the
744 -.I game
745 -directory.
746 -
747 -Also please pay attention to
748 -.I problems.html
749 -page from
750 -.B renpy
751 -html documentation, see
752 -.B FURTHER READING
753 -section.
754 -.\" ****************************************************************
755 -.SH ENVIRONMENT VARIABLES
756 -
757 -.B renpy
758 -supports a number of environment variables to control its
759 -behaviour. Please refer to html docs for further details
760 -(see
761 -.B FURTHER READING
762 -section).
763 -.\" ****************************************************************
764 -.SH FURTHER READING
765 -
766 -.B renpy
767 -comes with extensive html documentation. To use it install
768 -.B renpy
769 -with
770 -.I USE="doc"
771 -and go to
772 -.I /usr/share/doc/renpy-*/html/doc/index.html
773 -
774 -Alternatively one may refer to online documentation:
775 -.IR http://www.renpy.org/doc/html/ .
776 -Be warned that online docs maybe different from your current active
777 -version, so it recommended to use shipped documentation instead.
778 -.\" ****************************************************************
779 -.SH BUGS
780 -
781 -Any bugs related to Gentoo packaging (e.g. omitted dependencies)
782 -please report on bugzilla:
783 -.IR https://bugs.gentoo.org .
784 -
785 -For bugs in the Ren'Py engine itself, please contact upstream:
786 -.I https://github.com/renpy/renpy/issues
787 -and add a Gentoo bug if you feel it necessary.
788 -
789 -For issues with games themselves please contact corresponding
790 -authors.
791 -.\" ****************************************************************
792 -.SH SEE ALSO
793 -
794 -.BR python (1)
795 -\- an interpreter used by Ren'Py engine.
796 -
797 -.BR unrpa (1)
798 -\- a tool to unpack
799 -.I *.rpa
800 -data files (Ren'Py Archives).
801
802 diff --git a/games-engines/renpy/metadata.xml b/games-engines/renpy/metadata.xml
803 deleted file mode 100644
804 index 98b754cf659..00000000000
805 --- a/games-engines/renpy/metadata.xml
806 +++ /dev/null
807 @@ -1,30 +0,0 @@
808 -<?xml version="1.0" encoding="UTF-8"?>
809 -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
810 -<pkgmetadata>
811 - <maintainer type="person">
812 - <email>bircoph@g.o</email>
813 - <name>Andrew Savchenko</name>
814 - </maintainer>
815 - <longdescription>
816 - Ren'Py is a free and cross-platform visual novel engine that
817 - helps you use words,
818 - pictures, and sounds to tell stories with the computer.
819 - It`s easy and efficient script language makes it possible for
820 - non-programmers to make visual novels,
821 - while its Python support allows for complex simulation games.
822 - </longdescription>
823 - <use>
824 - <flag name="development">Install IDE for game developers and
825 - an empty game template</flag>
826 - </use>
827 - <upstream>
828 - <maintainer status="active">
829 - <email>pytom@××××××××.us</email>
830 - <name>Tom Rothamel</name>
831 - </maintainer>
832 - <changelog>http://www.renpy.org/latest.html</changelog>
833 - <bugs-to>https://github.com/renpy/renpy/issues</bugs-to>
834 - <doc>http://renpy.org/wiki/renpy/doc</doc>
835 - <remote-id type="github">renpy/renpy</remote-id>
836 - </upstream>
837 -</pkgmetadata>
838
839 diff --git a/games-engines/renpy/renpy-6.99.12.4-r4.ebuild b/games-engines/renpy/renpy-6.99.12.4-r4.ebuild
840 deleted file mode 100644
841 index f0c471b474a..00000000000
842 --- a/games-engines/renpy/renpy-6.99.12.4-r4.ebuild
843 +++ /dev/null
844 @@ -1,108 +0,0 @@
845 -# Copyright 1999-2020 Gentoo Authors
846 -# Distributed under the terms of the GNU General Public License v2
847 -
848 -EAPI=6
849 -PYTHON_COMPAT=( python2_7 )
850 -DISTUTILS_IN_SOURCE_BUILD=1
851 -inherit eutils gnome2-utils toolchain-funcs versionator distutils-r1
852 -
853 -DESCRIPTION="Visual novel engine written in python"
854 -HOMEPAGE="https://www.renpy.org"
855 -SRC_URI="https://www.renpy.org/dl/${PV}/${P}-source.tar.bz2"
856 -
857 -LICENSE="MIT"
858 -SLOT="$(get_version_component_range 1-2)"
859 -MYSLOT=$(delete_all_version_separators ${SLOT})
860 -KEYWORDS="amd64 x86"
861 -IUSE="development doc examples"
862 -REQUIRED_USE="examples? ( development )"
863 -
864 -RDEPEND="
865 - >=app-eselect/eselect-renpy-0.7
866 - dev-libs/fribidi
867 - ~dev-python/pygame_sdl2-${PV}[${PYTHON_USEDEP}]
868 - >=dev-lang/python-exec-0.3[${PYTHON_USEDEP}]
869 - media-libs/glew:0
870 - media-libs/libpng:0
871 - media-libs/libsdl2[video]
872 - media-libs/freetype:2
873 - sys-libs/zlib
874 - media-video/ffmpeg"
875 -DEPEND="${RDEPEND}
876 - dev-python/cython[${PYTHON_USEDEP}]
877 - virtual/pkgconfig"
878 -
879 -S=${WORKDIR}/${P}-source
880 -
881 -PATCHES=(
882 - "${FILESDIR}"/${P}-multiple-abi.patch
883 - "${FILESDIR}"/${P}-compat-window.patch #601200
884 - "${FILESDIR}"/${P}-compat-style.patch
885 - "${FILESDIR}"/${P}-compat-infinite-loop.patch
886 -)
887 -
888 -python_prepare_all() {
889 - export CFLAGS="${CFLAGS} $($(tc-getPKG_CONFIG) --cflags fribidi)"
890 - distutils-r1_python_prepare_all
891 -
892 - einfo "Deleting precompiled python files"
893 - find . -name '*.py[co]' -print -delete || die
894 -
895 - sed -i \
896 - -e "s/@SLOT@/${MYSLOT}/" \
897 - renpy.py renpy/common.py || die "setting slot failed!"
898 -}
899 -
900 -python_compile() {
901 - cd "${S}"/module || die
902 - distutils-r1_python_compile
903 -}
904 -
905 -python_install() {
906 - cd "${S}"/module || die
907 - distutils-r1_python_install --install-lib="$(python_get_sitedir)/renpy${MYSLOT}"
908 -
909 - cd "${S}" || die
910 - python_newscript renpy.py ${PN}-${SLOT}
911 -
912 - python_moduleinto renpy${MYSLOT}
913 - python_domodule renpy
914 - if use development ; then
915 - python_domodule launcher templates
916 - fi
917 - if use examples ; then
918 - python_domodule the_question tutorial
919 - fi
920 -}
921 -
922 -python_install_all() {
923 - distutils-r1_python_install_all
924 - if use development; then
925 - newicon -s 32 launcher/game/images/logo32.png ${P}.png
926 - make_desktop_entry ${PN}-${SLOT} "Ren'Py ${PV}" ${P}
927 - fi
928 -
929 - if use doc; then
930 - insinto "/usr/share/doc/${PF}/html"
931 - doins -r doc/*
932 - fi
933 - newman "${FILESDIR}/${PN}.1" "${P}.1"
934 -}
935 -
936 -pkg_preinst() {
937 - use development && gnome2_icon_savelist
938 -}
939 -
940 -pkg_postinst() {
941 - use development && gnome2_icon_cache_update
942 -
943 - einfo "running: eselect renpy update --if-unset"
944 - eselect renpy update --if-unset
945 -}
946 -
947 -pkg_postrm() {
948 - use development && gnome2_icon_cache_update
949 -
950 - einfo "running: eselect renpy update --if-unset"
951 - eselect renpy update --if-unset
952 -}
953
954 diff --git a/games-engines/renpy/renpy-7.3.5.ebuild b/games-engines/renpy/renpy-7.3.5.ebuild
955 deleted file mode 100644
956 index db5f7121aac..00000000000
957 --- a/games-engines/renpy/renpy-7.3.5.ebuild
958 +++ /dev/null
959 @@ -1,108 +0,0 @@
960 -# Copyright 1999-2020 Gentoo Authors
961 -# Distributed under the terms of the GNU General Public License v2
962 -
963 -EAPI=7
964 -PYTHON_COMPAT=( python2_7 )
965 -DISTUTILS_IN_SOURCE_BUILD=1
966 -DISTUTILS_USE_SETUPTOOLS=no
967 -inherit gnome2-utils distutils-r1
968 -
969 -DESCRIPTION="Visual novel engine written in python"
970 -HOMEPAGE="https://www.renpy.org"
971 -SRC_URI="https://www.renpy.org/dl/${PV}/${P}-source.tar.bz2"
972 -
973 -LICENSE="MIT"
974 -SLOT=0
975 -KEYWORDS="amd64 x86"
976 -IUSE="development doc examples"
977 -REQUIRED_USE="examples? ( development )"
978 -
979 -BDEPEND="
980 - dev-python/cython[${PYTHON_USEDEP}]
981 - virtual/pkgconfig"
982 -DEPEND="
983 - dev-libs/fribidi
984 - ~dev-python/pygame_sdl2-${PV}[${PYTHON_USEDEP}]
985 - >=dev-lang/python-exec-0.3[${PYTHON_USEDEP}]
986 - media-libs/glew:0
987 - media-libs/libpng:0
988 - media-libs/libsdl2[video]
989 - media-libs/freetype:2
990 - sys-libs/zlib
991 - media-video/ffmpeg"
992 -RDEPEND="${DEPEND}
993 - !app-eselect/eselect-renpy"
994 -
995 -S=${WORKDIR}/${P}-source
996 -
997 -PATCHES=(
998 - "${FILESDIR}"/${P}-system-path.patch
999 - "${FILESDIR}"/${PN}-6.99.12.4-compat-style.patch
1000 - "${FILESDIR}"/${PN}-6.99.12.4-compat-infinite-loop.patch
1001 - "${FILESDIR}"/${P}-use-system-fribidi.patch
1002 -)
1003 -
1004 -python_prepare_all() {
1005 - einfo "Deleting precompiled python files"
1006 - find . -name '*.py[co]' -print -delete || die
1007 - rm -r module/{gen,fribidi-src} || die
1008 -
1009 - export CFLAGS="${CFLAGS} $($(tc-getPKG_CONFIG) --cflags fribidi)"
1010 - distutils-r1_python_prepare_all
1011 -}
1012 -
1013 -python_compile() {
1014 - cd "${S}"/module || die
1015 - distutils-r1_python_compile
1016 -}
1017 -
1018 -python_install() {
1019 - cd "${S}"/module || die
1020 - distutils-r1_python_install
1021 -
1022 - cd "${S}" || die
1023 - python_newscript renpy.py ${PN}
1024 -
1025 - python_domodule renpy
1026 - if use development ; then
1027 - python_domodule launcher
1028 - fi
1029 - if use examples ; then
1030 - python_domodule the_question tutorial
1031 - fi
1032 -}
1033 -
1034 -python_install_all() {
1035 - distutils-r1_python_install_all
1036 - if use development; then
1037 - newicon -s 32 launcher/game/images/logo32.png ${P}.png
1038 - make_desktop_entry ${PN} "Ren'Py ${PV}" ${P}
1039 - fi
1040 -
1041 - if use doc; then
1042 - insinto "/usr/share/doc/${PF}/html"
1043 - doins -r doc/*
1044 - fi
1045 - newman "${FILESDIR}/${PN}.1" "${P}.1"
1046 -}
1047 -
1048 -pkg_preinst() {
1049 - use development && gnome2_icon_savelist
1050 -}
1051 -
1052 -pkg_postinst() {
1053 - use development && gnome2_icon_cache_update
1054 -
1055 - local v
1056 - for v in ${REPLACING_VERSIONS}; do
1057 - ver_test "${v}" -ge 7 && continue
1058 - einfo "Starting from ${PN}-7 slots are dropped."
1059 - einfo "RenPy natively supports compatibility with games made for older versions."
1060 - einfo "Report bugs upstream on such problems, usually they are easy to fix."
1061 - break
1062 - done
1063 -}
1064 -
1065 -pkg_postrm() {
1066 - use development && gnome2_icon_cache_update
1067 -}
1068
1069 diff --git a/profiles/package.mask b/profiles/package.mask
1070 index 460f9b096c1..49836a57dca 100644
1071 --- a/profiles/package.mask
1072 +++ b/profiles/package.mask
1073 @@ -248,7 +248,6 @@ dev-haskell/hgettext
1074 # anyway.
1075 # Removal in 30 days. Bug #735358.
1076 dev-python/numpy-python2
1077 -games-engines/renpy
1078
1079 # Jonas Stein <jstein@g.o> (2020-12-29)
1080 # Unusable without alsa.