So far all of my Linux gaming has been without mods, but I would like to play Grim Dawn with all of the community tools and QoL mods that make the game a great experience. Does anybody know of any good guides to get Grim Dawn and all of its mods going on Linux? Is this something that I will need to do in a sandboxed setup like Bottles?

I own GD on GOG and Steam (bought it twice to support the devs).

EDIT: I could not find a definitive guide, so I am using this post to collects instructions for the different mods into one place.

    • Jo Miran@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      2 days ago

      Grim Dawn and GD Stash setup on Linux (My Guide/How-To) MODS

      === Update 1-22-2023 ===

      It has come to my attention that there is a small snag that I overlooked with respect to the GD Stash folders. GDS is split into 2 parts. There is the GDStash folder where the unzipped files will reside (unzipped_GDS). There is a separate GDStash folder that exists:

      in Windows ==> C:\users\{user name}\GDStash
      
      in Linux ==> /home/{user name}/GDStash
      

      The folders above are where the actually GDS database is stored (GDS_DB) and where your items will reside. This presents a problem based on the partition layout and plans I’ve constructed. Because the GDS_DB resides in the user home folder, one must be very careful with backups, system transfers from PC-A to PC-B, system re-installs, and any system restores.

      In Linux, I want the ability to wipe the partitions where the OS and user home are stored without fear of losing data. I also want to keep them lean so that I can make quick snap shot backups. This is why my data (documents, pictures, music, gaming_data, etc) all reside outside of the user home folder, on a separate partition, and I create folder mounting structure as described in the guide. This allows me to re-install the OS or switch distros for any reason and I never re-use an old user home folder. This also allows me to backup my data on a separate schedule outside of the routine snap shot backups of OS and user home. The GDS_DB location interferes with the above strategy, but we can work around it.

      Changes to the guide…

      Additional Abbreviations:

      unzipped_GDS = the place where the unzipped GDS files reside
      
      GDS_DB = the place where the actual database of stored items reside
      

      Mount Paths (must be mounted with exec flag and needs rwx permissions):

      Sub-Folder-3 = /my_data/gaming_data (<-- your gaming data stored here)
      

      Gaming Data & Backup Folder Layout within a ‘grim_dawn’ Top Level Folder:

      /GD Stash' (<-- unzipped_GDS goes here... the java stuff)
      
      /GD_Stash_Backups (<-- copy the GDS_DB folder here and rename the copy)
      

      === end of update ===

      Greetings fellow gamers and penguins,

      This my quick guide/how-to for getting Grim Dawn (steam/proton) working on Linux. It is easily adaptable to Lutris/GoG setups. I don’t have all of the paths listed in this guide for Lutris setups and I don’t have a Steam Deck yet. For those scenarios use the guide as a point of reference. Linux vets, Pros, and power users, you most likely won’t need help, but you can point others who are seeking help here.

      This guide is designed around my Windows/Linux Mint dual boot setup. It comes from my learning curve while experimenting, distro hopping, accidentally breaking stuff, trying out different desktops, a whole lot of oops, and troubleshooting stuff. It may seem a bit long, look hard, and overly complicated but good, thorough, documentation and reference material is important. When one experiments, inevitably breaks stuff, and distro hops like a bunny on crack, one will need and will wish they had better organization. So, we invest in a little organization up front, establish good habits, and save time. We are here because we want to game on Linux, but Linux is also a journey. When you get the itch to try something out (and you will), your good habits will be silently paying dividends.

      The Steam Library folder and Lutris/WINE game files folders are on a separate drive/partition outside of the my home folder.

      Abbreviations:

      GD = Grim Dawn
      
      GDS = GD Stash
      
      unzipped_GDS = the place where the unzipped GDS files reside
      
      GDS_DB = the place where the actual database of stored items reside
      

      My Equipment (your equipment doesn’t need to be as beefy):

      CPU = Ryzen 7 5800x
      
      RAM = 32GB (G.Skill DDR4-3200)
      
      Mobo = Asus RoG Crosshair VIII Hero Wi-Fi
      
      Graphics Card = Asus TUF RX 6800XT
      
      Display = Dell S2721DGF 27" 165Hz (G-Sync/FreeSync)
      
      Keyboard = G.Skill KM780 MX Keyboard (gaming/programmable)
      
      Mouse = Xtrfy M42 wired
      
      Network = Gigabit wired Ethernet and WiFi 5/6 are on the motherboard
      

      My Drives/Partitions/Filesystems:

      2TB M.2 SSD = [Win10 Gaming (NTFS)] [Linux Gaming (ext4)]
      
      1TB M.2 SSD = [Linux Mint v21.1 Cinnamon efi-boot/root/home (ext4)]
      
      4TB SATA HDD = [Win10 Drive-C] [Gaming Data & Backups (NTFS)]
      

      To save time use a GUI partitioning tool such as GDisks or KDE partition manager to do the partitioning work. You can learn the command line partition tools later. The Linux Mint OS, user home folder, Steam, Lutris/WINE game executables and save files are on M.2 SSDs so that I get very fast boot up speed and load times in game. The Linux boot loader files, linux file system root, and home folder are on separate partitions. This makes for easy backups, restores, and re-installs of the Linux OS without ever worrying that you Oops-nuked! your home folder with your data because of a reformat. This also keeps the Linux boot loader files away from Windows thus prevents the Windows installer from nuking it if you ever reinstall Windows. You want to:

      Reinstall the Linux OS safely? No problem. Back up your data first.
      
      Switch to a different Linux Distro safely? No problem. Back up your data first.
      
      Reinstall Windows safely? No problem. Back up your data first.
      
      Reinstall Linux? Gotta reinstall Steam? Your game files are already there. 8^)
      
      1.5 to 5 seconds boot up time from boot loader to login screen on M.2 SSD in Linux. WHAT?! Oh yeah. 8^)
      

      In Gnome Disks and KDE Partition Manager you will have devices and partitions like:

      /dev/nvme0n1p1 (partition #1, on the 1st M.2 SSD, in slot ZERO on the motherboard)
      
      /dev/nvme1n1p1 (partition #1, on the 1st M.2 SSD, _IN SLOT ONE_ on the motherboard)
      
      /dev/sda1 (the 1st partition on SATA drive #1)
      
      /dev/sda2 (the 2nd partition on SATA drive #1)
      
      /dev/sdb1 (the 1st partition on SATA drive #2)
      
      • Jo Miran@lemmy.mlOP
        link
        fedilink
        English
        arrow-up
        3
        ·
        2 days ago

        Mounts are setup in ‘/etc/fstab’ and mounting happens during boot up automatically. This makes for easy access in the terminal and GUI file managers. YOU, the user, must create a few handy folders (mount paths) in the Linux file system to keep everything neat. This also separates your explicit handy work from where temp. mounts would be automatically placed by the OS. Temp mounts happen when you inserting a USB stick or DVD disk, for example.

        Mount Paths (must be mounted with exec flag and needs rwx permissions):

        Top Level Folder for Custom Mount Path = /my_data
        
        Sub-Folder-1 = /my_data/linux_gaming (<-- must have exec flag and rwx here)
        
        Sub-Folder-2 = /my_data/w10_gaming (<--- quick access in a pinch)
        
        Sub-Folder-3 = /my_data/gaming_data (<-- your gaming data stored here)
        
        Sub-Folder-4 = /my_data/linux_gaming/lutris (<-- point lutris here)
        
        Sub-Folder-5 = /my_data/linux_gaming/steam (<-- point steam library here)
        

        The NTFS partitions will be mounted and owned by the Linux root user (administrator). The ‘/my_data’ and ‘/my_data/linux_gaming’ folders should be assigned to your user account and your personal group. You will need to create the ‘/my_data’ folder at the command line by using the ‘mkdir’ command. Use the change owner command ‘chown’ to change ownership assignment. Below is an example (substitute ‘ghoultek’ with your user name):

        cd /

        sudo mkdir /my_data

        sudo chown ghoultek:ghoultek my_data

        cd /my_data

        mkdir linux_gaming

        sudo chown ghoultek:ghoultek linux_gaming

        cd linux_gaming

        mkdir lutris

        mkdir steam

        For rwx (read, write, execute) permissions you use the change mode command ‘chmod’ at the command line. Here is an example:

        cd /my_data

        sudo chmod 777 linux_gaming

        cd linux_gaming

        chmod 777 lutris

        chmod 777 steam

        For mounting with exec flag I suggest using GDisks or KDE partition manager to do the work for you because your partitions will be identified by their UUID and not the /dev/device_name_and_number as described above in the drives/partitions section. It is easy to introduce typos into /etc/fstab file even if you are extra careful. I won’t go into the details of manual editing because that could be its own How-To guide. Just know that if you don’t have the linux_gaming folder mounted with the exec flag, Steam will give you an error when you go to add it to the Steam Library. When you add it to the Steam Library you have to set it as the default so all of your games will be installed there. This is done after the mount path work is done. Here is how you get it done:

        Steam (menu) > Settings > Downloads > Steam Library Folders (button)
        
        Click the + sign > down arrow > 'Let me choose another location' > Add (button) > navigate to '/my_data/linux_gaming' > Select (button)
        
        Click on the new folder you just added > click the '...' button > make default > click OK button > click OK again. Now you install your games if they are not already installed. 8^)
        

        Gaming Data & Backup Folder Layout within a ‘grim_dawn’ Top Level Folder:

        '/GD Stash' (<-- unzipped_GDS goes here... the java stuff)
        
        /GD_Stash_Backups (<-- copy the GDS_DB folder here and rename the copy)
        
        /GD_Mods (<-- store the GDS zip file downloads here)
        
        /My_Chars (<-- store pics, text file doc w/ chars/builds/guide info)
        
        /Char_Save_Backups (<-- copy actual save folder here and rename the copy)
        

        When you do backups of all of your data (gaming & non-gaming) you have one top level folder to grab for gaming related stuff. In windows this would be on a separate drive letter from drive-C.

        Folder Paths to enter into GD Stash during config:

        GD install path = '/my_data/linux_gaming/steam/steamapps/common/Grim Dawn'
        
        GD local char save path = '/my_data/linux_gaming/steam/steamapps/compatdata/219990/pfx/drive_c/users/steamuser/Documents/My Games/Grim Dawn/save'
        

        GD Stash Launch Script To Replace The GDS Batch File (must have u+x permission to be executable):

        File Name = run_gd_stash.sh
        
        File Path = /my_data/gaming_data/grim_dawn
        
        Contents =
        

        #/bin/bash

        cd /my_data/gaming_data/grim_dawn

        java -Xms1024m -Xmx1024m -jar GDStash.jar

        The script is just a text file. You can put an icon on the desktop, pin an icon on the taskbar, or add an icon to your dock, that points to the script for EZ access. You are pretty much done with only a very tiny amount of work at the command line and you didn’t even break a sweat.

        If you run into trouble trying to adapt the concepts in this guide to your own setup, stop. Take a deep breath and think…

        did you back up your data first?
        
        did you make the handy mount path folders
        
        did you check your /etc/fstab to verify that there are mount point entries that connect to the handy mount point folders you created
        
        are the partition(s) mounted
        
        did you check the permissions after the partitions were mounted
        
        do your permissions look something like 'drw-r-xr-x' then you are missing some permissions
        
        was the important partition(s) mounted with the exec flag
        
        are the folder paths and file names in your work correct
        
        did you replace 'ghoultek' with your user name when doing 'chown'
        
        did you place sudo (super user do) in front of the command you were typing
        
        is your linux_gaming partition formatted as ext4 or another Linux file system (NTFS might require you to take additional steps)
        
        Did you back up your data first? Yes, I'm asking again.
        

        If you see terms in this guide that are foreign to you, just hit the google machine (ex: ‘what is ext4 linux’). You can also look up details on commands at the command line (ex: ‘man chmod’ and ‘chown --help’). Don’t be afraid to post questions in r/Grimdawn, r/linux_gaming, r/linux, the Steam forums, and the GD official forums. If you find a mistake/error in this guide please post and I will update. Good luck. You have now entered the Linux speed way. LET THE GAMES BEGIN.

        For the forsaken!.. ahem… for the penguins!