Project

General

Profile

Bug #3170

Housekeeping #3018: Various uninstallable packages should be fixed, dropped, or blacklisted.

Packaging Request #2874: [python2-*]: multiple packages dropped from arch

[castle-combat]: unable to satisfy dependency 'python2-twisted' required by castle-combat

maddox - 8 months ago - . Updated 5 months ago.

Status:
confirmed
Priority:
bug
Assignee:
-
% Done:

0%


Description

$ sudo pacman --sync  --needed  castle-combat
resolving dependencies...
warning: cannot resolve "python2-twisted", a dependency of "castle-combat" 
warning: cannot resolve "python2-pygame", a dependency of "castle-combat" 
:: The following package cannot be upgraded due to unresolvable dependencies:
      castle-combat

:: Do you want to skip the above package for this upgrade? [y/N] 
error: failed to prepare transaction (could not satisfy dependencies)
:: unable to satisfy dependency 'python2-twisted' required by castle-combat
:: unable to satisfy dependency 'python2-pygame' required by castle-combat@

History

#1

Updated by bill-auger 8 months ago

  • Parent task set to #3018
  • Status changed from unconfirmed to confirmed
  • Description updated (diff)
  • Subject changed from castle-combat: :: unable to satisfy dependency 'python2-twisted' required by castle-combat to [castle-combat]: unable to satisfy dependency 'python2-twisted' required by castle-combat
#3

Updated by maddox 8 months ago

Let us wait what they will say on the issue filed:
https://github.com/karlb/castle-combat/issues/4

#4

Updated by bill-auger 8 months ago

fine initiative - you could tone it back though - you asked the maintainers to change the license; but that is not possible - the maintainers obviously have no license to use those files - only the original author of the sounds/music could give those files any license

what is needed, is explicit permission from the credited author(s); which is likely impossible because the author published anonymously (on a geocities website 20+ years ago - probably no traces of the original publication or author remain) - the tracker files include the same attribution, in form of a copy right notice from the author (anonymous) - no permission is given - without that, someone would need to make new music for it, find libre replacements (probably any .xm file would suffice), run it silently, or drop the package (it dows not build)

the easiest way to rescue it, is likely to replace or delete those 4 files

the easiest solution o/c, is to drop the package - the latest (python3) version does not build normally - it seems to only run in a "virtualenv" - i dont think we want that

WIP PKGBUILD:
https://git.parabola.nu/abslibre.git/commit/?h=wip-castle-combat&id=bc7c8b0e1a4c184656ca34d6ba81c5094485ff5b

#5

Updated by bill-auger 8 months ago

i got it to run as a normal installed program; but it crashed soon into the game - it did not complain about the deleted sound files though

$ castle-combat
Castle-Combat requires pygame and twisted. If the game doesn't start up correctly, please verify that these are installed in the versions given in requirements.txt.
pygame 2.1.2 (SDL 2.0.20, Python 3.10.2)
Hello from the pygame community. https://www.pygame.org/contribute.html
/usr/bin/castle-combat-0.9.0/src/common.py:58: SyntaxWarning: "is" with a literal. Did you mean "=="?
  if colorkey is -1:
:0: UserWarning: You do not have a working installation of the service_identity module: 'No module named 'service_identity''.  Please install it from <https://pypi.python.org/pypi/service_identity> and make sure all of its dependencies are satisfied.  Without the service_identity module, Twisted can perform only rudimentary TLS client hostname verification.  Many valid certificate/hostname mappings may be rejected.
new state <state.MainState object at 0x7f7e32d969e0>
new state <menu.MenuState object at 0x7f7e32d972b0>
new state <menu.NewGameState object at 0x7f7e29aef880>
new state <server.WaitForPlayersState object at 0x7f7e29958130>
Stopping to listen
leaving state <server.WaitForPlayersState object at 0x7f7e29958130>
new state <common.info.<locals>.InfoState object at 0x7f7e299584c0>
leaving state <common.info.<locals>.InfoState object at 0x7f7e299584c0>
assign config 0 to player 0
new state <gamephases.GameState object at 0x7f7e29879e70>
new state <gamephases.AnnouncePhase object at 0x7f7e29879cc0>
new_house was not possible
new_house was not possible
    -- Next Phase --
leaving state <gamephases.AnnouncePhase object at 0x7f7e29879cc0>
new state <gamephases.SelectPhase object at 0x7f7e29958940>
Unhandled Error
Traceback (most recent call last):
  File "/usr/bin/castle-combat-0.9.0/src/main.py", line 47, in main
    runStateLoop()
  File "/usr/bin/castle-combat-0.9.0/src/state.py", line 132, in runStateLoop
    reactor.run()
  File "/usr/lib/python3.10/site-packages/twisted/internet/base.py", line 1318, in run
    self.mainLoop()
  File "/usr/lib/python3.10/site-packages/twisted/internet/base.py", line 1328, in mainLoop
    reactorBaseSelf.runUntilCurrent()
--- <exception caught here> ---
  File "/usr/lib/python3.10/site-packages/twisted/internet/base.py", line 994, in runUntilCurrent
    call.func(*call.args, **call.kw)
  File "/usr/bin/castle-combat-0.9.0/src/state.py", line 118, in stateLoop
    d = top_state.on_event(event)
  File "/usr/bin/castle-combat-0.9.0/src/state.py", line 74, in on_event
    return handler(top_state, event)
  File "/usr/bin/castle-combat-0.9.0/src/gamephases.py", line 76, in handle_keypress
    player.handle_event(event)
  File "/usr/bin/castle-combat-0.9.0/src/player.py", line 168, in handle_event
    self.phase_player.handle_event(*args, **kwargs)
  File "/usr/bin/castle-combat-0.9.0/src/selectplayer.py", line 77, in handle_event
    self.confirm_select()
  File "/usr/bin/castle-combat-0.9.0/src/network.py", line 60, in <lambda>
    return lambda *args, **kwargs: delegate_and_call(method_name, *args, **kwargs)
  File "/usr/bin/castle-combat-0.9.0/src/network.py", line 52, in delegate_and_call
    getattr(to_class, method_name)(self, *args, **kwargs)
  File "/usr/bin/castle-combat-0.9.0/src/selectplayer.py", line 62, in confirm_select
    game.field.look_for_secured_areas(self.player)
  File "/usr/bin/castle-combat-0.9.0/src/field.py", line 328, in look_for_secured_areas
    t1 = time.clock()
builtins.AttributeError: module 'time' has no attribute 'clock'
#6

Updated by oaken-source 8 months ago

I'm in favour of dropping the package.

#7

Updated by bill-auger 5 months ago

  • Parent task changed from #3018 to #2874

Also available in: Atom PDF