Setting how GNUstep finds app's Resources
Michael Rans <[email protected]> Mon, 15 Jun 2026 08:55:31 +1200
| Newsgroups | gmane.comp.lib.gnustep.general |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format.
--------------zgwu0o3VA5YPBmkrbs017QcR
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Currently when Oolite is installed to the system, its Resources folder
must be in the bin folder for the game to work (eg. /usr/bin/Resources,
/usr/local/bin/Resources). This is not correct for a Linux system where
app resources should go into share (eg. /usr/share/oolite/Resources,
/usr/local/share/oolite/Resources). I have looked at the filesystem
layouts documentation but I don't understand what I need to do.
I have successfully relocated the GNUstep and user defaults folders
using a custom GNUstep.conf. I managed to get Oolite to look for its
resources in |<executable location>/../share/oolite/Resources| if
|<executable location>/Resources| does not exist, but then
|Info-gnustep.plist| is not found. The branch where I am trying to get
this to work is:
https://github.com/mcarans/oolite/tree/meson_share_resources
Besides |Info-gnustep.plist|, is there anything else GNUstep itself
looks for in Resources?
How can I get it to look in |<executable
location>/../share/oolite/Resources| instead?
We have moved to meson from make files. I run meson setup and compile
steps to get |<project repo>/build/meson_snapshot/oolite.app|. When
running the binary from there, it is fine to use Resources in the same
folder.
I then run |meson install -C build/meson_snapshot --destdir /tmp/test.
|That installs to |/tmp/test| so the binary is in
|/tmp/test/bin/oolite|. When running the binary from there,
|/tmp/test/share/oolite/Resources| should be used as the parent folder
for |Info-gnustep.plist| (mirroring what would happen if I installed to
an actual system folder like |/usr| or /usr/local).
I've also documented this in a ticket:
https://github.com/gnustep/tools-make/issues/73
Your help would be greatly appreciated!
Thanks,
Mike
--------------zgwu0o3VA5YPBmkrbs017QcR
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Currently when Oolite is installed to the system, its Resources
folder must be in the bin folder for the game to work (eg. <font
face="monospace">/usr/bin/Resources</font>, <font
face="monospace">/usr/local/bin/Resources</font>). This is not
correct for a Linux system where app resources should go into
share (eg. <font face="monospace">/usr/share/oolite/Resources</font>,
<font face="monospace">/usr/local/share/oolite/Resources</font>).
I have looked at the filesystem layouts documentation but I don't
understand what I need to do.</p>
<p>I have successfully relocated the GNUstep and user defaults
folders using a custom <font face="monospace">GNUstep.conf</font>.
I managed to get Oolite to look for its resources in <code
class="notranslate"><executable
location>/../share/oolite/Resources</code> if <code
class="notranslate"><executable location>/Resources</code>
does not exist, but then <code class="notranslate">Info-gnustep.plist</code> is
not found. The branch where I am trying to get this to work is:
<a class="moz-txt-link-freetext" href="https://github.com/mcarans/oolite/tree/meson_share_resources">https://github.com/mcarans/oolite/tree/meson_share_resources</a></p>
<p>Besides <code class="notranslate">Info-gnustep.plist</code>, is
there anything else GNUstep itself looks for in Resources? </p>
<p>How can I get it to look in <code class="notranslate"><executable
location>/../share/oolite/Resources</code> instead?</p>
<p>We have moved to meson from make files. I run meson setup and
compile steps to get <code class="notranslate"><project
repo>/build/meson_snapshot/oolite.app</code>. When running
the binary from there, it is fine to use Resources in the same
folder.</p>
<p dir="auto">I then run <code class="notranslate">meson install -C
build/meson_snapshot --destdir /tmp/test. </code>That installs
to <code class="notranslate">/tmp/test</code> so the binary is in
<code class="notranslate">/tmp/test/bin/oolite</code>. When
running the binary from there, <code class="notranslate">/tmp/test/share/oolite/Resources</code>
should be used as the parent folder for <code class="notranslate">Info-gnustep.plist</code>
(mirroring what would happen if I installed to an actual system
folder like <code class="notranslate">/usr</code> or <font
face="monospace">/usr/local</font>).</p>
<p dir="auto"><br>
</p>
<p dir="auto">I've also documented this in a ticket:
<a class="moz-txt-link-freetext" href="https://github.com/gnustep/tools-make/issues/73">https://github.com/gnustep/tools-make/issues/73</a></p>
<p dir="auto">Your help would be greatly appreciated!</p>
<p>Thanks,<br>
Mike</p>
<p><br>
</p>
<p><br>
</p>
</body>
</html>
--------------zgwu0o3VA5YPBmkrbs017QcR--