Created attachment 429088 [details] emerge --info I've encountered a number of problems with games-strategy/wargus-data, listed below. Bullets 2 and 3 are trivial to fix in the ebuild, but the others are more involved. 1. After wargus-2.3.0 was recently released, it would not install due to file collisions, relative to the old install of wargus-data. So I uninstalled both wargus and wargus-data and tried again. 2. When emerging wargus from scratch, it would try to install wargus-data first, even though wargus lists wargus-data as a PDEPEND. That doesn't work because wargus-data uses "wartool", which is installed by wargus. I was able to get past this problem by adding DEPEND="games-strategy/wargus" to the wargus-data ebuild; then portage would build them in the correct order. 3. But then wargus-data failed with "Could not find Warcraft 2 Data", even though I had the DOS expansion set CD mounted. I tracked this down to the no-longer-recognized "-m" option that wargus-data uses when invoking wartool. (It is still listed in the "-h" usage summary, but the code doesn't handle it.) So I tried taking out the "-m" option. 4. This almost works, but now wargus-data complains about several file collisions with wargus (similar to the first bullet), and still fails to actually install. There is a long version (most of which I guess are identical files), and a shorter list which I copied below. I'm a little surprised that plain wargus installs many data files (see equery f wargus); did someone really re-generate cleanly copyrighted versions of all these data files? 5. I also noticed that wartool has apparently been enhanced to also be able to get the data from the battle.net version of warcraft 2 now. This would be more convenient because you can mount a CD image file instead of a real CD, and presumably still get the background music (which are CD audio tracks in the DOS version). But the wargus-data ebuild has not been enhanced to take advantage of the battle.net capability; it would need to look for a different data file to recognize the battle.net CD. ("inherit cdrom" does not seem to support the concept of alternative versions of a CD both working, using different filenames. It would probably be necessary to add a USE flag, or some other solution.) And also, wartool source code seems to expect all-caps filenames, but Linux iso9660 file system driver by default lower-cases non-rock-ridge CD filenames. At this point I basically decided to write this bug report and give up. Especially since in practice I usually just play the battle.net version of Warcraft II in wine instead. ------ Short portion of the file collision (excluding the much longer full list) from bullet 4 above: [snip most of a really long list] * /usr/share/games/stratagus/wargus/graphics/human/buildings/foundry_construction_site.png * * Searching all installed packages for file collisions... * * Press Ctrl-C to Stop * * games-strategy/wargus-2.3.0:0::gentoo * /usr/share/games/stratagus/wargus/scripts/wc2-config.lua * /usr/share/games/stratagus/wargus/sounds/orc/capture.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/rescue.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/units/dragon/acknowledgement/1.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/units/dragon/acknowledgement/2.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/units/dragon/ready.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/units/dragon/selected/1.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/units/ogre/acknowledgement/1.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/units/ogre/acknowledgement/2.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/units/ogre/acknowledgement/3.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/units/ogre/annoyed/1.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/units/ogre/annoyed/3.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/units/ogre/annoyed/4.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/units/ogre/annoyed/5.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/units/ogre/ready.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/units/ogre/selected/1.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/units/ogre/selected/2.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/units/ogre/selected/3.wav.gz * /usr/share/games/stratagus/wargus/sounds/orc/units/ogre/selected/4.wav.gz * /usr/share/games/stratagus/wargus/sounds/units/catapult-ballista/acknowledgement/1.wav.gz * * Package 'games-strategy/wargus-data-0' NOT merged due to file * collisions. If necessary, refer to your elog messages for the whole * content of the above message.
I just spent some time investigating practically all the same things as Matthew Ogilvie has identified. It also seems like we're not the only one experiencing a conflict: https://github.com/Wargus/wargus/issues/145 These files are apparently from "Aleona's Tales", and perhaps need to be separated upstream from the main install, though it's not clear to me what the solution will be for us. Additionally, it looks like the removal of the "-m" option in wartool was to deprecate converting the sf2 files to midi in favour of just using the files directly with fluidsynth (see: https://github.com/Wargus/wargus/commit/ae131d5a9d2f601bc04868f110a69cda410561c2). This means fluidsynth should probably replace the timidity++ dependency on the wargus-data ebuild. No promises, but if I get time, I'll look at these ebuilds and see if I can't come up with a solution.
I have identical problems. It's easy to remove "-m" option, but what should we do with file collisions? Is there a way to resolve this?
Workaround?: I haven't tried them, but "man make.conf" mentions variously sized environment-variable hammers for temporarily disabling collision detection, depending on how unsafe you want to be. FEATURES="-collision-protect -protect-owned" COLLISION_PROTECT_MASK=... COLLISION_IGNORE=... etc.
can you recheck with 2.4 and 0-r1 versions?
I'm going to attempt to fix file collisions right now. I'm not sure if I'm doing this right — I'll be stripping the games files that are included in wargus now. This might turn out to be broken with other game data versions and whatnot, so please report a bug if it won't work for you. The dependencies (as of today) look correct. BNE version support requires stormlib which we don't have packaged right now. I may look into it at some point but it's not a high priority for me. All that said, I'm not sure if we're going to keep wargus-data ebuild for much longer. It's a huge hack and it's way simpler to let the game install the data into homedir.
I'm afraid I was unsuccessful. Unless I'm mistaken, it seems that new versions of Wargus don't look for game data in /usr/share at all. Plus, 1) the ebuild got really big because of the huge list of collisions, 2) I'm not really convinced we should be installed these two sets of files in the same place, and 3) the complexity needed to support BNE would make the ebuild even worse, I'm going to lastrite wargus-data and instead let wargus extract the files on the first run.
Or rather, I'm going to lastrite it once the old versions of wargus are gone.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e4c80971ec3ac63b00179f71edcd4073a1a8c3fc commit e4c80971ec3ac63b00179f71edcd4073a1a8c3fc Author: Michał Górny <mgorny@gentoo.org> AuthorDate: 2023-01-21 10:12:02 +0000 Commit: Michał Górny <mgorny@gentoo.org> CommitDate: 2023-01-21 10:15:01 +0000 package.mask: Last rite games-strategy/wargus-data Bug: https://bugs.gentoo.org/578340 Signed-off-by: Michał Górny <mgorny@gentoo.org> profiles/package.mask | 6 ++++++ 1 file changed, 6 insertions(+)
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d6889d03dfe8a1e86a93d5e041a19bd54c280a25 commit d6889d03dfe8a1e86a93d5e041a19bd54c280a25 Author: David Seifert <soap@gentoo.org> AuthorDate: 2023-03-11 18:30:31 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2023-03-11 18:30:31 +0000 games-strategy/wargus-data: Remove last-rited pkg Closes: https://bugs.gentoo.org/578340 Closes: https://bugs.gentoo.org/838298 Signed-off-by: David Seifert <soap@gentoo.org> games-strategy/wargus-data/metadata.xml | 11 ------ games-strategy/wargus-data/wargus-data-0-r1.ebuild | 45 ---------------------- profiles/package.mask | 6 --- 3 files changed, 62 deletions(-)