summarylogtreecommitdiffstats
path: root/path-for-game-data.patch
diff options
context:
space:
mode:
Diffstat (limited to 'path-for-game-data.patch')
-rw-r--r--path-for-game-data.patch28
1 files changed, 28 insertions, 0 deletions
diff --git a/path-for-game-data.patch b/path-for-game-data.patch
new file mode 100644
index 00000000000..2c2ecdc236f
--- /dev/null
+++ b/path-for-game-data.patch
@@ -0,0 +1,28 @@
+Index: simmain.cc
+===================================================================
+--- simmain.cc (revisiĆ³n: 9320)
++++ simmain.cc (copia de trabajo)
+@@ -428,6 +428,11 @@
+
+ env_t::init();
+
++ // Make simutrans re-symlinks the files when opened
++#ifdef __linux__
++ system("\cp -rs --remove-destination /usr/share/games/simutrans/ ~/.local/share/");
++#endif
++
+ // you really want help with this?
+ if (gimme_arg(argc, argv, "-h", 0) ||
+ gimme_arg(argc, argv, "-?", 0) ||
+@@ -515,8 +520,9 @@
+ strcat( env_t::data_dir, PATH_SEPARATOR );
+ }
+ else {
+- strcpy( env_t::data_dir, argv[0] );
+- *(strrchr( env_t::data_dir, PATH_SEPARATOR[0] )+1) = 0;
++ static char buffer[100];
++ sprintf(buffer, "%s/.local/share/simutrans/", getenv("HOME"));
++ strcpy(env_t::data_dir, buffer);
+
+ #ifdef __APPLE__
+ // change working directory from binary dir to bundle dir