Jump to content

Modding:Installing SMAPI on Linux: Difference between revisions

From Stardew Valley Wiki
imported>Pathoschild
copy from canimod.com with permission, dual-licensed CC BY-NC-SA for compatibility with wiki. Only author is Pathoschild.
 
imported>AndromedaVii
→Install: Added instruction to make necessary files executable.
 
(56 intermediate revisions by 20 users not shown)
Line 1: Line 1:
←[[Modding:Index|Index]]
{{modding player guide header}}


<pre>
This page explains how to install SMAPI (the tool which lets you use mods) on Linux.
---
layout: default
title: Player's guide to using mods » install SMAPI
intro: >
  Welcome to Stardew Valley modding! This guide will help you install mods and
  fix any problems that come up.
permalink: /for-players/install-smapi
redirect_from:
    - /guides/using-mods
---


<div class="scroll-box" style="float: right;">
See instructions for: [[Modding:Installing SMAPI on Android|Android]] • [[Modding:Installing SMAPI on Mac|macOS]] • [[Modding:Installing SMAPI on Steam Deck|Steam Deck]] • [[Modding:Installing SMAPI on Windows|Windows]].
    <strong>For players</strong>
    <ul>
        <li><a href="/for-players/intro">Intro</a></li>
        <li><strong>Install SMAPI</strong></li>
        <li><a href="/for-players/use-mods">Use mods</a></li>
        <li><a href="/for-players/faqs">Troubleshooting & FAQs</a></li>
    </ul>
</div>


SMAPI is the tool which launches the game with mods (which are [downloaded separately](#using-mods)).
__TOC__
It's safely installed alongside your normal game, and you can uninstall it anytime.


## Install SMAPI
==Install==
### On Windows
<ol>
[...]
<li>Download the [https://smapi.io/ latest version of SMAPI].</li>
<li>Extract the <samp>.zip</samp> file somewhere (but not in your game folder!).</li>
<li>Ensure that the files "'''install on Linux.sh'''" and "'''internal/linux/SMAPI.Installer'''" are marked as executable, either with your file explorer or by opening a terminal in the extracted directory and entering the command: '''<samp>chmod +x "./install on Linux.sh" "./internal/linux/SMAPI.Installer"</samp>'''</li>
<li>Run the <samp>install on Linux.sh</samp> file, and follow the on-screen instructions.<br />(If the installer asks for your game install path, see [[Modding:Player Guide/Getting Started#Find your game folder|how to find your game folder]].)<br />'''WARNING:''' The <samp>install on Linux.sh</samp> '''has to be run''' in a terminal window using <samp>./install\ on\ Linux.sh</samp> (assuming your terminal window's path is inside the SMAPI installer folder) as there is a bug that can cause issues with the system's syslog by continuously writing log entries for SMAPI versions older than 4.1.0 (which is currently not released). <br />In case the .sh file was run via GUI (i.e. double-clicked) instead of via terminal it can be safely terminated through a GUI task manager or through the <samp>kill -SIGINT [PID]</samp> command where [PID] is the process ID of the running shell process. </li>
</ol>


### On Linux
<small>To install manually instead, see instructions in the installer's readme.</small>
1. Download the [latest version of SMAPI](https://github.com/Pathoschild/SMAPI/releases).
2. Extract the `.zip` file somewhere (but not in your game folder!).
3. Open a terminal in the extracted folder and run `mono install.exe`. 
  _The installer will detect your game and add SMAPI for you. (If you get an error like
  'mono: command not found', you need to install [Mono](http://www.mono-project.com/).)_


That's it! Just launch the game to play with mods. To remove SMAPI later, run `mono install.exe`
===SMAPI with Proton===
again and choose _uninstall_.
To make SMAPI work with Proton, you can follow the guide available on [[Modding:Installing SMAPI on Steam Deck#Stardew Valley in Proton|Stardew Valley in Proton]].


### On Mac
==Update SMAPI==
[...]
Just install the new version; the installer will automatically clean up previous versions.


### Manual install
==Uninstall==
The installer is the recommended way to install SMAPI, but you can also install it manually.
# Launch the installer again (see [[#Install|install steps]]).
# When prompted, choose the ''uninstall'' option.


1. Download the [latest version of SMAPI](https://github.com/Pathoschild/SMAPI/releases).
==Troubleshooting==
2. Unzip the `.zip` file somewhere.
* If the SMAPI window no longer appears after a game update, reinstall SMAPI to fix the launcher.
3. Copy the files from the `internal/Mono` folder (if Linux/Mac) or `internal/Windows` folder (if
* SMAPI tries to find a compatible terminal or use your default terminal, but some terminals aren't compatible. If the installer or launcher don't launch a terminal, try installing xterm (doesn't need to be your default terminal).
  Windows) into [your game folder](http://canimod.com/for-players/faqs#game-folder). If you did it
* See the [[Modding:Player Guide/Troubleshooting|troubleshooting page]] for general troubleshooting.
  properly, the `StardewModdingAPI.exe` file should be right next to the game's executable.
4. Make sure the game launches with SMAPI.
  * **Scenario A: you play on Windows:** 
    [...]
  * **Scenario B: you play on Linux or Mac:** 
    1. Open the game folder.
    2. Rename the `StardewValley` file (with no extension) to `StardewValley-original`.
    3. Rename the `StardewModdingAPI` file (with no extension) to `StardewValley`.


## Update SMAPI
* If you're trying to install SMAPI for Stardew 1.5.6, be forewarned you need to install libssl1.x. See below for instructions:
To update SMAPI, just install the new version. The installer will automatically clean up previous
versions. (If you use Steam, you don't need to set the launch options again.)


## Uninstall SMAPI
{| class="wikitable"
To remove SMAPI, just run `install.exe` again and choose _uninstall_. If you need to uninstall
|-
manually, just do the opposite of _[manual install](#manual-install)_.
! distros
! prerequisites
|-
| Debian-based<br /><small>(Debian, Ubuntu, Linux Mint)</small>
| Install LibSSL 1.1 by running <code>sudo apt install libssl1.1</code> in a terminal.
|-
| Arch-based<br /><small>(Arch, Manjaro, EndeavourOS)</small>
| Install OpenSSL 1.1 by running <code>sudo pacman -S openssl-1.1</code> in a terminal.
|-
| NixOS
| Use [https://search.nixos.org/packages?channel=unstable&show=steam-run&type=packages steam-run] to run <samp>install on Linux.sh</samp>.
# In case you don't have steam installed, enter a shell with steam-run available: <code>NIXPKGS_ALLOW_UNFREE=1 nix-shell -p steam-run</code>.
# Run this command to start the installer: <code>steam-run ./install\ on\ Linux.sh</code>
<small>The <code>./</code> is very important, otherwise it will NOT work!</small>
|-
| Fedora
| Install OpenSSL 1.1 by running <code>sudo dnf install openssl1.1</code> in a terminal.
|-
| Gentoo
| Install OpenSSL 1.1 compatibility by running <code>sudo emerge --ask dev-libs/openssl-compat</code> in a terminal.
|-
| RHEL 8-based <br /><small>(RHEL 8, CentOS 8, Rocky 8, Alma 8)</small>
| Install OpenSSL 1.1 by running <code>sudo dnf install openssl</code> in a terminal.
|}


<div class="scroll-box" style="display: inline-block;">
{{Modding guide footer
<big><strong>next:</strong> <a href="/for-players/use-mods">Use mods →</a></big>
  |prev = [[Modding:Player Guide/Getting Started|Getting Started]]
</div>
  |next =  
</pre>
}}


[[Category:Modding]]
[[Category:Modding]]
[[de:Modding:SMAPI auf Linux]]
[[es:Modding:Instalar SMAPI en Linux]]
[[fr:Modding:Installer SMAPI sur Linux]]
[[tr:Modlama:Linux'ta SMAPI İndirme]]
[[zh:模组:在Linux上安装SMAPI]]

Latest revision as of 09:20, 8 February 2026

This page explains how to install SMAPI (the tool which lets you use mods) on Linux.

See instructions for: Android • macOS • Steam Deck • Windows.

Install

  1. Download the latest version of SMAPI.
  2. Extract the .zip file somewhere (but not in your game folder!).
  3. Ensure that the files "install on Linux.sh" and "internal/linux/SMAPI.Installer" are marked as executable, either with your file explorer or by opening a terminal in the extracted directory and entering the command: chmod +x "./install on Linux.sh" "./internal/linux/SMAPI.Installer"
  4. Run the install on Linux.sh file, and follow the on-screen instructions.
    (If the installer asks for your game install path, see how to find your game folder.)
    WARNING: The install on Linux.sh has to be run in a terminal window using ./install\ on\ Linux.sh (assuming your terminal window's path is inside the SMAPI installer folder) as there is a bug that can cause issues with the system's syslog by continuously writing log entries for SMAPI versions older than 4.1.0 (which is currently not released).
    In case the .sh file was run via GUI (i.e. double-clicked) instead of via terminal it can be safely terminated through a GUI task manager or through the kill -SIGINT [PID] command where [PID] is the process ID of the running shell process.

To install manually instead, see instructions in the installer's readme.

SMAPI with Proton

To make SMAPI work with Proton, you can follow the guide available on Stardew Valley in Proton.

Update SMAPI

Just install the new version; the installer will automatically clean up previous versions.

Uninstall

  1. Launch the installer again (see install steps).
  2. When prompted, choose the uninstall option.

Troubleshooting

  • If the SMAPI window no longer appears after a game update, reinstall SMAPI to fix the launcher.
  • SMAPI tries to find a compatible terminal or use your default terminal, but some terminals aren't compatible. If the installer or launcher don't launch a terminal, try installing xterm (doesn't need to be your default terminal).
  • See the troubleshooting page for general troubleshooting.
  • If you're trying to install SMAPI for Stardew 1.5.6, be forewarned you need to install libssl1.x. See below for instructions:
distros prerequisites
Debian-based
(Debian, Ubuntu, Linux Mint)
Install LibSSL 1.1 by running sudo apt install libssl1.1 in a terminal.
Arch-based
(Arch, Manjaro, EndeavourOS)
Install OpenSSL 1.1 by running sudo pacman -S openssl-1.1 in a terminal.
NixOS Use steam-run to run install on Linux.sh.
  1. In case you don't have steam installed, enter a shell with steam-run available: NIXPKGS_ALLOW_UNFREE=1 nix-shell -p steam-run.
  2. Run this command to start the installer: steam-run ./install\ on\ Linux.sh

The ./ is very important, otherwise it will NOT work!

Fedora Install OpenSSL 1.1 by running sudo dnf install openssl1.1 in a terminal.
Gentoo Install OpenSSL 1.1 compatibility by running sudo emerge --ask dev-libs/openssl-compat in a terminal.
RHEL 8-based
(RHEL 8, CentOS 8, Rocky 8, Alma 8)
Install OpenSSL 1.1 by running sudo dnf install openssl in a terminal.