2020-04-24 23:36:52 +00:00
|
|
|
diff --git a/SConstruct b/SConstruct
|
|
|
|
index 48fd080..419b40d 100644
|
|
|
|
--- a/SConstruct
|
|
|
|
+++ b/SConstruct
|
|
|
|
@@ -55,7 +55,7 @@ sky = env.Program("endless-sky", Glob("build/" + env["mode"] + "/*.cpp"))
|
|
|
|
|
|
|
|
|
|
|
|
# Install the binary:
|
|
|
|
-env.Install("$DESTDIR$PREFIX/games", sky)
|
|
|
|
+env.Install("$DESTDIR$PREFIX/bin", sky)
|
|
|
|
|
|
|
|
# Install the desktop file:
|
|
|
|
env.Install("$DESTDIR$PREFIX/share/applications", "endless-sky.desktop")
|
|
|
|
diff --git a/source/Files.cpp b/source/Files.cpp
|
2024-01-02 11:29:13 +00:00
|
|
|
index de27023e..4225051f 100644
|
2020-04-24 23:36:52 +00:00
|
|
|
--- a/source/Files.cpp
|
|
|
|
+++ b/source/Files.cpp
|
2024-01-02 11:29:13 +00:00
|
|
|
@@ -108,32 +108,9 @@ void Files::Init(const char * const *argv)
|
|
|
|
resources = str;
|
|
|
|
SDL_free(str);
|
|
|
|
}
|
|
|
|
-#if defined _WIN32
|
|
|
|
- FixWindowsSlashes(resources);
|
|
|
|
-#endif
|
|
|
|
- if(resources.back() != '/')
|
|
|
|
- resources += '/';
|
|
|
|
-#if defined __linux__ || defined __FreeBSD__ || defined __DragonFly__
|
2020-04-24 23:36:52 +00:00
|
|
|
- // Special case, for Linux: the resource files are not in the same place as
|
|
|
|
- // the executable, but are under the same prefix (/usr or /usr/local).
|
|
|
|
- static const string LOCAL_PATH = "/usr/local/";
|
|
|
|
- static const string STANDARD_PATH = "/usr/";
|
|
|
|
- static const string RESOURCE_PATH = "share/games/endless-sky/";
|
|
|
|
- if(!resources.compare(0, LOCAL_PATH.length(), LOCAL_PATH))
|
|
|
|
- resources = LOCAL_PATH + RESOURCE_PATH;
|
|
|
|
- else if(!resources.compare(0, STANDARD_PATH.length(), STANDARD_PATH))
|
|
|
|
- resources = STANDARD_PATH + RESOURCE_PATH;
|
2024-01-02 11:29:13 +00:00
|
|
|
-#endif
|
|
|
|
- // If the resources are not here, search in the directories containing this
|
|
|
|
- // one. This allows, for example, a Mac app that does not actually have the
|
|
|
|
- // resources embedded within it.
|
|
|
|
- while(!Exists(resources + "credits.txt"))
|
|
|
|
- {
|
|
|
|
- size_t pos = resources.rfind('/', resources.length() - 2);
|
|
|
|
- if(pos == string::npos || pos == 0)
|
|
|
|
- throw runtime_error("Unable to find the resource directories!");
|
|
|
|
- resources.erase(pos + 1);
|
|
|
|
- }
|
|
|
|
+
|
|
|
|
+ resources = "%NIXPKGS_RESOURCES_PATH%";
|
|
|
|
+
|
|
|
|
dataPath = resources + "data/";
|
|
|
|
imagePath = resources + "images/";
|
|
|
|
soundPath = resources + "sounds/";
|