Using the omni‐guides.sh Automation Script - Omni-guides/Wabbajack-Modlist-Linux GitHub Wiki
DISCLAIMER - I am not affiliated with the Wabbajack group in any way, just a gamer trying to help other gamers. You may be able to get assistance with this guide from the #unofficial-linux-help channel of the main Official Wabbajack Discord, but it may be best to @ me on Discord (@omni). Due to this being an unofficial guide, assistance on this from Wabbajack support directly, or the Modlist developers, is highly unlikely.
Introduction
This automation script is now in Beta, which means it should be mostly feature complete, though additional enhancements are added regularly to increase efficiency or deal with distro specific or situation specific issues. I've done my best to try and capture as many eventualities as I can - but there will always be some that slip through the net. Some Linux distro's keep things in different locations, have slight variations on command syntax, and so on, but I've done what I can to allow this to be as compatible as possible. I have mostly tested this on my Nobara (Fedora) system and Steam Deck, though technically it should work on any distro, keeping in mind the above potential for variations.
Only Skyrim Special Edition and Fallout 4 are supported at this time - the older games are much harder to get running at the best of times, and would be even harder to automate, but who knows in future.. I've tested and had success with the following Modlists (except where denoted, other users have reported success), but my aim is to make the script work with any Modlist.
Skyrim | Fallout 4 |
---|---|
Tuxborn | Welcome to Paradise |
Anvil | Life in the Ruins |
Licentia DECK | Fusion |
Eldryn | Anomaly |
Keizaal | Wasteland of Depravity* |
Living Skyrim 4 (GE) | Masterstroke* |
Nordic Souls | |
Legends of the Frost | |
The Phoenix Flavour | |
Lost Legacy (GE) | |
Morning Star | |
Fahluaan | |
Winds of the North | |
Elysium* | |
Deckborn* |
*Reported success by other users.
Entries noted with (GE) require Proton GE (latest version is fine) to be used. This is due to the requirement of dotnet4 being installed in the prefix for .Net Script Framework to work correctly.
PLEASE NOTE: The Anvil modlist was used as an example in the below steps, you should use the name of the modlist you are trying to install instead.
For best results, the script expects a newly installed and unchanged modlist directory from Wabbajack, and a newly created but untouched Non-Steam Game Entry in steam, as per the steps below. I'm aiming so that it doesn't matter the path to your modlist, but it's hard to capture all possibilities, so I'd recommend storing the Modlist Install directory in, for example, /home/USER/Games/Skyrim/Anvil, and calling the Steam Entry (e.g) "Skyrim - Anvil", "Skyrim - Lost Legacy", "Skyrim - Living Skyrim 4", and so on.
Please do let me know if all or part of the script doesn't work on your platform and I'll try to expand the compatibility - this will help us all.
Steps Required BEFORE you run the script
While the script can handle most of the post-install process, it does not perform the steps to actually download and install the modlist itself. To acquire the modlist, you can either run Wabbajack directly on your Linux/Steam Deck system, or you can copy an existing Modlist Directory from a Windows system. Once you have the modlist on your Linux system/Steam Deck, you can proceed with creating the Non-Steam Game entry in Steam, setting the Name and Proton version of that entry, and launching once. You can the continue with this guide.
The script also assumes that you have sudo access for your user. There are only a couple of items the script performs that requires sudo, but you should have sudo access set up prior to running (most modern distro's have this set up by default anyway, but on Steam Deck, you will have to have set a password for the deck user.)
I will use Anvil as an example Modlist for this guide. Please change the commands and names shown in this guide to match the Modlist you are trying to run.
** IMPORTANT **: Once you have added the Non-Steam Game entry, click Play on it in Steam at least once, even if it fails or gives an error. This is required to register the Game Entry so that Protontricks can manage it. If ModOrganizer does manage to open, asking for a Portable instance, or has no errors at all you must still close it down and run this script before continuing.
Step 1 - Add ModOrganizer.exe as a Non-Steam Game
Once Wabbajack has successfully completed the download and installation of the Modlist, or you have transferred the modlist from your Windows system, the next step is to add ModOrganizer.exe to Steam as a non-steam game. In Steam, click Games, then "Add a Non-Steam Game to My Library":
Click Browse:
Browse to the path of your Modlist. e.g. /home/deck/Games/Skyrim/Anvil, select ModOrganizer.exe, and click Open.
Ensure ModOrganizer.exe is present and ticked, and then click Add Selected Program.
Once added, edit the properties of the new ModOrganizer.exe entry. The script expects the Shortcut Name to contain either "Skyrim" for Skyrim modlists, or "Fallout" for Fallout based modlists - for example "Skyrim - Tuxborn", "Skyrim - Anvil" or "Fallout - Life in the Ruins". Adjust to match the modlist you are trying to run. This is required because not limiting the search for game entries the script will find to only Skyrim or Fallout, would mean listing literally all games you have installed and would be messy to deal with.
Switch to the Compatibility tab and tick the box for 'Force the use of a specific Steam Play compatibility tool', then select the Proton version "Proton Experimental".
IMPORTANT FOR SD CARD USERS - You must add the following to the Launch Options for the ModOrganizer.exe Non-Steam game, otherwise the Proton environment won't have access to your SD Card contents (you may need to adjust the path of your SD Card in /run/media as necessary on your system):
STEAM_COMPAT_MOUNTS=/run/media/mmcblk0p1 %command%
Like so:
IMPORTANT: As a reminder - Once you have added the Non-Steam Game entry, click Play on it in Steam at least once. Whether it opens MO2 successfully, it fails or gives an error, you must close it down again before continuing. This step is required to register the Game Entry with Steam so that Protontricks can manage it.
Step 2 - Running the Script
You can run the script directly from GitHub - this will ensure you are using the most up to date version. Run the following command in a terminal/konsole:
bash <(curl -s https://raw.githubusercontent.com/Omni-guides/Wabbajack-Modlist-Linux/main/binaries/omni-guides.sh)
A banner and a short note will be displayed, and a request to press any key to continue:
The script will then attempt to detect all the Wabbajack Modlists you have installed and added to Steam. Press the corresponding number for the Modlist you with to configure:
You will be asked to confirm you want to continue, and the script will move on to detecting the Modlist Install directory - if multiple possibilities are found, you'll be asked to select the right one. If nothing can be found automatically, you'll be asked to manually input the path to the Modlist directory.
You will be prompted for your sudo password so that protontricks permissions can be set correctly, and the script will continue through more automated tasks:
Lastly, you will be asked if you want to set the resolution. This is optional but I'm trying to reduce the manual steps as much as I can. If you're running this on a Steam Deck, it will assume the desired resolution is 1280x800 (If you are going to be playing while docked, you will have to manually alter the resolution via MO2 for skyrimprefs.ini/fallou4prefs and SSEDisplayTweaks). If you are not running this script on a Steam Deck, you will be asked to input your desired resolution, in the format 1920x1080.
Post-script tasks
And that's it! You should now be able to click Play on the Modlist entry in Steam. MO2 should start and its executable paths etc pre-configured correctly - as much as I can, anyway.
PLEASE NOTE - I have also seen a number of Modlists hang or crash on first launch - either before displaying the Main Menu options (New Game etc), or after clicking New Game. This only seems to happen the first time, and is fine every subsequent time. There are also some odd cases when on first launch, some mods may fail to load - again this is usually only for the first launch, but there have been times when a restart of Steam has been required (or just a reboot of the deck) - I haven't been able to find out why.. at least it is only a minor annoyance and subsequent launches are fine.
This is not unique to this automation script as it happens when manually configuring things too. Thankfully it's more of a minor annoyance more than anything.
Conclusion
As an addition to the disclaimer at the top of this page, I have no visibility of longer term stability, so save often, and maybe even make backups of your save-games, just in case ;)
If you need help with any of the above, or better yet have another fix, tweak or workaround to help get Wabbajack Modlists running on Linux, then please do stop by the #unofficial-linux-help channel on the Wabbajack Discord, I should be around so just @ me (@omni) on there!
Enjoy!