Subject: Re: [bug#56852] [PATCH] gnu: Add exult.

From: Tobias Geerinckx-Rice <[email-masked]>
Date: Fri, 12 Aug 2022 21:46:40 +0200

Hi!

I managed to miss this when replying to your previous mail.

( 写道：
> I just thought of some more possible improvements:
>
> On Sun Jul 31, 2022 at 11:46 AM BST, Tobias Geerinckx-Rice via 
> Guix-patches via wrote:
>> +                   "--enable-exult-studio"
> Couldn't this go in a new `exult:studio` output?

I tried, but splitting out a Studio that doesn't randomly crash 
during normal usage proved too hard for me.  It's dangerously easy 
to split out one that appears to run fine at first glance.

I wouldn't call Exult frustrating in that department, but some 
file name assumptions aren't as trivial to patch or even find as 
one would hope.  Apparently.

>> +                   "--enable-compiler"
> I'm not sure what this compiler is, but if it's a separate 
> program I guess it could
> use `exult:compiler`.

With its grand total size of 2.7 MiB (out of a 915-MiB closure), 
I'd rather not.

>> +                   "--enable-gimp-plugin"
> And this could go in `exult:gimp`.

Ack.

>> +                   (substitute* "gamemgr/modmgr.cc"
>> +                     ;; EXULT_DATADIR is in the store where 
>> it's rather hard for
>> +                     ;; users to put game assets.  Use a more 
>> writable home by
>> +                     ;; default, which users can override in 
>> their ~/.exult.cfg.
>> +                     (("<GAMEHOME>")
>> +                      (string-append 
>> "<HOME>/.local/share/exult"))
>> +                     ;; …however, this causes a regression: 
>> the mods which we'll
>> +                     ;; install to EXULT_DATADIR are no longer 
>> found.  So: don't
>> +                     ;; look for mods alongside the assets by 
>> default.  This too
>> +                     ;; can be overridden in users' 
>> ~/.exult.cfg.
>> +                     (("game_path( \\+ \"/mods\")" _ +suffix)
>> +                      (string-append 
>> "get_system_path(\"<GAMEHOME>/\") + "
>> +                                     "cfgname" +suffix))))))))
> Perhaps we could patch in a GUIX_EXULT_PATH env var so we can 
> add a search path for
> packaging mods.

That's a lot of original code to add in a patch…  and the current 
codez all assume file names, not paths.

I'll think about it.

Thanks,

T G-R