From 6f15448afb63b288a9d091756d73debccaf7239e Mon Sep 17 00:00:00 2001 From: Yann Collette Date: Tue, 20 Jun 2017 21:48:20 +0200 Subject: [PATCH 1/2] patches to support fedora 25 --- src/claudia_database.py | 2 ++ src/claudia_launcher.py | 24 ++++++++++++++++++++---- src/shared_cadence.py | 21 +++++++++++++-------- 3 files changed, 35 insertions(+), 12 deletions(-) diff --git a/src/claudia_database.py b/src/claudia_database.py index 58b2317..7fa297d 100644 --- a/src/claudia_database.py +++ b/src/claudia_database.py @@ -24,6 +24,8 @@ USING_KXSTUDIO = False list_DAW = [ # Package AppName Type Binary Icon Template? Level (L, D, L, V, VST-Mode, T, M, MIDI-Mode) (doc-file, website) + [ "ardour5", "Ardour 5", "DAW", "ardour5", "ardour", TEMPLATE_NO, LEVEL_JS, (1, 0, 1, 1, "Native", 1, 1, "JACK"), ("", "http://www.ardour.org/") ], + [ "ardour4", "Ardour 4", "DAW", "ardour4", "ardour", TEMPLATE_NO, LEVEL_JS, (1, 0, 1, 1, "Native", 1, 1, "JACK"), ("", "http://www.ardour.org/") ], [ "ariamaestosa", "Aria Maestosa", "MIDI Sequencer", "Aria", "aria", TEMPLATE_NO, LEVEL_0, (0, 0, 0, 0, "", 0, 1, "ALSA | JACK"), ("", "http://ariamaestosa.sf.net/") ], diff --git a/src/claudia_launcher.py b/src/claudia_launcher.py index 173b2be..27ba18d 100755 --- a/src/claudia_launcher.py +++ b/src/claudia_launcher.py @@ -22,6 +22,7 @@ from PyQt4.QtCore import pyqtSlot, Qt, QTimer, QSettings from PyQt4.QtGui import QMainWindow, QTableWidgetItem, QWidget from random import randint +import os # ------------------------------------------------------------------------------------------------------------ # Imports (Custom) @@ -114,7 +115,10 @@ class ClaudiaLauncher(QWidget, ui_claudia_launcher.Ui_ClaudiaLauncherW): self._parent = None self._settings = None self.m_ladish_only = False - + if os.path.isdir("/usr/lib64"): + self.lib_path = "lib64" + else: + self.lib_path = "lib" self.listDAW.setColumnWidth(0, 22) self.listDAW.setColumnWidth(1, 225) self.listDAW.setColumnWidth(2, 150) @@ -686,6 +690,18 @@ class ClaudiaLauncher(QWidget, ui_claudia_launcher.Ui_ClaudiaLauncherW): for package in pkg_out: pkglist.append(package) + elif os.path.exists("/usr/bin/dnf"): + pkg_out = getoutput("env LANG=C LC_ALL=C /usr/bin/dnf list installed 2>/dev/null").split("\n") + for pkg_info in pkg_out[2:]: + package = pkg_info.split(" ")[0].split(".")[0] + pkglist.append(package.strip()) + + elif os.path.exists("/usr/bin/yum"): + pkg_out = getoutput("env LANG=C LC_ALL=C /usr/bin/yum list installed 2>/dev/null").split("\n") + for package in pkg_out[2:]: + package = pkg_info.split(" ")[0].split(".")[0] + pkglist.append(package.strip()) + elif os.path.exists("/usr/bin/dpkg"): pkg_out = getoutput("env LANG=C LC_ALL=C /usr/bin/dpkg --get-selections 2>/dev/null").split("\n") for pkg_info in pkg_out: @@ -813,10 +829,10 @@ class ClaudiaLauncher(QWidget, ui_claudia_launcher.Ui_ClaudiaLauncherW): last_pos += 1 - if haveCarla and os.path.exists("/usr/lib/carla/libcarla_utils.so"): - utils = CarlaUtils("/usr/lib/carla/libcarla_utils.so") + if haveCarla and os.path.exists("/usr/" + self.lib_path + "/carla/libcarla_utils.so"): + utils = CarlaUtils("/usr/" + self.lib_path + "/carla/libcarla_utils.so") last_pos = 0 - for i in range(utils.get_cached_plugin_count(PLUGIN_LV2, os.getenv("LV2_PATH", "~/.lv2:/usr/lib/lv2:/usr/local/lib/lv2"))): + for i in range(utils.get_cached_plugin_count(PLUGIN_LV2, os.getenv("LV2_PATH", "~/.lv2:/usr/" + self.lib_path + "/lv2:/usr/local/" + self.lib_path + "/lv2"))): plugin = utils.get_cached_plugin_info(PLUGIN_LV2, i) if (plugin["hints"] & PLUGIN_HAS_CUSTOM_UI) == 0: diff --git a/src/shared_cadence.py b/src/shared_cadence.py index b75febc..17d5464 100644 --- a/src/shared_cadence.py +++ b/src/shared_cadence.py @@ -21,6 +21,7 @@ from PyQt4.QtCore import QProcess, QSettings from time import sleep +import os # ------------------------------------------------------------------------------------------------------------ # Imports (Custom Stuff) @@ -29,29 +30,33 @@ from shared import * # ------------------------------------------------------------------------------------------------------------ # Default Plugin PATHs +if os.path.isdir("/usr/lib64"): + LIB_PATH = "lib64" +else: + LIB_PATH = "lib" DEFAULT_LADSPA_PATH = [ os.path.join(HOME, ".ladspa"), - os.path.join("/", "usr", "lib", "ladspa"), - os.path.join("/", "usr", "local", "lib", "ladspa") + os.path.join("/", "usr", LIB_PATH, "ladspa"), + os.path.join("/", "usr", "local", LIB_PATH, "ladspa") ] DEFAULT_DSSI_PATH = [ os.path.join(HOME, ".dssi"), - os.path.join("/", "usr", "lib", "dssi"), - os.path.join("/", "usr", "local", "lib", "dssi") + os.path.join("/", "usr", LIB_PATH, "dssi"), + os.path.join("/", "usr", "local", LIB_PATH, "dssi") ] DEFAULT_LV2_PATH = [ os.path.join(HOME, ".lv2"), - os.path.join("/", "usr", "lib", "lv2"), - os.path.join("/", "usr", "local", "lib", "lv2") + os.path.join("/", "usr", LIB_PATH, "lv2"), + os.path.join("/", "usr", "local", LIB_PATH, "lv2") ] DEFAULT_VST_PATH = [ os.path.join(HOME, ".vst"), - os.path.join("/", "usr", "lib", "vst"), - os.path.join("/", "usr", "local", "lib", "vst") + os.path.join("/", "usr", LIB_PATH, "vst"), + os.path.join("/", "usr", "local", LIB_PATH, "vst") ] # ------------------------------------------------------------------------------------------------------------ From 95a1f65751a32a3be037501008bd7366dde0b9a0 Mon Sep 17 00:00:00 2001 From: Yann Collette Date: Thu, 22 Jun 2017 21:08:18 +0200 Subject: [PATCH 2/2] replace dnf enumeration by pull request #122 --- src/claudia_launcher.py | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/src/claudia_launcher.py b/src/claudia_launcher.py index 27ba18d..edb159b 100755 --- a/src/claudia_launcher.py +++ b/src/claudia_launcher.py @@ -690,18 +690,6 @@ class ClaudiaLauncher(QWidget, ui_claudia_launcher.Ui_ClaudiaLauncherW): for package in pkg_out: pkglist.append(package) - elif os.path.exists("/usr/bin/dnf"): - pkg_out = getoutput("env LANG=C LC_ALL=C /usr/bin/dnf list installed 2>/dev/null").split("\n") - for pkg_info in pkg_out[2:]: - package = pkg_info.split(" ")[0].split(".")[0] - pkglist.append(package.strip()) - - elif os.path.exists("/usr/bin/yum"): - pkg_out = getoutput("env LANG=C LC_ALL=C /usr/bin/yum list installed 2>/dev/null").split("\n") - for package in pkg_out[2:]: - package = pkg_info.split(" ")[0].split(".")[0] - pkglist.append(package.strip()) - elif os.path.exists("/usr/bin/dpkg"): pkg_out = getoutput("env LANG=C LC_ALL=C /usr/bin/dpkg --get-selections 2>/dev/null").split("\n") for pkg_info in pkg_out: @@ -709,6 +697,11 @@ class ClaudiaLauncher(QWidget, ui_claudia_launcher.Ui_ClaudiaLauncherW): if installed == "install": pkglist.append(package.strip()) + elif os.path.exists("/bin/rpm"): + pkg_out = getoutput("env LANG=C /bin/rpm -qa --qf \"%{NAME}\n\" 2>/dev/null").split("\n") + for package in pkg_out: + pkglist.append(package) + if not "bristol" in pkglist: self.tabWidget.setTabEnabled(iTabBristol, False)