From c4e6e4751c3c46b949d47ee459db662745a201e7 Mon Sep 17 00:00:00 2001 From: Yuri Victorovich Date: Wed, 26 Mar 2025 22:45:35 -0700 Subject: [PATCH] audio/ratatouille-lv2: New port: Neural model loader and mixer --- audio/Makefile | 1 + audio/ratatouille-lv2/Makefile | 28 ++++++++++++++++ audio/ratatouille-lv2/distinfo | 3 ++ .../files/patch-Ratatouille_makefile | 32 +++++++++++++++++++ audio/ratatouille-lv2/pkg-descr | 11 +++++++ audio/ratatouille-lv2/pkg-plist | 20 ++++++++++++ 6 files changed, 95 insertions(+) create mode 100644 audio/ratatouille-lv2/Makefile create mode 100644 audio/ratatouille-lv2/distinfo create mode 100644 audio/ratatouille-lv2/files/patch-Ratatouille_makefile create mode 100644 audio/ratatouille-lv2/pkg-descr create mode 100644 audio/ratatouille-lv2/pkg-plist diff --git a/audio/Makefile b/audio/Makefile index 303b05a4e943..c18a615ee8fd 100644 --- a/audio/Makefile +++ b/audio/Makefile @@ -686,6 +686,7 @@ SUBDIR += qtractor SUBDIR += quimup SUBDIR += qxgedit + SUBDIR += ratatouille-lv2 SUBDIR += raul SUBDIR += rawrec SUBDIR += re diff --git a/audio/ratatouille-lv2/Makefile b/audio/ratatouille-lv2/Makefile new file mode 100644 index 000000000000..a38c7b771420 --- /dev/null +++ b/audio/ratatouille-lv2/Makefile @@ -0,0 +1,28 @@ +PORTNAME= ratatouille +DISTVERSION= 0.9.10 +CATEGORIES= audio +MASTER_SITES= https://github.com/brummer10/Ratatouille.lv2/releases/download/v${DISTVERSION}/ +PKGNAMESUFFIX= -lv2 +DISTNAME= Ratatouille.lv2-v${DISTVERSION}-src + +MAINTAINER= yuri@FreeBSD.org +COMMENT= Neural model loader and mixer +WWW= https://github.com/brummer10/Ratatouille.lv2 + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= lv2>0:audio/lv2 \ + xxd:sysutils/xxd +LIB_DEPENDS= libjack.so:audio/jack \ + libsndfile.so:audio/libsndfile + +USES= compiler:c++20-lang gmake gnome localbase pkgconfig tar:xz xorg +USE_GNOME= cairo +USE_XORG= x11 + +WRKSRC= ${WRKDIR}/Ratatouille.lv2-v${DISTVERSION} + +MAKEFILE= makefile + +.include diff --git a/audio/ratatouille-lv2/distinfo b/audio/ratatouille-lv2/distinfo new file mode 100644 index 000000000000..577a3e77ab32 --- /dev/null +++ b/audio/ratatouille-lv2/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1743052704 +SHA256 (Ratatouille.lv2-v0.9.10-src.tar.xz) = 524e13dfe75febeb6c30719c3fbd0a949cd700d9d03ea91035c96f4c385799f6 +SIZE (Ratatouille.lv2-v0.9.10-src.tar.xz) = 5222280 diff --git a/audio/ratatouille-lv2/files/patch-Ratatouille_makefile b/audio/ratatouille-lv2/files/patch-Ratatouille_makefile new file mode 100644 index 000000000000..4b321b7e4c39 --- /dev/null +++ b/audio/ratatouille-lv2/files/patch-Ratatouille_makefile @@ -0,0 +1,32 @@ +--- Ratatouille/makefile.orig 2025-03-17 06:46:26 UTC ++++ Ratatouille/makefile +@@ -7,9 +7,9 @@ + TARGET_ARCH = UNKNOWN + # check if user is root + user = $(shell whoami) +- ifeq ($(user),root) +- INSTALL_DIR = /usr/lib/lv2 +- EXE_INSTALL_DIR = /usr/bin ++ ifneq ($(DESTDIR),) ++ INSTALL_DIR = $(PREFIX)/lib/lv2 ++ EXE_INSTALL_DIR = $(PREFIX)/bin + else + INSTALL_DIR = ~/.lv2 + EXE_INSTALL_DIR = ~/bin +@@ -476,13 +476,13 @@ ifneq ("$(wildcard ../bin/$(EXEC_NAME)$(EXE_EXT))","") + $(QUIET)mkdir -p $(DESTDIR)$(EXE_INSTALL_DIR)/ + $(QUIET)cp -r ../bin/$(EXEC_NAME)$(EXE_EXT) $(DESTDIR)$(EXE_INSTALL_DIR)/$(EXEC_NAME)$(EXE_EXT) + +- ifeq ($(user),root) ++ #ifeq ($(user),root) + $(QUIET)mkdir -p $(DESTDIR)$(DESKAPPS_DIR) + $(QUIET)cp $(STANDALONE_DIR)$(EXEC_NAME).desktop $(DESTDIR)$(DESKAPPS_DIR)$(EXEC_NAME).desktop + $(QUIET)mkdir -p $(DESTDIR)$(PIXMAPS_DIR) + $(QUIET)cp $(STANDALONE_DIR)$(EXEC_NAME).svg $(DESTDIR)$(PIXMAPS_DIR)$(EXEC_NAME).svg +- $(QUIET)update-desktop-database || true +- endif ++ #$(QUIET)update-desktop-database || true ++ #endif + @$(B_ECHO) ". ., done$(reset)" + else + @$(B_ECHO) "$(EXEC_NAME)$(EXE_EXT) standalone skipped$(reset)" diff --git a/audio/ratatouille-lv2/pkg-descr b/audio/ratatouille-lv2/pkg-descr new file mode 100644 index 000000000000..b4196d785b16 --- /dev/null +++ b/audio/ratatouille-lv2/pkg-descr @@ -0,0 +1,11 @@ +Ratatouille is a Neural Model loader and mixer for Linux/Windows. + +It can load two models, which can be *.nam files with the Neural Amp Modeler +module, or *.json or .aidax files with the RTNeural module. + +You can also load just a single model file, in that case the "Blend" control +will do nothing. When you've loaded a second model, the "Blend" control will +blend between the two models and mix them to simulate your specific tone. + +Ratatouille using parallel processing for the neural models, so, loading a +second neural model wouldn't be remarkable on the dsp load. diff --git a/audio/ratatouille-lv2/pkg-plist b/audio/ratatouille-lv2/pkg-plist new file mode 100644 index 000000000000..25eaf809ca7a --- /dev/null +++ b/audio/ratatouille-lv2/pkg-plist @@ -0,0 +1,20 @@ +bin/Ratatouille +lib/lv2/Ratatouille.lv2/Ratatouille.so +lib/lv2/Ratatouille.lv2/Ratatouille.ttl +lib/lv2/Ratatouille.lv2/Ratatouille_ui.so +lib/lv2/Ratatouille.lv2/manifest.ttl +lib/lv2/Ratatouille.lv2/modgui.ttl +lib/lv2/Ratatouille.lv2/modgui/icon-ratatouille.html +lib/lv2/Ratatouille.lv2/modgui/knobs/knob.png +lib/lv2/Ratatouille.lv2/modgui/pedals/Ratatouille.png +lib/lv2/Ratatouille.lv2/modgui/screenshot-ratatouille.png +lib/lv2/Ratatouille.lv2/modgui/script-ratatouille.js +lib/lv2/Ratatouille.lv2/modgui/stylesheet-ratatouille.css +lib/lv2/Ratatouille.lv2/modgui/switches/eject.png +lib/lv2/Ratatouille.lv2/modgui/switches/normalise.png +lib/lv2/Ratatouille.lv2/modgui/switches/normalize.png +lib/lv2/Ratatouille.lv2/modgui/switches/powerswitch.png +lib/lv2/Ratatouille.lv2/modgui/switches/switch3.png +lib/lv2/Ratatouille.lv2/modgui/thumbnail-ratatouille.png +share/applications/Ratatouille.desktop +share/pixmaps/Ratatouille.svg