-
-
Notifications
You must be signed in to change notification settings - Fork 14.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
bespokesynth: Modernise, 1.2.1 -> 1.3.0 #367767
base: master
Are you sure you want to change the base?
Conversation
- rec -> finalAttrs - lib.cmakeFeature instead of manual CMake flag writing - meta-wide "with lib" begone Evals to the same output.
- Enable strictDeps, adjust for resulting changes
So updates can be sent automatically by r-ryantm, assuming that no other adjustments are needed to build it.
Noticed while testing on Darwin, didn't expect to see my machine's hostname in the logs.
One thing I'd like to do in this update is incorporate the patch to JUCE suggested in this comment: BespokeSynth/BespokeSynth#1405 (comment). This patch makes it so bespoke behaves nicely with the modern PipeWire linux audio backend while using the JACK audio backend in bespoke. Without it, bespoke crashes with the JACK backend, and the alternative is to use the ALSA backend that only shows 2 inputs ports and 2 output ports in PipeWire. I've been using this patch for the last few months and it has worked well. Although, I've had to modify it slightly since bespoke's project structure has changed since the patch's original author created it. Here's my copy of the patch: diff --git a/libs/JUCE/modules/juce_audio_devices/native/juce_JackAudio_linux.cpp b/libs/JUCE/modules/juce_audio_devices/native/juce_JackAudio_linux.cpp
index 4cce7016f..25554a7cd 100644
--- a/libs/JUCE/modules/juce_audio_devices/native/juce_JackAudio_linux.cpp
+++ b/libs/JUCE/modules/juce_audio_devices/native/juce_JackAudio_linux.cpp
@@ -291,7 +291,6 @@ public:
juce::jack_on_info_shutdown (client, infoShutdownCallback, this);
juce::jack_set_xrun_callback (client, xrunCallback, this);
juce::jack_activate (client);
- deviceIsOpen = true;
if (! inputChannels.isZero())
{
@@ -336,6 +335,7 @@ public:
}
updateActivePorts();
+ deviceIsOpen = true;
return lastError;
}
@@ -525,7 +525,8 @@ private:
static void portConnectCallback (jack_port_id_t, jack_port_id_t, int, void* arg)
{
if (JackAudioIODevice* device = static_cast<JackAudioIODevice*> (arg))
- device->mainThreadDispatcher.updateActivePorts();
+ if (device->isOpen())
+ device->mainThreadDispatcher.updateActivePorts();
}
static void threadInitCallback (void* /* callbackArgument */) juce-patch.zip I wish we didn't have to use a patch to do this, but the JUCE team doesn't accept pull requests, so we can't fix it upstream. |
Closes #367731
https://github.com/BespokeSynth/BespokeSynth/releases/tag/v1.3.0
passthru.updateScript
for automatic / easier updatesThings done
nix.conf
? (See Nix manual)sandbox = relaxed
sandbox = true
nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)Add a 👍 reaction to pull requests you find important.