Saturday, December 30, 2017

Re: NEW: games/returntotheroots

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?
>>>>
>>>> ~Brian
>>>>
>>> I 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.sh
>>
> I'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_DATADIR
>
>>> Final 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.
>
>> ~Brian
>>
>>> I 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

No comments:

Post a Comment