1. Project Overview & Quickstart (PrismLauncher/LICENSE)
LICENSE
Open-source repository PrismLauncher/LICENSE
Repository Details
- Repository: PrismLauncher/LICENSE
- Primary Language: Code
Note: High-volume repository documentation is actively indexed and synchronized by YakaAI.
2. Official Technical Reference & Guides (PrismLauncher/PrismLauncher.github.io)
File: README.md
prismlauncher.org
Development Environment
Nix devShell
A devShell is provided in shell.nix. It is also exposed in the flake in the
root of this repository. You may use nix-direnv by copying.envrc.example to .envrc.
Manual
Install pnpm.
clone repository:
git clone https://github.com/PrismLauncher/prismlauncher.org.gitrun local build:
pnpm install
pnpm run devFile: src/content/docs/wiki/development/build-instructions.mdx
title: "Build Instructions"
import { Tabs, TabItem } from "@astrojs/starlight/components";
Compiling manually
Prerequisites
- A recent-ish operating system release
- Windows 10 (1809 or later. Older versions may be supported, but aren't tested)
- macOS >= 12
- Ubuntu >= 22.04 (or equivalent)
- A C++ compiler supporting at least C++17.
- This includes GCC >= 8, Clang >= 5, and MSVC >= 19.15
- Java JDK <= 17
- cmake >= 3.22
- ninja
- extra-cmake-modules
- Qt 6.0 or later, with the following addons/plugins:
- Qt NetworkAuth
- Qt Image Formats
- Qt Svg
- cmark
- gamemode (required at build time, optional at runtime. Only on Linux)
glxinfo(required at runtime, only on Linux)- libarchive
- libGL headers (only on Linux)
- libqrencode
- pciutils (required at runtime, only on Linux)
- scdoc (optional at build time, used to generate manpages)
- tomlplusplus
- vulkan-headers
- zlib
:::notewinget is installed by default on newer versions of Windows 11
:::
You should first install winget, a package manager for Windows.
Once winget is available, install the MSVC toolchain with:
winget install --source winget --exact --id Microsoft.VisualStudio.2022.BuildTools --override '--add Microsoft.VisualStudio.Workload.VCTools;includeRecommended':::caution
The installation of vcpkg bundled with VS 2026 is currently broken, and is thus not recommended. You can read more about this here.
As a workaround, you can git clone the repository at https://github.com/Microsoft/vcpkg and set VCPKG_ROOT to its location.
This does not affect VS 2022!
:::
Install JDK 17 with:
winget install --source winget --exact --id EclipseAdoptium.Temurin.17.JDKWe will also be using Git:
winget install --source winget --exact --id Git.GitQt can then be installed with aqt:
winget install --source winget --exact --id miurahr.aqtinstall
aqt install-qt windows desktop 6 win64_msvc2022_64 -m qtimageformats qtnetworkauthMSYS2 may be installed with winget, or by following the setup guide here:
winget install --exact --id MSYS2.MSYS2 --source wingetInstall JDK 17 with:
winget install --source winget --exact --id EclipseAdoptium.Temurin.17.JDKWe require the CLANG(ARM)64 environment. After starting the environment, you may run the following to install all dependencies:
pacman -Syu pactoys git
pacboy -S \
toolchain:p \
cmake:p ninja:p \
extra-cmake-modules:p \
qt6-base:p qt6-imageformats:p qt6-networkauth:p qt6-svg:p \
cmark:p \
libarchive:p \
qrencode:p \
tomlplusplus:p \
vulkan-headers:p \
zlib:pThe XCode toolchain can be installed with:
xcode-select --installQt and other dependencies can then be installed with the following Homebrew command:
brew install cmake ninja extra-cmake-modules openjdk@17 vcpkg qt
git clone https://github.com/Microsoft/vcpkg ~/vcpkg
export VCPKG_ROOT="$HOME/vcpkg"sudo apt install \
build-essential \
cmake ninja-build extra-cmake-modules pkg-config scdoc \
qt6-base-dev qt6-image-formats-plugins qt6-networkauth-dev qt6-svg-dev \
cmark gamemode-dev libarchive-dev libcmark-dev libgl1-mesa-dev libqrencode-dev libtomlplusplus-dev libvulkan-dev zlib1g-dev \To install JDK 17 on Debian:
sudo apt install wget apt-transport-https gpg
wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/adoptium.gpg > /dev/null
echo "deb https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" | sudo tee /etc/apt/sources.list.d/adoptium.list
sudo apt update && sudo apt install temurin-17-jdkWhile on Ubuntu (or derivatives) you can just:
sudo apt install openjdk-17-jdksudo pacman -S \
base-devel \
cmake ninja extra-cmake-modules pkg-config scdoc \
qt6-base qt6-imageformats qt6-networkauth qt6-svg \
cmark gamemode libarchive mesa qrencode tomlplusplus vulkan-headers zlib \
jdk17-openjdkGetting the source
We use Git for our version control. The command below will clone the repository, and fetch all submodules that come with it
git clone --recursive https://github.com/PrismLauncher/PrismLauncher.git
cd PrismLauncherThe rest of the documentation assumes you have already cloned the repository.
Building the source
Configuration
Open "x64 Native Tools PowerShell" in Windows Terminal
cmake --preset windows_msvc -D CMAKE_PREFIX_PATH="C:\path\to\Qt"cmake --preset windows_mingwcmake --preset macos \
-D CMAKE_PREFIX_PATH="/opt/homebrew/opt/qt"
-D CMAKE_OSX_DEPLOYMENT_TARGET=12 \cmake --preset linuxCompilation
cmake --build --preset windows_msvc --config Debugcmake --build --preset windows_mingw --config Debugcmake --build --preset macos --config Debugcmake --build --preset linux --config DebugInstallation
cmake --install build --config Debug
cmake --install build --config Debug --component portable # If you want to install a portable versioncmake --install build --config Debug
cmake --install build --config Debug --component portable # If you want to install a portable versioncmake --install build --config Debugcmake --install build --config Debug
cmake --install build --config Debug --component portable # If you want to install a portable version
DESTDIR="$pkgdir" cmake --install build --config Debug # If you're installing for a packageBuilding with Nix (Linux and macOS)
Nix is a tool for handling reproducible builds across multiple platforms.
After installing Nix and checking out the repository, you can run the following command to build a debug package:
nix build --print-build-logs '.#prismlauncher-debug'You can also enter a development shell with all of the tools required to build manually:
nix-shell
cmake --preset linux_debug
cmake --build build
cmake --install buildBuilding a Flatpak (Linux)
Flatpaks allow for you to quickly build Prism and run it on any distribution
Make sure Flathub is setup.
# Install Flatpak build tools
flatpak install flathub org.flatpak.Builder
# Clone the source repository
git clone --recursive https://github.com/prismlauncher/PrismLauncher
# Enter the Flatpak directory
cd PrismLauncher/flatpak
# Run the build
flatpak run org.flatpak.Builder \
--user \
--install \ # Comment if you only want to build, not install
--install-deps-from=flathub \
--ccache \
--repo=repo \
builddir \
org.prismlauncher.PrismLauncher.ymlFile: src/content/docs/wiki/development/development-builds.md
title: Development Builds
:::caution
Please understand that these builds are not intended for most users. There may be bugs, and other instabilities. You have been warned.
:::
There are per-commit development builds available here. Debug information is present within the binaries, making their file sizes larger than otherwise normal.
If you don't have a GitHub account, you can download them using nightly.link.
Non-portable binaries are currently available for Windows as a system install, macOS .app, Linux tarball, and AppImage.
Portable dev-builds are also provided; for both Windows and Linux.
For Arch, Debian/Ubuntu, Fedora, OpenSUSE, Gentoo and Windows, respectively, you can use these packages for the latest development versions:
File: src/content/docs/wiki/development/ides-and-tooling.md
title: IDEs and Tooling
There are a few tools that you can set up to make your development workflow smoother. In addition, some IDEs also require a bit more setup to work with Qt and CMake.
sccache
sccache is a compiler cache. It speeds up recompilation by caching previous compilations and detecting when the same compilation is being done again.
You can find out how to download it here. After setting up, builds will be incremental, and the builds after the first one will be much faster.
VS Code
To set up VS Code, you can download the C/C++ extension, since it provides IntelliSense auto complete, linting, formatting, and various other features.
Then, you need to set up the configuration. Go into the command palette and open up C/C++: Edit Configurations (UI). There, add a new configuration for PrismLauncher.
- Add the path to your Qt
includefolder toincludePath - Add
-L/{path to your Qt installation}/libtocompilerArgs - Set
compileCommandsto${workspaceFolder}/build/compile_commands.json - Set
cppStandardtoc++17or higher.
For step 3 to work, you also have to reconfigure CMake to generate a compile_commands.json file. To do this, add -DCMAKE_EXPORT_COMPILE_COMMANDS=ON to the end of your CMake configuration command and run it again. You should see a file at build/compile_commands.json.
Now the VS Code setup should be fully working. To test, open up some files and see if any error squiggles appear. If there are none, it's working properly!
Here is an example of what .vscode/c_cpp_properties.json looks like on macOS with Qt installed via Homebrew:
{
"configurations": [
{
"name": "Mac (PrismLauncher)",
"includePath": [
"${workspaceFolder}/**",
"/opt/homebrew/opt/qt@6/include/**"
],
"defines": [],
"macFrameworkPath": [
"/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks"
],
"compilerPath": "/usr/bin/clang",
"compilerArgs": ["-L/opt/homebrew/opt/qt@6/lib"],
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"cStandard": "c17",
"cppStandard": "c++17",
"intelliSenseMode": "macos-clang-arm64"
}
],
"version": 4
}CLion
- Open CLion
- Choose
File->Open - Navigate to the source folder
- Go to settings
Ctrl+Alt+S - Navigate to
ToolchainsinBuild, Execution, Deployment- Set the correct build tools (see here)
- CMake:
cmake(optional) - Make:
make(optional) - C Compiler:
gcc - C++ Compiler:
g++ - Debugger:
gdb(optional)
- Navigate to
CMakeinBuild, Execution, Deployment- Set
Build directorytobuild
- Set
- Navigate to
Edit Configurations(see here)- Create a new configuration
- Name:
All - Target:
All targets - Choose the newly added configuration as default
Now you should be able to build and test Prism Launcher with the Build and Run buttons.
Qt Creator
Open Qt Creator.
Choose
File->Open File or Project.Navigate to the Launcher source folder you cloned and choose CMakeLists.txt.
Read the instructions that just popped up about a build location and choose one.
You should see "Run CMake" in the window.
- Make sure that Generator is set to "Unix Generator (Desktop Qt 6.x.x GCC 64bit)".
- Alternatively this is probably "Unix Generator (Desktop Qt 5.12.x GCC 64bit)"
- Hit the "Run CMake" button.
- You'll see warnings, and it might not be clear that it succeeded until you scroll to the bottom of the window.
- Hit "Finish" if CMake ran successfully.
- Make sure that Generator is set to "Unix Generator (Desktop Qt 6.x.x GCC 64bit)".
Cross your fingers, and press the "Run" button (bottom left of Qt Creator).
- If the project builds successfully it will run and the Launcher window will pop up.
File: src/content/docs/wiki/getting-started/catpacks.md
title: CatPacks
Installation
The CatPacks folder location is as follows:
- on Windows:
%appdata%\PrismLauncher\catpacks - on Mac:
~/Library/Application Support/PrismLauncher/catpacks - on Linux:
~/.local/share/PrismLauncher/catpacks - on Flatpak:
~/.var/app/org.prismlauncher.PrismLauncher/data/PrismLauncher/catpacks
After you move the CatPack to the mentioned folder restart Prism Launcher, then open the global settings.
In the Launcher section, click the User Interface tab, and under Cat, choose the newly added CatPack.
Click the Close button, and enjoy your CatPack.
CatPack Types
1. Simple CatPack
The most basic CatPack is a simple image(that's all).
2. Advanced CatPack
Is a folder that contains a catpack.json file and some images.
For example, the structure of a CatPack is as follows:
โโโ test_catpack
โโโ catpack.json
โโโ christmas.png
โโโ oneDay.png
โโโ maxwell.png
โโโ newyear.png
โโโ newyear2.pngThe catpack.json looks as follows:
{
"name": "My Cute Cat",
"default": "maxwell.png",
"variants": [
{
"startTime": {
"day": 12,
"month": 4
},
"endTime": {
"day": 12,
"month": 4
},
"path": "oneDay.png"
},
{
"startTime": {
"day": 20,
"month": 12
},
"endTime": {
"day": 28,
"month": 12
},
"path": "christmas.png"
},
{
"startTime": {
"day": 30,
"month": 12
},
"endTime": {
"day": 1,
"month": 1
},
"path": "newyear2.png"
},
{
"startTime": {
"day": 28,
"month": 12
},
"endTime": {
"day": 3,
"month": 1
},
"path": "newyear.png"
}
]
}Fields description:
namethe name of the CatPackdefaultthe path to the default catvariantsa list of the cats that are visible only on specific days/periods.startTimethe day from which the variant is visible (inclusive)endTimethe day until the variant is visible (inclusive)paththe path to the variant
All paths are relative, so you only need to put the name of the image from the CatPack(with extension).
The default cat is the cat displayed in all periods we can't match any variants.
The variant matching is done by looking if today is between startTime and endTime, if is matched then that variant is displayed.
The order of variants matters as the first variant that matches the period is returned ignoring the rest.
So for the mentioned example, the variants are displayed as follows:
oneDay.pngwill be visible only on 12 April each yearchristmas.pngfrom 20 December until 28 Decembernewyear.pngon 29 Decembernewyear2.pngfrom 30 December until 1 Januarynewyear.pngfrom 2 January until 3 Januarymaxwell.pngfor the periods that were not mentioned
So an example of order matter is if the newyear.png and newyear2.png orders would be reversed then newyear2.png will never be displayed.
File: src/content/docs/wiki/getting-started/change-themes.md
title: Change Themes sidebar: order: 9
Themes can help you spice up your launcher appearance.
Themes Downloads
Themes
Icon Packs
How to install Themes & Icons
Here are the instructions to get your themes & icons up and working.
Make sure you are using Prism Launcher 6.0 or later.
Installing Themes
Download a theme above and copy the zip file to your Themes Directory.
- Open your local Prism Launcher Themes folder:
on any OS: in Prism, select Folders > Widget Themes
on Windows:
%appdata%\PrismLauncher\themeson Mac:
~/Library/Application Support/PrismLauncher/themeson Linux:
~/.local/share/PrismLauncher/themeson Flatpak:
~/.var/app/org.prismlauncher.PrismLauncher/data/PrismLauncher/themes
- Open your local Prism Launcher Themes folder:
Unzip the newly downloaded theme in the
themesfolder. Make sure the folder structure looks like.../PrismLauncher/themes/your_theme_name/theme.json.Restart Prism Launcher, then open the global settings. In the Launcher section, click the User Interface tab, and under Widgets (make sure you're changing Widgets and not Icons), choose the newly added theme. Click the Close button, and enjoy your fresh new Prism Launcher.
Installing Icon Packs
Download a Icons pack above and copy the zip file to your Prism Launcher Directory
- Open your local Prism Launcher Directory:
on any OS: in Prism, select Folders > Icon Theme
on Windows:
%appdata%\PrismLauncheron Mac:
~/Library/Application Support/PrismLauncheron Linux:
~/.local/share/PrismLauncheron Flatpak:
~/.var/app/org.prismlauncher.PrismLauncher/data/PrismLauncher
- Open your local Prism Launcher Directory:
Extract the contents of the zip into the
iconthemesfolder (if the folder doesn't exist do this next step). Make sure the folder structure looks like.../PrismLauncher/iconthemes/your_theme_name/index.theme.- In the
PrismLauncherfolder, create a new folder namediconthemes(you should only have to do this once).
- In the
Restart Prism Launcher, then open the global settings. In the Launcher section, click the User Interface tab, and under Icons (make sure you're changing Icons and not Widgets), choose the Custom icons. Click the Close button, and enjoy your new icons.
Submitting Themes
Fork the PrismLauncher/Themes repository.
Create a folder in the themes folder named after your theme name (Example:
Rainbow-Cake).In this newly created folder add files named
README.md,theme.json,themeStyle.cssandtheme.json.license.- In
theme.json.licenseadd the text below, and replace"Year"with the current year, replace"Theme Owner"with the theme creator nickname,"License name"with the license of your theme.
textSPDX-FileCopyrightText: "Year" "Theme owner" SPDX-License-Identifier: "License SPDX Identifier"(Note:
theme.jsonandthemeStyle.cssare the files that contain your theme.)Format your
README.mdjust like this Template Readme and replace every text between a"like"This"with their respective use.
- In
Add a screenshot of your theme and rename it to
preview.png.- Then create a file named
preview.png.licenseand add the text below, and replace"Year"andScreenshot owner"with their respective use.
textSPDX-FileCopyrightText: "Year" "Screenshot owner" SPDX-License-Identifier: CC0-1.0- Then create a file named
Verify that you did everything correctly, if you did please proceed to the next and last step.
Make sure to ensure REUSE compliance learn more at reuse.software
Now you can open a Pull Request, and we will add your theme as fast as possible to the repository and website.
Submitting Icon Packs
Fork the PrismLauncher/Themes repository.
Create a folder in the icons folder named after your theme name (Example:
Twemoji).In this newly created folder add files named
README.md,index.theme,index.theme.licenseand a folder namedscalablecontaining the .svgs of your icons.- In
index.theme.licenseadd the text below, and replace"Year"with the current year, replace"Theme Owner"with the theme creator nickname,"License name"with the license of your theme.
textSPDX-FileCopyrightText: "Year" "Theme owner" SPDX-License-Identifier: "License SPDX Identifier"(Note:
index.themeis the file that contains your icon data.)Format your
README.mdjust like this Template Readme and replace every text between a"like"This"with their respective use.
- In
Add a screenshot of your theme and rename it to
preview.png.- Then create a file named
preview.png.licenseand add the text below, and replace"Year"andScreenshot owner"with their respective use.
textSPDX-FileCopyrightText: "Year" "Screenshot owner" SPDX-License-Identifier: CC0-1.0- Then create a file named
Verify that you did everything correctly, if you did please proceed to the next and last step.
Make sure to ensure REUSE compliance learn more at reuse.software
Now you can open a Pull Request, and we will add your theme as fast as possible to the repository and website.
File: src/content/docs/wiki/getting-started/command-line-interface.md
title: Using Prism Launcher via the Command Line sidebar: label: Command Line Interface
Usage: prismlauncher [-h] [-v] [-d dir] [-l launch] [-s server] [-a profile] [-I import] [--show show] [--alive] [--help-all]
Options:
-d, --dir directory Use a custom path as application root (use '.' for current directory)
-l, --launch instance Launch the specified instance (by instance ID)
-s, --server address Join the specified server on launch (only valid in combination with --launch)
-a, --profile profile Use the account specified by its profile name (only valid in combination with --launch)
--alive Write a small 'live.check' file after the launcher starts
-I, --import file Import instance from specified zip (local path or URL)
--show show Opens the window for the specified instance (by instance ID)
-h, --help Displays help on commandline options.
--help-all Displays help, including generic Qt options.
-v, --version Displays version information.What is an instance ID, and where do I find it?
The instance ID is the name of the folder where your instance is contained.
To find it, right-click on the instance you want to know the ID of, and then click on Instance Folder within the context menu.
Now, just copy the name of the folder that opened.
Prism Launcher is still opening after I close Minecraft
Currently, the Close Prism Launcher after game window opens option opens Prism Launcher after closing Minecraft, even when launched from the CLI.
To disable this, open Settings, then select Minecraft, and finally, un-check Close Prism Launcher after game window opens or check Quit the launcher after game window closes.
File: src/content/docs/wiki/getting-started/controller-support.md
title: Controller Support sidebar: order: 9
:::note[Before proceeding]
- Please ensure that you are comfortable with the mod installation process within Prism Launcher.
- A full guide on this can be found here.
- Not all game versions are supported at the time of writing, including those before 1.12.2.
- Please ensure a compatible version of Java is selected. You can learn how to do so here.
Finally, if you don't have one already, you must create an instance with the game version and mod loader of your choice.
:::
Making use of Controllers
This includes Steam Deck's Gamepad, PlayStation/Xbox controllers and so on.
Fabric/Quilt
Before you continue, ensure that the correct version of the Fabric API mod on Fabric or the Quilted Fabric API mod on Quilt for your instance is installed.
Controlify (for Minecraft Versions 1.19.4 or newer)
For Minecraft 1.19.4 or newer, we recommend Controlify. It's a controller mod that has a lot of features that aren't in MidnightControls.
It can be installed using Prism Launcher's mod downloader function through either Modrinth (recommended) or CurseForge. Once installed, please launch your instance and navigate to the in-game controller menu (Options -> Controls -> Controller Settings) and do the calibration. Once that's done, you're ready to use your controller!
MidnightControls (for Minecraft Versions 1.18 or newer)
For Minecraft 1.18 or newer, we recommend MidnightControls, an updated fork of LambdaControls.
It can be installed using Prism Launcher's mod downloader function through either Modrinth (recommended) or CurseForge. Once installed, please launch your instance and navigate to the in-game controls menu. Within the in-game controls menu, you may need to change the "Mode" setting to Controller in order for the game to respond to input from the gamepad. If it doesn't work, you can use the app linked in the mod to edit the controller mappings.
LambdaControls (for Minecraft Versions 1.16.2 to 1.18)
NOTE: This mod is currently unmaintained and hasn't been updated since June of 2021, so unless you really need to, use MidnightControls.
For Minecraft 1.16.2 to 1.18, we recommend LambdaControls.
It can be installed using Prism Launcher's mod downloader function through either Modrinth (recommended) or CurseForge. Once installed, please launch your instance and navigate to the in-game controls menu. Within the in-game controls menu, you may need to change the "Mode" setting to Controller in order for the game to respond to input from the gamepad. If it doesn't work, you can use the app linked in the mod to edit the controller mappings.
NeoForge
Controlify (for Minecraft Versions 1.20.3 or newer)
For Minecraft 1.20.3 or newer, we recommend Controlify. It's a controller mod that has a lot of features that aren't in MidnightControls or Controllable.
It can be installed using Prism Launcher's mod downloader function through either Modrinth (recommended) or CurseForge. Once installed, please launch your instance and navigate to the in-game controller menu (Options -> Controls -> Controller Settings) and do the calibration. Once that's done, you're ready to use your controller!
MidnightControls (for Minecraft Versions 1.21 or newer)
For Minecraft 1.21 or newer, we recommend MidnightControls, an updated fork of LambdaControls.
It can be installed using Prism Launcher's mod downloader function through either Modrinth (recommended) or CurseForge. Once installed, please launch your instance and navigate to the in-game controls menu. Within the in-game controls menu, you may need to change the "Mode" setting to Controller in order for the game to respond to input from the gamepad. If it doesn't work, you can use the app linked in the mod to edit the controller mappings.
Controllable (for Minecraft Versions 1.20.4 or newer)
For Minecraft versions 1.20.4 or above, we also recommend Controllable.
Controllable can be installed using Prism Launcher's mod downloader function through CurseForge. Once installed, you may now launch your instance, and find that the mod should begin working immediately.
Forge
Controllable (for Minecraft Versions 1.12.2 or newer)
For Minecraft versions 1.12.2 or above, we also recommend Controllable.
Controllable can be installed using Prism Launcher's mod downloader function through CurseForge. Once installed, you may now launch your instance, and find that the mod should begin working immediately.
File: src/content/docs/wiki/getting-started/create-instance.md
title: Creating an Instance sidebar: order: 4
To create an instance, simply click on the Add Instance button on the top menu bar, or right-click an empty area in the middle of the launcher, and select Create instance. You can then either create a new instance by selecting your desired Minecraft version and modloader, or import an existing modpack by selecting a mod platform from the sidebar on the left.
Editing an instance
Once an instance is created, you can right-click it to open a context menu with some basic settings. From this list, select Edit to access the edit menu.
File: src/content/docs/wiki/getting-started/data-location.md
title: Data Locations
Prism Launcher stores your data in your OS's standard application data folder. For the portable version, data is stored within its own directory. To find it, select Folders > Launcher Root in Prism. Below is a table containing the default locations for each OS:
| OS | Folder |
|---|---|
| Portable (Windows / Linux) | In the PrismLauncher folder |
| Windows | %APPDATA%/PrismLauncher |
| Scoop | %HOMEPATH%\scoop\persist\prismlauncher |
| macOS | ~/Library/Application Support/PrismLauncher |
| Linux | ~/.local/share/PrismLauncher |
| Flatpak | ~/.var/app/org.prismlauncher.PrismLauncher/data/PrismLauncher |
Internal folder structure
| Folder | Purpose |
|---|---|
| assets | Stores the game files. |
| cache | Stores cached downloads. |
| catpacks | Stores the catpacks. |
| icons | Stores instance icons. (default) |
| iconthemes | Stores launcher icons themes. |
| instances | Stores user instances. (default) |
| java | Stores the java instalations managed by the launcher. |
| libraries | Stores libraries used to run Minecraft and Mod Loaders. |
| logs | Stores the logs. |
| meta | Stores the cached metadata information. |
| skins | Stores the player skins. |
| themes | Stores themes. |
| translations | Stores GUI translations. |