Using the Software Manager from the command lineđź”—
In addition to the browser interface, the Software Manager can be operated from the command line for scripted installation and removal of packages.
Double-click the shortcut MVTec Software Manager CLI to open a terminal that lets you run the som command without modifying the PATH environment variable.
File locationsđź”—
If desktop or menu shortcuts are not available on your system, the executable can be found at the following location:
General formatđź”—
The commands in this guide and in the CLI’s built-in documentation generally
follow the POSIX convention
of denoting mandatory arguments through angle brackets (e.g. som <command>), and
optional arguments through square brackets (e.g. som help [command]).
Use this syntax to run SOM commands:
For a list of the most common available commands, see Available commands.
The <options> use a single hyphen (-) for short names or a double hyphen (--) for long names.
For more information, see Available options.
The optional <spec> depends on the command.
Use som help [command] to get more information for Software Manager’s CLI in general, or for a specific command.
Available optionsđź”—
| Flags | Setting key | Arg type | Short description | Details / usage notes | Default |
|---|---|---|---|---|---|
-H string--hostname string |
Host name | string | Hostname SOM listens on | Specifies the host name SOM listens on. Default localhost allows only local connections. Use the computer name (or -H 0.0.0.0) to accept network connections. Use a private IP to allow internal access while avoiding public exposure. |
localhost |
-P string--proxy string |
HTTP proxy | string | HTTP proxy address | Specifies the address of an HTTP proxy. Leave empty for a direct internet connection. For more information, see Connecting through an HTTP proxy. | - |
--accept string |
EULA acceptance | string | Accept a package EULA by hash. | Some packages include a EULA that is displayed during installation along with a content-specific hash. To acknowledge the EULA and proceed with installation, pass that hash to --accept. |
- |
-c string--catalog string |
Catalog | string | Catalog location for downloads. | This setting specifies the location from which the product catalog is downloaded. When located in China (PRC), set this to China to use a cache proxy and speed up downloads. Otherwise keep the default. |
Global |
--data string |
Install path (additional data) | string | Base directory for installing data packages. | This setting specifies the base directory where data packages are installed. In system mode, this directory must be writable by all users. | User mode: $HOME/MVTecSystem mode: /opt/MVTec |
-f string--feed string |
(Feed URL) | string | URL of a specific product feed. | This parameter specifies the URL of a specific feed (a distinct product). It is mainly used for installing or removing packages from the command line. If no additional command such as list, install, or remove is given, the Software Manager opens the configuration page for the specified product. |
- |
-h--help |
Help | flag | Print help and exit. | Print a list of command-line options to the console and exit. | - |
-n--nogui |
No GUI | flag | Do not open the default browser. | If specified, the Software Manager will not attempt to start the default browser. | - |
-p value--port value |
Port number | int | Port the Software Manager listens on. | This setting specifies the port number the Software Manager listens on. Specify 0 to let the Software Manager select a free port automatically. |
8188 |
--programs string |
Install path (program files) | string | Base directory for installing program packages. | This setting specifies the base directory where program packages are installed. | User mode: $HOME/MVTecSystem mode: /opt/MVTec |
-r string--repository string |
Local repository (Path) | string | Base directory for downloaded packages. | This setting specifies the base directory for downloaded packages. You can use a shared directory to supply downloaded packages to multiple users, but ensure concurrent SOM sessions do not download the same files at once. The local repository behaves like a browser cache. Its contents can be safely deleted because the Software Manager will re-download missing files when needed. | User mode: $HOME/.som/repositorySystem mode: $HOME/.som/repository |
-v--verbose |
Verbose | flag | Enable additional diagnostic output. | Output additional diagnostic messages. | - |
Available commandsđź”—
Configuration-related commandsđź”—
These commands allow you to read and change the Software Manager’s configuration.
| Command | Short description | Details / usage notes |
|---|---|---|
som cli |
Start a shell with som on PATH. |
Starts a terminal or command prompt with the environment variable PATH extended so som can be run without a full path. This is equivalent to running MVTec Software Manager CLI. On Linux the default terminal is XTerm (/usr/bin/xterm). To use a different terminal program, append its path, for example: som cli /usr/local/st |
som config |
Show Software Manager configuration. | Displays the contents of the Software Manager configuration file. If the --reset flag is given, configuration defaults are restored. |
som config <key> |
Show a specific configuration value. | Displays the value of the specified configuration key. If the --reset flag is given, the key is restored to its default value. Tip: to see all valid keys, run som config. |
som config <key> <value> |
Set a configuration key. | Sets the specified configuration key to the given value. |
Login-related commandsđź”—
These commands allow you to log in / log out of your MVTec account.
| Command | Short description | Details / usage notes |
|---|---|---|
som login |
Start the login process. | Starts a login process and displays a URL that can be opened on any device to complete sign-in. Follow the instructions on the displayed page. After successful sign-in the command terminates and you will be logged in on the current device. |
som logout |
Log out and clear session data. | If you are logged in, this command logs you out and invalidates all saved session information. |
Catalog-related commandsđź”—
These commands interact with the catalog, and install/remove products or individual packages.
| Command | Short description | Details / usage notes |
|---|---|---|
som available |
List installable products. | Lists products available in the catalog. Optionally supports the --catalog flag. |
som sync |
Refresh and list the catalog. | Fetches updates from the remote catalog and then lists the product catalog (same output as som cat after updating). |
som list |
List installed products and packages. | Lists installed products. Under each product the feed URL and a tab-separated list of installed packages is shown. Meta packages are marked “M” and base packages are marked “B”. Fields shown: package name, description, installed version, and installation directory. |
som list -f <url> |
List packages in a feed. | Lists meta and base packages for the specified feed. For each package the name, description, and available versions are shown. Installed versions are marked with an asterisk (*). Example: som -f https://packages.mvtec.com/halcon/halcon-20.11-progress/halcon-20.11-progress.feed list |
som install -f <url> |
Install packages from a feed. | Installs packages from the specified feed. With no extra arguments or with default, the product’s default selection is installed. With all, all packages in their latest versions are installed. If run with elevated privileges, the product is installed for all users by default. Otherwise it is installed for the current user. Override with --mode USER or --mode SYSTEM. To install a specific package version, provide the version string after the package name. Example: som -f 20.11-progress install rt som -f 20.11-progress install rt 20.11.0.0 |
som remove -f <url> |
Remove packages from a feed. | Removes the specified package and any packages that depend on it. If no package is specified, all installed packages of the product are removed. If run with elevated privileges, removal targets all users by default. Otherwise it removes only the current user’s installation. Override with --mode USER or --mode SYSTEM. Example: som -f 20.11-progress remove rt |
Installation-related commandsđź”—
These commands are used to interact with existing installations.
Note: som installation <subcommand> and som installations <subcommand> can be used interchangeably.
| Command | Short description | Details / usage notes |
|---|---|---|
som installation list |
List all known installations. | Reports a table with the product name, installation ID, and whether the installation is currently active. If no installations exist, an error is reported. |
som installation describe <installation-id> |
Show detailed information about the selected installation. | Reports the product name, feed URL, installation ID, installation paths, registered profiles (with the active one marked), and available executables. |
som installation activate <installation-id> |
Activate the selected installation. | Marks the installation identified by |
som installation deactivate <installation-id> |
Deactivate the selected installation. | Marks the installation identified by |
som installation repair <installation-id> |
Repair the selected installation. | Checks the installation identified by If the installation does not need repair, the command reports this and leaves it unchanged. The command reports an error if the installation cannot be found or a required repair fails. |
Executable-related commandsđź”—
These commands interact with an installation’s available executables.
| Command | Short description | Details / usage notes |
|---|---|---|
som ls |
List available executables. | Lists the available executables for all installed products, as well as the products’ feeds. |
som launch |
Launch an executable. | Launch an executable provided by one of the installed products. Use som ls or som installation describe to find available executables. Use the --profile argument to launch the executable with another profile than the currently selected one. |
License-related commandsđź”—
These commands are used to manage the licenses used by existing installations. To get an installation’s id, use som installation list.
Note: som license <subcommand> and som licenses <subcommand> can be used interchangeably.
| Command | Short description | Details / usage notes |
|---|---|---|
som license list <installation-id> |
List all license files registered for the selected installation. | If no licenses have been added yet, an empty list is reported. |
som license add <installation-id> [license-file] |
Add a license file to the selected installation. | If a license file path is given, the file is copied into the installation. If no path is given, the license content is read from standard input. The license name defaults to “license.dat” and can be changed with –license-name. The name must begin with “license” and end with “.dat”. |
som license remove <installation-id> <license-name> |
Remove a license file from the selected installation. | The license name is the file name as reported by “som license list |
Profile-related commandsđź”—
These commands are used to manage the profiles used by current installations. To get an installation’s id, use som installation list.
Note: som profile <subcommand> and som profiles <subcommand> can be used interchangeably.
| Command | Short description | Details / usage notes |
|---|---|---|
som profile list <installation-id> |
List all profiles registered for the selected installation. | If no profiles have been added yet, an empty list is reported. |
som profile describe <installation-id> <profile> |
Show information about a profile of the selected installation. | |
som profile select <installation-id> <profile> |
Activate a profile of the selected installation. | |
som profile import <installation-id> <profile path> [profile name] |
Import profiles into selected installation. | The profiles should be .yaml, .yml or .json files. The filename will be used as name for the imported profile. If a user profile with the same name already exists, use the --overwrite flag to replace it. System profiles cannot be overwritten. |
som profile export <installation-id> <profile> [profile destination] |
Export the selected profile as a file. | The destination can be a directory, or it can specify the full path to the destination file (in .yaml, .yml or .json format). If no file name is given, the default will be the profile’s name and .yaml formatting. If the destination is omitted, Software Manager will use the current working directory. |
som profile copy <installation-id> <from profile> <to profile> |
Create a copy of the selected profile. | The created copy will always be a user profile, even if the source was a system profile. |
som profile remove <installation-id> <profile> |
Remove the selected user profile. |