Filesystem Locations
From Lv2
Contents |
[edit] LV2 FHS (Filesystem Heirarchy Standard)
Guidelines (especially for packagers) for installing LV2 related data (e.g. plugins).
[edit] User/System Data
Environment variables on UNIX and OSX are colon-delimited, searched from left to right, identical to the POSIX $PATH variable. On Windows they are semicolon-delimited.
Any data related to LV2 should be stored in bundles whenever possible (i.e. always, without a good reason to do otherwise).
- Bundles
- Directories under which LV2 plugin bundles (e.g. foo.lv2) are found.
- Environment variable: LV2_PATH (colon- or semicolon-delimited list of directories)
- User specific default:
- Unix: ~/.lv2
- OSX: ~/Library/Audio/Plug-ins/LV2
- System wide default:
- Unix: PREFIX/lib/lv2
- OSX: /Library/Audio/Plug-Ins/LV2
PREFIX above should be /usr/local by default in all source distributions.
[edit] Search Path
The environment variable LV2_PATH is the default search path for LV2 plugins. Like the PATH variable for programs, it is colon-delimited on Unix and OSX, semicolon-delimited on Windows, and searched from left to right. Based on the above locations, the default plugin search path should be:
- Unix:
- ~/.lv2:/usr/local/lib/lv2:/usr/lib/lv2
- Apple Mac OSX:
- ~/Library/Audio/Plug-Ins/LV2:/Library/Audio/Plug-Ins/LV2:/usr/local/lib/lv2:/usr/lib/lv2
* TODO * Windows?
[edit] Notes
- All installable LV2 data (plugins, extra data, extensions, etc) MUST be capable of being installed in both user specific locations and system wide locations.
- Bundle directory names and ontology file names are not relevant in any way, and may be different from system to system. Users may change them freely for tidyness or other reasons without breaking anything. Hosts MUST NOT attach significance to bundle or file names between invocations (e.g. in saved files).

