Studio Server Client

Studio Server Client is a free native Linux CLI tool (terminal application) that enables individuals and companies that are using the amazing DaVinci Resolve software suite for video editing and colour grading to very easily setup and manage their own central dedicated project server running on Linux without having to use WINE or any other Windows Application emulation tool.

This tool has been developed as BlackMagic Design do not provide a first-party Linux version of their DaVinci Resolve Project Server software.

This tool simplifies and automates the creation and management of one or more DaVinci Resolve Project databases on a Linux server. This software is also designed to set up, automate and manage project database backups with ease too.

Even if you aren't collaborating with other team members on the same project(s) or you work by yourself, using a server to host your video, VFX and colour grading projects has many additional benefits such as providing a great way for users to switch and work from different locations and/or computers, in the same office or over the internet. Using a central server that is configured to automatically back-up your databases also means that you to never having to worry about forgetting to take manual local back-ups as this software automates this process in the background for you.

This software can be installed on a headless server (no monitor attached or graphical desktop environment) - you can of-course use a desktop environment too if you would like but this tool is designed to be run from the terminal (the way that most Linux Server administrators prefer to run things!)

We now have a Dockerized version of this software (which includes a web-interface and can easily be deployed on many NAS devices too), if you would like more information please visit our Studio Server page.

Installation

All you need to get going is to have the PostgreSQL database software installed on your Linux Server (we recommend running Ubuntu Linux 22.04 LTS) and configured to allow remote database connections.

As soon as you have the PostgreSQL database engine installed, you can simply run the following command at the terminal to install this software:

bash -c "$(wget https://wirebear.co.uk/software/studio-server-client/install -O -)"

If you are new to Linux or would like to follow a full, step-by-step tutorial, including how to install and use this software (as well as how to install and set up the PostgreSQL database engine), then please check out this video tutorial on YouTube.

Features

  • Easy setup and configuration of one or more project databases
  • Automatically creates database users and roles
  • One-click set-up of nightly scheduled backups per database
  • Automatic purge (clean-up) of old databases backups - your server will never run out of space!
  • Ability to set custom automated backup schedules
  • Ability to instantly (manually) backup and restore one or more project databases
  • Easily reset database passwords
  • Cloud-friendly database backups - You can set up your server to upload your backups to cloud storage for extra protection!

Like the software?

If by using this tool, I have made your life a little easier, and you would like to show your appreciation and help fund the future development of this tool, please feel free to send me a small donation on PayPal.

Need help?

If you need help installing or running this software (including the installation of PostgreSQL), check out this YouTube video where we walk you through the process of installing it and using the software on a Ubuntu Linux Server!

If you still need help and have followed the video tutorial feel free to contact us.

Command Index

All attempts have been made to make each command as simple and easy to use as possible, see the below list of commands, their actions and examples of their use; you can also see a cut down version of this list from your terminal by running the studio --help command!

Action Syntax / Notes / Example
Create a project database (with a random password) Syntax
studio --create {database-name}
Notes

This will create a project database and user account (the username will be the same as the database name), by not specifying a password, the tool will automatically generate a random password.

Example
studio --create wirebear
Create a project database (with specific password) Syntax
studio --create {database-name} {password}
Notes

This will create a project database and user account (the username will be the same as the database name) with the specified password.

Example
studio --create wirebear MyStr0ngPassw0rd
Reset a database password Syntax
studio --reset-password {database-name} {new-password}
Notes

This will reset the database (user account) password be aware however that you will need to change this in DaVinci Resolve the next time you try to connect to this specific project database it up as it will fail to connect as DaVinci Resolve will still be configured to use the old password!

Example
studio --reset-password wirebear MyNEWpassword
List all existing project databases Syntax
studio --list
Notes

This will show a list of all existing project databases that you have set up and that are running on your server.

Example
studio --list
Delete a project database Syntax
studio --delete {database-name}
Notes

Deletes the project database and user in addition to any schedule backup tasks (this does however leave any existing backups in place of which will then automatically be deleted once they become too old and exceed the number of days that you have configured to purge old backups)

Example
studio --delete wirebear
Manually backup a project database Syntax
studio --backup {database-name}
Notes

Will instantly run a backup of your project database and add it to your collection of backups (so that you can restore at a later date if you would like).

Example
studio --backup wirebear
View list of available backups for a specific database Syntax
studio --backup-list {database-name}
Notes

This will show a list of all backups including the date and time they were taken for a specific project database, these backup archives are ready for you to restore from if required.

Example
studio --backup-list wirebear
Purge backups for a database older than X days Syntax
studio --backup-clean {database-name} {keep-days}
Notes

If you don't want to wait for the automatic backup purge (by default backups older than 30 days will be deleted automatically), or you want to free up some space quickly, you can run this command. In the example below, all backups that are older than 5 days will be deleted instantly.

Example
studio --backup-clean 5
Restore a database Syntax
studio --restore {database-name} {archive-name}
Notes

This command will instantly restore a project database using the specified backup file, in the example below, this will restore the database "wirebear" using the backup archive name "wirebear_20220923_221000"; if you don't know the archive name, you can use the studio --backup-list {database-name} command to see all available archives. When restoring a database ALL users should exit the DaVinci Resolve application (or at least switch the project database) before you attempt to run the restore!

Example
studio --restore wirebear wirebear_20220923_221000
Enable automatic nightly backups for a database Syntax
studio --schedule {database-name}
Notes

This will set up an automatic (by default this will be nightly at 00:00) backup task that will run and backup your project database. You can use the studio --backup-list {database-name} command to confirm it's working if you wish!

Example
studio --schedule wirebear
Enable automatic backups using a custom schedule Syntax
studio --schedule {database-name} "{cron-expression}"
Notes

This will set up a custom backup task that will run and backup your project database using the CRON expression you set. In the example below, our server will automatically back-up our "wirebear" database at 5 minutes past the hour. You can use the studio --backup-list {database-name} command to confirm it's working if you wish!

Example
studio --schedule wirebear "5 * * * *"
Show help and syntax examples Syntax
studio --help
Notes

This will output the list of available commands and what each one does.

Example
studio --help
Show installed version Syntax
studio --version
Notes

This will output the currently installed version of this software.

Example
studio --version
Check for software updates Syntax
studio --check-updates
Notes

You can run this command to check for any new software updates for this tool.

Example
studio --check-updates

Have some suggestions?

We have tried to make this tool as simple and light-weight as possible by automating a lot of "things" behind the scenes. If however you feel that you have a great idea that you would like to see implemented into this software please contact us and let us know!

Scroll to top