- update to 4.5.0:
* This release comes packed with a number of exciting new synths
for you to play with. We have a new hard-hitting kick drum
:gabberkick for that gabber sound and a new vintage electric
piano :rhodey synth. There are also 16 new percussive synths
inspired by the infamous TR-808 drum synthesiser. All the
synths come with many opts for you to play with to manipulate
and change the default timbres.
* see https://github.com/sonic-pi-net/sonic-pi/blob/v4.5.0/CHANGELOG.md#v4.5.0
- drop qscintilla-2.14.patch (upstream)
- update to 4.4.0:
* This release comes chock-full of new samples to play with.
Firstly we have 5 new samples donated to Sonic Pi by the
wonderful electric artist Arovane. These are a selection of
glitchy beats recorded at 130 BPM. To best use these either
`use_bpm 130` or use the `beat_stretch` opt to make them fit
seamlessly into your current BPM. They're also wonderful to
use with the `onset:` option for extracting individual sounds
to use on their own. Thank-you so much to Arovane for letting
us play with these amazing new sounds.
* Continuing on the sample theme, there are also 20 new hi-hat
samples. These all have a `:hat_` prefix and there's a wide
variety of sounds to play with ranging from acoustic to
electro to metal. They're perfect for adding a sense of drive
or groove to your tracks.
* This version of Sonic Pi is also the first to support a fully
native build for Apple Macs running Apple Silicon CPUs such
as the M1 and M2. This means that Sonic Pi can now run on
modern Mac computers without needing Rosetta to run things
OBS-URL: https://build.opensuse.org/request/show/1124749
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/sonic-pi?expand=0&rev=2
143 lines
4.5 KiB
RPMSpec
143 lines
4.5 KiB
RPMSpec
#
|
|
# spec file for package sonic-pi
|
|
#
|
|
# Copyright (c) 2023 SUSE LLC
|
|
# Copyright (c) 2021 Fabio Pesari
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
Name: sonic-pi
|
|
Version: 4.5.0
|
|
Release: 0
|
|
Summary: Livecoding environment for musicians and schools
|
|
License: MIT
|
|
Group: Productivity/Multimedia/Sound/Editors and Convertors
|
|
URL: https://sonic-pi.net/
|
|
Source0: https://github.com/sonic-pi-net/sonic-pi/archive/refs/tags/v%{version}.tar.gz
|
|
# generated via `MIX_ENV=prod mix deps.get` in app/server/beam/tau
|
|
Source1: %{name}-mix-deps.tar.gz
|
|
Source2: sonic-pi
|
|
Source3: sonic-pi.desktop
|
|
Source9: sonic-pi-rpmlintrc
|
|
Patch2: qscintilla-detection.patch
|
|
BuildRequires: Catch2-devel
|
|
BuildRequires: PlatformFolders-devel
|
|
BuildRequires: alsa-devel
|
|
BuildRequires: cmake
|
|
BuildRequires: crossguid-devel
|
|
BuildRequires: curl
|
|
BuildRequires: elixir
|
|
BuildRequires: elixir-hex
|
|
BuildRequires: erlang-rebar3
|
|
BuildRequires: esbuild
|
|
BuildRequires: fdupes
|
|
BuildRequires: flac-devel
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: gl3w-devel
|
|
BuildRequires: hicolor-icon-theme
|
|
BuildRequires: kissfft-devel
|
|
BuildRequires: libaubio-devel
|
|
BuildRequires: libffi-devel
|
|
BuildRequires: libogg-devel
|
|
BuildRequires: libopenssl-devel
|
|
BuildRequires: libopus-devel
|
|
BuildRequires: libqt5-linguist
|
|
BuildRequires: libuuid-devel
|
|
BuildRequires: libvorbis-devel
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: qscintilla-qt5-devel
|
|
BuildRequires: reproc-devel
|
|
BuildRequires: rtmidi-devel
|
|
BuildRequires: ruby-devel
|
|
BuildRequires: sndio-devel
|
|
BuildRequires: speex-devel
|
|
BuildRequires: sqlite3-devel
|
|
BuildRequires: unzip
|
|
BuildRequires: update-desktop-files
|
|
BuildRequires: zip
|
|
BuildRequires: cmake(Qt5LinguistTools)
|
|
BuildRequires: pkgconfig(Qt5Concurrent)
|
|
BuildRequires: pkgconfig(Qt5Core)
|
|
BuildRequires: pkgconfig(Qt5Gui)
|
|
BuildRequires: pkgconfig(Qt5Network)
|
|
BuildRequires: pkgconfig(Qt5OpenGL)
|
|
BuildRequires: pkgconfig(Qt5PrintSupport)
|
|
BuildRequires: pkgconfig(Qt5Svg)
|
|
BuildRequires: pkgconfig(Qt5WebEngineCore)
|
|
BuildRequires: pkgconfig(Qt5WebEngineWidgets)
|
|
BuildRequires: pkgconfig(Qt5Widgets)
|
|
BuildRequires: pkgconfig(Qt5Xml)
|
|
BuildRequires: pkgconfig(fmt)
|
|
BuildRequires: pkgconfig(sdl2)
|
|
# IMGUI
|
|
# BuildRequires: fmt-devel
|
|
# BuildRequires: libSDL2-devel
|
|
# Not compatible with Pipewire: calls directly jack client executable
|
|
Requires: jack-example-tools
|
|
Requires: lua
|
|
Requires: ruby
|
|
Requires: supercollider
|
|
Recommends: supercollider-sc3-plugins
|
|
|
|
%description
|
|
Sonic Pi is a new kind of musical instrument. Instead of strumming strings or whacking things with sticks - you write code - live.
|
|
|
|
%prep
|
|
%setup -q
|
|
%autopatch -p1
|
|
sed -i s/lrelease/lrelease-qt5/g app/linux-prebuild.sh app/gui/qt/rp-build-app
|
|
tar xf %{SOURCE1} -C app/server/beam/tau
|
|
cp -af %{SOURCE3} .
|
|
|
|
%build
|
|
cd app
|
|
export MIX_DEPS_PATH=$PWD/server/beam/tau/deps
|
|
export MIX_ENV=prod
|
|
export HEX_OFFLINE=1
|
|
|
|
MIX_ESBUILD_PATH=%{_bindir}/esbuild MIX_REBAR3=%{_bindir}/rebar3 ./linux-build-all.sh -s -o
|
|
./linux-release.sh
|
|
|
|
%install
|
|
find app/build/linux_dist/app/server/ruby/vendor/ -type f -name '*.rb' -exec chmod -x {} \;
|
|
cd app/build
|
|
mv linux_dist sonic-pi
|
|
install -d -m 755 %{buildroot}%{_libexecdir}
|
|
cp -pr sonic-pi %{buildroot}%{_libexecdir}
|
|
|
|
install -D -m 0755 %{SOURCE2} %{buildroot}%{_bindir}/sonic-pi
|
|
install -D -m644 ../gui/qt/images/icon-smaller.png %{buildroot}%{_datadir}/icons/hicolor/256x256/apps/sonic-pi.png
|
|
install -D -m644 %{SOURCE3} %{buildroot}%{_datadir}/applications/%{name}.desktop
|
|
|
|
%suse_update_desktop_file %{name}
|
|
%fdupes -s %{buildroot}
|
|
|
|
%check
|
|
pushd app/server/beam/tau
|
|
MIX_ESBUILD_PATH=%{_bindir}/esbuild MIX_REBAR3=%{_bindir}/rebar3 MIX_ENV=test TAU_ENV=test mix test
|
|
popd
|
|
pushd app/server/ruby
|
|
rake test
|
|
popd
|
|
|
|
%files
|
|
%license LICENSE.md
|
|
%doc README.md CHANGELOG.md FAQ.md CONTRIBUTING.md CONTRIBUTORS.md SYNTH_DESIGN.md
|
|
%{_bindir}/%{name}
|
|
%{_libexecdir}/sonic-pi
|
|
%{_datadir}/applications/%{name}.desktop
|
|
%{_datadir}/icons/hicolor/256x256/apps/sonic-pi.png
|
|
|
|
%changelog
|