From 5648b252998033358685ddc987450b59bb6d8dfd Mon Sep 17 00:00:00 2001 From: Yuu Yin Date: Mon, 20 Feb 2023 21:51:37 -0300 Subject: [PATCH 1/5] maintainers: change email, add matrix --- maintainers/maintainer-list.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 5eacb6dc6894..69ab52b4591e 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -16476,7 +16476,8 @@ }]; }; yuu = { - email = "yuuyin@protonmail.com"; + email = "yuunix@grrlz.net"; + matrix = "@yuu:matrix.org"; github = "yuuyins"; githubId = 86538850; name = "Yuu Yin"; From a3059850c5d6b53975d85e00b879819e1e3585e3 Mon Sep 17 00:00:00 2001 From: Yuu Yin Date: Mon, 20 Feb 2023 21:43:41 -0300 Subject: [PATCH 2/5] zix: init at unstable-2023-02-13 Co-authored-by: zseri --- .../libraries/audio/zix/default.nix | 42 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 44 insertions(+) create mode 100644 pkgs/development/libraries/audio/zix/default.nix diff --git a/pkgs/development/libraries/audio/zix/default.nix b/pkgs/development/libraries/audio/zix/default.nix new file mode 100644 index 000000000000..dcd0b328a052 --- /dev/null +++ b/pkgs/development/libraries/audio/zix/default.nix @@ -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 + ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 827f5343dc1b..215bc2ede8c0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -24047,6 +24047,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 { }; From d19490339b900fff1de43876702964f3d41557ea Mon Sep 17 00:00:00 2001 From: Yuu Yin Date: Tue, 21 Feb 2023 00:16:29 -0300 Subject: [PATCH 3/5] carla: 2.5.1 -> 2.5.3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Alexandros Theodotou Co-authored-by: Bart Brouns Co-authored-by: Sandro Jäckel --- pkgs/applications/audio/carla/default.nix | 33 ++++++++++++++++------- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/pkgs/applications/audio/carla/default.nix b/pkgs/applications/audio/carla/default.nix index 70ef1ebdf644..26a5eab3b2e7 100644 --- a/pkgs/applications/audio/carla/default.nix +++ b/pkgs/applications/audio/carla/default.nix @@ -1,9 +1,25 @@ -{ 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; @@ -13,13 +29,13 @@ 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 +76,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" \ From c068047330d4c72cca53bf3a3d383bf8896bbcd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Fri, 3 Mar 2023 11:19:50 +0000 Subject: [PATCH 4/5] carla: remove python3Packages and gtk2, gk3 assertions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit According to Nixpkgs maintainer Sandro Jäckel, > that will never be the case in nixpkgs > ---Sandro Jäckel, https://github.com/NixOS/nixpkgs/pull/217424#discussion_r1117657269 > ---Sandro Jäckel, https://github.com/NixOS/nixpkgs/pull/217424#discussion_r1117657635 --- pkgs/applications/audio/carla/default.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/pkgs/applications/audio/carla/default.nix b/pkgs/applications/audio/carla/default.nix index 26a5eab3b2e7..74a84e2a8dc6 100644 --- a/pkgs/applications/audio/carla/default.nix +++ b/pkgs/applications/audio/carla/default.nix @@ -21,11 +21,8 @@ , 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"; From 410971fc3597ede8a23e829487847ad35641e69b Mon Sep 17 00:00:00 2001 From: Yuu Yin Date: Mon, 20 Feb 2023 23:23:20 -0300 Subject: [PATCH 5/5] zrythm: 1.0.0-alpha.28.1.3 -> 1.0.0-beta.4.5.62 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: zseri Co-authored-by: Alexandros Theodotou Co-authored-by: Sandro Jäckel Zrythm 1.0.0-beta.4.5.62 needs https://github.com/falkTX/Carla/tree/main/source/includes/clap, which is only available on unstable. --- pkgs/applications/audio/zrythm/default.nix | 106 +++++++++++++++------ 1 file changed, 76 insertions(+), 30 deletions(-) diff --git a/pkgs/applications/audio/zrythm/default.nix b/pkgs/applications/audio/zrythm/default.nix index 7b92626d5b33..fbb040709ab5 100644 --- a/pkgs/applications/audio/zrythm/default.nix +++ b/pkgs/applications/audio/zrythm/default.nix @@ -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;