Merge pull request #217424 from yuuyins/zrythm

zrythm: 1.0.0-alpha.28.1.3 -> 1.0.0-beta.4.5.62; carla: 2.5.1 -> 2.5.3
This commit is contained in:
Sandro 2023-03-14 14:29:02 +01:00 committed by GitHub
commit 5389c64661
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 146 additions and 43 deletions

View file

@ -16681,7 +16681,8 @@
}];
};
yuu = {
email = "yuuyin@protonmail.com";
email = "yuunix@grrlz.net";
matrix = "@yuu:matrix.org";
github = "yuuyins";
githubId = 86538850;
name = "Yuu Yin";

View file

@ -1,25 +1,38 @@
{ lib, stdenv, fetchFromGitHub, alsa-lib, file, fluidsynth, jack2,
liblo, libpulseaudio, libsndfile, pkg-config, python3Packages,
which, withFrontend ? true,
withQt ? true, qtbase ? null, wrapQtAppsHook ? null,
withGtk2 ? true, gtk2 ? null,
withGtk3 ? true, gtk3 ? null }:
{ lib
, stdenv
, fetchFromGitHub
, alsa-lib
, file
, fluidsynth
, jack2
, liblo
, libpulseaudio
, libsndfile
, pkg-config
, python3Packages
, which
, gtk2 ? null
, gtk3 ? null
, qtbase ? null
, withFrontend ? true
, withGtk2 ? true
, withGtk3 ? true
, withQt ? true
, wrapQtAppsHook ? null
}:
assert withFrontend -> python3Packages ? pyqt5;
assert withQt -> qtbase != null;
assert withQt -> wrapQtAppsHook != null;
assert withGtk2 -> gtk2 != null;
assert withGtk3 -> gtk3 != null;
stdenv.mkDerivation rec {
pname = "carla";
version = "2.5.1";
version = "2.5.3";
src = fetchFromGitHub {
owner = "falkTX";
repo = pname;
rev = "v${version}";
sha256 = "sha256-SN+9Q5v0bv+kQcYLBJmSCd9WIGSeQuOZze8LVwF20EA=";
hash = "sha256-J0C3GLdlLMkm3LHl6l3OI2rA73A6z5MMcNJ1I1T0pbI=";
};
nativeBuildInputs = [
@ -60,7 +73,6 @@ stdenv.mkDerivation rec {
patchPythonScript "$f"
done
patchPythonScript "$out/share/carla/carla_settings.py"
patchPythonScript "$out/share/carla/carla_database.py"
for program in $out/bin/*; do
wrapQtApp "$program" \

View file

@ -1,34 +1,43 @@
{ stdenv
, lib
, fetchFromGitHub
, fetchFromSourcehut
, SDL2
, alsa-lib
, libaudec
, appstream
, appstream-glib
, bash-completion
, boost
, breeze-icons
, carla
, chromaprint
, cmake
, curl
, dbus
, dconf
, libepoxy
, faust2lv2
, fftw
, fftwFloat
, flex
, glib
, graphviz
, gtk4
, gtksourceview5
, guile
, graphviz
, help2man
, json-glib
, jq
, json-glib
, libadwaita
, libaudec
, libbacktrace
, libcyaml
, libepoxy
, libgtop
, libjack2
, libpanel
, libpulseaudio
, libsamplerate
, libsass
, libsndfile
, libsoundio
, libxml2
@ -46,31 +55,48 @@
, rtaudio
, rtmidi
, rubberband
, sassc
, serd
, sord
, sox
, sratom
, texi2html
, vamp-plugin-sdk
, wrapGAppsHook
, xdg-utils
, xxHash
, vamp-plugin-sdk
, zix
, zstd
, libadwaita
, sassc
}:
stdenv.mkDerivation rec {
pname = "zrythm";
version = "1.0.0-alpha.28.1.3";
let
# As of zrythm-1.0.0-beta.4.5.62, Zrythm needs clap
# https://github.com/falktx/carla/tree/main/source/includes/clap, which is
# only available on Carla unstable as of 2023-02-24.
carla-unstable = carla.overrideAttrs (oldAttrs: rec {
pname = "carla";
version = "unstable-2023-02-24";
src = fetchFromGitHub {
owner = pname;
src = fetchFromGitHub {
owner = "falkTX";
repo = pname;
rev = "33a142f447925f55d00532933a1f28e9745c13eb";
hash = "sha256-hQj0HlcOYfwsxG05pq/qcuKcOwDMV1ED+YdxBToBzvk=";
};
});
in stdenv.mkDerivation rec {
pname = "zrythm";
version = "1.0.0-beta.4.5.62";
src = fetchFromSourcehut {
owner = "~alextee";
repo = pname;
rev = "v${version}";
sha256 = "sha256-ERE7I6E3+RmmpnZEtcJL/1v9a37IwFauVsbJvI9gsRQ=";
hash = "sha256-K93Y4Adh9TqoetSn7nrbbruIri1MKYoSGzoRBGHwbPA=";
};
nativeBuildInputs = [
cmake
help2man
jq
libaudec
@ -81,36 +107,44 @@ stdenv.mkDerivation rec {
pkg-config
python3
python3.pkgs.sphinx
sassc
texi2html
wrapGAppsHook
cmake
];
buildInputs = [
SDL2
alsa-lib
appstream
appstream-glib
bash-completion
carla
boost
breeze-icons
carla-unstable
chromaprint
curl
dbus
dconf
libepoxy
faust2lv2
fftw
fftwFloat
flex
breeze-icons
glib
graphviz
gtk4
gtksourceview5
graphviz
guile
json-glib
libadwaita
libbacktrace
libcyaml
libepoxy
libgtop
libjack2
libpanel
libpulseaudio
libsamplerate
libsass
libsndfile
libsoundio
libyaml
@ -124,34 +158,46 @@ stdenv.mkDerivation rec {
rubberband
serd
sord
sox
sratom
vamp-plugin-sdk
xdg-utils
xxHash
zix
zstd
libadwaita
sassc
];
# Zrythm uses meson to build, but requires cmake for dependency detection.
dontUseCmakeConfigure = true;
mesonFlags = [
"-Drtmidi=enabled"
"-Drtaudio=enabled"
"-Dsdl=enabled"
"-Dcarla=enabled"
"-Dmanpage=true"
# "-Duser_manual=true" # needs sphinx-intl
"-Dlsp_dsp=disabled"
"-Db_lto=false"
"-Dcarla=enabled"
"-Dcarla_binaries_dir=${carla-unstable}/lib/carla"
"-Ddebug=true"
"-Dfftw3_threads_separate=false"
"-Dfftw3_threads_separate_type=library"
"-Dfftw3f_separate=false"
"-Dlsp_dsp=disabled"
"-Dmanpage=true"
"-Drtaudio=enabled"
"-Drtmidi=enabled"
"-Dsdl=enabled"
# "-Duser_manual=true" # needs sphinx-intl
];
NIX_LDFLAGS = ''
-lfftw3_threads -lfftw3f_threads
'';
GUILE_AUTO_COMPILE = 0;
dontStrip = true;
postPatch = ''
substituteInPlace meson.build \
--replace "'/usr/lib', '/usr/local/lib', '/opt/homebrew/lib'" "'${fftw}/lib'"
chmod +x scripts/meson-post-install.sh
patchShebangs ext/sh-manpage-completions/run.sh scripts/generic_guile_wrap.sh \
scripts/meson-post-install.sh tools/check_have_unlimited_memlock.sh
@ -160,13 +206,13 @@ stdenv.mkDerivation rec {
preFixup = ''
gappsWrapperArgs+=(
--prefix GSETTINGS_SCHEMA_DIR : "$out/share/gsettings-schemas/${pname}-${version}/glib-2.0/schemas/"
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS"
)
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${breeze-icons}/share"
)
'';
meta = with lib; {
homepage = "https://www.zrythm.org";
description = "Highly automated and intuitive digital audio workstation";
description = "Automated and intuitive digital audio workstation";
maintainers = with maintainers; [ tshaynik magnetophon ];
platforms = platforms.linux;
license = licenses.agpl3Plus;

View file

@ -0,0 +1,42 @@
{ lib
, stdenv
, fetchFromGitLab
, meson
, ninja
, pkg-config
}:
stdenv.mkDerivation rec {
pname = "zix";
version = "unstable-2023-02-13";
src = fetchFromGitLab {
owner = "drobilla";
repo = pname;
rev = "262d4a1522c38be0588746e874159da5c7bb457d";
hash = "sha256-3vuefgnirM4ksK3j9sjBHgOmx0JpL+6tCPb69/7jI00=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
];
mesonFlags = [
"-Dbenchmarks=disabled"
"-Ddocs=disabled"
];
meta = with lib; {
description = "A lightweight C99 portability and data structure library";
homepage = "https://gitlab.com/drobilla/zix";
changelog = "https://gitlab.com/drobilla/zix/-/blob/${src.rev}/NEWS";
license = licenses.isc;
platforms = platforms.unix;
maintainers = with maintainers; [
yuu
zseri
];
};
}

View file

@ -24209,6 +24209,8 @@ with pkgs;
zita-resampler = callPackage ../development/libraries/audio/zita-resampler { };
zix = callPackage ../development/libraries/audio/zix { };
zz = callPackage ../development/compilers/zz { };
zziplib = callPackage ../development/libraries/zziplib { };