Can't load helm as a plugin for the REAPER daw - nixpkgs

using nixpkgs helm and reaper

expected output: REAPER loads helm as a vst plugin

what happened: reaper didn’t load helm after adding ~/.nix-profile/bin(or /helm) as one of the vst pathes and running the re-scan

i also tried: adding the /nix/store/*helm as one of the vst pathes and restarting REAPER before and after a re-scan

I never used reaper, but I think you want to add the folder ~/.nix-profile/lib/vst if you installed it with nix-env. Note that some software read the VST_PATH environment variable, so you can configure it with something like:

  environment.variables = {
    LV2_PATH = "~/.nix-profile/lib/lv2/:~/.lv2:/nix/var/nix/profiles/default/lib/lv2:/var/run/current-system/sw/lib/lv2";
    VST_PATH = "~/.nix-profile/lib/vst/:~/.vst:/nix/var/nix/profiles/default/lib/vst:/var/run/current-system/sw/lib/vst";
    LXVST_PATH = "~/.nix-profile/lib/lxvst/:~/.lxvst:/nix/var/nix/profiles/default/lib/lxvst:/var/run/current-system/sw/lib/lxvst";
    LADSPA_PATH = "~/.nix-profile/lib/ladspa/:~/.ladspa:/nix/var/nix/profiles/default/lib/ladspa:/var/run/current-system/sw/lib/ladspa";
    DSSI_PATH = "~/.nix-profile/lib/dssi/:~/.dssi:/nix/var/nix/profiles/default/lib/dssi:/var/run/current-system/sw/lib/dssi";
  };

I forgot to mention i installed it using home-manager. I’ll try that, thanks

@tobiasBora I added the env-vars using home.sessionVariables but no luck. helm isn’t in the vst/lv2 pathes, it’s on ~/.nix-profile/bin/helm and i don’t know how to add it as a vst or lv2 plugin (FYI helm can be run standalone but can also be loaded as an LV2, VST, VST3 or AU plugin)…

So I tried to add the *helm*/lib/lv2 path directly in reaper, without using any sessionVariables, rescanned, and the plugins is detected:

I used the full absolute path here because I was testing it in a nix shell, but you should be able to something like /home/yourname/.nix-profile/lib/lv2 (double check if the folder helm is present in case home manager puts it somewhere else… also, avoid using ~/ as a shortcut for your home as I’m not sure if reaper can interpret it).

Then, it seems like I can add this virtual instrument as expected:

image

Is it what you are trying to do? If not can you explain more precisely what you are aiming after?

If you want to use (LX)VST instead of LV2, the path is lib/lxvst instead of lib/lv2:

$ ls /nix/store/b98w26ixa4adx8v44czd08clk1bjxb82-helm-0.9.0/lib
lv2  lxvst

Demo (again, don’t use the path to the store, but something like /home/yourname/.nix-profile/lib/lxvst):

and it appears as expected:

image

I can then insert a new midi item, edit in in the builtin midi editor, and enjoy my keyboard:

As far as I understand, the bin folder is of no help in that case as you don’t want to run helm standalone, but as a plugin in reaper.

I see, i thought i could load the standalone as a plugin.

helm was in /home/yourname/.nix-profile/lib/lv2 and i got it working by adding it to the lv2 path in REAPER settings, the sessionVariables weren’t working.

Anyway it’s working now, if i load the path from REAPER. Thanks for the help :smiley: