This is a command-line utility built in C# to automate the installation of Spicetify & Spicetify Marketplace along with the Spicetify CLI itself if it's not already installed. It aims to provide a smoother setup experience, especially for users who might encounter issues with manual installation steps (also --bypass-admin flag).
The installer performs the following actions:
- Checks for Spicetify CLI: Verifies if Spicetify CLI is installed and accessible.
- Installs Spicetify CLI (if needed): If Spicetify CLI is not found, it downloads and runs the official PowerShell installation script. It automatically handles prompts during this installation.
- Determines Spicetify Paths: Finds the necessary Spicetify
userdatadirectory, with a fallback mechanism. - Downloads Marketplace: Fetches the latest release of Spicetify Marketplace (
marketplace.zip) from GitHub. - Installs Marketplace:
- Clears any previous Marketplace installation in
CustomApps/marketplaceandThemes/marketplace. - Extracts the downloaded files into the
CustomApps/marketplacedirectory. - Intelligently handles common archive extraction structures (e.g., moving files from a nested
marketplace-distfolder). - Downloads and installs the
marketplaceplaceholder theme (color.ini) required for Marketplace theme functionality intoThemes/marketplace.
- Clears any previous Marketplace installation in
- Configures Spicetify:
- Sets necessary Spicetify configurations (
inject_css=1,replace_colors=1,custom_apps=marketplace). - If an existing theme is active, it prompts whether to switch to the 'marketplace' theme (recommended).
- Applies the changes by running
spicetify backupandspicetify apply.
- Sets necessary Spicetify configurations (
- Logging: Creates a detailed
log.txtfile in the same directory as the executable, recording all steps and any errors encountered. - User Options: Supports command-line arguments for advanced control and interactive prompts for verification.
- Automated Spicetify CLI Installation: No need to manually install Spicetify CLI first.
- Latest Marketplace Version: Always downloads the newest release of Marketplace.
- Force Reinstall Option: Allows for a clean slate reinstallation if issues occur, including cleaning Spicetify data folders.
- Admin Bypass Support: Can utilize Spicetify's
--bypass-adminflag automatically if the installer is run with admin rights or the flag is provided. - Localization: Console output in English or Turkish.
- Detailed Logging: Comprehensive
log.txtfor troubleshooting.
- Windows Operating System: The installer is primarily designed for Windows (due to Spicetify's nature and PowerShell usage).
- .NET Runtime: To run the compiled
.exefile, you'll need a compatible .NET Runtime installed (.NET 5.0 or later, depending on compilation). - PowerShell: Required for the Spicetify CLI installation script. Usually available by default on Windows.
- Internet Connection: To download Spicetify CLI and Marketplace.
- Download: Obtain the compiled
.exefile of this installer. - Run: Execute the
.exefile from a command prompt or by double-clicking it.SpicetifyMarketplaceInstaller.exe
-
-for--forcereinstall:- Performs a "force reinstall". This will:
- Attempt to clean existing Spicetify data (runs
spicetify restoreand deletes common Spicetify folders like%APPDATA%/spicetify,%LOCALAPPDATA%/spicetify,~/.spicetify). - Proceed with a fresh installation of Spicetify CLI (if needed) and Marketplace.
- Attempt to clean existing Spicetify data (runs
- Useful if a previous installation attempt failed or if Marketplace is not working correctly.
- Performs a "force reinstall". This will:
-
--bypass-admin(or aliases-a,-b):- If this flag is provided, OR if the installer is run with Administrator privileges, it will automatically pass the
--bypass-adminflag to allspicetifycommands it executes. - This can help resolve permission-related issues when Spicetify tries to modify Spotify files.
- If this flag is provided, OR if the installer is run with Administrator privileges, it will automatically pass the
Example Usage:
- Standard installation:
SpicetifyMarketplaceInstaller.exe
- Force reinstall:
SpicetifyMarketplaceInstaller.exe -f
- Run with admin bypass (if you are not already running the installer as an admin but want Spicetify to use its bypass):
(Note: If you run
SpicetifyMarketplaceInstaller.exe --bypass-admin
SpicetifyMarketplaceInstaller.exeas an Administrator, the--bypass-adminflag for Spicetify commands will be used automatically, even without explicitly providing the installer's--bypass-adminflag.)
- Restart Spotify: For all changes to take effect, you MUST completely restart Spotify. This means quitting it from the system tray (if it's running there) and then reopening it.
- Check Marketplace: Look for the "Marketplace" tab in the left sidebar of Spotify.
- Check
log.txt: This file is created in the same directory asSpicetifyMarketplaceInstaller.exe. It contains detailed information about each step and any errors encountered. This is the first place to look if something goes wrong. - Spotify Not Restarted Correctly: Ensure Spotify was fully closed (quit from system tray) and reopened.
- Permissions: If Spicetify commands fail, try running the installer as an Administrator. The installer will automatically try to use Spicetify's
--bypass-adminfunctionality in this case. - Antivirus/Firewall: Ensure your security software is not blocking the installer, its network connections (for downloads), or PowerShell execution.
- Force Reinstall: If issues persist, try running the installer with the
-for--forcereinstallflag.