* bug#66173: [BUG] Package unknown-horizons fails during build process @ 2023-09-24 2:35 Rodrigo Morales 2023-09-26 22:04 ` bug#66173: " Tobias Geerinckx-Rice via Bug reports for GNU Guix ` (2 more replies) 0 siblings, 3 replies; 7+ messages in thread From: Rodrigo Morales @ 2023-09-24 2:35 UTC (permalink / raw) To: 66173 The last 120 lines of the build log (i.e. =/var/log/guix/drvs/d7/hlb25qf9wirgdl4w80snbadsm8fgkq-unknown-horizons-2019.1.drv.gz=) are shown in the second code block below. The complete build log can be downloaded at http://0x0.st/HVoh.drv.gz [[https://web.archive.org/web/20230924023306/http://0x0.st/HVoh.drv.gz][(archive link)]] #+BEGIN_EXAMPLE $ guix package -i unknown-horizons The following package will be installed: unknown-horizons 2019.1 The following derivation will be built: /gnu/store/d7hlb25qf9wirgdl4w80snbadsm8fgkq-unknown-horizons-2019.1.drv building /gnu/store/d7hlb25qf9wirgdl4w80snbadsm8fgkq-unknown-horizons-2019.1.drv... 100% 'check' builder for `/gnu/store/d7hlb25qf9wirgdl4w80snbadsm8fgkq-unknown-horizons-2019.1.drv' failed with exit code 1 build of /gnu/store/d7hlb25qf9wirgdl4w80snbadsm8fgkq-unknown-horizons-2019.1.drv failed View build log at '/var/log/guix/drvs/d7/hlb25qf9wirgdl4w80snbadsm8fgkq-unknown-horizons-2019.1.drv.gz'. guix package: error: build of `/gnu/store/d7hlb25qf9wirgdl4w80snbadsm8fgkq-unknown-horizons-2019.1.drv' failed $ echo $? 1 #+END_EXAMPLE #+BEGIN_SRC sh zcat /var/log/guix/drvs/d7/hlb25qf9wirgdl4w80snbadsm8fgkq-unknown-horizons-2019.1.drv.gz | tail -n 120 #+END_SRC #+RESULTS: #+begin_example tests/unittests/test_timer.py ............. [ 70%] tests/unittests/gui/test_window_manager.py ..... [ 72%] tests/unittests/misc/test_paths.py .. [ 73%] tests/unittests/mp/test_run_server.py ss [ 73%] tests/unittests/mp/test_server_statistics.py .. [ 74%] tests/unittests/util/test_check_updates.py .................. [ 79%] tests/unittests/util/test_color.py .... [ 80%] tests/unittests/util/test_platform.py .. [ 81%] tests/unittests/util/test_registry.py .. [ 82%] tests/unittests/util/test_shapes.py ... [ 83%] tests/unittests/util/test_tile_orientation.py .......... [ 86%] tests/unittests/util/test_yamlcachestorage.py . [ 86%] tests/unittests/world/test_component.py . [ 86%] tests/unittests/world/test_ingametype_classes.py ... [ 87%] tests/unittests/world/test_storage.py .............. [ 91%] tests/unittests/world/test_world.py . [ 92%] tests/unittests/world/buildability/test_connectedareacache.py . [ 92%] tests/unittests/world/buildability/test_partialbinarycache.py ..... [ 93%] tests/unittests/world/component/test_healthcomponent.py ..... [ 95%] tests/unittests/world/component/test_namedcomponent.py ...... [ 97%] tests/unittests/world/component/test_tradepostcomponent.py .. [ 97%] tests/unittests/world/production/test_productionline.py ... [ 98%] tests/unittests/world/units/collectors/test_collector.py .... [100%] =================================== FAILURES =================================== ____________________________ test_savegame_upgrade _____________________________ args = () def wrapped(*args): if not manual_session and not use_fixture: s, p = new_session(mapgen=mapgen, human_player=human_player, ai_players=ai_players) elif use_fixture: path = os.path.join(TEST_FIXTURES_DIR, use_fixture + '.sqlite') if not os.path.exists(path): raise Exception('Savegame {} not found'.format(path)) s = load_session(path) timelimit = Timer(handler) timelimit.start(timeout) try: if use_fixture: return func(s, *args) elif not manual_session: return func(s, p, *args) else: > return func(*args) tests/game/__init__.py:243: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tests/game/test_load_save.py:215: in test_savegame_upgrade session.run(seconds=30) tests/game/__init__.py:140: in run Scheduler().tick(Scheduler().cur_tick + 1) horizons/scheduler.py:95: in tick callback.callback() horizons/util/python/callback.py:48: in __call__ return self.callback(*self.args, **self.kwargs) horizons/ai/pirate.py:99: in tick self.combat_manager.tick() horizons/ai/aiplayer/combat/combatmanager.py:343: in tick self.lookout() horizons/ai/aiplayer/combat/combatmanager.py:334: in lookout self.handle_casual_combat() horizons/ai/aiplayer/combat/combatmanager.py:423: in handle_casual_combat rules = (filters.not_in_fleet, filters.pirate, filters.ship_state(self.ships, self.shipStates.idle)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <horizons.ai.aiplayer.combat.unitmanager.UnitManager object at 0x7ffff0e81840> state_dict = <DefaultWeakKeyDictionary at 0x7ffff0e82a70> ship_states = EnumValue(<horizons.ext.enum.Enum object at 0x7ffff5b24e50>, 0, 'idle') def _ship_state_rule(self, state_dict, ship_states): """ Rule stating that ship has to be in any of given states. """ > if not isinstance(ship_states, collections.Iterable): E AttributeError: module 'collections' has no attribute 'Iterable' horizons/ai/aiplayer/combat/unitmanager.py:154: AttributeError ------------------------------ Captured log call ------------------------------- WARNING util.savegameupgrader:savegameupgrader.py:75 Discovered old savegame file, auto-upgrading: 76 -> 77 =============================== warnings summary =============================== horizons/extscheduler.py:72 /tmp/guix-build-unknown-horizons-2019.1.drv-0/unknown-horizons-2019.1/horizons/extscheduler.py:72: SyntaxWarning: "is" with a literal. Did you mean "=="? if obj.loops > 0 or obj.loops is -1: tests/gui/__init__.py:148 /tmp/guix-build-unknown-horizons-2019.1.drv-0/unknown-horizons-2019.1/tests/gui/__init__.py:148: PytestUnknownMarkWarning: Unknown pytest.mark.gui_test - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html gui_test = pytest.mark.gui_test tests/game/long/test_ai_long.py:30 /tmp/guix-build-unknown-horizons-2019.1.drv-0/unknown-horizons-2019.1/tests/game/long/test_ai_long.py:30: PytestUnknownMarkWarning: Unknown pytest.mark.long - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.long tests/game/long/test_ai_quick.py:30 /tmp/guix-build-unknown-horizons-2019.1.drv-0/unknown-horizons-2019.1/tests/game/long/test_ai_quick.py:30: PytestUnknownMarkWarning: Unknown pytest.mark.long - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.long tests/game/long/test_ai_very_long.py:30 /tmp/guix-build-unknown-horizons-2019.1.drv-0/unknown-horizons-2019.1/tests/game/long/test_ai_very_long.py:30: PytestUnknownMarkWarning: Unknown pytest.mark.long - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.long tests/game/long/test_load_save_long.py:33 /tmp/guix-build-unknown-horizons-2019.1.drv-0/unknown-horizons-2019.1/tests/game/long/test_load_save_long.py:33: PytestUnknownMarkWarning: Unknown pytest.mark.long - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.long horizons/util/tile_orientation.py:26 /tmp/guix-build-unknown-horizons-2019.1.drv-0/unknown-horizons-2019.1/horizons/util/tile_orientation.py:26: DeprecationWarning: invalid escape sequence '\ ' """ -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED tests/game/test_load_save.py::test_savegame_upgrade - AttributeError: ... ====== 1 failed, 237 passed, 91 skipped, 2 xfailed, 7 warnings in 26.45s ======= error: in phase 'check': uncaught exception: %exception #<&invoke-error program: "pytest" arguments: ("tests") exit-status: 1 term-signal: #f stop-signal: #f> phase `check' failed after 26.7 seconds command "pytest" "tests" failed with status 1 #+end_example ^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#66173: Package unknown-horizons fails during build process 2023-09-24 2:35 bug#66173: [BUG] Package unknown-horizons fails during build process Rodrigo Morales @ 2023-09-26 22:04 ` Tobias Geerinckx-Rice via Bug reports for GNU Guix 2024-01-04 20:33 ` bug#66173: [PATCH 0/2] unknown-horizons: Fix build, runtime errors Simon South 2024-01-13 15:50 ` bug#66173: Package unknown-horizons fails during build process Simon South 2 siblings, 0 replies; 7+ messages in thread From: Tobias Geerinckx-Rice via Bug reports for GNU Guix @ 2023-09-26 22:04 UTC (permalink / raw) To: 66173 Hi Rodrigo, all, [For future reference.] > http://0x0.st/HVoh.drv.gz Third-party hosting sites tend to delete pastes after some time. I know 0x0 does. While I certainly hope that your issue can be resolved before then, I recommend attaching logs, photos, and other documentation to the bug report. This list has a more generous attachment limit for that reason. Kind regards, T G-R Sent from a Web browser. Excuse or enjoy my brevity. ^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#66173: [PATCH 0/2] unknown-horizons: Fix build, runtime errors 2023-09-24 2:35 bug#66173: [BUG] Package unknown-horizons fails during build process Rodrigo Morales 2023-09-26 22:04 ` bug#66173: " Tobias Geerinckx-Rice via Bug reports for GNU Guix @ 2024-01-04 20:33 ` Simon South 2024-01-04 20:33 ` bug#66173: [PATCH 1/2] gnu: fifengine: Fix runtime error when using Python 3.9 or newer Simon South 2024-01-04 20:33 ` bug#66173: [PATCH 2/2] gnu: unknown-horizons: Fix build and runtime errors Simon South 2024-01-13 15:50 ` bug#66173: Package unknown-horizons fails during build process Simon South 2 siblings, 2 replies; 7+ messages in thread From: Simon South @ 2024-01-04 20:33 UTC (permalink / raw) To: 66173 This patch series fixes unknown-horizons, a real-time strategy game, by applying upstream commits that allow the game and its engine to build and run using recent versions of Python. This also resolves issue #54815, "Unknown Horizons 2019.1 fails to start"[0]. I've tested this on AArch64 and x86-64 and everything seems fine: The game starts as expected using ./pre-inst-env guix shell unknown-horizons -- unknown-horizons -- Simon South simon@simonsouth.net [0] https://issues.guix.gnu.org/54815 Simon South (2): gnu: fifengine: Fix runtime error when using Python 3.9 or newer. gnu: unknown-horizons: Fix build and runtime errors. gnu/local.mk | 3 + gnu/packages/games.scm | 7 +- .../patches/fifengine-python-3.9-compat.patch | 81 +++++++++++++++++++ .../unknown-horizons-python-3.10.patch | 32 ++++++++ .../patches/unknown-horizons-python-3.9.patch | 41 ++++++++++ 5 files changed, 162 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/fifengine-python-3.9-compat.patch create mode 100644 gnu/packages/patches/unknown-horizons-python-3.10.patch create mode 100644 gnu/packages/patches/unknown-horizons-python-3.9.patch base-commit: 3c1f25fc7b3cd1942c33a48e71697f94c4c86bc2 -- 2.41.0 ^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#66173: [PATCH 1/2] gnu: fifengine: Fix runtime error when using Python 3.9 or newer. 2024-01-04 20:33 ` bug#66173: [PATCH 0/2] unknown-horizons: Fix build, runtime errors Simon South @ 2024-01-04 20:33 ` Simon South 2024-01-04 20:33 ` bug#66173: [PATCH 2/2] gnu: unknown-horizons: Fix build and runtime errors Simon South 1 sibling, 0 replies; 7+ messages in thread From: Simon South @ 2024-01-04 20:33 UTC (permalink / raw) To: 66173 * gnu/packages/patches/fifengine-python-3.9-compat.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/games.scm (fifengine)[source]: Apply it. Change-Id: I61001d6b87db00c71f1e2e6ca3bac8581e941451 --- gnu/local.mk | 1 + gnu/packages/games.scm | 3 +- .../patches/fifengine-python-3.9-compat.patch | 81 +++++++++++++++++++ 3 files changed, 84 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/fifengine-python-3.9-compat.patch diff --git a/gnu/local.mk b/gnu/local.mk index f804f4ef5b..f66db809a9 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1166,6 +1166,7 @@ dist_patch_DATA = \ %D%/packages/patches/fenics-dolfin-boost.patch \ %D%/packages/patches/fenics-dolfin-config-slepc.patch \ %D%/packages/patches/fifengine-boost-compat.patch \ + %D%/packages/patches/fifengine-python-3.9-compat.patch \ %D%/packages/patches/fifengine-swig-compat.patch \ %D%/packages/patches/fifo-map-fix-flags-for-gcc.patch \ %D%/packages/patches/fifo-map-remove-catch.hpp.patch \ diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index c7813790a1..333dbfcec5 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -4060,7 +4060,8 @@ (define-public fifengine "fifengine/tar.gz/" version)) (file-name (string-append name "-" version ".tar.gz")) (patches (search-patches "fifengine-swig-compat.patch" - "fifengine-boost-compat.patch")) + "fifengine-boost-compat.patch" + "fifengine-python-3.9-compat.patch")) (sha256 (base32 "1y4grw25cq5iqlg05rnbyxw1njl11ypidnlsm3qy4sm3xxdvb0p8")))) diff --git a/gnu/packages/patches/fifengine-python-3.9-compat.patch b/gnu/packages/patches/fifengine-python-3.9-compat.patch new file mode 100644 index 0000000000..2def4681cd --- /dev/null +++ b/gnu/packages/patches/fifengine-python-3.9-compat.patch @@ -0,0 +1,81 @@ +Fix runtime error when using Python 3.9 or newer. + +Taken from upstream: +https://github.com/fifengine/fifengine/commit/cf295fd98a8fba080f6305c27be56d10ab7ce94d + +diff --git a/engine/python/fife/extensions/serializers/simplexml.py b/engine/python/fife/extensions/serializers/simplexml.py +index c4e10f4f8..d05567936 100644 +--- a/engine/python/fife/extensions/serializers/simplexml.py ++++ b/engine/python/fife/extensions/serializers/simplexml.py +@@ -200,7 +200,7 @@ def get(self, module, name, defaultValue=None): + #get the module tree: for example find tree under module FIFE + moduleTree = self._getModuleTree(module) + element = None +- for e in moduleTree.getchildren(): ++ for e in moduleTree: + if e.tag == "Setting" and e.get("name", "") == name: + element = e + break +@@ -275,7 +275,7 @@ def set(self, module, name, value, extra_attrs={}): + e_type = "str" + value = str(value) + +- for e in moduleTree.getchildren(): ++ for e in moduleTree: + if e.tag != "Setting": continue + if e.get("name", "") == name: + e.text = value +@@ -305,7 +305,7 @@ def remove(self, module, name): + + moduleTree = self._getModuleTree(module) + +- for e in moduleTree.getchildren(): ++ for e in moduleTree: + if e.tag != "Setting": continue + if e.get("name", "") == name: + moduleTree.remove(e) +@@ -321,7 +321,7 @@ def getModuleNameList(self): + self._initialized = True + + moduleNames = [] +- for c in self._root_element.getchildren(): ++ for c in self._root_element: + if c.tag == "Module": + name = c.get("name","") + if not isinstance(name, basestring): +@@ -344,7 +344,7 @@ def getAllSettings(self, module): + + # now from the tree read every value, and put the necessary values + # to the list +- for e in moduleTree.getchildren(): ++ for e in moduleTree: + if e.tag == "Setting": + name = e.get("name", "") + +@@ -383,7 +383,7 @@ def _validateTree(self): + + Raises an InvalidFormat exception if there is a format error. + """ +- for c in self._root_element.getchildren(): ++ for c in self._root_element: + if c.tag != "Module": + raise InvalidFormat("Invalid tag in " + self._file + \ + ". Expected Module, got: " + c.tag) +@@ -391,7 +391,7 @@ def _validateTree(self): + raise InvalidFormat("Invalid tag in " + self._file + \ + ". Module name is empty.") + else: +- for e in c.getchildren(): ++ for e in c: + if e.tag != "Setting": + raise InvalidFormat("Invalid tag in " + self._file + \ + " in module: " + c.tag + \ +@@ -414,7 +414,7 @@ def _getModuleTree(self, module): + raise AttributeError("Settings:_getModuleTree: Invalid type for " + "module argument.") + +- for c in self._root_element.getchildren(): ++ for c in self._root_element: + if c.tag == "Module" and c.get("name", "") == module: + return c + -- 2.41.0 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* bug#66173: [PATCH 2/2] gnu: unknown-horizons: Fix build and runtime errors. 2024-01-04 20:33 ` bug#66173: [PATCH 0/2] unknown-horizons: Fix build, runtime errors Simon South 2024-01-04 20:33 ` bug#66173: [PATCH 1/2] gnu: fifengine: Fix runtime error when using Python 3.9 or newer Simon South @ 2024-01-04 20:33 ` Simon South 1 sibling, 0 replies; 7+ messages in thread From: Simon South @ 2024-01-04 20:33 UTC (permalink / raw) To: 66173 Apply two upstream commits that allow building with Python 3.9 or newer and running with Python 3.10. * gnu/packages/patches/unknown-horizons-python-3.9.patch, * gnu/packages/patches/unknown-horizons-python-3.10.patch: New files. * gnu/local.mk (dist_patch_DATA): Add them. * gnu/packages/games.scm (unknown-horizons)[source]: Apply them. Change-Id: Icbc8b698b913be01465b09ab26afb29e5fd62a87 --- gnu/local.mk | 2 + gnu/packages/games.scm | 4 +- .../unknown-horizons-python-3.10.patch | 32 +++++++++++++++ .../patches/unknown-horizons-python-3.9.patch | 41 +++++++++++++++++++ 4 files changed, 78 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/unknown-horizons-python-3.10.patch create mode 100644 gnu/packages/patches/unknown-horizons-python-3.9.patch diff --git a/gnu/local.mk b/gnu/local.mk index f66db809a9..bbde67cee2 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -2082,6 +2082,8 @@ dist_patch_DATA = \ %D%/packages/patches/ungoogled-chromium-system-ffmpeg.patch \ %D%/packages/patches/ungoogled-chromium-system-nspr.patch \ %D%/packages/patches/unknown-horizons-python-3.8-distro.patch \ + %D%/packages/patches/unknown-horizons-python-3.9.patch \ + %D%/packages/patches/unknown-horizons-python-3.10.patch \ %D%/packages/patches/unzip-CVE-2014-8139.patch \ %D%/packages/patches/unzip-CVE-2014-8140.patch \ %D%/packages/patches/unzip-CVE-2014-8141.patch \ diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 333dbfcec5..880aebe0bb 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -4396,7 +4396,9 @@ (define-public unknown-horizons (sha256 (base32 "1n747p7h0qp48szgp262swg0xh8kxy1bw8ag1qczs4i26hyzs5x4")) - (patches (search-patches "unknown-horizons-python-3.8-distro.patch")))) + (patches (search-patches "unknown-horizons-python-3.8-distro.patch" + "unknown-horizons-python-3.9.patch" + "unknown-horizons-python-3.10.patch")))) (build-system python-build-system) (arguments '(#:phases diff --git a/gnu/packages/patches/unknown-horizons-python-3.10.patch b/gnu/packages/patches/unknown-horizons-python-3.10.patch new file mode 100644 index 0000000000..599de1fec5 --- /dev/null +++ b/gnu/packages/patches/unknown-horizons-python-3.10.patch @@ -0,0 +1,32 @@ +From 4ff605d6c55fcf3e9b4777ffbcb0c24ef17ba4ca Mon Sep 17 00:00:00 2001 +From: Arti <artism90@googlemail.com> +Date: Mon, 28 Feb 2022 21:19:50 +0100 +Subject: [PATCH] Rename instances of `collections.Iterable` into + `collections.abc.Iterable` (#2956) + +--- + horizons/ai/aiplayer/combat/unitmanager.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/horizons/ai/aiplayer/combat/unitmanager.py b/horizons/ai/aiplayer/combat/unitmanager.py +index 8449d5563c5..57db0d47061 100644 +--- a/horizons/ai/aiplayer/combat/unitmanager.py ++++ b/horizons/ai/aiplayer/combat/unitmanager.py +@@ -151,7 +151,7 @@ def _ship_state_rule(self, state_dict, ship_states): + """ + Rule stating that ship has to be in any of given states. + """ +- if not isinstance(ship_states, collections.Iterable): ++ if not isinstance(ship_states, collections.abc.Iterable): + ship_states = (ship_states,) + return lambda ship: (state_dict[ship] in ship_states) + +@@ -178,7 +178,7 @@ def filter_ships(self, ships, rules): + @param rules: conditions each ship has to meet (AND) + @type rules: iterable of lambda(ship) or single lambda(ship) + """ +- if not isinstance(rules, collections.Iterable): ++ if not isinstance(rules, collections.abc.Iterable): + rules = (rules,) + return [ship for ship in ships if all((rule(ship) for rule in rules))] + diff --git a/gnu/packages/patches/unknown-horizons-python-3.9.patch b/gnu/packages/patches/unknown-horizons-python-3.9.patch new file mode 100644 index 0000000000..8b93a71b6c --- /dev/null +++ b/gnu/packages/patches/unknown-horizons-python-3.9.patch @@ -0,0 +1,41 @@ +From 7f6f613826aef9810999c1599c8354e8a78fbdb4 Mon Sep 17 00:00:00 2001 +From: Lukas1818 <44570204+Lukas1818@users.noreply.github.com> +Date: Fri, 19 Feb 2021 21:08:44 +0100 +Subject: [PATCH] fixs for Phyton 3.9 (#2955) + +* change deprecated isAlive() to is_alive() + +* remove unsupported keyword "encoding" + +Co-authored-by: Lukas1818 <git@lukas1818.de> +--- + horizons/util/loaders/jsondecoder.py | 2 +- + horizons/util/preloader.py | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/horizons/util/loaders/jsondecoder.py b/horizons/util/loaders/jsondecoder.py +index ea2ddfb3308..138a948f42a 100644 +--- a/horizons/util/loaders/jsondecoder.py ++++ b/horizons/util/loaders/jsondecoder.py +@@ -37,4 +37,4 @@ def _decode_dict(dct): + return newdict + + with open(path, "r") as f: +- return json.load(f, encoding="ascii", object_hook=_decode_dict) ++ return json.load(f, object_hook=_decode_dict) +diff --git a/horizons/util/preloader.py b/horizons/util/preloader.py +index 5689cc68152..2e072fcc642 100644 +--- a/horizons/util/preloader.py ++++ b/horizons/util/preloader.py +@@ -79,9 +79,9 @@ def wait_for_finish(self): + """ + self.lock.acquire() + # wait until it finished its current action +- if self.isAlive(): ++ if self.is_alive(): + self.join() +- assert not self.isAlive() ++ assert not self.is_alive() + else: + try: + self.lock.release() -- 2.41.0 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* bug#66173: Package unknown-horizons fails during build process 2023-09-24 2:35 bug#66173: [BUG] Package unknown-horizons fails during build process Rodrigo Morales 2023-09-26 22:04 ` bug#66173: " Tobias Geerinckx-Rice via Bug reports for GNU Guix 2024-01-04 20:33 ` bug#66173: [PATCH 0/2] unknown-horizons: Fix build, runtime errors Simon South @ 2024-01-13 15:50 ` Simon South 2024-01-14 12:08 ` Liliana Marie Prikler 2 siblings, 1 reply; 7+ messages in thread From: Simon South @ 2024-01-13 15:50 UTC (permalink / raw) To: Liliana Marie Prikler, 宋文武; +Cc: 66173 Liliana, 宋文武: Are you interested in reviewing these patches? Unfortunately I neglected to CC the games team when posting them. They fix the build of Unknown Horizons in master. https://issues.guix.gnu.org/66173 -- Simon South simon@simonsouth.net -------------------- Start of forwarded message -------------------- Subject: bug#66173: [PATCH 0/2] unknown-horizons: Fix build, runtime errors To: 66173@debbugs.gnu.org From: Simon South <simon@simonsouth.net> Date: Thu, 4 Jan 2024 15:33:54 -0500 This patch series fixes unknown-horizons, a real-time strategy game, by applying upstream commits that allow the game and its engine to build and run using recent versions of Python. This also resolves issue #54815, "Unknown Horizons 2019.1 fails to start"[0]. I've tested this on AArch64 and x86-64 and everything seems fine: The game starts as expected using ./pre-inst-env guix shell unknown-horizons -- unknown-horizons -- Simon South simon@simonsouth.net [0] https://issues.guix.gnu.org/54815 Simon South (2): gnu: fifengine: Fix runtime error when using Python 3.9 or newer. gnu: unknown-horizons: Fix build and runtime errors. gnu/local.mk | 3 + gnu/packages/games.scm | 7 +- .../patches/fifengine-python-3.9-compat.patch | 81 +++++++++++++++++++ .../unknown-horizons-python-3.10.patch | 32 ++++++++ .../patches/unknown-horizons-python-3.9.patch | 41 ++++++++++ 5 files changed, 162 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/fifengine-python-3.9-compat.patch create mode 100644 gnu/packages/patches/unknown-horizons-python-3.10.patch create mode 100644 gnu/packages/patches/unknown-horizons-python-3.9.patch base-commit: 3c1f25fc7b3cd1942c33a48e71697f94c4c86bc2 -- 2.41.0 -------------------- End of forwarded message -------------------- ^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#66173: Package unknown-horizons fails during build process 2024-01-13 15:50 ` bug#66173: Package unknown-horizons fails during build process Simon South @ 2024-01-14 12:08 ` Liliana Marie Prikler 0 siblings, 0 replies; 7+ messages in thread From: Liliana Marie Prikler @ 2024-01-14 12:08 UTC (permalink / raw) To: Simon South, 宋文武; +Cc: 66173-done Am Samstag, dem 13.01.2024 um 10:50 -0500 schrieb Simon South: > Liliana, 宋文武: > > Are you interested in reviewing these patches? Unfortunately I > neglected to CC the games team when posting them. > > They fix the build of Unknown Horizons in master. > > https://issues.guix.gnu.org/66173 > > -- I came, saw, and pushed. Sorry for not coming earlier. ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2024-01-14 12:09 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2023-09-24 2:35 bug#66173: [BUG] Package unknown-horizons fails during build process Rodrigo Morales 2023-09-26 22:04 ` bug#66173: " Tobias Geerinckx-Rice via Bug reports for GNU Guix 2024-01-04 20:33 ` bug#66173: [PATCH 0/2] unknown-horizons: Fix build, runtime errors Simon South 2024-01-04 20:33 ` bug#66173: [PATCH 1/2] gnu: fifengine: Fix runtime error when using Python 3.9 or newer Simon South 2024-01-04 20:33 ` bug#66173: [PATCH 2/2] gnu: unknown-horizons: Fix build and runtime errors Simon South 2024-01-13 15:50 ` bug#66173: Package unknown-horizons fails during build process Simon South 2024-01-14 12:08 ` Liliana Marie Prikler
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/guix.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).