Skip to content

Goli4thus/linvstmanage

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

linvstmanage

NEW: There's a successor now: LinVstManager


Python script to manage Windows VSTs bridged with LinVst according to a config file.

Features

  • Update/Create *.so files for all VSTs listed in config file
  • Enable/Disable VSTs by adding/removing a softlink to the respective *.so file. All softlinks are mapped to a link folder which can be scanned by your preferred DAW.
  • Detection and optional removal of orphaned *.so-links/files in link folder

Dependencies

  • python3

Usage

Setup the config file

It's an ini-format config file with basically two parts:

1) General settings
2) Variable amount of sections that specify one or more VST-dlls using a folder path and their respective names

Further documentation can be found within the config file linvstmanage.ini itself.

Hint: The config file is parsed once at script startup. Therefore changes to the config file will only be considered after a restart of the script.

Run the script

Simply run linvstmanage-cli from the console. It will look for the config file at two possible locations:

1) ~/.config/linvst/manage/linvstmanage.ini
2) current directory

If you'd prefer a different location you could always symlink your config file to one of these locations.

i.e. ln -s ~/myconfigs/linvstConfig.ini ~/.config/linvst/manage/linvstmanage.ini

Further notes

VST states

Status view

State Meaning
Enabled VST is enabled via active softlink
Disabled VST is disabled due to missing softlink
Mismatch Mismatch between linvst.so template and *.so file associated with VST-dll
No *.so VST-dll has no associated VST-so file
Notfound VST-dll can't be found using the specified config path
Error Specified plugin in config file is not of type 'dll'

Help view

Typical setup

Different "VST.dll"s are installed into different locations due to making use of different wine prefixes per plugin vendor (i.e. to allow for different dll overrides on a vendor basis). This gives us a number of different folders containing one or more "VST.dll"s.

For each such folder we create a section within the config file linvstmanage.ini (important: section names must be unique). Each section is defined by it's path and one or more "VST.dll"s.

After starting linvstmanage-cli and assuming the config file is correctly setup, the status view will show an entry for each VST.dll. Initially the status of each will be No *.so (if this is a fresh setup without prior LinVst converts).

Performing an update will create accompaning VST-so files for each VST.dll. This results in the status of all VSTs going to Disabled.

After the VSTs can be Enabled, which creates symlinks within the link folder referencing all previously created VST-so files.

This central link folder can be scanned by whatever DAW you are using.

Further usecases

LinVst version mismatch

In case of updating or chaning versions of LinVst it can happend that one ends up with a version mismatch between the installed LinVst server executables and the VST-so files associated with "VST-dll"s. In order to clean this mess up it's enough to run linvstmanage-cli and perform and update (assuming the mismatch was due to a managed VST).

Quick enable/disable of VSTs in the DAW

If one wanted to temporarily disable and later on enable a VST managed by LinVst it either meant: - deleting the so-files or symlinks manually or - having your own script that could do this or - a combination of both

With this script it's centrally managed and pretty fast to handle this usecase.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages