Thought I'd share it here in case anyone was looking for something similar. It's based on the Windows instructions found here, but also adds GUI via kdialog
.
This will create a folder next to the script named .gw2-account-manage
and copy the Local.dat
files between this folder and the game's appdata folder. To set it up, you just need to save this script to a file somewhere (I have it in /home/deck/gw2-account-manage
), make it executable via chmod +x gw2-account-manage
, and update the launch options in Steam.
Launch options should look something like this: /home/deck/gw2-account-manage "gamemoderun %command%"
You should be able to name each entry whatever you want - I just used account name since that's easier for me. Though I haven't tested it very thoroughly with special characters.
#!/bin/bash
datfile="/home/deck/.local/share/Steam/steamapps/compatdata/1284210/pfx/drive_c/users/steamuser/AppData/Roaming/Guild Wars 2/Local.dat"
parentdir=$(readlink -f $(dirname "$0"))
gw2amdir="$parentdir/.gw2-account-manage"
if [ ! -f "$datfile" ]; then
kdialog --error "Local.dat not found.\n\nExpected at:\n$datfile"
exit
fi
mkdir -p "$gw2amdir"
choose() {
options=""
files=$(find "$gw2amdir" -type f -print0 | xargs -0 ls -tU)
while read file; do
options="$options \"$file\" \"$(basename $file)\""
done < <(echo "$files")
options="$options \"+\" \"Add a new account...\""
choice=$(echo "$options" | xargs kdialog --menu \
"Select an account:")
if [ "+" = "$choice" ]; then
newname=$(kdialog --inputbox "Account Name")
if [ "$newname" ]; then
cp "$datfile" "$gw2amdir/$newname"
fi
choose "$@"
elif [ -f "$choice" ]; then
cp -r "$choice" "$datfile"
eval "$@"
cp -r "$datfile" "$choice"
fi
}
choose "$@"
It's not quite as good as a separate linux desktop/laptop IMO. The main issue is that system files are read-only by default, so you have to go through some hoops to be able to install additional packages and any installed packages might be removed during an update. Though I did hear they are possibly changing that in a future update. Thankfully Flatpak works fine for most gaming needs, but more niche uses such as NFS functionality can be a bit of a pain to manage for now.
Gaming on linux has come a long way thanks to Proton. Not sure if you were aware of this site - it lets you check how well different games run with Proton, and users often include various performance tweaks and whatnot too.