Installing and uninstalling🔗
Component and license packages can be installed and uninstalled
graphically through the Engine’s management
interface. Another option is to use
va-pkg command-line tool, which we’ll be using here.
va-pkg is in the
bin directory of the VisionAppster
installation. To use it, first open VisionAppster command prompt from
the start menu.
In a user-scope Linux installation,
va-pkg will be placed in
$HOME/.local/bin. If this directory is in your
PATH, this command will give you basic usage instructions:
If you installed the Flatpak version to the system scope on Linux, you may want to set up an alias first:
alias va-pkg="flatpak run --command=va-pkg com.visionappster.Builder"
Installing from the VisionAppster Store🔗
This fetches an authorization token from VisionAppster’s server and
saves it locally. If you are familiar with the
sudo command, the
authorization token works analogously: it is valid for a limited period
of time only and will be automatically refreshed whenever you use it.
You need to log in again after a period of inactivity. If you don’t
explicitly log in or if the token expires, commands that require
authorization will ask your login credentials. To explicitly log out,
To install the newest version of a component from the store:
va-pkg install com.example.component
Install the newest version within a specific major version:
va-pkg install com.example.component/1
Install a specific version:
va-pkg install com.example.component/1.2.3
Install to system-scope service:
va-pkg install --system com.example.component
Note that you can download and install all components that are not cloud-only. Unless the component is free, you will however not be able to run it without a valid license. To install your purchased licenses locally:
va-pkg license refresh
Installing other packages🔗
Install a downloaded package:
va-pkg install com.example.component-1.2.3.vapkg
Install Python modules:
va-pkg install python:numpy python:opencv-python
NOTE! You need to install Python extension first to enable Python module support:
va-pkg install com.visionappster.extensions.python
Install a component package to a remote computer running a VisionAppster Engine instance in the default port (2015):
va-pkg install --remote 192.168.1.23 com.example.component-1.2.3.vapkg
Install from VisionAppster Store to a remote computer using a non-standard port:
va-pkg install --remote http://192.168.1.23:2016 com.example.component
Uninstall the only installed version of a component:
va-pkg uninstall com.example.component
Uninstall a specific major version of a component:
va-pkg uninstall com.example.component/1
Uninstall a Python module:
va-pkg uninstall python:opencv-python
Uninstall from a remote computer:
va-pkg uninstall --remote 192.168.1.23 com.example.component
va-pkg lets one to install components in three different scopes:
--local: Install to user’s home directory. This is the default. On Linux, these components will be available in the Builder and in an Engine service that is run in the user scope. There are no user-scope services in Windows, so
--localmeans the Builder only.
--system: Install to a system-wide component directory that is used by the VisionAppster Engine service. This works for system-scope services on both Linux and Windows. Installing to the system scope requires administrator (root) privileges. On Linux, use the
sudocommand. On Windows, run the command prompt as Administrator.
--remote: Install to a remote computer. The installation ends up in either local or system scope depending on who is listening to the target TCP port on the server. By default, the VisionAppster Engine service listens port 2015, and that is also what the
--remoteswitch uses unless specified otherwise. Note that disabling remote management (e.g. by using
api_init.qml) makes it impossible to install packages remotely.
va-pkg cannot make changes that would cross a container border.
va-pkgis run inside Flatpak, it cannot make changes to the system scope (
If the VisionAppster Engine service runs in a container,
va-pkgrun in the same machine but outside of the container may not be able to make changes to the component database used by the container. This depends on the way you mounted volumes to the container. In this case, the preferred way is to manage the component database in the container through its HTTP interface using the
Raw HTTP API🔗
va-pkg requires installing the VisionAppster runtime.
Sometimes, this is not feasible. Luckily, using the HTTP interface of
the Engine is simple enough to be used from the command line:
# Address of remote host remote=localhost:2015 # Name of package file package_file="com.example.component-1.2.3.vapkg" # Upload file using HTTP PUT curl -T "$package_file" "http://$remote/packages/$package_file" # Install curl "http://$remote/componentdb/functions/installUploadedPackage?$package_file" # Uninstall curl "http://$remote/componentdb/functions/uninstallComponent?com.example.component/1"