| @@ -12,6 +12,13 @@ SED_PREFIX = $(shell echo $(PREFIX) | sed "s/\//\\\\\\\\\//g") | |||||
| PYUIC = pyuic4 | PYUIC = pyuic4 | ||||
| PYRCC = pyrcc4 -py3 | PYRCC = pyrcc4 -py3 | ||||
| # Detect X11 rules dir | |||||
| ifeq "$(wildcard /etc/X11/xinit/xinitrc.d/ )" "" | |||||
| X11_RC_DIR = $(DESTDIR)/etc/X11/Xsession.d/ | |||||
| else | |||||
| X11_RC_DIR = $(DESTDIR)/etc/X11/xinit/xinitrc.d/ | |||||
| endif | |||||
| all: UI RES CPP | all: UI RES CPP | ||||
| @@ -226,6 +233,7 @@ install: | |||||
| install -d $(DESTDIR)$(PREFIX)/share/cadence/pulse2jack/ | install -d $(DESTDIR)$(PREFIX)/share/cadence/pulse2jack/ | ||||
| install -d $(DESTDIR)$(PREFIX)/share/cadence/icons/ | install -d $(DESTDIR)$(PREFIX)/share/cadence/icons/ | ||||
| install -d $(DESTDIR)$(PREFIX)/share/cadence/templates/ | install -d $(DESTDIR)$(PREFIX)/share/cadence/templates/ | ||||
| install -d $(X11_RC_DIR) | |||||
| # Install script files and binaries | # Install script files and binaries | ||||
| install -m 755 \ | install -m 755 \ | ||||
| @@ -299,8 +307,11 @@ install: | |||||
| install -m 755 src/*.py $(DESTDIR)$(PREFIX)/share/cadence/src/ | install -m 755 src/*.py $(DESTDIR)$(PREFIX)/share/cadence/src/ | ||||
| install -m 755 c++/carla-backend/*.so $(DESTDIR)$(PREFIX)/lib/carla/ | install -m 755 c++/carla-backend/*.so $(DESTDIR)$(PREFIX)/lib/carla/ | ||||
| # Install addtional stuff | |||||
| # Install addtional stuff for Cadence | |||||
| install -m 644 data/pulse2jack/* $(DESTDIR)$(PREFIX)/share/cadence/pulse2jack/ | install -m 644 data/pulse2jack/* $(DESTDIR)$(PREFIX)/share/cadence/pulse2jack/ | ||||
| install -m 644 data/99cadence-session-start $(X11_RC_DIR) | |||||
| # Install addtional stuff for Claudia | |||||
| cp -r data/icons/* $(DESTDIR)$(PREFIX)/share/cadence/icons/ | cp -r data/icons/* $(DESTDIR)$(PREFIX)/share/cadence/icons/ | ||||
| cp -r data/templates/* $(DESTDIR)$(PREFIX)/share/cadence/templates/ | cp -r data/templates/* $(DESTDIR)$(PREFIX)/share/cadence/templates/ | ||||
| @@ -317,7 +328,8 @@ install: | |||||
| $(DESTDIR)$(PREFIX)/bin/claudia \ | $(DESTDIR)$(PREFIX)/bin/claudia \ | ||||
| $(DESTDIR)$(PREFIX)/bin/claudia-launcher \ | $(DESTDIR)$(PREFIX)/bin/claudia-launcher \ | ||||
| $(DESTDIR)$(PREFIX)/bin/carla \ | $(DESTDIR)$(PREFIX)/bin/carla \ | ||||
| $(DESTDIR)$(PREFIX)/bin/carla-control | |||||
| $(DESTDIR)$(PREFIX)/bin/carla-control \ | |||||
| $(X11_RC_DIR)/99cadence-session-start | |||||
| uninstall: | uninstall: | ||||
| rm -f $(DESTDIR)$(PREFIX)/bin/cadence* | rm -f $(DESTDIR)$(PREFIX)/bin/cadence* | ||||
| @@ -346,5 +358,6 @@ uninstall: | |||||
| rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/claudia-launcher.svg | rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/claudia-launcher.svg | ||||
| rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/carla.svg | rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/carla.svg | ||||
| rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/carla-control.svg | rm -f $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/carla-control.svg | ||||
| rm -f $(X11_RC_DIR)/99cadence-session-start | |||||
| rm -rf $(DESTDIR)$(PREFIX)/lib/carla/ | rm -rf $(DESTDIR)$(PREFIX)/lib/carla/ | ||||
| rm -rf $(DESTDIR)$(PREFIX)/share/cadence/ | rm -rf $(DESTDIR)$(PREFIX)/share/cadence/ | ||||
| @@ -0,0 +1,24 @@ | |||||
| # Cadence Session Startup | |||||
| INSTALL_PREFIX="X-PREFIX-X" | |||||
| # Export Plugins PATHs | |||||
| LADSPA_PATH_str=`$INSTALL_PREFIX/bin/cadence-session-start --printLADSPA_PATH` | |||||
| DSSI_PATH_str=`$INSTALL_PREFIX/bin/cadence-session-start --printDSSI_PATH` | |||||
| LV2_PATH_str=`$INSTALL_PREFIX/bin/cadence-session-start --printLV2_PATH` | |||||
| VST_PATH_str=`$INSTALL_PREFIX/bin/cadence-session-start --printVST_PATH` | |||||
| export LADSPA_PATH="$LADSPA_PATH_str" | |||||
| export DSSI_PATH="$DSSI_PATH_str" | |||||
| export LV2_PATH="$LV2_PATH_str" | |||||
| export VST_PATH="$VST_PATH_str" | |||||
| # Start JACK (or not), according to user settings | |||||
| CADENCE_SESSION="$INSTALL_PREFIX/bin/cadence-session-start -s" | |||||
| exec $CADENCE_SESSION & | |||||
| unset LADSPA_PATH_str | |||||
| unset DSSI_PATH_str | |||||
| unset LV2_PATH_str | |||||
| unset VST_PATH_str | |||||
| unset INSTALL_PREFIX | |||||
| @@ -0,0 +1,10 @@ | |||||
| #!/bin/bash | |||||
| if [ -f /usr/bin/python3 ]; then | |||||
| PYTHON=/usr/bin/python3 | |||||
| else | |||||
| PYTHON=python | |||||
| fi | |||||
| INSTALL_PREFIX="X-PREFIX-X" | |||||
| exec $PYTHON $INSTALL_PREFIX/share/cadence/src/cadence_session_start.py "$@" | |||||
| @@ -0,0 +1,127 @@ | |||||
| #!/usr/bin/env python3 | |||||
| # -*- coding: utf-8 -*- | |||||
| # Imports (Global) | |||||
| import dbus, os, sys | |||||
| from PyQt4.QtCore import QCoreApplication, QProcess, QSettings | |||||
| from time import sleep | |||||
| # Imports (Custom Stuff) | |||||
| from shared import * | |||||
| # Cadence Global Settings | |||||
| GlobalSettings = QSettings("Cadence", "GlobalSettings") | |||||
| DEFAULT_LADSPA_PATH = "/usr/lib/ladspa:/usr/local/lib/ladspa:/usr/lib32/ladspa:"+HOME+"/.ladspa" | |||||
| DEFAULT_DSSI_PATH = "/usr/lib/dssi:/usr/local/lib/dssi:/usr/lib32/dssi:"+HOME+"/.dssi" | |||||
| DEFAULT_LV2_PATH = "/usr/lib/lv2:/usr/local/lib/lv2:"+HOME+"/.lv2" | |||||
| DEFAULT_VST_PATH = "/usr/lib/vst:/usr/local/lib/vst:/usr/lib32/vst:"+HOME+"/.vst" | |||||
| # DBus | |||||
| class DBus(object): | |||||
| __slots__ = [ | |||||
| 'bus', | |||||
| 'a2j', | |||||
| 'jack' | |||||
| ] | |||||
| DBus = DBus() | |||||
| # Start JACK, A2J and Pulse, according to user settings | |||||
| def startSession(): | |||||
| pass | |||||
| def printLADSPA_PATH(): | |||||
| EXTRA_LADSPA_DIRS = GlobalSettings.value("AudioPlugins/EXTRA_LADSPA_PATH", "", type=str).split(":") | |||||
| LADSPA_PATH_str = DEFAULT_LADSPA_PATH | |||||
| for i in range(len(EXTRA_LADSPA_DIRS)): | |||||
| if (EXTRA_LADSPA_DIRS[i]): | |||||
| LADSPA_PATH_str += ":"+EXTRA_LADSPA_DIRS[i] | |||||
| print(LADSPA_PATH_str) | |||||
| def printDSSI_PATH(): | |||||
| EXTRA_DSSI_DIRS = GlobalSettings.value("AudioPlugins/EXTRA_DSSI_PATH", "", type=str).split(":") | |||||
| DSSI_PATH_str = DEFAULT_DSSI_PATH | |||||
| for i in range(len(EXTRA_DSSI_DIRS)): | |||||
| if (EXTRA_DSSI_DIRS[i]): | |||||
| DSSI_PATH_str += ":"+EXTRA_DSSI_DIRS[i] | |||||
| print(DSSI_PATH_str) | |||||
| def printLV2_PATH(): | |||||
| EXTRA_LV2_DIRS = GlobalSettings.value("AudioPlugins/EXTRA_LV2_PATH", "", type=str).split(":") | |||||
| LV2_PATH_str = DEFAULT_LV2_PATH | |||||
| for i in range(len(EXTRA_LV2_DIRS)): | |||||
| if (EXTRA_LV2_DIRS[i]): | |||||
| LV2_PATH_str += ":"+EXTRA_LV2_DIRS[i] | |||||
| print(LV2_PATH_str) | |||||
| def printVST_PATH(): | |||||
| EXTRA_VST_DIRS = GlobalSettings.value("AudioPlugins/EXTRA_VST_PATH", "", type=str).split(":") | |||||
| VST_PATH_str = DEFAULT_VST_PATH | |||||
| for i in range(len(EXTRA_VST_DIRS)): | |||||
| if (EXTRA_VST_DIRS[i]): | |||||
| VST_PATH_str += ":"+EXTRA_VST_DIRS[i] | |||||
| print(VST_PATH_str) | |||||
| def printArguments(): | |||||
| print("\t-s|--start \tStart session") | |||||
| print("") | |||||
| print("\t-h|--help \tShow this help message") | |||||
| print("\t-v|--version\tShow version") | |||||
| def printError(cmd): | |||||
| print("Invalid arguments") | |||||
| print("Run '%s -h' for help" % (cmd)) | |||||
| def printHelp(cmd): | |||||
| print("Usage: %s [cmd]" % (cmd)) | |||||
| printArguments() | |||||
| def printVersion(): | |||||
| print("Cadence version %s" % (VERSION)) | |||||
| print("Developed by falkTX and the rest of the KXStudio Team") | |||||
| #--------------- main ------------------ | |||||
| if __name__ == '__main__': | |||||
| # App initialization | |||||
| app = QCoreApplication(sys.argv) | |||||
| app.setApplicationName("Cadence") | |||||
| app.setApplicationVersion(VERSION) | |||||
| app.setOrganizationName("Cadence") | |||||
| # Check arguments | |||||
| cmd = sys.argv[0] | |||||
| if len(app.arguments()) == 1: | |||||
| printHelp(cmd) | |||||
| elif len(app.arguments()) == 2: | |||||
| arg = app.arguments()[1] | |||||
| if arg == "--printLADSPA_PATH": | |||||
| printLADSPA_PATH() | |||||
| elif arg == "--printDSSI_PATH": | |||||
| printDSSI_PATH() | |||||
| elif arg == "--printLV2_PATH": | |||||
| printLV2_PATH() | |||||
| elif arg == "--printVST_PATH": | |||||
| printVST_PATH() | |||||
| elif arg in ["-s", "--s", "-start", "--start"]: | |||||
| sys.exit(startSession()) | |||||
| elif arg in ["-h", "--h", "-help", "--help"]: | |||||
| printHelp(cmd) | |||||
| elif arg in ["-v", "--v", "-version", "--version"]: | |||||
| printVersion() | |||||
| else: | |||||
| printError(cmd) | |||||
| else: | |||||
| printError(cmd) | |||||
| # Exit | |||||
| sys.exit(0) | |||||