Dear Zrythm community,
I wanted to provide you with an important update on the status of Zrythm v1 and our plans for v2. I understand that many of you have been patiently waiting for the v1 release, and I appreciate your continued support and enthusiasm for the project.
First, I want to address the challenges we’ve been facing. GTK, our current GUI toolkit, has not been performing well on non-GNU/Linux platforms. This has been a significant hurdle in achieving the cross-platform compatibility that we’ve always aimed for with Zrythm. Additionally, we’ve encountered issues with the Meson build system, which has led us to make some important changes.
In light of these challenges, I’ve made the decision to switch our development stack for v2. We’re moving to C++20 and utilizing the JUCE and Qt6 (with QML) frameworks. I’m pleased to report that the port to C++20, CMake, and JUCE is mostly complete. We’ve just begun the process of porting to Qt6, which will take some time but promises significant improvements.
This change will bring several benefits:
- Easier development process
- Minimized bugs
- Improved cross-platform support
- More robust build system with CMake
I understand that some of you might feel that we’re constantly changing direction, further delaying the release. I want to assure you that these decisions are not made lightly. They are carefully considered moves to ensure Zrythm’s long-term success and to deliver the best possible product to our users across all platforms.
Regarding v1, I want to clarify our approach:
- We will continue working on v1 in a separate branch, focusing on stability improvements with the current C/GTK stack.
- Our goal is to release a stable v1 for those who have been waiting, while simultaneously developing the new Qt-based version for v2.
- It’s important to note that while we aim for stability in the v1 release, there are limitations to what we can achieve given the capabilities of the current toolkit.
This dual approach allows us to honor our commitment to v1 while also paving the way for a more robust and cross-platform friendly v2.
I’d like to take a moment to emphasize the scale of what we’re trying to achieve with Zrythm. Building a professional-grade Digital Audio Workstation is an enormous undertaking. It’s not uncommon for commercial DAWs to take decades to reach maturity, with large teams and significant resources behind them. We’re striving to create a powerful, free/libre alternative, which is an even more challenging task.
Given the complexity and long-term nature of this project, I want to encourage those who believe in Zrythm’s potential to consider supporting us financially. Whether through donations or purchasing our current offerings, your financial support is crucial. It allows us to dedicate more time and resources to development, ultimately resulting in a better product for everyone. Every contribution, no matter the size, makes a real difference in our ability to continue this work.
If you’re in a position to support Zrythm financially, please visit our website to learn about donation options or to make a purchase. Your support not only helps fund development but also demonstrates the community’s belief in the project, which is incredibly motivating for our team.
I appreciate your patience and understanding as we navigate these changes. Your support means everything to us, and we’re working hard to deliver a DAW that meets and exceeds your expectations.
As always, we welcome your feedback and questions. Thank you for being part of the Zrythm journey.
Alexandros Theodotou - Zrythm Developer
TL;DR:
- GTK and Meson have been challenging for cross-platform development
- Switching to C++20, JUCE, Qt6, and CMake for v2
- C++20/CMake/JUCE port mostly done, Qt6 port just started
- Continuing work on v1 with C/GTK for stability, but with limitations
- Dual development: stabilizing v1 while building v2
- Building a DAW is complex and time-consuming
- Financial support through donations or purchases is crucial for continued development