nixpkgs/pkgs/games/endless-sky/fixes.patch
2016-12-11 08:57:35 +01:00

45 lines
1.7 KiB
Diff

diff --git a/SConstruct b/SConstruct
index 48fd080..419b40d 100644
--- a/SConstruct
+++ b/SConstruct
@@ -1,7 +1,7 @@
import os
# Load any environment variables that alter the build.
-env = Environment()
+env = Environment(ENV = os.environ)
if 'CCFLAGS' in os.environ:
env.Append(CCFLAGS = os.environ['CCFLAGS'])
if 'CXXFLAGS' in os.environ:
@@ -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
index c8c8957..d196459 100644
--- a/source/Files.cpp
+++ b/source/Files.cpp
@@ -114,15 +114,9 @@ void Files::Init(const char * const *argv)
if(resources.back() != '/')
resources += '/';
#if defined __linux__ || defined __FreeBSD__ || defined __DragonFly__
- // 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;
+ // Workaround for NixOS. Not sure how to proceed with other OSes, feedback
+ // is welcome.
+ resources += "../share/games/endless-sky/";
#elif defined __APPLE__
// Special case for Mac OS X: the resources are in ../Resources relative to
// the folder the binary is in.