Package Details: muse 3.0.2-1

Git Clone URL: https://aur.archlinux.org/muse.git (read-only, click to copy)
Package Base: muse
Description: A MIDI/Audio sequencer with recording and editing capabilities
Upstream URL: http://muse-sequencer.org/
Licenses: GPL2
Conflicts: muse
Provides: muse
Submitter: ainola
Maintainer: psyriccio
Last Packager: psyriccio
Votes: 9
Popularity: 0.004550
First Submitted: 2015-08-31 05:53
Last Updated: 2018-11-26 09:08

Dependencies (24)

Required by (0)

Sources (1)

Latest Comments

1 2 Next › Last »

donarturo commented on 2020-06-22 23:06

I fixed issues with qt-5.1.5. I put a copy of PKGBUILD with patches to my github

PKGBUILD
# Maintainer:  donarturo <arturwrona91@gmail.com> 
# Maintainer: Fabrizio del Tin <fdt@euniversity.pub>
# Contributor: Yan Burdinsky
# Contributor: Ainola
# Contributor: speps
# Contributor: Bernardo Barros

pkgname=muse
pkgver=3.1
pkgrel=1
pkgdesc="A MIDI/Audio sequencer with recording and editing capabilities"
arch=('i686' 'x86_64')
url="http://muse-sequencer.org/"
license=('GPL2')
depends=('qt5-base' 'fluidsynth' 'liblo' 'gtkmm' 'lib32-gtk2'
'gcc-libs-multilib' 'jack2' 'rtaudio')
makedepends=('cmake' 'gcc' 'ladspa' 'lv2' 'dssi'
'dssi-vst' 'ladish' 'liblo' 'qt5-tools')
optdepends=(
    'python2: Python scripting'
    'python2-pyqt5: Python scripting'
    'ladspa: ladspa plugin support'
    'lv2: lv2 plugin support'
    'dssi: dssi plugin support'
    'dssi-vst: dssi-vst plugins support'
    'ladish: LASH session support'
)
install="${pkgname}.install"
provides=('muse')
conflicts=('muse')
source=("https://github.com/muse-sequencer/muse/releases/download/muse_3_1_0/muse-${pkgver}.tar.gz"
    "muse-qt515.patch")
sha256sums=('b2d5c57ea30607cd9f7bea8b5d6488c54de732a1565db8e88f5536c1e478e875'
    'a45513daed5bd3c8434b9a1ae05e5ea64a286e3347a5c5deb4103a8218f2a89d')
#md5sums=('45557bf2f0932daedd057678b3faf913')

prepare() {
cd "${srcdir}"

### Based on https://github.com/muse-sequencer/muse/commit/998168839f576bddbaf0e0393d7d9504b0a919f0
### Prepared by donarturo
### Fix includes for build in qt-5.15

patch -p0 < muse-qt515.patch

}

build() {
  cd "${srcdir}/muse-${pkgver}/"

 sed -i '1s/^/#include <QAction>\n\n/' muse/mplugins/mitplugin.cpp
  sed -i 's/PyInt_AsLong/PyLong_AsLong/g' muse/remote/pyapi.cpp
  sed -i 's/PyString_AsString/PyBytes_AsString/g' muse/remote/pyapi.cpp
  sed -i 's/static void\* pyapithreadfunc(void\*)/static struct PyModuleDef muse =\n{\n    PyModuleDef_HEAD_INIT,\n    "muse", \/\* name of module \*\/\n    "",          \/\* module documentation, may be NULL \*\/\n    -1,          \/\* size of per-interpreter state of the module, or -1 if the module keeps state in global variables. \*\/\n    g_methodDefinitions\n};\n\nstatic void\* pyapithreadfunc(void\*)/' muse/remote/pyapi.cpp
  sed -i 's/Py_InitModule( "muse", g_methodDefinitions );/PyModule_Create( \&muse );/' muse/remote/pyapi.cpp

  # build dir
  [ -d bld ] || mkdir bld && cd bld

  cmake -DCMAKE_INSTALL_PREFIX=/usr \
        -DCMAKE_BUILD_TYPE=release \
        -DENABLE_VST_VESTIGE=1 \
        -DENABLE_VST_NATIVE=1 \
        -DENABLE_LV2=1 \
        -DENABLE_LV2_MAKE_PATH=OFF \
        -DENABLE_PYTHON=1 \
        -DENABLE_MIDNAM=ON \
        -DENABLE_FLUID=1 \
        -DENABLE_DSSI=1 \
        -DENABLE_LASH=1 \
        -DENABLE_OSC=1 \
        -DENABLE_RTAUDIO=1 ..
  make
#        -DCMAKE_CXX_COMPILER=/usr/bin/c++ \
#        -DCMAKE_CXX_COMPILER_AR=/usr/bin/gcc-ar \
#        -DCMAKE_CXX_COMPILER_RANLIB=/usr/bin/gcc-ranlib \
#        -DCMAKE_C_COMPILER=/usr/bin/cc \
#        -DCMAKE_C_COMPILER_AR=/usr/bin/gcc-ar \
#        -DCMAKE_C_COMPILER_RANLIB=/usr/bin/gcc-ranlib \
#        -DPYTHON_INCLUDE_DIR=/usr/include/python2.7 \
#        -DPYTHON_LIBRARY=/usr/lib/libpython2.7.so \
}

package() {
  cd "$srcdir/muse-${pkgver}/bld"
  make DESTDIR="$pkgdir" install

  # .. and oomidi grepmidi bin
  cd "$pkgdir/usr/bin"
  mv grepmidi "$pkgname-grepmidi"

  # grepmidi man
  cd "$pkgdir/usr/share/man/man1"
  mv grepmidi.1 "$pkgname-grepmidi.1"

  # python2 Fixes
#  sed -i "s/\#\!.*python/&2/" \
#    `grep -rl "\#\!.*python" "$pkgdir"`
}
muse-qt515.patch

Based on commits

diff -ruN muse-3.1.orig/awl/knob.h muse-3.1/awl/knob.h
--- muse-3.1.orig/awl/knob.h    2018-12-20 22:06:56.000000000 +0100
+++ muse-3.1/awl/knob.h 2020-06-22 23:15:25.748985095 +0200
@@ -22,6 +22,11 @@

 #ifndef __AWLKNOB_H__
 #define __AWLKNOB_H__
+#include <QPainterPath>
+#include <QPaintEvent>
+#include <QString>
+#include <QMouseEvent>
+#include <QSize>

 #include "aslider.h"
 // #include <QtDesigner/QDesignerExportWidget>
diff -ruN muse-3.1.orig/awl/slider.h muse-3.1/awl/slider.h
--- muse-3.1.orig/awl/slider.h  2018-12-20 22:06:56.000000000 +0100
+++ muse-3.1/awl/slider.h   2020-06-22 23:15:24.325659473 +0200
@@ -22,6 +22,11 @@

 #ifndef __AWLSLIDER_H__
 #define __AWLSLIDER_H__
+#include <QPainterPath>
+#include <QPaintEvent>
+#include <QString>
+#include <QMouseEvent>
+#include <QSize>

 #include "aslider.h"

diff -ruN muse-3.1.orig/muse/components/slider.h muse-3.1/muse/components/slider.h
--- muse-3.1.orig/muse/components/slider.h  2018-12-20 22:06:56.000000000 +0100
+++ muse-3.1/muse/components/slider.h   2020-06-22 23:51:28.077270758 +0200
@@ -26,7 +26,11 @@

 #ifndef __SLIDER_H__
 #define __SLIDER_H__
-
+#include <QPainterPath>
+#include <QPaintEvent>
+#include <QString>
+#include <QMouseEvent>
+#include <QSize>
 #include "sclif.h"
 #include "sliderbase.h"
 #include "scldraw.h"
diff -ruN muse-3.1.orig/muse/components/utils.h muse-3.1/muse/components/utils.h
--- muse-3.1.orig/muse/components/utils.h   2020-02-13 21:10:20.000000000 +0100
+++ muse-3.1/muse/components/utils.h    2020-06-22 23:52:54.353470026 +0200
@@ -22,7 +22,11 @@

 #ifndef __UTILS_H__
 #define __UTILS_H__
-
+#include <QPainterPath>
+#include <QPaintEvent>
+#include <QString>
+#include <QMouseEvent>
+#include <QSize>
 #include <stdint.h>

 #define MAX(a,b) (((a)>(b))?(a):(b))
diff -ruN muse-3.1.orig/muse/midiedit/scoreedit.h muse-3.1/muse/midiedit/scoreedit.h
--- muse-3.1.orig/muse/midiedit/scoreedit.h 2020-02-13 21:10:20.000000000 +0100
+++ muse-3.1/muse/midiedit/scoreedit.h  2020-06-23 00:06:31.599042627 +0200
@@ -28,6 +28,7 @@
 #include <QLabel>
 #include <QKeyEvent>
 #include <QPainter>
+#include <QPainterPath>
 #include <QPixmap>
 #include <QTimer>
 #include <QScrollBar>
diff -ruN muse-3.1.orig/muse/mixer/routedialog.h muse-3.1/muse/mixer/routedialog.h
--- muse-3.1.orig/muse/mixer/routedialog.h  2020-02-13 21:10:20.000000000 +0100
+++ muse-3.1/muse/mixer/routedialog.h   2020-06-22 23:56:27.125650674 +0200
@@ -38,6 +38,7 @@
 #include <QString>
 #include <QItemSelectionModel>
 #include <QPainter>
+#include <QPainterPath>
 #include <QColor>
 #include <QResizeEvent>
 #include <QPaintEvent>
diff -ruN muse-3.1.orig/muse/widgets/cpu_toolbar.cpp muse-3.1/muse/widgets/cpu_toolbar.cpp
--- muse-3.1.orig/muse/widgets/cpu_toolbar.cpp  2020-02-13 21:49:40.000000000 +0100
+++ muse-3.1/muse/widgets/cpu_toolbar.cpp   2020-06-22 23:32:13.313526650 +0200
@@ -137,13 +137,13 @@
   _resetButton->setObjectName("CpuLoadToolbarButton");
   _resetButton->setToolTip(tr("CPU load averaged over each gui-update period\nDSP load read from JACK\nNumber of xruns\n(click to reset)"));

-  _cpuLabel = new PaddedValueLabel(true, this, 0, "CPU:", "%");
+  _cpuLabel = new PaddedValueLabel(true, this, Qt::Widget, "CPU:", "%");
   _cpuLabel->setFieldWidth(5);
   _cpuLabel->setPrecision(1);
-  _dspLabel = new PaddedValueLabel(true, this, 0, "DSP:", "%");
+  _dspLabel = new PaddedValueLabel(true, this, Qt::Widget, "DSP:", "%");
   _dspLabel->setFieldWidth(5);
   _dspLabel->setPrecision(1);
-  _xrunsLabel = new PaddedValueLabel(false, this, 0, "XRUNS:");
+  _xrunsLabel = new PaddedValueLabel(false, this, Qt::Widget, "XRUNS:");
   _xrunsLabel->setFieldWidth(3);

   setValues(0.0f, 0.0f, 0);
diff -ruN muse-3.1.orig/muse/widgets/cpu_toolbar.h muse-3.1/muse/widgets/cpu_toolbar.h
--- muse-3.1.orig/muse/widgets/cpu_toolbar.h    2018-12-20 22:06:56.000000000 +0100
+++ muse-3.1/muse/widgets/cpu_toolbar.h 2020-06-22 23:25:50.295601636 +0200
@@ -56,7 +56,7 @@
       void updateText();

     public:
-      PaddedValueLabel(bool isFloat = false, QWidget* parent = 0, Qt::WindowFlags f = 0, 
+      PaddedValueLabel(bool isFloat = false, QWidget* parent = 0, Qt::WindowFlags f = Qt::Widget, 
                        const QString& prefix = QString(), const QString& suffix = QString());

       void setFieldWidth(int val);
diff -ruN muse-3.1.orig/muse/widgets/meter.cpp muse-3.1/muse/widgets/meter.cpp
--- muse-3.1.orig/muse/widgets/meter.cpp    2019-11-04 20:49:11.000000000 +0100
+++ muse-3.1/muse/widgets/meter.cpp 2020-06-22 23:35:30.932456057 +0200
@@ -26,9 +26,7 @@

 #include "muse_math.h"

-#include <QMouseEvent>
-#include <QPainter>
-#include <QResizeEvent>
+
 #include <QVector>
 #include <QLocale>
 #include <algorithm>
diff -ruN muse-3.1.orig/muse/widgets/meter.h muse-3.1/muse/widgets/meter.h
--- muse-3.1.orig/muse/widgets/meter.h  2018-12-20 22:06:56.000000000 +0100
+++ muse-3.1/muse/widgets/meter.h   2020-06-22 23:37:10.761915234 +0200
@@ -30,10 +30,10 @@
 #include <QFrame>
 #include <QTimer>

-class QResizeEvent;
-class QMouseEvent;
-class QPainter;
-class QPainterPath;
+#include <QResizeEvent>
+#include <QMouseEvent>
+#include <QPainter>
+#include <QPainterPath>

 #include <QBitmap>


dvzrv commented on 2020-06-22 14:37

Might take a bit. Upstream has issues with qt >= 5.15.0 and stuff needs patching.

Martchus commented on 2020-06-22 13:38

@dvzrv Thanks for bringing the application to [community]. Have a look at my comment regarding dependencies as well (although you'd likely spot the missing qt5-svg by using makechrootpkg anyways).

dvzrv commented on 2020-06-22 13:17

You can also just wait. I'm about to bring this application to [community].

donarturo commented on 2020-06-22 12:59

@aquilarubra So this package will be orphaned?

aquilarubra commented on 2020-06-21 07:13

@psyriccio, could you change my name in the PKGBUILD from maintainer to contributor? It went accidentally there, but I am not maintaining the package.

donarturo commented on 2020-06-15 14:36

@arnab I hope that Maintainer will modify this PKGBUILD. I have no permissions to modify PKGBUILD, so I submit as comment. It must work because this is my primary software for working with MIDI.

arnab commented on 2020-06-10 10:33

@donarturo your modified PKGBUILD worked. The previous PKGBUILD was giving error, Now muse 3.1 is working fine. Thank you so much.

donarturo commented on 2020-04-04 14:32

I modified PKGBUILD for latest version of muse. I would like to ask admin to check and submit it, to share it for community.

PKGBUILD
#### PKGBUILD ######
# Maintainer: Fabrizio del Tin <fdt@euniversity.pub>
# Contributor: Yan Burdinsky
# Contributor: Ainola
# Contributor: speps
# Contributor: Bernardo Barros
# Contributor: donarturo <arturwrona91@gmail.com>
pkgname=muse
pkgver=3.1
pkgrel=1
pkgdesc="A MIDI/Audio sequencer with recording and editing capabilities"
arch=('i686' 'x86_64')
url="http://muse-sequencer.org/"
license=('GPL2')
depends=('qt5-base' 'fluidsynth' 'liblo' 'gtkmm' 'lib32-gtk2'
'gcc-libs-multilib' 'jack2' 'rtaudio')
makedepends=('cmake' 'gcc' 'ladspa' 'lv2' 'dssi'
'dssi-vst' 'ladish' 'liblo' 'qt5-tools')
optdepends=(
    'python2: Python scripting'
    'python2-pyqt5: Python scripting'
    'ladspa: ladspa plugin support'
    'lv2: lv2 plugin support'
    'dssi: dssi plugin support'
    'dssi-vst: dssi-vst plugins support'
    'ladish: LASH session support'
)
install="${pkgname}.install"
provides=('muse')
conflicts=('muse')
source=("https://github.com/muse-sequencer/muse/releases/download/muse_3_1_0/muse-${pkgver}.tar.gz")
sha256sums=('b2d5c57ea30607cd9f7bea8b5d6488c54de732a1565db8e88f5536c1e478e875')
#md5sums=('45557bf2f0932daedd057678b3faf913')

build() {
  cd "${srcdir}/muse-${pkgver}/"

 sed -i '1s/^/#include <QAction>\n\n/' muse/mplugins/mitplugin.cpp
  sed -i 's/PyInt_AsLong/PyLong_AsLong/g' muse/remote/pyapi.cpp
  sed -i 's/PyString_AsString/PyBytes_AsString/g' muse/remote/pyapi.cpp
  sed -i 's/static void\* pyapithreadfunc(void\*)/static struct PyModuleDef muse =\n{\n    PyModuleDef_HEAD_INIT,\n    "muse", \/\* name of module \*\/\n    "",          \/\* module documentation, may be NULL \*\/\n    -1,          \/\* size of per-interpreter state of the module, or -1 if the module keeps state in global variables. \*\/\n    g_methodDefinitions\n};\n\nstatic void\* pyapithreadfunc(void\*)/' muse/remote/pyapi.cpp
  sed -i 's/Py_InitModule( "muse", g_methodDefinitions );/PyModule_Create( \&muse );/' muse/remote/pyapi.cpp

  # build dir
  [ -d bld ] || mkdir bld && cd bld

  cmake -DCMAKE_INSTALL_PREFIX=/usr \
        -DCMAKE_BUILD_TYPE=release \
        -DENABLE_VST_VESTIGE=1 \
        -DENABLE_VST_NATIVE=1 \
        -DENABLE_LV2=1 \
        -DENABLE_LV2_GTK2=ON \
        -DENABLE_LV2_MAKE_PATH=ON \
        -DENABLE_PYTHON=1 \
        -DENABLE_MIDNAM=ON \
        -DENABLE_FLUID=1 \
        -DENABLE_DSSI=1 \
        -DENABLE_LASH=1 \
        -DENABLE_OSC=1 \
        -DENABLE_RTAUDIO=1 ..
  make
}

package() {
  cd "$srcdir/muse-${pkgver}/bld"
  make DESTDIR="$pkgdir" install

  # .. and oomidi grepmidi bin
  cd "$pkgdir/usr/bin"
  mv grepmidi "$pkgname-grepmidi"

  # grepmidi man
  cd "$pkgdir/usr/share/man/man1"
  mv grepmidi.1 "$pkgname-grepmidi.1"

  # python2 Fixes
#  sed -i "s/\#\!.*python/&2/" \
#    `grep -rl "\#\!.*python" "$pkgdir"`
}

Martchus commented on 2019-11-19 16:44

The dependency qt5-svg is missing. Besides, gcc should not be explicitly mentioned: https://wiki.archlinux.org/index.php/PKGBUILD#makedepends You also don't need to add muse itself to conflicts and provides.

@UlrichH For me the build even fails earlier, apparently warnings are treated as errors and some header required by pango is missing:

Scanning dependencies of target pandelay
[  6%] Building CXX object plugins/pandelay/CMakeFiles/pandelay.dir/ladspapandelay.o
[  6%] Building CXX object plugins/pandelay/CMakeFiles/pandelay.dir/pandelay.o
[  6%] Building C object muse/lv2Support/CMakeFiles/lv2_support.dir/serd-0.22.0/src/writer.o
In file included from /build/muse/src/muse-3.0.2/muse/lv2Support/serd-0.22.0/src/writer.c:17:
In function ‘serd_error’,
    inlined from ‘w_err’ at /build/muse/src/muse-3.0.2/muse/lv2Support/serd-0.22.0/src/writer.c:116:2:
/build/muse/src/muse-3.0.2/muse/lv2Support/serd-0.22.0/src/serd_internal.h:293:3: error: ‘%s’ directive argument is null [-Werror=format-overflow=]
  293 |   fprintf(stderr, "error: %s:%u:%u: ", e->filename, e->line, e->col);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
Scanning dependencies of target lv2_gtk2_support
[  6%] Building CXX object muse/lv2Gtk2Support/CMakeFiles/lv2_gtk2_support.dir/lv2Gtk2Support.o
Scanning dependencies of target simpler_plugin
[  6%] Building CXX object synti/libsimpleplugin/CMakeFiles/simpler_plugin.dir/simpler_plugin.o
In file included from /usr/include/pango-1.0/pango/pango-font.h:25,
                 from /usr/include/pango-1.0/pango/pango-attributes.h:25,
                 from /usr/include/pango-1.0/pango/pango.h:25,
                 from /usr/include/gtk-2.0/gdk/gdktypes.h:37,
                 from /usr/include/gtk-2.0/gdk/gdkscreen.h:32,
                 from /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:31,
                 from /usr/include/gtk-2.0/gdk/gdk.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:32,
                 from /build/muse/src/muse-3.0.2/muse/lv2Gtk2Support/lv2Gtk2Support.cpp:4:
/usr/include/pango-1.0/pango/pango-coverage.h:28:10: fatal error: hb.h: No such file or directory
   28 | #include <hb.h>
      |          ^~~~~~
compilation terminated.
make[2]: *** [muse/lv2Gtk2Support/CMakeFiles/lv2_gtk2_support.dir/build.make:62: muse/lv2Gtk2Support/CMakeFiles/lv2_gtk2_support.dir/lv2Gtk2Support.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1837: muse/lv2Gtk2Support/CMakeFiles/lv2_gtk2_support.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[2]: *** [muse/lv2Support/CMakeFiles/lv2_support.dir/build.make:302: muse/lv2Support/CMakeFiles/lv2_support.dir/serd-0.22.0/src/writer.o] Error 1
make[2]: *** Waiting for unfinished jobs....
[  6%] Building C object muse/lv2Support/CMakeFiles/lv2_support.dir/sord-0.14.0/src/sord.o
[  6%] Building CXX object plugins/pandelay/CMakeFiles/pandelay.dir/pandelaymodel.o
[  6%] Linking CXX shared library pandelay.so
[  6%] Built target pandelay
/build/muse/src/muse-3.0.2/muse/lv2Support/sord-0.14.0/src/sord.c: In function ‘sord_new_literal_counted’:
/build/muse/src/muse-3.0.2/muse/lv2Support/sord-0.14.0/src/sord.c:1063:3: error: ‘strncpy’ specified bound 16 equals destination size [-Werror=stringop-truncation]
 1063 |   strncpy(key.meta.lit.lang, lang, sizeof(key.meta.lit.lang));
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
make[2]: *** [muse/lv2Support/CMakeFiles/lv2_support.dir/build.make:314: muse/lv2Support/CMakeFiles/lv2_support.dir/sord-0.14.0/src/sord.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1787: muse/lv2Support/CMakeFiles/lv2_support.dir/all] Error 2
[  6%] Linking CXX shared library libmuse_simpler_plugin.so
[  6%] Built target simpler_plugin
make: *** [Makefile:152: all] Error 2
==> ERROR: A failure occurred in build().