summaryrefslogtreecommitdiff
path: root/games-simulation/dwarffortress/files/dwarffortress2.sh
diff options
context:
space:
mode:
Diffstat (limited to 'games-simulation/dwarffortress/files/dwarffortress2.sh')
-rw-r--r--games-simulation/dwarffortress/files/dwarffortress2.sh24
1 files changed, 24 insertions, 0 deletions
diff --git a/games-simulation/dwarffortress/files/dwarffortress2.sh b/games-simulation/dwarffortress/files/dwarffortress2.sh
new file mode 100644
index 00000000..8594e0bc
--- /dev/null
+++ b/games-simulation/dwarffortress/files/dwarffortress2.sh
@@ -0,0 +1,24 @@
+#!/bin/sh
+
+gamesdir=/opt/dwarf-fortress
+install="$HOME/.dwarf-fortress"
+
+do_install() {
+ cp -rn "$gamesdir"/data "$install"/
+ # DF gets unhappy when this is out of sync
+ cp -f "$gamesdir"/data/index "$install"/data/
+ cp -rsn "$gamesdir"/* "$install"/
+}
+
+if [[ -d "$install" ]]; then
+ # delete dangling symlinks
+ find -L "$install/" -type l -delete
+ # ignore "are the same file" errors
+ do_install 2>/dev/null
+else
+ mkdir "$install" || exit
+ do_install || exit
+fi
+
+cd "$install" || exit
+exec ./libs/Dwarf_Fortress "$@"