From fcf009bded86e1d87ba7d9c07fd4773e76a1369a Mon Sep 17 00:00:00 2001 From: Mr Sensorium Date: Wed, 6 May 2026 10:21:23 +1000 Subject: [PATCH 1/5] Create earsaver.mk for EarSaver plugin Add earsaver.mk for building and installing EarSaver LV2 plugin. --- plugins/package/earsaver/earsaver.mk | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 plugins/package/earsaver/earsaver.mk diff --git a/plugins/package/earsaver/earsaver.mk b/plugins/package/earsaver/earsaver.mk new file mode 100644 index 00000000..eeb7c378 --- /dev/null +++ b/plugins/package/earsaver/earsaver.mk @@ -0,0 +1,26 @@ +###################################### +# +# earsaver +# +###################################### +EARSAVER_VERSION = 491183f9a9ed44633ebf1d6e157344adc2ad6342 +EARSAVER_SITE = https://github.com/sensorium/earsaver-lv2.git +EARSAVER_SITE_METHOD = git +EARSAVER_DEPENDENCIES = dpf hvcc +EARSAVER_BUNDLES = EarSaver.lv2 +define EARSAVER_BUILD_CMDS + # create dpf-based build project + $(STAGING_DIR)/usr/bin/hvcc $(@D)/EarSaver.pd -n "EarSaver" -g dpf -o $(@D)/build + # symlink dpf dep into build dir + ln -sf $(STAGING_DIR)/usr/src/dpf $(@D)/build + # build dpf project + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) NOOPT=true -C $(@D)/build +endef +define EARSAVER_INSTALL_TARGET_CMDS + # install built bundles + cp -r $(@D)/build/bin/*.lv2 $(TARGET_DIR)/usr/lib/lv2/ + # install custom ttl + cp $(@D)/EarSaver.lv2/*.ttl $(TARGET_DIR)/usr/lib/lv2/EarSaver.lv2/ + cp -r $(@D)/EarSaver.lv2/modgui $(TARGET_DIR)/usr/lib/lv2/EarSaver.lv2/ +endef +$(eval $(generic-package)) From f384a4f20e6ed434a5bae46a1d804aee68b53cbd Mon Sep 17 00:00:00 2001 From: Mr Sensorium Date: Wed, 6 May 2026 20:33:07 +1000 Subject: [PATCH 2/5] Update Earsaver version and build commands --- plugins/package/earsaver/earsaver.mk | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/plugins/package/earsaver/earsaver.mk b/plugins/package/earsaver/earsaver.mk index eeb7c378..21fe06de 100644 --- a/plugins/package/earsaver/earsaver.mk +++ b/plugins/package/earsaver/earsaver.mk @@ -3,24 +3,30 @@ # earsaver # ###################################### -EARSAVER_VERSION = 491183f9a9ed44633ebf1d6e157344adc2ad6342 +EARSAVER_VERSION = 0ca173626fc1438d6cdf953e3c0a6ee6d63e6c53 EARSAVER_SITE = https://github.com/sensorium/earsaver-lv2.git EARSAVER_SITE_METHOD = git EARSAVER_DEPENDENCIES = dpf hvcc EARSAVER_BUNDLES = EarSaver.lv2 + define EARSAVER_BUILD_CMDS + # fetch heavylib if not already present + test -f $(@D)/heavylib/hv.gt~.pd || \ + git clone --depth=1 https://github.com/Wasted-Audio/heavylib.git $(@D)/heavylib # create dpf-based build project - $(STAGING_DIR)/usr/bin/hvcc $(@D)/EarSaver.pd -n "EarSaver" -g dpf -o $(@D)/build + $(STAGING_DIR)/usr/bin/hvcc $(@D)/EarSaver.pd \ + -n "EarSaver" -g dpf -o $(@D)/build \ + -p $(@D)/heavylib # symlink dpf dep into build dir ln -sf $(STAGING_DIR)/usr/src/dpf $(@D)/build # build dpf project $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) NOOPT=true -C $(@D)/build endef + define EARSAVER_INSTALL_TARGET_CMDS - # install built bundles cp -r $(@D)/build/bin/*.lv2 $(TARGET_DIR)/usr/lib/lv2/ - # install custom ttl cp $(@D)/EarSaver.lv2/*.ttl $(TARGET_DIR)/usr/lib/lv2/EarSaver.lv2/ cp -r $(@D)/EarSaver.lv2/modgui $(TARGET_DIR)/usr/lib/lv2/EarSaver.lv2/ endef + $(eval $(generic-package)) From 14a11b620908eb316687de1e36f08e0dc1591ff4 Mon Sep 17 00:00:00 2001 From: Mr Sensorium Date: Wed, 6 May 2026 21:06:58 +1000 Subject: [PATCH 3/5] Update earsaver.mk --- plugins/package/earsaver/earsaver.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/package/earsaver/earsaver.mk b/plugins/package/earsaver/earsaver.mk index 21fe06de..953b2a1f 100644 --- a/plugins/package/earsaver/earsaver.mk +++ b/plugins/package/earsaver/earsaver.mk @@ -3,7 +3,7 @@ # earsaver # ###################################### -EARSAVER_VERSION = 0ca173626fc1438d6cdf953e3c0a6ee6d63e6c53 +EARSAVER_VERSION = 069a41ef25a83e7210a5f85c830611cc9730de27 EARSAVER_SITE = https://github.com/sensorium/earsaver-lv2.git EARSAVER_SITE_METHOD = git EARSAVER_DEPENDENCIES = dpf hvcc From 17e62d50c2780ec925638b91835df37ff6f929b6 Mon Sep 17 00:00:00 2001 From: Mr Sensorium Date: Wed, 6 May 2026 23:20:45 +1000 Subject: [PATCH 4/5] Update EARSAVER_VERSION to new commit hash --- plugins/package/earsaver/earsaver.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/package/earsaver/earsaver.mk b/plugins/package/earsaver/earsaver.mk index 953b2a1f..e0b799ae 100644 --- a/plugins/package/earsaver/earsaver.mk +++ b/plugins/package/earsaver/earsaver.mk @@ -3,7 +3,7 @@ # earsaver # ###################################### -EARSAVER_VERSION = 069a41ef25a83e7210a5f85c830611cc9730de27 +EARSAVER_VERSION = 6450904a76c3f56ea44fcb8a17affc74907f02b8 EARSAVER_SITE = https://github.com/sensorium/earsaver-lv2.git EARSAVER_SITE_METHOD = git EARSAVER_DEPENDENCIES = dpf hvcc From a4ebe227147c110eb14f36e311075b3bc030a0b4 Mon Sep 17 00:00:00 2001 From: Mr Sensorium Date: Thu, 7 May 2026 00:03:31 +1000 Subject: [PATCH 5/5] Modify Earsaver build commands for plugin URI Updated build commands to include plugin URI in generated JSON. --- plugins/package/earsaver/earsaver.mk | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/plugins/package/earsaver/earsaver.mk b/plugins/package/earsaver/earsaver.mk index e0b799ae..d8865dd0 100644 --- a/plugins/package/earsaver/earsaver.mk +++ b/plugins/package/earsaver/earsaver.mk @@ -13,9 +13,18 @@ define EARSAVER_BUILD_CMDS # fetch heavylib if not already present test -f $(@D)/heavylib/hv.gt~.pd || \ git clone --depth=1 https://github.com/Wasted-Audio/heavylib.git $(@D)/heavylib + # force the generated DPF binary to use the same URI as the bundled TTL files + printf '%s\n' \ + '{' \ + ' "name": "EarSaver",' \ + ' "dpf": {' \ + ' "maker": "sensorium",' \ + ' "plugin_uri": "urn:sensorium:EarSaver"' \ + ' }' \ + '}' > $(@D)/plugin.json # create dpf-based build project $(STAGING_DIR)/usr/bin/hvcc $(@D)/EarSaver.pd \ - -n "EarSaver" -g dpf -o $(@D)/build \ + -m $(@D)/plugin.json -n "EarSaver" -g dpf -o $(@D)/build \ -p $(@D)/heavylib # symlink dpf dep into build dir ln -sf $(STAGING_DIR)/usr/src/dpf $(@D)/build