Subject: bug#77869: how can artanis support minimal mode?

From: "R.W.Flurando" <[email-masked]>
Date: Thu, 17 Apr 2025 23:01:32 +0800

It has really been a long time that gnu artanis,
the lovely python flask or rust rocket equivalance in guile,
can not run under minimal mode here, in guix system

I consider this a bug instead of any sort of wish list
because this behaviour is definitely below expectation

having checked the package definition this afternoon and examined part of
artanis source code for nearly a whole day,
I found that there is code dealting with the config files in guix
package definition

> (substitute* "Makefile"   ;set the root of config files to OUT
>   ((" /etc") (string-append " " out "/etc")))

but it does not work even though artanis derivation folder is populated
with correct files then

because inside artanis it is hardcoded to check
"/etc/artanis/artanis.conf",
one can find the definition of *default-conf-file* inside the
"artanis/config.scm" file

now my question is what is the best way to solve this undesired nasty
behaviour?

in my opinion the main fault is artanis hardcoded the default path
assuming fhs as well, instead of using more flexible ways
since the maintainer of artanis is a gnu constributor, I wonder if
anyone would finally reach him/her/they up and adapt a better way that
support the specified config folder at build/install phases

or is it the guix side's responsibility to figure out some walkaround as
there are a lot of packages out there assuming fhs and even hardcoding
/usr/local/share -- we can't just shut the door to them right?

For the former solution, it might be more appropriate for a senior
contributor to chat with the contributor...
For the latter solution, is it realistic to modify the phase to patch or
somehow change the *default-conf-file* related stuff before actually
getting the derivation?

(I guess changing it to "etc/artanis.conf" would work if the derivation
folder is in its loadpath, but of course just a guess anyway!)

forking artanis is not desired just for this, since most folks might use
art work instead of minimal mode

hope for a fix or guidance about source patching "on the fly"

really don't like falling back to things like
> python3 -m http.server
every time I need a quick api server.