Upgrading to 3.2.0. Removing boost-libs from depends, as only boost headers are required during build time. Adding sox to optdepends, as it is required for additional effects.

Revamping the patches for GUI and ruby path modifications to stay FHS compliant. Adding a patch to devendor qscintilla-qt5, which was vendored in the new setup using cmake for the Qt GUI.
Adding TODOs and NOTES. Running encapsulated build commands in subshells in build() instead of hopping dirs.
Cleaning up and extending the various installations in package().
NOTE: This version has issues on exit of sonic-pi. Parts of the ruby and erlang components won't quit and scsynth neither.
This commit is contained in:
David Runge 2020-03-08 22:53:49 +00:00
parent de6afbcbcc
commit ee2d18fc8a
5 changed files with 198 additions and 127 deletions

117
PKGBUILD
View file

@ -1,25 +1,29 @@
# Maintainer: David Runge <dvzrv@archlinux.org>
pkgname=sonic-pi
pkgver=3.1.0
pkgrel=8
pkgver=3.2.0
pkgrel=1
pkgdesc="The Live Coding Music Synth for Everyone"
arch=('x86_64')
url="https://sonic-pi.net/"
license=('CCPL' 'LGPL2.1' 'GPL2' 'GPL3' 'MIT')
groups=('pro-audio')
depends=('aubio' 'boost-libs' 'osmid' 'qscintilla-qt5' 'qwt'
'ruby-activesupport' 'ruby-ffi' 'ruby-i18n' 'ruby-kramdown' 'ruby-minitest'
'ruby-mocha' 'ruby-multi_json' 'ruby-rouge' 'ruby-rugged' 'ruby-sys-proctable'
'sc3-plugins' 'supercollider')
depends=('aubio' 'gcc-libs' 'glibc' 'osmid' 'qt5-base' 'qscintilla-qt5' 'qwt'
'ruby' 'ruby-activesupport' 'ruby-ffi' 'ruby-i18n' 'ruby-kramdown'
'ruby-minitest' 'ruby-mocha' 'ruby-multi_json' 'ruby-rouge' 'ruby-rugged'
'ruby-sys-proctable' 'sc3-plugins' 'supercollider')
makedepends=('boost' 'cmake' 'erlang-nox' 'gendesk' 'lua' 'qt5-tools'
'wkhtmltopdf')
'ruby-bundler' 'wkhtmltopdf')
checkdepends=('ruby-rake')
optdepends=('sox: for further effects')
source=("$pkgname-$pkgver.tar.gz::https://github.com/samaaron/${pkgname}/archive/v${pkgver}.tar.gz"
"fix-paths-in-gui.diff"
"fix-ruby-paths.diff")
sha512sums=('45373d3e673bc2f45bf5ccea31f6cf5e2003c9bdfc4645dec4b9fec391cb28b9e0b0823a98e9690928e116b8c40f96596bd1c8f5aefbf4f3e43e6c30ab76d41f'
'ea827c451a42ea12b7a1ced04978fa3a3eb5368b9802c982a0f815159d5591bedc4dc5b9eed89df3957087352bcb5f778e054abd2cb38cc1e57ab538e73b97f3'
'245418d7d3d145a77423350afd2598865395ed5e479fa13922320e6d53c849b01e99c71c460e384f69a8a70d6087899d9e26dcd06d68a13980fc2d6a543b2644')
"${pkgname}-3.2.0-gui_paths.patch"
"${pkgname}-3.2.0-devendor_qscintilla-qt5.patch"
"${pkgname}-3.2.0-ruby_paths.patch")
sha512sums=('55c5ee2d42cf5988a2cbcad3429a595e0376bde0a96b71dccd6753fe27a51d439057b0de3e0d1cfce10318803d4c3869da00254db1312fbaaafc9c6b502af148'
'e530cc13cb6674dca2ace2a8da566ce28263a15197cf7fccd5d3e58b676c08ce860bc6264a95d26569ff1f923020a40ece1e05841c955c5db16e61c30938f1c0'
'fbe196bc332a7a04e8d5097204a13626e7aba3a70715d2a1676c0b1f37f56da427d0d5b417f92c27e64f91a03dd9d4335f65f26f9e9d14e4076d496c94c949af'
'cd203e120e052ac06f08b4af082a95fddcd6a6a62386ed9a068f1b48123de02fa323fcf1d6e4429c6d55d980bb894d67eeafaf47fd31ab43dc70b13016914b9d')
prepare() {
cd "$pkgname-$pkgver"
@ -28,10 +32,16 @@ prepare() {
--pkgdesc "${pkgdesc}" \
--name sonic-pi \
--categories "AudioVideo;Audio"
sed -e 's/lqt5scintilla2/lqscintilla2_qt5/g' -i app/gui/qt/SonicPi.pro
rm -rvf app/server/native
# TODO: patch app/gui/qt/mainwindow.cpp to set path to external components in /usr/{lib,share}/sonic-pi
patch -Np1 -i ../fix-paths-in-gui.diff
# patch app/gui/qt/{model/sonicpitheme,mainwindow}.cpp to set path to
# external components in /usr/{lib,share}/sonic-pi
patch -Np1 -i "../${pkgname}-3.2.0-gui_paths.patch"
# devendor qscintilla-qt5: https://github.com/samaaron/sonic-pi/issues/2278
patch -Np1 -i "../${pkgname}-3.2.0-devendor_qscintilla-qt5.patch"
# TODO: devendor boost from GUI components (only headers required during
# build time)
#TODO: devendor ruby-ast
#TODO: devendor ruby-atomic (bin)
#TODO: devendor ruby-benchmark-ips
@ -53,43 +63,56 @@ prepare() {
#TODO: devendor ruby-thread_safe
#TODO: devendor ruby-wavefile
#TODO: devendor ruby-websocket
# devendor ffi, ruby-prof, rugged
# devendor gems requiring compilation:
# ffi, ruby-prof, rugged
sed -e '/rugged/d' \
-e '/ffi/d' \
-e '/ruby-prof/d' \
-i app/server/ruby/bin/compile-extensions.rb
rm -rvf app/server/ruby/vendor/{activesupport,ffi,i18n,kramdown,minitest,mocha,multi_json,rouge,rugged,sys-proctable}*
# remove unrequired gems, so we don't create any doc for them
rm -rvf app/server/ruby/vendor/{activesupport,ffi,i18n,kramdown,minitest,mocha,multi_json,rouge,rugged,sys-proctable}*
rm -rvf app/server/ruby/vendor/{narray,ruby-coreaudio,ruby-prof}*
# remove warnings as errors
sed -e 's/\-Werror//g' -i app/gui/qt/SonicPi.pro
}
build() {
cd "$pkgname-$pkgver"
# OSC and pi_server
cd app/server/erlang
erlc {osc,pi_server}.erl
(
# OSC and pi_server
cd app/server/erlang
erlc {osc,pi_server}.erl
)
cd "${srcdir}/$pkgname-$pkgver"
(
# ruby extensions
cd app/server/ruby/bin
./compile-extensions.rb
./i18n-tool.rb -t
)
# ruby extensions
cd app/gui/qt/
../../server/ruby/bin/compile-extensions.rb
../../server/ruby/bin/i18n-tool.rb -t
# help template
cp -vf ruby_help.{tmpl,h}
../../server/ruby/bin/qt-doc.rb -o ruby_help.h
(
# GUI
cd app/gui/qt/
# help template
cp -vf utils/ruby_help.{tmpl,h}
../../server/ruby/bin/qt-doc.rb -o utils/ruby_help.h
# generating translations
lrelease lang/*.ts
# compiling GUI
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-B build \
-S .
make VERBOSE=1 -C build
)
# GUI
lrelease SonicPi.pro
qmake-qt5 SonicPi.pro
make
cd "${srcdir}/$pkgname-$pkgver"
# TODO: patch app/server/ruby/lib/sonicpi/util.rb to set proper paths to external components
patch -Np1 -i ../fix-ruby-paths.diff
(
# patch app/server/ruby/lib/sonicpi/util.rb to set proper paths to external components
# NOTE: this can only be done after running
# app/server/ruby/bin/compile-extensions.rb, as ruby-wavefile uses a
# hardcoded location of a file (move to prepare() after devendoring more ruby gems)
patch -Np1 -i "../${pkgname}-3.2.0-ruby_paths.patch"
)
}
## tests fail: https://github.com/samaaron/sonic-pi/issues/1865
@ -102,8 +125,7 @@ build() {
package() {
cd "$pkgname-$pkgver"
# GUI executable
install -vDm 755 "app/gui/qt/${pkgname}" "${pkgdir}/usr/bin/${pkgname}"
install -vDm 755 "app/gui/qt/build/${pkgname}" "${pkgdir}/usr/bin/${pkgname}"
# book
install -vDm 644 app/gui/qt/book/*.html \
-t "${pkgdir}/usr/share/${pkgname}/book"
@ -147,13 +169,15 @@ package() {
# synthdefs
install -vDm 644 etc/synthdefs/compiled/*.scsyndef \
-t "${pkgdir}/usr/share/${pkgname}/synthdefs/compiled"
install -vDm 644 etc/synthdefs/designs/sonic_pi/synths/*.clj\
-t "${pkgdir}/usr/share/${pkgname}/synthdefs/designs/sonic_pi/synths"
install -vDm 644 etc/synthdefs/designs/overtone/${pkgname}/*.clj\
-t "${pkgdir}/usr/share/${pkgname}/synthdefs/designs/overtone/"
install -vDm 644 etc/synthdefs/designs/overtone/${pkgname}/src/sonic_pi/*.clj\
-t "${pkgdir}/usr/share/${pkgname}/synthdefs/designs/overtone/sonic_pi/src"
install -vDm 644 etc/synthdefs/designs/overtone/${pkgname}/test/sonic_pi/*.clj\
-t "${pkgdir}/usr/share/${pkgname}/synthdefs/designs/overtone/sonic_pi/test"
# buffers
install -vDm 644 etc/buffers/rand-stream.wav \
-t "${pkgdir}/usr/share/${pkgname}/buffers"
# docs
install -vDm 644 etc/doc/cheatsheets/*.md \
-t "${pkgdir}/usr/share/doc/${pkgname}/cheatsheets"
@ -163,7 +187,6 @@ package() {
# tutorial
install -vDm 644 etc/doc/tutorial/*.md \
-t "${pkgdir}/usr/share/doc/${pkgname}/tutorial"
# examples
install -vDm 644 etc/examples/algomancer/*.rb \
-t "${pkgdir}/usr/share/doc/${pkgname}/examples/algomancer"
@ -179,11 +202,9 @@ package() {
-t "${pkgdir}/usr/share/doc/${pkgname}/examples/sorcerer"
install -vDm 644 etc/examples/wizard/*.rb \
-t "${pkgdir}/usr/share/doc/${pkgname}/examples/wizard"
# erlang
install -vDm 755 app/server/erlang/*.beam \
-t "${pkgdir}/usr/lib/${pkgname}"
# ruby
install -vdm 755 "${pkgdir}/usr/share/${pkgname}"
cp -av app/server/ruby "${pkgdir}/usr/lib/${pkgname}/server"
@ -191,10 +212,8 @@ package() {
rm -v "${pkgdir}/usr/lib/${pkgname}/server/vendor/"*/ext/*/*.{o,c}
rm -v "${pkgdir}/usr/lib/${pkgname}/server/Rakefile"
rm -v "${pkgdir}/usr/lib/${pkgname}/server/vendor/"*/Rakefile
# xdg
install -vDm 644 "${pkgname}.desktop" -t "${pkgdir}/usr/share/applications/"
# license
install -vDm 644 LICENSE.md "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}

View file

@ -1,62 +0,0 @@
diff -ruN sonic-pi-3.1.0-a/app/gui/qt/mainwindow.cpp sonic-pi-3.1.0-b/app/gui/qt/mainwindow.cpp
--- sonic-pi-3.1.0-a/app/gui/qt/mainwindow.cpp 2018-01-22 23:00:13.000000000 +0100
+++ sonic-pi-3.1.0-b/app/gui/qt/mainwindow.cpp 2018-04-10 21:56:32.907704553 +0200
@@ -127,7 +127,7 @@
#elif defined(Q_OS_MAC)
ruby_path = root_path + "/app/server/native/ruby/bin/ruby";
#else
- ruby_path = root_path + "/app/server/native/ruby/bin/ruby";
+ ruby_path = root_path + "/usr/bin/ruby";
#endif
QFile file(ruby_path);
@@ -136,9 +136,9 @@
ruby_path = "ruby";
}
- ruby_server_path = QDir::toNativeSeparators(root_path + "/app/server/ruby/bin/sonic-pi-server.rb");
- port_discovery_path = QDir::toNativeSeparators(root_path + "/app/server/ruby/bin/port-discovery.rb");
- sample_path = QDir::toNativeSeparators(root_path + "/etc/samples");
+ ruby_server_path = QDir::toNativeSeparators(root_path + "/usr/lib/sonic-pi/server/bin/sonic-pi-server.rb");
+ port_discovery_path = QDir::toNativeSeparators(root_path + "/usr/lib/sonic-pi/server/bin/port-discovery.rb");
+ sample_path = QDir::toNativeSeparators(root_path + "/usr/share/sonic-pi/samples");
sp_user_path = QDir::toNativeSeparators(sonicPiHomePath() + "/.sonic-pi");
sp_user_tmp_path = QDir::toNativeSeparators(sp_user_path + "/.writableTesterPath");
@@ -149,13 +149,13 @@
process_log_path = QDir::toNativeSeparators(log_path + "/processes.log");
scsynth_log_path = QDir::toNativeSeparators(log_path + QDir::separator() + "scsynth.log");
- init_script_path = QDir::toNativeSeparators(root_path + "/app/server/ruby/bin/init-script.rb");
- exit_script_path = QDir::toNativeSeparators(root_path + "/app/server/ruby/bin/exit-script.rb");
+ init_script_path = QDir::toNativeSeparators(root_path + "/usr/lib/sonic-pi/server/bin/init-script.rb");
+ exit_script_path = QDir::toNativeSeparators(root_path + "/usr/lib/sonic-pi/server/bin/exit-script.rb");
- qt_app_theme_path = QDir::toNativeSeparators(root_path + "/app/gui/qt/theme/app.qss");
+ qt_app_theme_path = QDir::toNativeSeparators(root_path + "/usr/share/sonic-pi/theme/app.qss");
- qt_browser_dark_css = QDir::toNativeSeparators(root_path + "/app/gui/qt/theme/dark/doc-styles.css");
- qt_browser_light_css = QDir::toNativeSeparators(root_path + "/app/gui/qt/theme/light/doc-styles.css");
+ qt_browser_dark_css = QDir::toNativeSeparators(root_path + "/usr/share/sonic-pi/theme/dark/doc-styles.css");
+ qt_browser_light_css = QDir::toNativeSeparators(root_path + "/usr/share/sonic-pi/theme/light/doc-styles.css");
QDir logDir(log_path);
logDir.mkpath(logDir.absolutePath());
@@ -1020,7 +1020,7 @@
#elif defined(Q_OS_WIN)
return QCoreApplication::applicationDirPath() + "/../../../..";
#else
- return QCoreApplication::applicationDirPath() + "/../../..";
+ return QCoreApplication::applicationDirPath() + "/../..";
#endif
}
@@ -1059,7 +1059,7 @@
// Register server pid for potential zombie clearing
QStringList regServerArgs;
#if QT_VERSION >= QT_VERSION_CHECK(5, 3, 0)
- regServerArgs << QDir::toNativeSeparators(rootPath() + "/app/server/ruby/bin/task-register.rb")<< QString::number(serverProcess->processId());
+ regServerArgs << QDir::toNativeSeparators(rootPath() + "/usr/lib/sonic-pi/server/bin/task-register.rb")<< QString::number(serverProcess->processId());
#endif
QProcess *regServerProcess = new QProcess();
regServerProcess->start(ruby_path, regServerArgs);

View file

@ -0,0 +1,23 @@
diff -ruN a/app/gui/qt/CMakeLists.txt c/app/gui/qt/CMakeLists.txt
--- a/app/gui/qt/CMakeLists.txt 2020-02-25 01:23:45.000000000 +0100
+++ c/app/gui/qt/CMakeLists.txt 2020-03-08 16:54:34.158555996 +0100
@@ -38,9 +38,7 @@
find_package(Qt5 COMPONENTS Core Widgets Gui Concurrent Network OpenGL PrintSupport Xml Svg REQUIRED)
find_package(Threads REQUIRED)
-
-# We build scintilla as part of the main project to make it easy to debug/fix
-add_subdirectory(external/QScintilla-2.11.4)
+find_library(QSCINTILLA_QT5 qscintilla2_qt5)
set(APP_NAME sonic-pi)
@@ -129,7 +127,7 @@
target_link_libraries(${APP_NAME}
PRIVATE
- QScintilla
+ ${QSCINTILLA_QT5}
Qt5::Core
Qt5::Gui
Qt5::Widgets

View file

@ -0,0 +1,76 @@
diff -ruN a/app/gui/qt/mainwindow.cpp b/app/gui/qt/mainwindow.cpp
--- a/app/gui/qt/mainwindow.cpp 2020-02-25 01:23:45.000000000 +0100
+++ b/app/gui/qt/mainwindow.cpp 2020-03-08 13:53:17.604508214 +0100
@@ -353,10 +353,10 @@
ruby_path = "ruby";
}
- ruby_server_path = QDir::toNativeSeparators(root_path + "/app/server/ruby/bin/sonic-pi-server.rb");
- port_discovery_path = QDir::toNativeSeparators(root_path + "/app/server/ruby/bin/port-discovery.rb");
- fetch_url_path = QDir::toNativeSeparators(root_path + "/app/server/ruby/bin/fetch-url.rb");
- sample_path = QDir::toNativeSeparators(root_path + "/etc/samples");
+ ruby_server_path = QDir::toNativeSeparators(root_path + "/usr/lib/sonic-pi/server/bin/sonic-pi-server.rb");
+ port_discovery_path = QDir::toNativeSeparators(root_path + "/usr/lib/sonic-pi/server/bin/port-discovery.rb");
+ fetch_url_path = QDir::toNativeSeparators(root_path + "/usr/lib/sonic-pi/server/bin/fetch-url.rb");
+ sample_path = QDir::toNativeSeparators(root_path + "/usr/share/sonic-pi/samples");
sp_user_path = QDir::toNativeSeparators(sonicPiHomePath() + "/.sonic-pi");
sp_user_tmp_path = QDir::toNativeSeparators(sp_user_path + "/.writableTesterPath");
@@ -367,14 +367,14 @@
process_log_path = QDir::toNativeSeparators(log_path + "/processes.log");
scsynth_log_path = QDir::toNativeSeparators(log_path + QDir::separator() + "scsynth.log");
- init_script_path = QDir::toNativeSeparators(root_path + "/app/server/ruby/bin/init-script.rb");
- exit_script_path = QDir::toNativeSeparators(root_path + "/app/server/ruby/bin/exit-script.rb");
+ init_script_path = QDir::toNativeSeparators(root_path + "/usr/lib/sonic-pi/server/bin/init-script.rb");
+ exit_script_path = QDir::toNativeSeparators(root_path + "/usr/lib/sonic-pi/server/bin/exit-script.rb");
- qt_app_theme_path = QDir::toNativeSeparators(root_path + "/app/gui/qt/theme/app.qss");
+ qt_app_theme_path = QDir::toNativeSeparators(root_path + "/usr/share/sonic-pi/theme/app.qss");
- qt_browser_dark_css = QDir::toNativeSeparators(root_path + "/app/gui/qt/theme/dark/doc-styles.css");
- qt_browser_light_css = QDir::toNativeSeparators(root_path + "/app/gui/qt/theme/light/doc-styles.css");
- qt_browser_hc_css = QDir::toNativeSeparators(root_path + "/app/gui/qt/theme/high_contrast/doc-styles.css");
+ qt_browser_dark_css = QDir::toNativeSeparators(root_path + "/usr/share/sonic-pi/theme/dark/doc-styles.css");
+ qt_browser_light_css = QDir::toNativeSeparators(root_path + "/usr/share/sonic-pi/theme/light/doc-styles.css");
+ qt_browser_hc_css = QDir::toNativeSeparators(root_path + "/usr/share/sonic-pi/theme/high_contrast/doc-styles.css");
// attempt to create log directory
QDir logDir(log_path);
@@ -1056,7 +1056,7 @@
return QCoreApplication::applicationDirPath() + "/../../../../..";
#else
// On linux, CMake builds app into the build folder
- return QCoreApplication::applicationDirPath() + "/../../../..";
+ return QCoreApplication::applicationDirPath() + "/../..";
#endif
}
@@ -1098,7 +1098,7 @@
// Register server pid for potential zombie clearing
QStringList regServerArgs;
#if QT_VERSION >= QT_VERSION_CHECK(5, 3, 0)
- regServerArgs << QDir::toNativeSeparators(rootPath() + "/app/server/ruby/bin/task-register.rb")<< QString::number(serverProcess->processId());
+ regServerArgs << QDir::toNativeSeparators(rootPath() + "/usr/lib/sonic-pi/server/bin/task-register.rb")<< QString::number(serverProcess->processId());
#endif
QProcess *regServerProcess = new QProcess();
regServerProcess->start(ruby_path, regServerArgs);
diff -ruN a/app/gui/qt/model/sonicpitheme.cpp b/app/gui/qt/model/sonicpitheme.cpp
--- a/app/gui/qt/model/sonicpitheme.cpp 2020-02-25 01:23:45.000000000 +0100
+++ b/app/gui/qt/model/sonicpitheme.cpp 2020-03-08 19:59:00.840045897 +0100
@@ -25,11 +25,11 @@
this->customSettingsFilename = customSettingsFilename;
this->rootPath = rootPath;
- qt_app_theme_path = QDir::toNativeSeparators(rootPath + "/app/gui/qt/theme/app.qss");
+ qt_app_theme_path = QDir::toNativeSeparators(rootPath + "/usr/share/sonic-pi/theme/app.qss");
- qt_browser_dark_css = QDir::toNativeSeparators(rootPath + "/app/gui/qt/theme/dark/doc-styles.css");
- qt_browser_light_css = QDir::toNativeSeparators(rootPath + "/app/gui/qt/theme/light/doc-styles.css");
- qt_browser_hc_css = QDir::toNativeSeparators(rootPath + "/app/gui/qt/theme/high_contrast/doc-styles.css");
+ qt_browser_dark_css = QDir::toNativeSeparators(rootPath + "/usr/share/sonic-pi/theme/dark/doc-styles.css");
+ qt_browser_light_css = QDir::toNativeSeparators(rootPath + "/usr/share/sonic-pi/theme/light/doc-styles.css");
+ qt_browser_hc_css = QDir::toNativeSeparators(rootPath + "/usr/share/sonic-pi/theme/high_contrast/doc-styles.css");
loadToolBarIcons();

View file

@ -1,7 +1,7 @@
diff -ruN sonic-pi-3.1.0-a/app/server/ruby/core.rb sonic-pi-3.1.0-c/app/server/ruby/core.rb
--- sonic-pi-3.1.0-a/app/server/ruby/core.rb 2018-01-22 23:00:13.000000000 +0100
+++ sonic-pi-3.1.0-c/app/server/ruby/core.rb 2019-02-07 21:50:09.761647719 +0100
@@ -147,7 +147,7 @@
diff -ruN a/app/server/ruby/core.rb d/app/server/ruby/core.rb
--- a/app/server/ruby/core.rb 2020-02-25 01:23:45.000000000 +0100
+++ d/app/server/ruby/core.rb 2020-03-08 21:29:51.417948839 +0100
@@ -146,7 +146,7 @@
module Core
module SPRand
# Read in same random numbers as server for random stream sync
@ -10,10 +10,10 @@ diff -ruN sonic-pi-3.1.0-a/app/server/ruby/core.rb sonic-pi-3.1.0-c/app/server/r
def self.tl_seed_map(seed, idx=0)
{:sonic_pi_spider_random_gen_seed => seed,
diff -ruN sonic-pi-3.1.0-a/app/server/ruby/lib/sonicpi/util.rb sonic-pi-3.1.0-c/app/server/ruby/lib/sonicpi/util.rb
--- sonic-pi-3.1.0-a/app/server/ruby/lib/sonicpi/util.rb 2018-01-22 23:00:13.000000000 +0100
+++ sonic-pi-3.1.0-c/app/server/ruby/lib/sonicpi/util.rb 2019-02-07 21:38:55.994922542 +0100
@@ -216,11 +216,11 @@
diff -ruN a/app/server/ruby/lib/sonicpi/util.rb d/app/server/ruby/lib/sonicpi/util.rb
--- a/app/server/ruby/lib/sonicpi/util.rb 2020-02-25 01:23:45.000000000 +0100
+++ d/app/server/ruby/lib/sonicpi/util.rb 2020-03-08 21:39:53.485189513 +0100
@@ -252,11 +252,11 @@
end
def root_path
@ -27,7 +27,7 @@ diff -ruN sonic-pi-3.1.0-a/app/server/ruby/lib/sonicpi/util.rb sonic-pi-3.1.0-c/
end
def snippets_path
@@ -228,7 +228,7 @@
@@ -264,7 +264,7 @@
end
def doc_path
@ -36,7 +36,7 @@ diff -ruN sonic-pi-3.1.0-a/app/server/ruby/lib/sonicpi/util.rb sonic-pi-3.1.0-c/
end
def cheatsheets_path
@@ -240,7 +240,7 @@
@@ -276,7 +276,7 @@
end
def tmp_path
@ -45,7 +45,7 @@ diff -ruN sonic-pi-3.1.0-a/app/server/ruby/lib/sonicpi/util.rb sonic-pi-3.1.0-c/
end
def synthdef_path
@@ -256,7 +256,7 @@
@@ -292,19 +292,20 @@
end
def app_path
@ -54,7 +54,13 @@ diff -ruN sonic-pi-3.1.0-a/app/server/ruby/lib/sonicpi/util.rb sonic-pi-3.1.0-c/
end
def html_public_path
@@ -268,7 +268,7 @@
- File.absolute_path("#{app_path}/gui/html/public")
+ File.absolute_path("#{doc_path}/gui/html/public")
end
+ # this path is only relevant during build time
def qt_gui_path
File.absolute_path("#{app_path}/gui/qt")
end
def examples_path
@ -63,7 +69,7 @@ diff -ruN sonic-pi-3.1.0-a/app/server/ruby/lib/sonicpi/util.rb sonic-pi-3.1.0-c/
end
def server_path
@@ -276,7 +276,7 @@
@@ -312,7 +313,7 @@
end
def server_bin_path
@ -72,9 +78,18 @@ diff -ruN sonic-pi-3.1.0-a/app/server/ruby/lib/sonicpi/util.rb sonic-pi-3.1.0-c/
end
def native_path
diff -ruN sonic-pi-3.1.0-a/app/server/ruby/util.rb sonic-pi-3.1.0-c/app/server/ruby/util.rb
--- sonic-pi-3.1.0-a/app/server/ruby/util.rb 2018-01-22 23:00:13.000000000 +0100
+++ sonic-pi-3.1.0-c/app/server/ruby/util.rb 2018-04-10 22:16:26.994368179 +0200
@@ -373,7 +374,7 @@
end
def erlang_server_path
- File.join(server_path, "erlang")
+ File.absolute_path("/usr/lib/sonic-pi")
end
def user_settings_path
diff -ruN a/app/server/ruby/util.rb d/app/server/ruby/util.rb
--- a/app/server/ruby/util.rb 2020-02-25 01:23:45.000000000 +0100
+++ d/app/server/ruby/util.rb 2020-03-08 21:43:42.229538721 +0100
@@ -12,15 +12,15 @@
#++