Limo 
General purpose mod manager primarily developed for Linux with support for the NexusMods API and LOOT.
Features
- Multiple target directories per application
- Automatic adaptation of mod file names to prevent issues with case mismatches
- Auto-Tagging system for filtering
- FOMOD support
- Sort load order according to conflicts
- Import installed games from Steam
- Simple backup system
- LOOT integration:
- Manage installed plugins
- Automatically sort the load order
- Check for issues with installed plugins
- NexusMods API support:
- Check for mod updates
- View description, changelogs and available files
- Download mods through Limo
How Limo works
There are two basic concepts you should know in order to understand how Limo works: The Staging Directory and Deployers.
Staging Directory
Whenever you install a mod, Limo does not change any file of the game you wish to mod immediately. It instead stores all of the mod's files inside of the so called Staging Directory. This has the advantage of allowing you to quickly change which mods should be enabled or win conflicts, should there be any.
Deployers
In order to actually change the game you are trying to mod, there needs to be a mechanism which takes mods from the Staging Directory and puts them into the game's directory. This is what Deployers do. Each Deployer manages however many mods you assign to it and then links them into its Target Directory, which is the game's directory. If there are any conflicts between mods, the mod lower in the Deployer's load order will win. Should any files in the Target Directory need to be overwritten, a backup is automatically created and restored when the mod is no longer active.
For a guide on how to use Limo, refer to the wiki. This will help you even if you are not modding Skyrim.
Installation
Flatpak
Build from source
Install the dependencies
- Qt5
- JsonCpp
- libarchive
- pugixml
- OpenSSL
- cpr
- libloot
- (Optional, for tests) Catch2
- (Optional, for docs) doxygen
On Debian based systems most dependencies, with the exception of cpr and libloot, can be installed with the following command:
sudo apt install \
build-essential \
cmake \
git \
libpugixml-dev \
libjsoncpp-dev \
libarchive-dev \
pkg-config \
libssl-dev \
qtbase5-dev \
qtchooser \
qt5-qmake \
qtbase5-dev-tools \
libqt5svg5-dev \
libboost-all-dev \
libtbb-dev \
cargo \
cbindgen \
catch2 \
doxygen
Clone this repository:
git clone https://github.com/limo-app/limo.git
cd limo
Build libunrar:
git clone https://github.com/aawc/unrar.git
cd unrar
make lib
cd ..
Build Limo:
mkdir build
cmake -DCMAKE_BUILD_TYPE=Release -S . -B build
cmake --build build
(Optional) Run the tests:
mkdir tests/build
cmake -DCMAKE_BUILD_TYPE=Release -S tests -B tests/build
cmake --build tests/build
tests/build/tests
(Optional) Build the documentation:
doxygen src/lmm_Doxyfile
