Jump to content

Modding:Installing SMAPI on Mac: Difference between revisions

From Stardew Valley Wiki
imported>Rogue.toast
Added additional troubleshooting subsection for warning popup
imported>Atravita
 
(14 intermediate revisions by 3 users not shown)
Line 8: Line 8:


==Install==
==Install==
Quick note: As of version 4.0.0, SMAPI uses NET 6.0, which is supported on '''[https://github.com/dotnet/core/blob/main/release-notes/6.0/supported-os.md#macos Mac 10.15 (Catalina) or later]'''. These instructions will fail if you're on Mac 10.12 (Sierra), Mac 10.13 (High Sierra), or 10.14 (Mohave), in which case, see: [[Modding:Player Guide/Troubleshooting#SMAPI doesn't work with the compatibility branch]]
===Minimum requirements===
* Newer versions of the game use NET 6.0, which is supported on '''[https://github.com/dotnet/core/blob/main/release-notes/6.0/supported-os.md#macos macOS 10.15 Catalina or later]'''. Unfortunately there's no way to use SMAPI on older versions of macOS (including Sierra, High Sierra, or Mohave) since [[Modding:Player Guide/Troubleshooting#SMAPI doesn't work with the compatibility branch|it doesn't work with the compatibility branch]].


===Enable macOS security permissions===
''If you get the SMAPI is Malware warning, you will need to restart your computer before attempting to install it again.''
# Go to ''System Settings > Privacy and Security''.
# Make sure ''Developer Tools'' is visible ([[:File:Fix macOS security permissions 1.png|see screenshot]]). If you don't see it, open Terminal through Spotlight and enter this command: <syntaxhighlight lang="sh">spctl developer-mode enable-terminal</syntaxhighlight>
# Click ''Developer Tools''.
# Add Terminal to the list, and enable it ([[:File:Fix macOS security permissions 2.png|see screenshot]]).<br />''If you use a custom terminal like iTerm, add that terminal to the list too. If you use the Stardrop mod manager, add that to the list too.''
# Restart your computer.
''Still doesn't work? Try force closing steam before installing SMAPI.''
===Install SMAPI===
# Download the [https://smapi.io/ latest version of SMAPI] (see [[Modding:Installing SMAPI on Mac Pictorial Guide#Install SMAPI|a pictorial guide]]).
# Download the [https://smapi.io/ latest version of SMAPI] (see [[Modding:Installing SMAPI on Mac Pictorial Guide#Install SMAPI|a pictorial guide]]).
# Extract the <samp>.zip</samp> file somewhere (but not in your game folder!).
# Extract the <samp>.zip</samp> file somewhere (but not in your game folder!).
# Right-click <samp>install on Mac.command</samp> and choose ''open''. If you get a warning popup, proceed to the instructions outlined below in [[Modding:Installing_SMAPI_on_Mac|Troubleshooting]].
# Right-click <samp>install on Mac.command</samp> and choose ''open''.
# Follow the on-screen instructions.¹
# Follow the on-screen instructions.¹


That's it! Just launch the game to play with mods. '''You don't need to change your Steam launch options.''' (That's only needed on Windows).
That's it! Just launch the game to play with mods. If you play on Steam, make sure to launch the game through the Steam client to avoid issues.
 
'''You don't need to change your Steam launch options''' (that's only needed on Windows).


<small>¹To install manually instead, see instructions in the installer's readme.</small>
<small>¹To install manually instead, see instructions in the installer's readme.</small>
Line 35: Line 50:
# Enter password and the installer should start running.
# Enter password and the installer should start running.


For a pictorial guide, see [[Modding:Installing_SMAPI_on_Mac_Pictorial_Guide#Install_SMAPI]].
See also [[Modding:Installing SMAPI on Mac Pictorial Guide#Install SMAPI|pictorial guide]].
 
===Error message: "Malware blocked and moved to trash"<span id="malware"></span>===
This means macOS blocked SMAPI because it isn't signed with a paid Apple code signing certificate.
 
SMAPI does not contain malware. The error is due to new security restrictions on macOS that we're investigating. All new builds are detected as malware, even if they're identical to previously working versions. Note that all files on Nexus are scanned by 65 different antiviruses; you can click the green checkmarks on [{{nexus mod|2400}}?tab=files SMAPI's Nexus download page] for the results.
 
Temporary workaround for affected players:
<ol>
<li>Install SMAPI 4.1.7 instead. From the [{{nexus mod|2400}}?tab=files Files tab on Nexus], look under 'Optional files' for a download.</li>
<li>From Spotlight, open the Terminal app.</li>
<li>Enter this command for the Steam version of the game:
<syntaxhighlight lang="sh">
codesign --force --sign - "Library/Application Support/Steam/steamapps/common/Stardew Valley/Contents/MacOS/StardewModdingAPI"
</syntaxhighlight>
 
Or this one for the GOG version:
<syntaxhighlight lang="sh">
codesign --force --sign - "/Applications/Stardew Valley.app/Contents/MacOS/StardewModdingAPI"
</syntaxhighlight>
</li>
<li>Make sure both commands output nothing. If they show an error message, resolve the error or [[Modding:Help|ask for help]].</p>
</li>
</ol>
 
(This only 'signs' SMAPI so it can be played, it does not disable security or antivirus checks.)


===Error message: "Operation not permitted: 'internal'"===
===Error message: "Operation not permitted: 'internal'"===
Line 70: Line 60:
# Use the <code>+</code> button to add Terminal to the list of apps.
# Use the <code>+</code> button to add Terminal to the list of apps.
#* Try again to run <samp>install on MacOS.command</samp>.  
#* Try again to run <samp>install on MacOS.command</samp>.  
===Can't launch installer on Ventura===
Common solutions:
* Install [https://iterm2.com/ iTerm] and set it to be your default Terminal.
* ''Or'' temporarily disable System Integrity Protection. This isn't a great solution because it leaves your computer vulnerable, and you absolutely shouldn't leave your computer in this state.


===Other issues===
===Other issues===

Latest revision as of 02:22, 18 February 2025

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

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

Install

Minimum requirements

Enable macOS security permissions

If you get the SMAPI is Malware warning, you will need to restart your computer before attempting to install it again.

  1. Go to System Settings > Privacy and Security.
  2. Make sure Developer Tools is visible (see screenshot). If you don't see it, open Terminal through Spotlight and enter this command:
    spctl developer-mode enable-terminal
    
  3. Click Developer Tools.
  4. Add Terminal to the list, and enable it (see screenshot).
    If you use a custom terminal like iTerm, add that terminal to the list too. If you use the Stardrop mod manager, add that to the list too.
  5. Restart your computer.

Still doesn't work? Try force closing steam before installing SMAPI.

Install SMAPI

  1. Download the latest version of SMAPI (see a pictorial guide).
  2. Extract the .zip file somewhere (but not in your game folder!).
  3. Right-click install on Mac.command and choose open.
  4. Follow the on-screen instructions.¹

That's it! Just launch the game to play with mods. If you play on Steam, make sure to launch the game through the Steam client to avoid issues.

You don't need to change your Steam launch options (that's only needed on Windows).

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

Update

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

Warning message: "'install on macOS.command' Not Opened"

This message means that macOS blocked the installation because it cannot verify if SMAPI is safe. To bypass, you will need to manually approve in System Settings.

  1. Click on the "Done" button in the warning message.
  2. Open System Settings
  3. Navigate to "Privacy & Security" — scroll down until you find the "Security" section. You should have a notice that "'install on macOS.command' was blocked to protect your Mac." Click on the "Open Anyway" button.
  4. Another warning will pop up with the same statement. Click on the "Open Anyway" option, and you will be prompted to enter your password.
  5. Enter password and the installer should start running.

See also pictorial guide.

Error message: "Operation not permitted: 'internal'"

To fix that error:

  1. Open System Preferences.
  2. Go to "Security and Privacy" and then the "Privacy" tab.
  3. Scroll down to "Full Disk Access".
  4. Click the lock button to make changes.
  5. Use the + button to add Terminal to the list of apps.
    • Try again to run install on MacOS.command.

Other issues