4.0 KiB
4.0 KiB
Changelog
0.0.9 - 2026-09-28
- New
exportcommand:terractl export <name> [file.tar.gz] [--with-server]archives an instance'sinstance.conf,serverconfig.txtanddata/(worlds, mods, mod configs). If the server is running under systemd, it is asked to save first. Archives are created readable only by their owner, sinceserverconfig.txtcan contain the server password.--with-serveralso includes the unpacked server software (and tModLoader's .NET), for hosts without internet access. - New
importcommand:terractl import <name> <file.tar.gz>creates an instance from an export, adeletebackup, or an archive of an old/opt/terrariainstance. Archives are checked before extracting (no paths outside the instance folder, no links or special files). Paths inserverconfig.txtare updated, a port already used by another instance is replaced with a free one, the server version the world was exported with is pinned, and ownership is set to theterrariauser. - One server per instance:
runholds a lock (<instance>/.lock) for the server's whole lifetime, released automatically when it exits or crashes. A secondrun, or starting the service while a copy started by hand is running, is refused. prepareandreinstall --cleanrefuse to run while the instance's server is running, soserver/and .NET are never replaced or deleted under it.deleterefuses to continue if the server is still running outside systemd.listshows servers started by hand asrunning (outside systemd).stoptyped by hand now explains to usesystemctl stopinstead of silently doing nothing.- Fixed relative paths given on the command line (e.g.
terractl mods <name> add tmod-export) being looked up from/instead of the current directory. - Bash completion for
exportandimport.
0.0.8 - 2026-09-28
- Bash completion for
terractl: commands, instance names,newtypes, console commands forcmd,reinstall/deleteoptions, andmodsactions and mod names. Installed toshare/bash-completion/completions/terractlby bothmake installand the package.
0.0.7 - 2026-09-28
- Fixed ShellCheck warnings that made
make check(and thereforemake deb) fail when ShellCheck is installed: simplified the development-copy check in--version(SC2140), and marked the intentional unquoted unit list inprerm(SC2086).
0.0.6 - 2026-09-28
- Renamed the command from
terraria-instancetoterractl, and the package fromterraria-instancetoterraria-server-manager. The new package replaces the old one automatically; see "Upgrading from the terraria-instance package" in the guide. - Settings file moved from
/etc/default/terraria-instanceto/etc/default/terractl. - New
terractl --version. - New Makefile:
make check,make deb,make install,make uninstall. - Restructured the source into a git repository layout.
0.0.5 - 2026-09-28
- Fixed
attach: detaching with Ctrl-D printed "jpid: unbound variable" and left ajournalctlprocess running.
0.0.4 - 2026-09-28
- The .NET runtime that tModLoader downloads on first start (and its logs) is now kept when an instance is upgraded or re-unpacked.
- New
reinstall --cleanto discard .NET as well and download it again.
0.0.3 - 2026-09-28
- New
modscommand:list,add,enable,disable,remove. Accepts the Windows export folder directly and sets file ownership. newandpreparenow createdata/Modsfor tModLoader instances.
0.0.2 - 2026-09-28
- Fixed
preparefailing for tModLoader zips when run as root from a directory theterrariauser can't enter (e.g./root).
0.0.1 - 2026-09-28
- First Debian package. Uses
/var/lib/terrariainstead of/opt/terrariaand/terraria, creates theterrariauser and directories with sysusers.d and tmpfiles.d, and stops instances cleanly when removed. prepareandrunswitch to theterrariauser when started as root, so no files end up owned by root.- New
deletecommand, with an automatic backup. listno longer aborts when an instance's config can't be read.