-
Notifications
You must be signed in to change notification settings - Fork 0
Config format
In order for the unsup agent to be used, an unsup.ini must be present in the
working directory defining where to get the manifest from and how the program
being launched will behave.
-
version: The version of the unsup configuration format. Must be1. -
source_format: The format of the manifest to download. Possible values:-
unsup- A native unsup-format manifest, described in this wiki.sourcemust point to themanifest.json. -
packwiz- New in 0.2.0 - a Packwiz-format pack.sourcemust point to thepack.toml.
-
-
source: The URL to the root manifest.
-
preset: A built-in config preset to inherit from, such asminecraft. -
use_envs: Iftrue, environment support is enabled. See Environments. -
recognize_nogui: Iftrue, the argumentnoguior--noguito the wrapped program will be recognized and used to disable the Puppet. Enabled by theminecraftprofile. -
no_gui: Iftrue, the Puppet will be disabled. -
public_key: Defines the public key to use to verify signed files. See Signing. -
: Deprecated in 0.2.0 - Defines the default flavor to use when updating. The user will still be allowed to choose a flavor if the Puppet is enabled and can start.flavor -
force_env: Force a specific env, such asclient, rather than autodetecting. May be necessary on legacy Forge versions, as their binpatches will restore client classes on the server. -
update_mmc_pack: Iftrue, then anmmc-pack.jsonandpatchesdirectory in the parent directory will be edited to keep in sync with component versions, as defined in a root manifest or Packwiz pack.toml.
-
subtitle: The initial subtitle to use.
All of these keys must be specified in a [colors] section. They are all hex
RRGGBB colors.
-
background: The window background. Default:263238 -
title: The title text color. Default:FFFFFF -
subtitle: The subtitle text color. Default:90A4AE -
progress: The color of the filled portion of the progress bar and wheel. Default:1DE9B6 -
progress_track: The color of the non-filled portion of the progress bar. Default:455A64 -
dialog: The color of the text in a dialog. Default:FFFFFF -
button: The background color of buttons. Default:009688 -
button_text: The color of text in buttons. Default:FFFFFF
Environments are a way to specify an implicit limitation on valid files when performing an update. If the agent is being run in standalone mode, the environment must be specified as the first command line argument. If it's being run as an agent, then autodetection can be performed by checking for classes defined by the application.
An example of this can be seen in the minecraft preset:
[env.client]
marker=net.minecraft.client.main.Main
[env.server]
marker=*Environment markers are checked in the order they are defined, and * matches
everything. So, if a class with the fully-qualified name
net.minecraft.client.main.Main is found, then the environment will be set to
client, otherwise it will be set to server. Multiple markers for one
environment can be specified, and will be checked in order.
As of 0.2.0, flavors have been further split up into "flavor groups". The legacy flavor behavior is now held by a flavor group named "default". You can specify default selections for each group in the config, like so:
[flavors]
hard_mode=hard_mode_off
; Client-only
rendering_mod=sodium
qdaa=qdaa_onThis configures three flavor groups to select those values by default. If a GUI is available, the Puppet will still prompt the user for their selections, but will select these by default. It's strongly recommended to provide all defaults here, even if redundant, for server installations.
Semicolons indicate comments — the above suggestion to put client-only flavors below a comment heading is just that, a suggestion.
As of 0.3.0, unsup can update mmc-pack.json and the patches directory in the parent directory, for
use with MultiMC/Prism Launcher packs.
In order for unsup to determine what needs to be updated, it needs to be told what UIDs in the
MultiMC components map to what component names in the manifest. The defaults in the minecraft
preset are a good example of this:
[mmc-component-map]
minecraft=net.minecraft
minecraft=net.fabricmc.intermediary
minecraft=org.quiltmc.hashed
unsup=com.unascribed.sup
unsup=com.unascribed.unsup
fabric=net.fabricmc.fabric-loader
quilt=org.quiltmc.quilt-loader
liteloader=com.mumfrey.liteloader
forge=net.minecraftforge
neoforge=net.neoforgedYou can add further definitions as necessary. Multiple keys will result in all of the unique values being updated, which is useful for multiple components with a shared version or components with no agreed-upon name.
version=1
preset=minecraft
source_format=packwiz
source=https://rewindmc.com/packwiz/upsilon/pack.toml
public_key=signify RWRMdtXoEByibcnaB2iyFWE8g14yNd5Jp6XzXc/HgEE18baymXBMR4ak
[colors]
progress=E15817
button=E15817This is the configuration for Rewind Upsilon, which is used to test unsup's functionality. Change to fit your needs.