Command-line usage
TMS Smart Setup is folder-based. Once you have the folder initialized, you can run the command-line and Smart Setup will create files and subfolders inside it.
The command-line is self-explanatory; just run tms to list all available commands, or tms help <command> for more detailed information about a specific command.
Setting up credentials
Once in the folder, run tms credentials to initialize the folder and input your credentials:
tms credentials
Installing products
Then, use the tms install command to download new products from the remote repository to your local machine.
tms install tms.biz.aurelius
It's worth noting that the above command will download and install TMS Aurelius and also all its dependencies (in this case, TMS BIZ Core Library ).
To find out what the ids of the products you have available to install are, you can run tms list-remote command:
tms list-remote
You can also specify multiple products to install, separated either by commas or spaces. Masks can be used to install all products that match the mask. For example, the following command installs all BIZ products and TMS FlexCel for VCL:
tms install tms.biz.* tms.flexcel.vcl
Updating products
From time to time, you can run tms update command to download newest versions of the products, if available:
tms update
The above command will check in the remote repository for new versions of all products you have installed. If there are new versions, it will download, update and rebuild them, all automatically.
Rebuilding
When installing or updating products, TMS Smart Setup only rebuilds what has been modified. This makes the installation and update processes very fast.
But there are times that the build process might fail, for any reason (Delphi misconfiguration, antivirus in action, bugs, etc.). Here, you will have your products downloaded but not properly built and registered in the IDE.
To force a new rebuild to fix these issues, just call the tms build command:
tms build
This command will just try to rebuild what has been modified or failed, and quickly fix that. In case things are really not working, you can ask for a full rebuild, which will rebuild and re-register all your products:
tms build -full
You can also use the tms build command if you updated the source code of TMS products yourself. After modifying the source code, call tms build command to update the installation properly.
Uninstalling a product
Uninstalling a product is as simple as installing. Just call tms uninstall passing the products to be uninstalled. It also accepts masks and comma-separated ids:
tms uninstall tms.biz.aurelius
tms uninstall tms.biz.*,tms.flexcel.vcl
Note that tms uninstall command does not uninstall dependencies. Thus, if you ask to uninstall tms.biz.aurelius only, then tms.biz.bcl, which is a TMS Aurelius dependency, will remain installed. To uninstall a product and all its dependencies, use the -cascade option:
tms uninstall tms.biz.aurelius -cascade
It might be possible that you try to uninstall a product that another installed product depends on. For example, if you try to uninstall TMS BCL but not TMS Aurelius, which depends on BCL. In this case, tms uninstall will fail. You can bypass this check by adding the -force parameter. But we don't recommend it, because you will end up with broken products. Only use -force if you really know what you are doing.
Custom configuration
TMS Smart Setup works smoothly out of the box. It automatically detects all your installed Delphi IDEs and platforms, in summary, your current system setup, and installs everything the best way possible in your environment.
But if you want more control over its behavior, you can fully customize its behavior by using a YAML config file.
You can ask the tool to create a pre-configured YAML configuration file by running the tms config command:
tms config
This will create a YAML file named tms.config.yaml in your root folder, and launch your default YAML editor to edit its content.
The default YAML config file contains all the configuration options you can change, and each of them is fully documented. Just read the file to learn about it and modify the options as you wish. For more information, see the configuration guide.
Check what is installed
You can use the command tms list to check all products you have installed locally:
C:\tms>tms list
tms.biz.aurelius (5.16.0.1)
tms.biz.bcl (1.38.0.1)
tms.biz.sparkle (3.25.0.1)
tms.biz.xdata (5.13.0.1)
Using the -detailed parameter displays the exact IDE and platforms for which each product is installed:
C:\tms>tms list -detailed
tms.biz.aurelius (5.16.0.1)
- delphi11
- win32intel
- win64intel
- linux64
tms.biz.bcl (1.38.0.1)
- delphi11
- win32intel
- win64intel
- linux64
tms.biz.sparkle (3.25.0.1)
- delphi11
- win32intel
- win64intel
- linux64
tms.biz.xdata (5.13.0.1)
- delphi11
- win32intel
- win64intel
- linux64
Self-updating
tms.exe can update itself. It will regularly check for new versions, and if available, it will warn you about it.
At any time, and especially if you get such warning, you can update tms.exe to a newer version by executing tms self-update:
tms self-update
We recommend not ignoring the warnings about a new version, and always keeping the tool updated to the latest version.
Fixing problems
To open a browser showing a complete log of the last command, you can type:
tms log-view
If you are still having issues that you can't solve, you might try
tms doctor
You can find more information about tms doctor here