about summary refs log tree commit diff
path: root/pkgs/games/dwarf-fortress/legends-browser/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/games/dwarf-fortress/legends-browser/default.nix')
-rw-r--r--pkgs/games/dwarf-fortress/legends-browser/default.nix36
1 files changed, 36 insertions, 0 deletions
diff --git a/pkgs/games/dwarf-fortress/legends-browser/default.nix b/pkgs/games/dwarf-fortress/legends-browser/default.nix
new file mode 100644
index 000000000000..3bc4fa9c4bb5
--- /dev/null
+++ b/pkgs/games/dwarf-fortress/legends-browser/default.nix
@@ -0,0 +1,36 @@
+{ stdenvNoCC, buildEnv, writeShellScriptBin, fetchurl, jre }:
+
+let
+  name = "legends-browser-${version}";
+  version = "1.17.1";
+
+  jar = fetchurl {
+    url = "https://github.com/robertjanetzko/LegendsBrowser/releases/download/${version}/legendsbrowser-${version}.jar";
+    sha256 = "05b4ksbl4481rh3ykfirbp6wvxhppcd5mvclhn9995gsrcaj8gx9";
+  };
+  
+  script = writeShellScriptBin "legends-browser" ''
+    set -eu
+    BASE="$HOME/.local/share/df_linux/legends-browser/"
+    mkdir -p "$BASE"
+    cd "$BASE"
+    if [[ ! -e legendsbrowser.properties ]]; then
+      echo 'Creating initial configuration for legends-browser'
+      echo "last=$(cd ..; pwd)" > legendsbrowser.properties
+    fi
+    ${jre}/bin/java -jar ${jar}
+  '';
+in
+
+buildEnv {
+  inherit name;
+  paths = [ script ];
+
+  meta = with stdenvNoCC.lib; {
+    description = "A multi-platform, open source, java-based legends viewer for dwarf fortress";
+    maintainers = with maintainers; [ Baughn ];
+    license = licenses.mit;
+    platforms = platforms.all;
+    homepage = https://github.com/robertjanetzko/LegendsBrowser;
+  };
+}