| @@ -81,6 +81,15 @@ def findBinaries(binPath, OS): | |||||
| return binaries | return binaries | ||||
| def findVST3Binaries(binPath): | |||||
| binaries = [] | |||||
| for root, dirs, files in os.walk(binPath): | |||||
| for name in [name for name in files if name.lower().endswith(".vst3")]: | |||||
| binaries.append(os.path.join(root, name)) | |||||
| return binaries | |||||
| def findLV2Bundles(bundlePath): | def findLV2Bundles(bundlePath): | ||||
| bundles = [] | bundles = [] | ||||
| @@ -90,11 +99,11 @@ def findLV2Bundles(bundlePath): | |||||
| return bundles | return bundles | ||||
| def findMacVSTBundles(bundlePath): | |||||
| def findMacVSTBundles(bundlePath, isVST3): | |||||
| bundles = [] | bundles = [] | ||||
| for root, dirs, files in os.walk(bundlePath): | for root, dirs, files in os.walk(bundlePath): | ||||
| for name in [name for name in dirs if name.lower().endswith(".vst")]: | |||||
| for name in [name for name in dirs if name.lower().endswith(".vst3" if isVST3 else ".vst")]: | |||||
| bundles.append(os.path.join(root, name)) | bundles.append(os.path.join(root, name)) | ||||
| return bundles | return bundles | ||||
| @@ -837,7 +846,7 @@ class SearchPluginsThread(QThread): | |||||
| for iPATH in VST_PATH: | for iPATH in VST_PATH: | ||||
| if MACOS and not isWine: | if MACOS and not isWine: | ||||
| binaries = findMacVSTBundles(iPATH) | |||||
| binaries = findMacVSTBundles(iPATH, False) | |||||
| else: | else: | ||||
| binaries = findBinaries(iPATH, OS) | binaries = findBinaries(iPATH, OS) | ||||
| for binary in binaries: | for binary in binaries: | ||||
| @@ -876,9 +885,9 @@ class SearchPluginsThread(QThread): | |||||
| for iPATH in VST3_PATH: | for iPATH in VST3_PATH: | ||||
| if MACOS and not isWine: | if MACOS and not isWine: | ||||
| binaries = findMacVSTBundles(iPATH) | |||||
| binaries = findMacVSTBundles(iPATH, True) | |||||
| else: | else: | ||||
| binaries = findBinaries(iPATH, OS) | |||||
| binaries = findVST3Binaries(iPATH) | |||||
| for binary in binaries: | for binary in binaries: | ||||
| if binary not in vst3Binaries: | if binary not in vst3Binaries: | ||||
| vst3Binaries.append(binary) | vst3Binaries.append(binary) | ||||
| @@ -390,7 +390,7 @@ class CarlaSettingsW(QDialog): | |||||
| dssis = toList(settings.value(CARLA_KEY_PATHS_DSSI, gCarla.DEFAULT_DSSI_PATH)) | dssis = toList(settings.value(CARLA_KEY_PATHS_DSSI, gCarla.DEFAULT_DSSI_PATH)) | ||||
| lv2s = toList(settings.value(CARLA_KEY_PATHS_LV2, gCarla.DEFAULT_LV2_PATH)) | lv2s = toList(settings.value(CARLA_KEY_PATHS_LV2, gCarla.DEFAULT_LV2_PATH)) | ||||
| vsts = toList(settings.value(CARLA_KEY_PATHS_VST, gCarla.DEFAULT_VST_PATH)) | vsts = toList(settings.value(CARLA_KEY_PATHS_VST, gCarla.DEFAULT_VST_PATH)) | ||||
| vst3s = toList(settings.value(CARLA_KEY_PATHS_VST, gCarla.DEFAULT_VST3_PATH)) | |||||
| vst3s = toList(settings.value(CARLA_KEY_PATHS_VST3, gCarla.DEFAULT_VST3_PATH)) | |||||
| aus = toList(settings.value(CARLA_KEY_PATHS_AU, gCarla.DEFAULT_AU_PATH)) | aus = toList(settings.value(CARLA_KEY_PATHS_AU, gCarla.DEFAULT_AU_PATH)) | ||||
| csds = toList(settings.value(CARLA_KEY_PATHS_CSD, gCarla.DEFAULT_CSOUND_PATH)) | csds = toList(settings.value(CARLA_KEY_PATHS_CSD, gCarla.DEFAULT_CSOUND_PATH)) | ||||
| gigs = toList(settings.value(CARLA_KEY_PATHS_GIG, gCarla.DEFAULT_GIG_PATH)) | gigs = toList(settings.value(CARLA_KEY_PATHS_GIG, gCarla.DEFAULT_GIG_PATH)) | ||||
| @@ -414,6 +414,20 @@ else: | |||||
| DEFAULT_SFZ_PATH = HOME + "/.sounds/sfz" | DEFAULT_SFZ_PATH = HOME + "/.sounds/sfz" | ||||
| DEFAULT_SFZ_PATH += ":/usr/share/sounds/sfz" | DEFAULT_SFZ_PATH += ":/usr/share/sounds/sfz" | ||||
| if not WINDOWS: | |||||
| winePrefix = os.getenv("WINEPREFIX") | |||||
| if not winePrefix: | |||||
| winePrefix = HOME + "/.wine" | |||||
| if os.path.exists(winePrefix): | |||||
| DEFAULT_VST_PATH += ":" + winePrefix + "/drive_c/Program Files/VstPlugins" | |||||
| DEFAULT_VST3_PATH += ":" + winePrefix + "/drive_c/Program Files/Common Files/VST3" | |||||
| if kIs64bit and os.path.exists(winePrefix + "/drive_c/Program Files (x86)"): | |||||
| DEFAULT_VST_PATH += ":" + winePrefix + "/drive_c/Program Files (x86)/VstPlugins" | |||||
| DEFAULT_VST3_PATH += ":" + winePrefix + "/drive_c/Program Files (x86)/Common Files/VST3" | |||||
| # ------------------------------------------------------------------------------------------------------------ | # ------------------------------------------------------------------------------------------------------------ | ||||
| # Default Plugin Folders (set) | # Default Plugin Folders (set) | ||||