nix-configs

Personal NixOS and home-manager configuration files
Log | Files | Refs

commit f1a6562395a126a57e126676b59a9ace9009fadd
parent 35fb659c5325c0c723f97de3b1786de95fc94228
Author: breadcat <breadcat@users.noreply.github.com>
Date:   Fri, 19 Dec 2025 21:01:13 +0000

Works when using FHSEnv, at long last

Diffstat:
Mscripts/vidyascape.nix | 96++++++++++++++++++++++++++++++++++++++++++-------------------------------------
1 file changed, 51 insertions(+), 45 deletions(-)

diff --git a/scripts/vidyascape.nix b/scripts/vidyascape.nix @@ -1,53 +1,60 @@ { pkgs, ... }: let - vidyascape = pkgs.writeShellScriptBin "vidyascape" '' + vidyascape = pkgs.buildFHSEnv { + name = "vidyascape"; + targetPkgs = pkgs: [ + pkgs.jdk8 + pkgs.curl + pkgs.gnused + ]; + runScript = pkgs.writeShellScript "vidyascape-inner" '' + # variables + launcher_uri="https://vidyascape.org/files/vidyascape_launcher.jar" + config_file="$HOME/.vscape2/settings.ini" + declare -a configs=( + "dropPosition=2" + "enabled=true" + "hideAfter=3" + "legacyNpcs=false" + "legacyObjects=true" + "loginMusic=false" + "lowDetail=false" + "modernRendering=true" + "orbsOnRight=false" + "pixelScaling=1" + "preferredWorld=2" + "rememberCredentials=true" + "rememberWorld=true" + "sizeMode=RESIZABLE" + ) -# variables -launcher_uri="https://vidyascape.org/files/vidyascape_launcher.jar" -config_file="$HOME/.vscape2/settings.ini" -declare -a configs=( - "dropPosition=2" - "enabled=true" - "hideAfter=3" - "legacyNpcs=false" - "legacyObjects=true" - "loginMusic=false" - "lowDetail=false" - "modernRendering=true" - "orbsOnRight=false" - "pixelScaling=1" - "preferredWorld=2" - "rememberCredentials=true" - "rememberWorld=true" - "sizeMode=RESIZABLE" - ) + # launcher binary + if [ -f "/tmp/$(basename $launcher_uri)" ]; then + echo "Launcher exists, skipping" + else + echo "Launcher doesn't exist, downloading." + curl -s -o "/tmp/$(basename $launcher_uri)" "$launcher_uri" + fi -# launcher binary -if [ -f "/tmp/$(basename $launcher_uri)" ]; then - echo "Launcher exists, skipping" -else - echo "Launcher doesn't exist, downloading." - curl -s -o "/tmp/$(basename $launcher_uri)" "$launcher_uri" -fi + # config file + if [ -f "$config_file" ]; then + for kv in "''${configs[@]}"; do + key=''${kv%%=*} + value=''${kv#*=} + # Replace key value if exists + sed -i -E "s|^([[:space:]]*$key[[:space:]]*=[[:space:]]*).*|\1$value|" "$config_file" + done + else + echo "Config doesn't exist so will not be patched until next run." + fi -# config file -if [ -f "$config_file" ]; then - for kv in "''${configs[@]}"; do - key=''${kv%%=*} - value=''${kv#*=} - # Replace key value if exists - sed -i -E "s|^([[:space:]]*$key[[:space:]]*=[[:space:]]*).*|\1$value|" "$config_file" - done -else - echo "Config doesn't exist so will not be patched until next run." -fi - -# launch game -echo "Launching game..." -${pkgs.jre8}/bin/java -jar "/tmp/$(basename $launcher_uri)" - ''; + # launch game + echo "Launching game..." + java -jar "/tmp/$(basename $launcher_uri)" + ''; + }; in { environment.systemPackages = [ vidyascape ]; -} -\ No newline at end of file +}