kode54 / dumb

[Semi unmaintained] Dynamic Universal Music Bibliotheque - DUMB - Module/tracker based music format parser and player library -- Please consider using libopenmpt instead of this, it's considerably faster and produces similar or better rendering quality
Other
128 stars 26 forks source link

aldumb missing #75

Closed NoSuck closed 7 years ago

NoSuck commented 7 years ago

Once upon a time, DUMB shipped with aldumb.h, libaldmb.so, and friends. I noticed none of these are included in your fork (which has been endorsed by DUMB's author) and was wondering if you believe responsibility for this functionality lies elsewhere (like the Allegro 4 library). As is, without any package providing these files, Alex 4 does not run--and that game is a classic. There are likely other affected applications, though I doubt many users have been affected yet, as a cursory search shows that only one major distro (Arch Linux) has adopted your fork as official. Anyway, thanks for keeping DUMB alive! It's important software.

Rondom commented 7 years ago

As you can see from the link you posted, the Arch maintainers build dumb without Allegro4-support. https://git.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/dumb#n31

So, I suggest telling them that this is important. From your message, I assume alex4 is not packaged for Arch. Maybe that should be done as well πŸ™ƒ The Debian package has quite some patches, that are useful. -- Sent from my Android device with K-9 Mail. Please excuse my brevity.

NoSuck commented 7 years ago

Thank you. It slipped my mind that Allegro 4 support was optional with DUMB, as the two have always gone hand in hand for me. I'll inform the maintainers.

NoSuck commented 7 years ago

Apparently, Arch Linux and DUMB have a bit of a history, and Arch will not provide support for Allegro 4.

Rondom commented 7 years ago

I am not getting what the problem is nowadays with dumb 2.0.x:

This is how I see it:

So, nothing has changed between the 0.9.3 and today's 2.0.x!

I do not see where the problem is? If the Arch-maintainers don't want their dumb-package to depend on Allegro4 (which is understandable), they should split the package into two (one for libdumb, one for libaldmb) like for example Debian does.

SimonN commented 7 years ago

Yes, this looks more like a packaging issue. Arch's A5 and A4 package has no DUMB support:

Arch's A5 package doesn't depend on Arch's DUMB package yet, but I've filed an issue, will see when it gets added. It got added on 2017-10-30.

For A4 games, I'd recommend that you ask the Arch maintainers yourself.:

NoSuck commented 7 years ago

If the Arch-maintainers don't want their dumb-package to depend on Allegro4 (which is understandable), they should split the package into two (one for libdumb, one for libaldmb) like for example Debian does.

This solution is most in line with Arch's policy of keeping their hands out of upstream as much as possible. They would likely expect this separate libaldmb package ("A4-DUMB-interop") to be provided by users, not maintainers.

Users like me, with no packaging experience, are more likely to simply build and install manually, however. In any case, I have informed the user maintainer of Alex 4 that his package no longer builds.

carstene1ns commented 7 years ago

If nothing else works, I can include dumb (β†’or aldumb) statically in the package.

SimonN commented 7 years ago

Arch's Allegro 5 package 'allegro' depends on package 'dumb' now, that's DUMB 2.0. If an Allegro 5 project relied on Allegro 4 on Arch merely for DUMB, e.g. the AGS project, that can now be fixed by dropping the A4 dependency.

But Alex 4 is not of this type; it is a true Allegro 4 game. I haven't followed Allegro 4, and NoSuck's suggestion still stands.

carstene1ns commented 7 years ago

I have uploaded the aldumb package to AUR now, providing the necessary glue between allegro4 and dumb packages in the repository. Is not the best solution, a proper split package in the repos would be better.

alex4 builds fine now, however it crashes on startup when loading the data files. I have applied some patches found at debian and fedora packages, however, did not get it to work by now. I am not too familiar with allegro, so no idea for a fix currently... 😞


Ok, with the old dumb (0.9.3) it works fine, so I guess I need to look up now how aldumb interface changed.

NoSuck commented 7 years ago

Thanks!

Hmm... Given that the glue is for Allegro 4 (development of which has been frozen) would using dumb 0.9.3 for the aldumb AUR package be out of line?

Rondom commented 7 years ago

Hmm... Given that the glue is for Allegro 4 (development of which has been frozen) would using dumb 0.9.3 for the aldumb AUR package be out of line?

I can understand that you want to play Alex4 on Arch (I like the game as well), but let's be patient and investigate this thoroughly to find out how to fix it ;-)

I reproduced the issue on Debian and filed a new issue #78. I have not done much investigation and I won't have time this week, either. Maybe someone can single-step through this...