On 12/24/17 10:47, Adam Wolk wrote:
On Sun, Dec 24, 2017 at 10:01:58AM -0500, Brian Callahan wrote:On 12/24/17 06:29, Adam Wolk wrote:On Sat, Dec 23, 2017 at 08:50:11PM -0500, Brian Callahan wrote:Hi ports --Attached is a new port, games/returntotheroots. Return to the Roots is an open source engine remake of The Settlers 2. --- pkg/DESCR: Return To The Roots is a fan project which aims to renew the original The Settlers 2. We aim to create new features such as a multiplayer mode via the Internet as well as support for modern hardware. You will need an original copy of "The Settlers 2 Gold Edition" to play Return To The Roots. The Settlers 2 is a 4X game similar to Civilization and Alpha Centauri. --- This is taken from the head of upstream's development and rolled by me. Upstream claims that players normally use the head ("nightly builds") instead of the latest release, so it is probably best to go this route for multiplayer. This requires a copy of The Settlers 2: Gold Edition. You can get it (on deep discount as of this writing) on GOG: https://www.gog.com/game/the_settlers_2_gold_edition Also, slightly off-topic, I sent a port of freeserf, the first game in The Settlers series, to ports@ some time ago and heard nothing back. Would be nice to get both games in.I don't own the game files for the first one. Sorry.Works on amd64. Got nothing else that this would have a chance on. OK? ~BrianI tested on amd64 -current and it works fine. I have one gripe with the port. The binaries are a bit of a mess: fishtank$ grep bin pkg/PLIST bin/RTTR/ @bin bin/RTTR/s-c_resample @bin bin/RTTR/s25update @bin bin/RTTR/sound-convert bin/rttr.sh @bin bin/s25client @bin bin/s25edit Is bin/rttr.sh even needed? It assumes bash is installed. I also never saw a port dumping binaries to a new folder in /usr/local/bin.As an experiment I deleted the bin/RTTR directory to see what would happen. And nothing happens. The game is happy without them. So how about something like this (and the relevant PLIST changes)? # Remove unhelpful binaries and scripts from the package post-install: @rm -rf ${PREFIX}/bin/RTTR ${PREFIX}/bin/rttr.shI'm OK with removing rttr.sh. However RTTR directory has some specifics. a) s25update This port takes a long time to build, no point building that code just to delete it. The CMake seems to have an existing option to not build the auto updater: https://github.com/Return-To-The-Roots/s25client/blob/master/CMakeLists.txt#L419 option(RTTR_BUILD_UPDATER "Build auto-updater. Not advised when changing the default paths as the updater is configured specifically for the official builds." ${RTTR_BUILD_UPDATER_DEF}) b) sound-convert and s-c_resample look like runtime dependencies. I found the sound-converter being called on runtime when loading sound in this code snippet (comments are in german): https://github.com/Return-To-The-Roots/s25client/blob/01cf1f7d586dde73ad3957eff1d9e8fcf594afae/src/Loader.cpp#L231 so I'm not sure they can just be removed with no consequences. Apparently they have some settings for that: https://github.com/Return-To-The-Roots/s25client/issues/590 https://github.com/Return-To-The-Roots/s25client/pull/591 both mention RTTR_LIBDIR & RTTR_DATADIRFinal gripe, the binary names are not obviously related to the port name. Not sure how to handle that, rename them or mention what they are used for in the readme?I think the best way to handle this is two-pronged. First, people may do a quick search for the binary name, in that case it would be helpful to have the client binary name in the COMMENT (audio/mscore does this, for example) COMMENT = open source engine remake of The Settlers 2 (s25client) And a helpful line added to the end of pkg/DESCR: Comes with a game client (s25client) and map editor (s25edit).I like the readme & comment changes.~BrianI tested by running s25client, didn't try other binaries. Regards, Adam
The more I think about it, the more I think that we should leave the binaries as-is for now, and petition upstream to make the change. Otherwise, it's just us keeping a diff to upstream for no real benefit.
Attached is a new tarball with the latest code. OK? ~Brian
returntotheroots.tgz
Description: Binary data